code: def inflate_long(s, always_positive=False):
      "turns a normalized byte string into a long-int (adapted from Crypto.Util.number)"
      out = 0L
      negative = 0
      if not always_positive and (len(s) > 0) and (ord(s[0]) >= 0x80):
          negative = 1
      if len(s) % 4:
          filler = '\x00'
          if negative:
              filler = '\xff'
          s = filler * (4 - len(s) % 4) + s
      for i in range(0, len(s), 4):
          out = (out << 32) + struct.unpack('>I', s[i:i+4])[0]
      if negative:
          out -= (1L << (8 * len(s)))
      return ouf inflate_long(s, always_positive=False):
      "turns a normalized byte string into a long-int (adapted from Crypto.Util.number)"
      out = 0L
      negative = 0
      if not always_positive and (len(s) > 0) and (ord(s[0]) >= 0x80):
          negative = 1
      if len(s) % 4:
          filler = '\x00'
          if negative:
              filler = '\xff'
          s = filler * (4 - len(s) % 4) + s
      for i in range(0, len(s), 4):
          out = (out << 32) + struct.unpack('>I', s[i:i+4])[0]
      if negative:
          out -= (1L << (8 * len(s)))
      return out
docs: turns a normalized byte string into a long-int (adapted from Crypto.Util.number)