 		{
 			return _keysArray;
 		}
-		private const _keysArray:Array = new Array();
 		
 		/**
 		 * The number of records in the index

			
			return result; 
		}
		
		/**
		 * These constants define indices in a KDKey corresponding to xmin,ymin,xmax,ymax,importance values.
		 */
		private const XMIN_INDEX:int = 0, YMIN_INDEX:int = 1;
		private const XMAX_INDEX:int = 2, YMAX_INDEX:int = 3;
		private const IMPORTANCE_INDEX:int = 4;
		
		/**
		 * These KDKey arrays are created once and reused to avoid unnecessary creation of objects.
		 * The only values that change are the ones that are undefined here.
		 */
		private var minKDKey:Array = [Number.NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY, NaN, NaN, 0];
		private var maxKDKey:Array = [NaN, NaN, Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY];

		
		// reusable temporary objects
		private const _tempBounds:IBounds2D = new Bounds2D();
		private const _tempSimpleGeomBounds:IBounds2D = new Bounds2D();			
		private const _tempArray:Array = [];
		private const _tempBoundsPolygon:Array = [new Point(), new Point(), new Point(), new Point(), new Point()];
		private const _tempGeometryPolygon:Array = [];
		private const _tempVertices:Array = [];
	}
}

		 */
		public function createIndex(plotter:IPlotter, queryMissingBounds:Boolean = false):void
		{
			_queryMissingBounds = queryMissingBounds;
			
			var key:IQualifiedKey;
			var bounds:IBounds2D;
			var i:int;
			
			if (plotter is DynamicPlotter)
			{
				if ((plotter as DynamicPlotter).internalObject is IPlotterWithGeometries)
					_keyToGeometriesMap = new Dictionary();
				else 
					_keyToGeometriesMap = null;
