def EncodeVarLengthNumber(value):
 byte_str = ''
 while (value >= 128):
  byte_str += struct.pack('>B', ((value & 127) | 128))
  value >>= 7
 byte_str += struct.pack('>B', (value & 127))
 return byte_str

def EncodeVarLengthNumber ( value ) : byte_str = '' while ( value >= 128 ) : byte_str += struct . pack ( '>B' , ( ( value & 127 ) | 128 ) ) value >>= 7 byte_str += struct . pack ( '>B' , ( value & 127 ) ) return byte_str
uses a variable length encoding scheme .