efficiently store signed integers in varint
store signed integers efficiently, as per protocol-buffers.
For unsigned integers use varint.
Integers are mapped to positive integers, so that positive integers become positive even numbers (n2) and negative integers become positive odd numbers. (n-2 - 1)
This is the same as moving the sign bit from the most significant possition to the least significant. Otherwise, varint will encode negative numbers as large integers.
var varint =var svarint =consoleconsole//=> unsigned [255,255,255, 15]// signed