[dist4]message_header // num_bytes
[u4]0 // version
[u4]0 // interface ID
[u4]20 // name
[u4]0 // flags
[u4]0 // padding
[anchr]message_header
[dist4]method20_params // num_bytes
[u4]0 // version
[dist8]map_data_ptr // param0
[anchr]method20_params
[anchr]map_data_ptr
[dist4]map_data_struct_header // num_bytes
[u4]0 // version
[dist8]key_array_ptr
[dist8]value_array_ptr
[anchr]map_data_struct_header
[anchr]key_array_ptr
[dist4]key_array_member // num_bytes
[u4]2 // num_elements
[dist8]key_struct_b_1
[dist8]key_struct_b_2
[anchr]key_array_member
[anchr]key_struct_b_1
[dist4]key_struct_b_1_member // num_bytes
[u4]0 // version
[dist8]key_struct_a_1 // struct_a
[anchr]key_struct_b_1_member
[anchr]key_struct_a_1
[dist4]key_struct_a_1_member // num_bytes
[u4]0 // version
[u8]1234 // i
[anchr]key_struct_a_1_member
[anchr]key_struct_b_2
[dist4]key_struct_b_2_member // num_bytes
[u4]0 // version
[dist8]key_struct_a_2 // struct_a
[anchr]key_struct_b_2_member
[anchr]key_struct_a_2
[dist4]key_struct_a_2_member // num_bytes
[u4]0 // version
[u8]5678 // i
[anchr]key_struct_a_2_member
[anchr]value_array_ptr
[dist4]value_array_member // num_bytes
[u4]2 // num_elements
[u1]1
[u1]2
[anchr]value_array_member