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

public virtual int Set(int index, long[] arr, int off, int len){Debug.Assert(len > 0, "len must be > 0 (got " + len + ")");Debug.Assert(index >= 0 && index < Count);len = Math.Min(len, Count - index);Debug.Assert(off + len <= arr.Length);for (int i = index, o = off, end = index + len; i < end; ++i, ++o){Set(i, arr[o]);}return len;}
