Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / JU / AU.js
index fbbaff4..6831cdb 100644 (file)
-Clazz.declarePackage ("JU");\r
-Clazz.load (null, "JU.AU", ["java.util.Arrays", "JU.Lst"], function () {\r
-c$ = Clazz.declareType (JU, "AU");\r
-c$.ensureLength = Clazz.defineMethod (c$, "ensureLength", \r
-function (array, minimumLength) {\r
-if (array != null && JU.AU.getLength (array) >= minimumLength) return array;\r
-return JU.AU.arrayCopyObject (array, minimumLength);\r
-}, "~O,~N");\r
-c$.ensureLengthS = Clazz.defineMethod (c$, "ensureLengthS", \r
-function (array, minimumLength) {\r
-if (array != null && array.length >= minimumLength) return array;\r
-return JU.AU.arrayCopyS (array, minimumLength);\r
-}, "~A,~N");\r
-c$.ensureLengthA = Clazz.defineMethod (c$, "ensureLengthA", \r
-function (array, minimumLength) {\r
-if (array != null && array.length >= minimumLength) return array;\r
-return JU.AU.arrayCopyF (array, minimumLength);\r
-}, "~A,~N");\r
-c$.ensureLengthI = Clazz.defineMethod (c$, "ensureLengthI", \r
-function (array, minimumLength) {\r
-if (array != null && array.length >= minimumLength) return array;\r
-return JU.AU.arrayCopyI (array, minimumLength);\r
-}, "~A,~N");\r
-c$.ensureLengthShort = Clazz.defineMethod (c$, "ensureLengthShort", \r
-function (array, minimumLength) {\r
-if (array != null && array.length >= minimumLength) return array;\r
-return JU.AU.arrayCopyShort (array, minimumLength);\r
-}, "~A,~N");\r
-c$.ensureLengthByte = Clazz.defineMethod (c$, "ensureLengthByte", \r
-function (array, minimumLength) {\r
-if (array != null && array.length >= minimumLength) return array;\r
-return JU.AU.arrayCopyByte (array, minimumLength);\r
-}, "~A,~N");\r
-c$.doubleLength = Clazz.defineMethod (c$, "doubleLength", \r
-function (array) {\r
-return JU.AU.arrayCopyObject (array, (array == null ? 16 : 2 * JU.AU.getLength (array)));\r
-}, "~O");\r
-c$.doubleLengthS = Clazz.defineMethod (c$, "doubleLengthS", \r
-function (array) {\r
-return JU.AU.arrayCopyS (array, (array == null ? 16 : 2 * array.length));\r
-}, "~A");\r
-c$.doubleLengthF = Clazz.defineMethod (c$, "doubleLengthF", \r
-function (array) {\r
-return JU.AU.arrayCopyF (array, (array == null ? 16 : 2 * array.length));\r
-}, "~A");\r
-c$.doubleLengthI = Clazz.defineMethod (c$, "doubleLengthI", \r
-function (array) {\r
-return JU.AU.arrayCopyI (array, (array == null ? 16 : 2 * array.length));\r
-}, "~A");\r
-c$.doubleLengthShort = Clazz.defineMethod (c$, "doubleLengthShort", \r
-function (array) {\r
-return JU.AU.arrayCopyShort (array, (array == null ? 16 : 2 * array.length));\r
-}, "~A");\r
-c$.doubleLengthByte = Clazz.defineMethod (c$, "doubleLengthByte", \r
-function (array) {\r
-return JU.AU.arrayCopyByte (array, (array == null ? 16 : 2 * array.length));\r
-}, "~A");\r
-c$.doubleLengthBool = Clazz.defineMethod (c$, "doubleLengthBool", \r
-function (array) {\r
-return JU.AU.arrayCopyBool (array, (array == null ? 16 : 2 * array.length));\r
-}, "~A");\r
-c$.deleteElements = Clazz.defineMethod (c$, "deleteElements", \r
-function (array, firstElement, nElements) {\r
-if (nElements == 0 || array == null) return array;\r
-var oldLength = JU.AU.getLength (array);\r
-if (firstElement >= oldLength) return array;\r
-var n = oldLength - (firstElement + nElements);\r
-if (n < 0) n = 0;\r
-var t = JU.AU.newInstanceO (array, firstElement + n);\r
-if (firstElement > 0) System.arraycopy (array, 0, t, 0, firstElement);\r
-if (n > 0) System.arraycopy (array, firstElement + nElements, t, firstElement, n);\r
-return t;\r
-}, "~O,~N,~N");\r
-c$.arrayCopyObject = Clazz.defineMethod (c$, "arrayCopyObject", \r
-function (array, newLength) {\r
-if (array == null) {\r
-return null;\r
-}var oldLength = JU.AU.getLength (array);\r
-if (newLength == oldLength) return array;\r
-var t = JU.AU.newInstanceO (array, newLength);\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-return t;\r
-}, "~O,~N");\r
-c$.newInstanceO = Clazz.defineMethod (c$, "newInstanceO", \r
- function (array, n) {\r
-{\r
-if (!array.getClass().getComponentType)\r
-return new Array(n);\r
-}}, "~O,~N");\r
-c$.getLength = Clazz.defineMethod (c$, "getLength", \r
-function (array) {\r
-{\r
-return array.length\r
-}}, "~O");\r
-c$.arrayCopyS = Clazz.defineMethod (c$, "arrayCopyS", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  new Array (newLength);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyII = Clazz.defineMethod (c$, "arrayCopyII", \r
-function (array, newLength) {\r
-var t = JU.AU.newInt2 (newLength);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyPt = Clazz.defineMethod (c$, "arrayCopyPt", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  new Array (newLength);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyF = Clazz.defineMethod (c$, "arrayCopyF", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  Clazz.newFloatArray (newLength, 0);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyI = Clazz.defineMethod (c$, "arrayCopyI", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  Clazz.newIntArray (newLength, 0);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyRangeI = Clazz.defineMethod (c$, "arrayCopyRangeI", \r
-function (array, i0, n) {\r
-if (array == null) return null;\r
-var oldLength = array.length;\r
-if (n == -1) n = oldLength;\r
-if (n == -2) n = Clazz.doubleToInt (oldLength / 2);\r
-n = n - i0;\r
-var t =  Clazz.newIntArray (n, 0);\r
-System.arraycopy (array, i0, t, 0, n);\r
-return t;\r
-}, "~A,~N,~N");\r
-c$.arrayCopyRangeRevI = Clazz.defineMethod (c$, "arrayCopyRangeRevI", \r
-function (array, i0, n) {\r
-if (array == null) return null;\r
-var t = JU.AU.arrayCopyRangeI (array, i0, n);\r
-if (n < 0) n = array.length;\r
-for (var i = Clazz.doubleToInt (n / 2); --i >= 0; ) JU.AU.swapInt (t, i, n - 1 - i);\r
-\r
-return t;\r
-}, "~A,~N,~N");\r
-c$.arrayCopyShort = Clazz.defineMethod (c$, "arrayCopyShort", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  Clazz.newShortArray (newLength, 0);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyByte = Clazz.defineMethod (c$, "arrayCopyByte", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  Clazz.newByteArray (newLength, 0);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.arrayCopyBool = Clazz.defineMethod (c$, "arrayCopyBool", \r
-function (array, newLength) {\r
-if (newLength < 0) newLength = array.length;\r
-var t =  Clazz.newBooleanArray (newLength, false);\r
-if (array != null) {\r
-var oldLength = array.length;\r
-System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);\r
-}return t;\r
-}, "~A,~N");\r
-c$.swapInt = Clazz.defineMethod (c$, "swapInt", \r
-function (array, indexA, indexB) {\r
-var t = array[indexA];\r
-array[indexA] = array[indexB];\r
-array[indexB] = t;\r
-}, "~A,~N,~N");\r
-c$.dumpArray = Clazz.defineMethod (c$, "dumpArray", \r
-function (msg, A, x1, x2, y1, y2) {\r
-var s = "dumpArray: " + msg + "\n";\r
-for (var x = x1; x <= x2; x++) s += "\t*" + x + "*";\r
-\r
-for (var y = y2; y >= y1; y--) {\r
-s += "\n*" + y + "*";\r
-for (var x = x1; x <= x2; x++) s += "\t" + (x < A.length && y < A[x].length ? A[x][y] : NaN);\r
-\r
-}\r
-return s;\r
-}, "~S,~A,~N,~N,~N,~N");\r
-c$.dumpIntArray = Clazz.defineMethod (c$, "dumpIntArray", \r
-function (A, n) {\r
-var str = "";\r
-for (var i = 0; i < n; i++) str += " " + A[i];\r
-\r
-return str;\r
-}, "~A,~N");\r
-c$.sortedItem = Clazz.defineMethod (c$, "sortedItem", \r
-function (v, n) {\r
-if (v.size () == 0) return null;\r
-if (v.size () == 1) return v.get (0);\r
-var keys = v.toArray ( new Array (v.size ()));\r
-java.util.Arrays.sort (keys);\r
-return keys[n % keys.length];\r
-}, "JU.Lst,~N");\r
-c$.createArrayOfArrayList = Clazz.defineMethod (c$, "createArrayOfArrayList", \r
-function (size) {\r
-return  new Array (size);\r
-}, "~N");\r
-c$.createArrayOfHashtable = Clazz.defineMethod (c$, "createArrayOfHashtable", \r
-function (size) {\r
-return  new Array (size);\r
-}, "~N");\r
-c$.swap = Clazz.defineMethod (c$, "swap", \r
-function (o, i, j) {\r
-var oi = o[i];\r
-o[i] = o[j];\r
-o[j] = oi;\r
-}, "~A,~N,~N");\r
-c$.newFloat2 = Clazz.defineMethod (c$, "newFloat2", \r
-function (n) {\r
-{\r
-return Clazz.newArray(n, null);\r
-}}, "~N");\r
-c$.newInt2 = Clazz.defineMethod (c$, "newInt2", \r
-function (n) {\r
-{\r
-return Clazz.newArray(n, null);\r
-}}, "~N");\r
-c$.newInt3 = Clazz.defineMethod (c$, "newInt3", \r
-function (nx, ny) {\r
-{\r
-return Clazz.newArray(nx, null);\r
-}}, "~N,~N");\r
-c$.newFloat3 = Clazz.defineMethod (c$, "newFloat3", \r
-function (nx, ny) {\r
-{\r
-return Clazz.newArray(nx, null);\r
-}}, "~N,~N");\r
-c$.newInt4 = Clazz.defineMethod (c$, "newInt4", \r
-function (n) {\r
-{\r
-return Clazz.newArray(n, null);\r
-}}, "~N");\r
-c$.newShort2 = Clazz.defineMethod (c$, "newShort2", \r
-function (n) {\r
-{\r
-return Clazz.newArray(n, null);\r
-}}, "~N");\r
-c$.newByte2 = Clazz.defineMethod (c$, "newByte2", \r
-function (n) {\r
-{\r
-return Clazz.newArray(n, null);\r
-}}, "~N");\r
-c$.newDouble2 = Clazz.defineMethod (c$, "newDouble2", \r
-function (n) {\r
-{\r
-return Clazz.newArray(n, null);\r
-}}, "~N");\r
-c$.removeMapKeys = Clazz.defineMethod (c$, "removeMapKeys", \r
-function (map, root) {\r
-var list =  new JU.Lst ();\r
-for (var key, $key = map.keySet ().iterator (); $key.hasNext () && ((key = $key.next ()) || true);) if (key.startsWith (root)) list.addLast (key);\r
-\r
-for (var i = list.size (); --i >= 0; ) map.remove (list.get (i));\r
-\r
-return list.size ();\r
-}, "java.util.Map,~S");\r
-c$.isAS = Clazz.defineMethod (c$, "isAS", \r
-function (x) {\r
-{\r
-return Clazz.isAS(x);\r
-}}, "~O");\r
-c$.isASS = Clazz.defineMethod (c$, "isASS", \r
-function (x) {\r
-{\r
-return Clazz.isASS(x);\r
-}}, "~O");\r
-c$.isAP = Clazz.defineMethod (c$, "isAP", \r
-function (x) {\r
-{\r
-return Clazz.isAP(x);\r
-}}, "~O");\r
-c$.isAF = Clazz.defineMethod (c$, "isAF", \r
-function (x) {\r
-{\r
-return Clazz.isAF(x);\r
-}}, "~O");\r
-c$.isAFloat = Clazz.defineMethod (c$, "isAFloat", \r
-function (x) {\r
-{\r
-return Clazz.isAFloat(x);\r
-}}, "~O");\r
-c$.isAD = Clazz.defineMethod (c$, "isAD", \r
-function (x) {\r
-{\r
-return Clazz.isAF(x);\r
-}}, "~O");\r
-c$.isADD = Clazz.defineMethod (c$, "isADD", \r
-function (x) {\r
-{\r
-return Clazz.isAFF(x);\r
-}}, "~O");\r
-c$.isAB = Clazz.defineMethod (c$, "isAB", \r
-function (x) {\r
-{\r
-return Clazz.isAI(x);\r
-}}, "~O");\r
-c$.isAI = Clazz.defineMethod (c$, "isAI", \r
-function (x) {\r
-{\r
-return Clazz.isAI(x);\r
-}}, "~O");\r
-c$.isAII = Clazz.defineMethod (c$, "isAII", \r
-function (x) {\r
-{\r
-return Clazz.isAII(x);\r
-}}, "~O");\r
-c$.isAFF = Clazz.defineMethod (c$, "isAFF", \r
-function (x) {\r
-{\r
-return Clazz.isAFF(x);\r
-}}, "~O");\r
-c$.isAFFF = Clazz.defineMethod (c$, "isAFFF", \r
-function (x) {\r
-{\r
-return Clazz.isAFFF(x);\r
-}}, "~O");\r
-c$.ensureSignedBytes = Clazz.defineMethod (c$, "ensureSignedBytes", \r
-function (b) {\r
-if (b != null) {\r
-{\r
-for (var i = b.length; --i >= 0;) { var j = b[i] & 0xFF; if\r
-(j >= 0x80) j -= 0x100; b[i] = j; }\r
-}}return b;\r
-}, "~A");\r
-});\r
+Clazz.declarePackage ("JU");
+Clazz.load (null, "JU.AU", ["java.util.Arrays", "JU.Lst"], function () {
+c$ = Clazz.declareType (JU, "AU");
+c$.ensureLength = Clazz.defineMethod (c$, "ensureLength", 
+function (array, minimumLength) {
+if (array != null && JU.AU.getLength (array) >= minimumLength) return array;
+return JU.AU.arrayCopyObject (array, minimumLength);
+}, "~O,~N");
+c$.ensureLengthS = Clazz.defineMethod (c$, "ensureLengthS", 
+function (array, minimumLength) {
+if (array != null && array.length >= minimumLength) return array;
+return JU.AU.arrayCopyS (array, minimumLength);
+}, "~A,~N");
+c$.ensureLengthA = Clazz.defineMethod (c$, "ensureLengthA", 
+function (array, minimumLength) {
+if (array != null && array.length >= minimumLength) return array;
+return JU.AU.arrayCopyF (array, minimumLength);
+}, "~A,~N");
+c$.ensureLengthI = Clazz.defineMethod (c$, "ensureLengthI", 
+function (array, minimumLength) {
+if (array != null && array.length >= minimumLength) return array;
+return JU.AU.arrayCopyI (array, minimumLength);
+}, "~A,~N");
+c$.ensureLengthShort = Clazz.defineMethod (c$, "ensureLengthShort", 
+function (array, minimumLength) {
+if (array != null && array.length >= minimumLength) return array;
+return JU.AU.arrayCopyShort (array, minimumLength);
+}, "~A,~N");
+c$.ensureLengthByte = Clazz.defineMethod (c$, "ensureLengthByte", 
+function (array, minimumLength) {
+if (array != null && array.length >= minimumLength) return array;
+return JU.AU.arrayCopyByte (array, minimumLength);
+}, "~A,~N");
+c$.doubleLength = Clazz.defineMethod (c$, "doubleLength", 
+function (array) {
+return JU.AU.arrayCopyObject (array, (array == null ? 16 : 2 * JU.AU.getLength (array)));
+}, "~O");
+c$.doubleLengthS = Clazz.defineMethod (c$, "doubleLengthS", 
+function (array) {
+return JU.AU.arrayCopyS (array, (array == null ? 16 : 2 * array.length));
+}, "~A");
+c$.doubleLengthF = Clazz.defineMethod (c$, "doubleLengthF", 
+function (array) {
+return JU.AU.arrayCopyF (array, (array == null ? 16 : 2 * array.length));
+}, "~A");
+c$.doubleLengthI = Clazz.defineMethod (c$, "doubleLengthI", 
+function (array) {
+return JU.AU.arrayCopyI (array, (array == null ? 16 : 2 * array.length));
+}, "~A");
+c$.doubleLengthShort = Clazz.defineMethod (c$, "doubleLengthShort", 
+function (array) {
+return JU.AU.arrayCopyShort (array, (array == null ? 16 : 2 * array.length));
+}, "~A");
+c$.doubleLengthByte = Clazz.defineMethod (c$, "doubleLengthByte", 
+function (array) {
+return JU.AU.arrayCopyByte (array, (array == null ? 16 : 2 * array.length));
+}, "~A");
+c$.doubleLengthBool = Clazz.defineMethod (c$, "doubleLengthBool", 
+function (array) {
+return JU.AU.arrayCopyBool (array, (array == null ? 16 : 2 * array.length));
+}, "~A");
+c$.deleteElements = Clazz.defineMethod (c$, "deleteElements", 
+function (array, firstElement, nElements) {
+if (nElements == 0 || array == null) return array;
+var oldLength = JU.AU.getLength (array);
+if (firstElement >= oldLength) return array;
+var n = oldLength - (firstElement + nElements);
+if (n < 0) n = 0;
+var t = JU.AU.newInstanceO (array, firstElement + n);
+if (firstElement > 0) System.arraycopy (array, 0, t, 0, firstElement);
+if (n > 0) System.arraycopy (array, firstElement + nElements, t, firstElement, n);
+return t;
+}, "~O,~N,~N");
+c$.arrayCopyObject = Clazz.defineMethod (c$, "arrayCopyObject", 
+function (array, newLength) {
+if (array == null) {
+return null;
+}var oldLength = JU.AU.getLength (array);
+if (newLength == oldLength) return array;
+var t = JU.AU.newInstanceO (array, newLength);
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+return t;
+}, "~O,~N");
+c$.newInstanceO = Clazz.defineMethod (c$, "newInstanceO", 
+ function (array, n) {
+{
+if (!array.getClass().getComponentType)
+return new Array(n);
+}}, "~O,~N");
+c$.getLength = Clazz.defineMethod (c$, "getLength", 
+function (array) {
+{
+return array.length
+}}, "~O");
+c$.arrayCopyS = Clazz.defineMethod (c$, "arrayCopyS", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  new Array (newLength);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyII = Clazz.defineMethod (c$, "arrayCopyII", 
+function (array, newLength) {
+var t = JU.AU.newInt2 (newLength);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyPt = Clazz.defineMethod (c$, "arrayCopyPt", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  new Array (newLength);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyF = Clazz.defineMethod (c$, "arrayCopyF", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  Clazz.newFloatArray (newLength, 0);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyI = Clazz.defineMethod (c$, "arrayCopyI", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  Clazz.newIntArray (newLength, 0);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyRangeI = Clazz.defineMethod (c$, "arrayCopyRangeI", 
+function (array, i0, n) {
+if (array == null) return null;
+var oldLength = array.length;
+if (n == -1) n = oldLength;
+if (n == -2) n = Clazz.doubleToInt (oldLength / 2);
+n = n - i0;
+var t =  Clazz.newIntArray (n, 0);
+System.arraycopy (array, i0, t, 0, n);
+return t;
+}, "~A,~N,~N");
+c$.arrayCopyRangeRevI = Clazz.defineMethod (c$, "arrayCopyRangeRevI", 
+function (array, i0, n) {
+if (array == null) return null;
+var t = JU.AU.arrayCopyRangeI (array, i0, n);
+if (n < 0) n = array.length;
+for (var i = Clazz.doubleToInt (n / 2); --i >= 0; ) JU.AU.swapInt (t, i, n - 1 - i);
+
+return t;
+}, "~A,~N,~N");
+c$.arrayCopyShort = Clazz.defineMethod (c$, "arrayCopyShort", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  Clazz.newShortArray (newLength, 0);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyByte = Clazz.defineMethod (c$, "arrayCopyByte", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  Clazz.newByteArray (newLength, 0);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.arrayCopyBool = Clazz.defineMethod (c$, "arrayCopyBool", 
+function (array, newLength) {
+if (newLength < 0) newLength = array.length;
+var t =  Clazz.newBooleanArray (newLength, false);
+if (array != null) {
+var oldLength = array.length;
+System.arraycopy (array, 0, t, 0, oldLength < newLength ? oldLength : newLength);
+}return t;
+}, "~A,~N");
+c$.swapInt = Clazz.defineMethod (c$, "swapInt", 
+function (array, indexA, indexB) {
+var t = array[indexA];
+array[indexA] = array[indexB];
+array[indexB] = t;
+}, "~A,~N,~N");
+c$.dumpArray = Clazz.defineMethod (c$, "dumpArray", 
+function (msg, A, x1, x2, y1, y2) {
+var s = "dumpArray: " + msg + "\n";
+for (var x = x1; x <= x2; x++) s += "\t*" + x + "*";
+
+for (var y = y2; y >= y1; y--) {
+s += "\n*" + y + "*";
+for (var x = x1; x <= x2; x++) s += "\t" + (x < A.length && y < A[x].length ? A[x][y] : NaN);
+
+}
+return s;
+}, "~S,~A,~N,~N,~N,~N");
+c$.dumpIntArray = Clazz.defineMethod (c$, "dumpIntArray", 
+function (A, n) {
+var str = "";
+for (var i = 0; i < n; i++) str += " " + A[i];
+
+return str;
+}, "~A,~N");
+c$.sortedItem = Clazz.defineMethod (c$, "sortedItem", 
+function (v, n) {
+if (v.size () == 0) return null;
+if (v.size () == 1) return v.get (0);
+var keys = v.toArray ( new Array (v.size ()));
+java.util.Arrays.sort (keys);
+return keys[n % keys.length];
+}, "JU.Lst,~N");
+c$.createArrayOfArrayList = Clazz.defineMethod (c$, "createArrayOfArrayList", 
+function (size) {
+return  new Array (size);
+}, "~N");
+c$.createArrayOfHashtable = Clazz.defineMethod (c$, "createArrayOfHashtable", 
+function (size) {
+return  new Array (size);
+}, "~N");
+c$.swap = Clazz.defineMethod (c$, "swap", 
+function (o, i, j) {
+var oi = o[i];
+o[i] = o[j];
+o[j] = oi;
+}, "~A,~N,~N");
+c$.newFloat2 = Clazz.defineMethod (c$, "newFloat2", 
+function (n) {
+{
+return Clazz.newArray(n, null);
+}}, "~N");
+c$.newInt2 = Clazz.defineMethod (c$, "newInt2", 
+function (n) {
+{
+return Clazz.newArray(n, null);
+}}, "~N");
+c$.newInt3 = Clazz.defineMethod (c$, "newInt3", 
+function (nx, ny) {
+{
+return Clazz.newArray(nx, null);
+}}, "~N,~N");
+c$.newFloat3 = Clazz.defineMethod (c$, "newFloat3", 
+function (nx, ny) {
+{
+return Clazz.newArray(nx, null);
+}}, "~N,~N");
+c$.newInt4 = Clazz.defineMethod (c$, "newInt4", 
+function (n) {
+{
+return Clazz.newArray(n, null);
+}}, "~N");
+c$.newShort2 = Clazz.defineMethod (c$, "newShort2", 
+function (n) {
+{
+return Clazz.newArray(n, null);
+}}, "~N");
+c$.newByte2 = Clazz.defineMethod (c$, "newByte2", 
+function (n) {
+{
+return Clazz.newArray(n, null);
+}}, "~N");
+c$.newDouble2 = Clazz.defineMethod (c$, "newDouble2", 
+function (n) {
+{
+return Clazz.newArray(n, null);
+}}, "~N");
+c$.removeMapKeys = Clazz.defineMethod (c$, "removeMapKeys", 
+function (map, root) {
+var list =  new JU.Lst ();
+for (var key, $key = map.keySet ().iterator (); $key.hasNext () && ((key = $key.next ()) || true);) if (key.startsWith (root)) list.addLast (key);
+
+for (var i = list.size (); --i >= 0; ) map.remove (list.get (i));
+
+return list.size ();
+}, "java.util.Map,~S");
+c$.isAS = Clazz.defineMethod (c$, "isAS", 
+function (x) {
+{
+return Clazz.isAS(x);
+}}, "~O");
+c$.isASS = Clazz.defineMethod (c$, "isASS", 
+function (x) {
+{
+return Clazz.isASS(x);
+}}, "~O");
+c$.isAP = Clazz.defineMethod (c$, "isAP", 
+function (x) {
+{
+return Clazz.isAP(x);
+}}, "~O");
+c$.isAF = Clazz.defineMethod (c$, "isAF", 
+function (x) {
+{
+return Clazz.isAF(x);
+}}, "~O");
+c$.isAFloat = Clazz.defineMethod (c$, "isAFloat", 
+function (x) {
+{
+return Clazz.isAFloat(x);
+}}, "~O");
+c$.isAD = Clazz.defineMethod (c$, "isAD", 
+function (x) {
+{
+return Clazz.isAF(x);
+}}, "~O");
+c$.isADD = Clazz.defineMethod (c$, "isADD", 
+function (x) {
+{
+return Clazz.isAFF(x);
+}}, "~O");
+c$.isAB = Clazz.defineMethod (c$, "isAB", 
+function (x) {
+{
+return Clazz.isAI(x);
+}}, "~O");
+c$.isAI = Clazz.defineMethod (c$, "isAI", 
+function (x) {
+{
+return Clazz.isAI(x);
+}}, "~O");
+c$.isAII = Clazz.defineMethod (c$, "isAII", 
+function (x) {
+{
+return Clazz.isAII(x);
+}}, "~O");
+c$.isAFF = Clazz.defineMethod (c$, "isAFF", 
+function (x) {
+{
+return Clazz.isAFF(x);
+}}, "~O");
+c$.isAFFF = Clazz.defineMethod (c$, "isAFFF", 
+function (x) {
+{
+return Clazz.isAFFF(x);
+}}, "~O");
+c$.ensureSignedBytes = Clazz.defineMethod (c$, "ensureSignedBytes", 
+function (b) {
+if (b != null) {
+{
+for (var i = b.length; --i >= 0;) { var j = b[i] & 0xFF; if
+(j >= 0x80) j -= 0x100; b[i] = j; }
+}}return b;
+}, "~A");
+});