docs: def _int_size(x):
      """Return the smallest size int that can store the value"""
      if -0x80 <= x <= 0x7F:
          return 1
      elif -0x8000 <= x <= 0x7FFF:
          return 2
      elif -0x80000000 <= x <= 0x7FFFFFFF:
          return 4
      elif long(-0x8000000000000000) <= x <= long(0x7FFFFFFFFFFFFFFF):
          return 8
      else:
          raise RuntimeError("Cannot represent value: " + str(x))