     private var iterator:IViewCursor = null;
 
 	//saved sort value
-    private var oldSort:Sort;
+    private var oldSort:ISort;
     
     //sort object used to gather members of dimensions 
-    private var newSort:Sort;
+    private var newSort:ISort;
 
 	//Cube builder instance
     private var nodeBuilder:CubeNodeBuilder;

import mx.collections.CursorBookmark;
import mx.collections.IList;
import mx.collections.IViewCursor;
import mx.collections.Sort;
import mx.collections.SortField;
import mx.core.mx_internal;

        }
        
        // sort the data as it makes decision about completion of handling
        var newSort:ISort = new Sort;
        var fields:Array = [];
        
        for each (var level:OLAPLevel in levels)
        {
            var field:ISortField = new SortField(level.dataField);
            fields.push(field);
        }
        
