fn pack_address<W: Write>(
    address: &Address,
    codec: &mut Codec<W>
) -> Result<(), WriteError>