code: public Iterable<Info<T, R>> find(double topLeftLat, double topLeftLon, double bottomRightLat,
              double bottomRightLon, long start, long finish) {
  
          Coverage cover = GeoHash.coverBoundingBox(topLeftLat, topLeftLon, bottomRightLat,
                  bottomRightLon);
          Iterable<Info<T, R>> it = Collections.emptyList();
          for (String hash : cover.getHashes()) {
              it = Iterables.concat(it, find(topLeftLat, topLeftLon, bottomRightLat, bottomRightLon,
                      start, finish, hash));
          }
          return it;
      }
docs: Returns as an {@link Iterable} the results of a search within the
  bounding box given and where start &lt;=time &lt; finish.
  
  @param topLeftLat
  latitude of top left point (north west)
  @param topLeftLon
  longitude of top left point (north west)
  @param bottomRightLat
  latitude of bottom right point (south east)
  @param bottomRightLon
  longitude of bottom right point (south east)
  @param start
  start time inclusive
  @param finish
  finish time exclusive
  @return info records