public short ReadVInt16() { var res = ReadVInt64(); if (res > short.MaxValue || res < short.MinValue) throw new InvalidDataException( $"Reading VInt16 overflowed with {res}"); return (short)res; }