docs: public static int compare(long[] x, long[] y) {
      if(x == null) {
        return (y == null) ? 0 : -1;
      }
      if(y == null) {
        return +1;
      }
      int p = Math.min(x.length, y.length) - 1;
      for(int i = x.length - 1; i > p; i--) {
        if(x[i] != 0) {
          return +1;
        }
      }
      for(int i = y.length - 1; i > p; i--) {
        if(y[i] != 0) {
          return -1;
        }
      }
      for(; p >= 0; p--) {
        final long xp = x[p], yp = y[p];
        if(xp != yp) {
          return xp < 0 ? (yp < 0 && yp < xp) ? -1 : +1 : (yp < 0 || xp < yp) ? -1 : +1;
        }
      }
      return 0;
    }