refactored _pack_subfields_hash in separate function