fn unpack_pool_state(codec: &mut Codec<&[u8]>) -> Result<PoolState, ReadError>