public int get(int index, long[] arr, int off, int len) {assert len > 0 : "len must be > 0 (got " + len + ")";assert index >= 0 && index < size();assert off + len <= arr.length;final int gets = Math.min(size() - index, len);for (int i = index, o = off, end = index + gets; i < end; ++i, ++o) {arr[o] = get(i);}return gets;}

public int get ( int index , long [ ] arr , int off , int len ) { assert len > 0 : "len must be > 0 (got " + len + ")" ; assert index >= 0 && index < size ( ) ; assert off + len <= arr . length ; final int gets = Math . min ( size ( ) - index , len ) ; for ( int i = index , o = off , end = index + gets ; i < end ; ++ i , ++ o ) { arr [ o ] = get ( i ) ; } return gets ; }
public virtual int Get(int index, long[] arr, int off, int len){Debug.Assert(len > 0, "len must be > 0 (got " + len + ")");Debug.Assert(index >= 0 && index < Count);Debug.Assert(off + len <= arr.Length);int gets = Math.Min(Count - index, len);for (int i = index, o = off, end = index + gets; i < end; ++i, ++o){arr[o] = Get(i);}return gets;}
