text: public Query makeQuery(SpatialArgs args) {if(! SpatialOperation.is( args.getOperation(),SpatialOperation.Intersects,SpatialOperation.IsWithin ))throw new UnsupportedSpatialOperation(args.getOperation());Shape shape = args.getShape();if (shape instanceof Rectangle) {Rectangle bbox = (Rectangle) shape;return new ConstantScoreQuery(makeWithin(bbox));} else if (shape instanceof Circle) {Circle circle = (Circle)shape;Rectangle bbox = circle.getBoundingBox();return new DistanceRangeQuery(makeWithin(bbox), makeDistanceValueSource(circle.getCenter()), circle.getRadius());} else {throw new UnsupportedOperationException("Only Rectangles and Circles are currently supported, " +"found [" + shape.getClass() + "]");}}