code: def extentSearch(self, xmin, ymin, xmax, ymax):
          
          if not self._dataFrame.empty:
              try:
                  questionMin = (self._dataFrame.lat >= xmin) & (
                      self._dataFrame.lng >= ymin)
                  questionMax = (self._dataFrame.lat <= xmax) & (
                      self._dataFrame.lng <= ymax)
                  return np.logical_and(questionMin, questionMax)
              except AttributeError:
                  return []
          else:
              return []
docs: Filters the data by a geographical bounding box.
  
          The bounding box is given as lower left point coordinates and upper
          right point coordinates.
  
          Note:
              It's necessary that the dataframe has a `lat` and `lng` column
              in order to apply the filter.
  
              Check if the method could be removed in the future. (could be done
              via freeSearch)
  
          Returns
          -------
              list: A list containing all indexes with filtered data. Matches
                  will be `True`, the remaining items will be `False`. If the
                  dataFrame is empty, an empty list will be returned.