code: public static long key(int x, int y, int z) {
          return ((long) ((x >> 11) & 0x100000 | x & 0xFFFFF)) << 42 | ((long) ((y >> 11) & 0x100000 | y & 0xFFFFF)) << 21 | ((z >> 11) & 0x100000 | z & 0xFFFFF);
      }
docs: Packs the most significant and the twenty least significant of each int into a <code>long</code>
  
  @param x an <code>int</code> value
  @param y an <code>int</code> value
  @param z an <code>int</code> value
  @return the most significant and the twenty least significant of each int packed into a <code>long</code>