code: static public String hex(long i, int places) {
          if (i == Long.MIN_VALUE) return "-8000000000000000";
          boolean negative = i < 0;
          if (negative) {
              i = -i;
          }
          String result = Long.toString(i, 16).toUpperCase(Locale.ENGLISH);
          if (result.length() < places) {
              result = "0000000000000000".substring(result.length(),places) + result;
          }
          if (negative) {
              return '-' + result;
          }
          return result;
      }
docs: Supplies a zero-padded hex representation of an integer (without 0x)