code: def _tiles_from_bbox(bbox, zoom_level):
          
  
          if isinstance(bbox, dict):
              point_min = Point.from_latitude_longitude(latitude=bbox['tl'], longitude=bbox['tr'])
              point_max = Point.from_latitude_longitude(latitude=bbox['bl'], longitude=bbox['br'])
          elif isinstance(bbox, list):
              point_min = Point.from_latitude_longitude(latitude=bbox[1], longitude=bbox[0])
              point_max = Point.from_latitude_longitude(latitude=bbox[3], longitude=bbox[2])
          else:
              raise RuntimeError("bbox must bei either a dict or a list")
          tile_min = Tile.for_point(point_min, zoom_level)
          tile_max = Tile.for_point(point_max, zoom_level)
          tiles = []
          for x in range(tile_min.tms_x, tile_max.tms_x + 1):
              for y in range(tile_min.tms_y, tile_max.tms_y + 1):
                  tiles.append(Tile.from_tms(tms_x=x, tms_y=y, zoom=zoom_level))
          return tiles
docs: * Returns all tiles for the specified bounding box