pub fn encode_uint<'a, T: Serialize>(x: T, buf: &'a mut [u8]) -> &'a [u8] where
    <T as Serialize>::MaxEncLen: 'a,