public static WorldAreaEnumerable <TForeground, TBackground> In <TForeground, TBackground>(
     this IWorldAreaEnumerable <TForeground, TBackground> blockArea, int x, int y, int width, int height)
     where TForeground : struct
     where TBackground : struct
 {
     return(blockArea.In(new Rectangle(x, y, width, height)));
 }
 public static WorldAreaEnumerable <TForeground, TBackground> In <TForeground, TBackground>(
     this IWorldAreaEnumerable <TForeground, TBackground> blockArea, Point p1, Point p2)
     where TForeground : struct
     where TBackground : struct
 {
     return(blockArea.In(new Rectangle(p1, p2)));
 }