{
  "software": {
    "companion_core": "Y317 / v15.3.3-r1",
    "build": "2018-03-16T21:23:48Z",
    "native_scope": "Earlier MCU addresses are not image A addresses or a version-matched companion peer."
  },
  "counts": {
    "xml_models": 135,
    "nested_models": 12,
    "models": 147,
    "decoder_fields": 567,
    "encoder_fields": 567
  },
  "schema_semantics": "Ordered model layouts, not executable codecs or a complete decoder admission grammar. MAX_SIZE is nominal. Null offsets denote variable preceding size.",
  "models": {
    "domain.vehicle.v1.models.ActuatorTestRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ActuatorTestRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.ActuatorTestRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ActuatorTestRequestSerializer",
      "java_fields": [
        {
          "name": "type",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "time",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[3]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "3",
          "value": 3
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "9",
          "value": 9
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.b.e.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ActuatorTestRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "type",
            "accessor": "setType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "time",
            "accessor": "setTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.b.e.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ActuatorTestRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "type",
            "accessor": "getType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "time",
            "accessor": "getTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 9,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 9,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ArrayChanged": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ArrayChanged",
      "binder_class": "domain.vehicle.v1.binders.someip.ArrayChangedBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ArrayChangedSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "mode",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "recordAddress",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "start",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "elements",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "8",
          "value": 8
        }
      },
      "decoder": {
        "delegate": {
          "class": "com.google.gson.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ArrayChanged;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "mode",
            "accessor": "setMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "recordAddress",
            "accessor": "setRecordAddress",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "start",
            "accessor": "setStart",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "elements",
            "accessor": "setElements",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 8
      },
      "encoder": {
        "delegate": {
          "class": "com.google.gson.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ArrayChanged;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "mode",
            "accessor": "getMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "recordAddress",
            "accessor": "getRecordAddress",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "start",
            "accessor": "getStart",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "elements",
            "accessor": "getElements",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 8
      },
      "unresolved": [],
      "max_size": 8,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 8,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ArrayHeader": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ArrayHeader",
      "binder_class": "domain.vehicle.v1.binders.someip.ArrayHeaderBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ArrayHeaderSerializer",
      "java_fields": [
        {
          "name": "asgId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "transactionId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "mode",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "recordAddress",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "start",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "elements",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "8",
          "value": 8
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.d.b.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "asgId",
            "accessor": "setAsgId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "transactionId",
            "accessor": "setTransactionId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "mode",
            "accessor": "setMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "recordAddress",
            "accessor": "setRecordAddress",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "start",
            "accessor": "setStart",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 5,
            "field": "elements",
            "accessor": "setElements",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 8
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "asgId",
            "accessor": "getAsgId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "transactionId",
            "accessor": "getTransactionId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "mode",
            "accessor": "getMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "recordAddress",
            "accessor": "getRecordAddress",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "start",
            "accessor": "getStart",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 5,
            "field": "elements",
            "accessor": "getElements",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 8
      },
      "unresolved": [],
      "max_size": 8,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 8,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ArrayResponseHeader": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ArrayResponseHeader",
      "binder_class": "domain.vehicle.v1.binders.someip.ArrayResponseHeaderBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ArrayResponseHeaderSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "arrayHeader",
          "java_type": "ArrayHeader",
          "initializer": null
        },
        {
          "name": "totalElements",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "12",
          "value": 12
        }
      },
      "decoder": {
        "delegate": {
          "class": "com.google.gson.internal.b$1",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "someip.d.b.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "totalElements",
            "accessor": "setTotalElements",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 12
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "domain.vehicle.v1.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "totalElements",
            "accessor": "getTotalElements",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 12
      },
      "unresolved": [],
      "max_size": 12,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 12,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.AuthenticTimeRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.AuthenticTimeRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.AuthenticTimeRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.AuthenticTimeRequestSerializer",
      "java_fields": [
        {
          "name": "challenge",
          "java_type": "byte[]",
          "initializer": "new byte[32]"
        },
        {
          "name": "challengeLength",
          "java_type": "int",
          "initializer": "16"
        },
        {
          "name": "keyId",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "minimalTime",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "rtcTime",
          "java_type": "long",
          "initializer": null
        }
      ],
      "constants": {
        "CHALLENGE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "CHALLENGE_MAX_LENGTH": {
          "expression": "32",
          "value": 32
        },
        "CHALLENGE_MIN_LENGTH": {
          "expression": "16",
          "value": 16
        },
        "KEY_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "KEY_ID_LENGTH": {
          "expression": "33 - f.a.d()",
          "value": 32
        },
        "MAX_SIZE": {
          "expression": "36 + (4 + KEY_ID_LENGTH + f.a.d()) + 4 + 4",
          "value": 81
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/AuthenticTimeRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "challenge",
            "accessor": "setChallengeElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 32,
              "public_setter_guards": [
                "array.length >= 16 && array.length <= 32",
                "length >= 16 && length <= 32"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "keyId",
            "accessor": "setKeyId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "minimalTime",
            "accessor": "setMinimalTime",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "rtcTime",
            "accessor": "setRtcTime",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "com.google.gson.internal.b$1",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/AuthenticTimeRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "challenge",
            "accessor": "getChallengeElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getChallengeLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 32,
              "public_setter_guards": [
                "array.length >= 16 && array.length <= 32",
                "length >= 16 && length <= 32"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "keyId",
            "accessor": "getKeyId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 32,
              "max_constant": "KEY_ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "minimalTime",
            "accessor": "getMinimalTime",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "rtcTime",
            "accessor": "getRtcTime",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 81,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 81,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.AuthenticTimeResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.AuthenticTimeResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.AuthenticTimeResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.AuthenticTimeResponseSerializer",
      "java_fields": [
        {
          "name": "result",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "header",
          "java_type": "byte[]",
          "initializer": "new byte[233]"
        },
        {
          "name": "headerLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "signatureLength",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "HEADER_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "HEADER_MAX_LENGTH": {
          "expression": "233",
          "value": 233
        },
        "HEADER_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "243",
          "value": 243
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/AuthenticTimeResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "result",
            "accessor": "setResult",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "header",
            "accessor": "setHeaderElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 233,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 233",
                "length >= 0 && length <= 233"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "signatureLength",
            "accessor": "setSignatureLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/AuthenticTimeResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "result",
            "accessor": "getResult",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "header",
            "accessor": "getHeaderElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getHeaderLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 233,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 233",
                "length >= 0 && length <= 233"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "signatureLength",
            "accessor": "getSignatureLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 243,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 243,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.AuthenticTimeSignature": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.AuthenticTimeSignature",
      "binder_class": "domain.vehicle.v1.binders.someip.AuthenticTimeSignatureBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.AuthenticTimeSignatureSerializer",
      "java_fields": [
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "signature",
          "java_type": "byte[]",
          "initializer": "new byte[244]"
        },
        {
          "name": "signatureLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "SIGNATURE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SIGNATURE_MAX_LENGTH": {
          "expression": "244",
          "value": 244
        },
        "SIGNATURE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/AuthenticTimeSignature;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "signature",
            "accessor": "setSignatureElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 244,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 244",
                "length >= 0 && length <= 244"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/AuthenticTimeSignature;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "signature",
            "accessor": "getSignatureElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getSignatureLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 244,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 244",
                "length >= 0 && length <= 244"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlChargeState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlChargeState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlChargeStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlChargeStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "batteryClimateState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "chargingState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "chargingMode",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "startReason",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "remainingChargingTime",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "targetSOC",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "currentChargeLevel",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "9",
          "value": 9
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.l",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargeState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "batteryClimateState",
            "accessor": "setBatteryClimateState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "chargingState",
            "accessor": "setChargingState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "chargingMode",
            "accessor": "setChargingMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "startReason",
            "accessor": "setStartReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "remainingChargingTime",
            "accessor": "setRemainingChargingTime",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 2
          },
          {
            "order": 6,
            "field": "targetSOC",
            "accessor": "setTargetSOC",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "currentChargeLevel",
            "accessor": "setCurrentChargeLevel",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 9
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargeState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "batteryClimateState",
            "accessor": "getBatteryClimateState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "chargingState",
            "accessor": "getChargingState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "chargingMode",
            "accessor": "getChargingMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "startReason",
            "accessor": "getStartReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "remainingChargingTime",
            "accessor": "getRemainingChargingTime",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 2
          },
          {
            "order": 6,
            "field": "targetSOC",
            "accessor": "getTargetSOC",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "currentChargeLevel",
            "accessor": "getCurrentChargeLevel",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 9
      },
      "unresolved": [],
      "max_size": 9,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 9,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlChargeStatus": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlChargeStatus",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlChargeStatusBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlChargeStatusSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "actualChargeRate",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "chargeRateUnit",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.m",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargeStatus;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "actualChargeRate",
            "accessor": "setActualChargeRate",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "chargeRateUnit",
            "accessor": "setChargeRateUnit",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.k",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargeStatus;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "actualChargeRate",
            "accessor": "getActualChargeRate",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "chargeRateUnit",
            "accessor": "getChargeRateUnit",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlChargeTarget": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlChargeTarget",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlChargeTargetBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlChargeTargetSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "year",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "month",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "day",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "hour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "minute",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "8",
          "value": 8
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargeTarget;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "year",
            "accessor": "setYear",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "month",
            "accessor": "setMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "day",
            "accessor": "setDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "hour",
            "accessor": "setHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "minute",
            "accessor": "setMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 8
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.l",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargeTarget;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 8
      },
      "unresolved": [],
      "max_size": 8,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 8,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlChargingSockets": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlChargingSockets",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlChargingSocketsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlChargingSocketsSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "plugState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "lockState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "flapState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "flapLockState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "errorState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "6",
          "value": 6
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargingSockets;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "plugState",
            "accessor": "setPlugState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "lockState",
            "accessor": "setLockState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "flapState",
            "accessor": "setFlapState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "flapLockState",
            "accessor": "setFlapLockState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "errorState",
            "accessor": "setErrorState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 6
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.m",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlChargingSockets;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "plugState",
            "accessor": "getPlugState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "lockState",
            "accessor": "getLockState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "flapState",
            "accessor": "getFlapState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "flapLockState",
            "accessor": "getFlapLockState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "errorState",
            "accessor": "getErrorState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 6
      },
      "unresolved": [],
      "max_size": 6,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 6,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlClimateState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlClimateState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlClimateStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlClimateStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "climateState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "climatingTime",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "isClimatisationActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isElectricalheatingActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isElectricCoolingActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isVentilationActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isFuelBasedHeatingActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "seatHeaterWindowHeaterState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "windowHeaterFrontActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "windowHeaterRearActive",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "12",
          "value": 12
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.a.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlClimateState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "climateState",
            "accessor": "setClimateState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "climatingTime",
            "accessor": "setClimatingTime",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "someip.e.d.f:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "isClimatisationActive",
            "accessor": "setIsClimatisationActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isElectricalheatingActive",
            "accessor": "setIsElectricalheatingActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "isElectricCoolingActive",
            "accessor": "setIsElectricCoolingActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "isVentilationActive",
            "accessor": "setIsVentilationActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "isFuelBasedHeatingActive",
            "accessor": "setIsFuelBasedHeatingActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "seatHeaterWindowHeaterState",
            "accessor": "setSeatHeaterWindowHeaterState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "windowHeaterFrontActive",
            "accessor": "setWindowHeaterFrontActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "windowHeaterRearActive",
            "accessor": "setWindowHeaterRearActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 12
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlClimateState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "climateState",
            "accessor": "getClimateState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "climatingTime",
            "accessor": "getClimatingTime",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.b:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "isClimatisationActive",
            "accessor": "getIsClimatisationActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isElectricalheatingActive",
            "accessor": "getIsElectricalheatingActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "isElectricCoolingActive",
            "accessor": "getIsElectricCoolingActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "isVentilationActive",
            "accessor": "getIsVentilationActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "isFuelBasedHeatingActive",
            "accessor": "getIsFuelBasedHeatingActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "seatHeaterWindowHeaterState",
            "accessor": "getSeatHeaterWindowHeaterState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "windowHeaterFrontActive",
            "accessor": "getWindowHeaterFrontActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "windowHeaterRearActive",
            "accessor": "getWindowHeaterRearActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 12
      },
      "unresolved": [],
      "max_size": 12,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 12,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlPlug": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlPlug",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlPlugBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlPlugSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "plugState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "lockSetup",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "supplyState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "autolockError",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.net.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlug;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "plugState",
            "accessor": "setPlugState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "lockSetup",
            "accessor": "setLockSetup",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "supplyState",
            "accessor": "setSupplyState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "autolockError",
            "accessor": "setAutolockError",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.a.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlug;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "plugState",
            "accessor": "getPlugState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "lockSetup",
            "accessor": "getLockSetup",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "supplyState",
            "accessor": "getSupplyState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "autolockError",
            "accessor": "getAutolockError",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlPlugAutoUnlockSet": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlPlugAutoUnlockSet",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlPlugAutoUnlockSetBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlPlugAutoUnlockSetSerializer",
      "java_fields": [
        {
          "name": "isAcPermanentActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isDcPermanentActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isAcOnceActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isDcOnceActive",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlugAutoUnlockSet;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "isAcPermanentActive",
            "accessor": "setIsAcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isDcPermanentActive",
            "accessor": "setIsDcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isAcOnceActive",
            "accessor": "setIsAcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isDcOnceActive",
            "accessor": "setIsDcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlugAutoUnlockSet;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "isAcPermanentActive",
            "accessor": "getIsAcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isDcPermanentActive",
            "accessor": "getIsDcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isAcOnceActive",
            "accessor": "getIsAcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isDcOnceActive",
            "accessor": "getIsDcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlPlugAutounlockStatus": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlPlugAutounlockStatus",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlPlugAutounlockStatusBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlPlugAutounlockStatusSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "isAcPermanentActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isDcPermanentActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isAcOnceActive",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isDcOnceActive",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.configuration.a.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlugAutounlockStatus;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isAcPermanentActive",
            "accessor": "setIsAcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isDcPermanentActive",
            "accessor": "setIsDcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isAcOnceActive",
            "accessor": "setIsAcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isDcOnceActive",
            "accessor": "setIsDcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.a.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlugAutounlockStatus;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isAcPermanentActive",
            "accessor": "getIsAcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isDcPermanentActive",
            "accessor": "getIsDcPermanentActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isAcOnceActive",
            "accessor": "getIsAcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isDcOnceActive",
            "accessor": "getIsDcOnceActive",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlPlugDisplayState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlPlugDisplayState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlPlugDisplayStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlPlugDisplayStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "ledColor",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "ledState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.misc.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlugDisplayState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "ledColor",
            "accessor": "setLedColor",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "ledState",
            "accessor": "setLedState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.configuration.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlPlugDisplayState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "ledColor",
            "accessor": "getLedColor",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "ledState",
            "accessor": "getLedState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlProfile0RA7": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlProfile0RA7",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlProfile0RA7Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlProfile0RA7Serializer",
      "java_fields": [
        {
          "name": "realRA",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "operation",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "operation2",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "maxCurrent",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "minChargeLevel",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "temperature",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "unitTemperature",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "leadTime",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "holdingTimePlug",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "holdingTimeBattery",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "11",
          "value": 11
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.net.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlProfile0RA7;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "realRA",
            "accessor": "setRealRA",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "operation",
            "accessor": "setOperation",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "operation2",
            "accessor": "setOperation2",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "maxCurrent",
            "accessor": "setMaxCurrent",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "minChargeLevel",
            "accessor": "setMinChargeLevel",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "temperature",
            "accessor": "setTemperature",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "unitTemperature",
            "accessor": "setUnitTemperature",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "leadTime",
            "accessor": "setLeadTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "holdingTimePlug",
            "accessor": "setHoldingTimePlug",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "holdingTimeBattery",
            "accessor": "setHoldingTimeBattery",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 11
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.misc.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlProfile0RA7;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "realRA",
            "accessor": "getRealRA",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "operation",
            "accessor": "getOperation",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "operation2",
            "accessor": "getOperation2",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "maxCurrent",
            "accessor": "getMaxCurrent",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "minChargeLevel",
            "accessor": "getMinChargeLevel",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "temperature",
            "accessor": "getTemperature",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "unitTemperature",
            "accessor": "getUnitTemperature",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "leadTime",
            "accessor": "getLeadTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "holdingTimePlug",
            "accessor": "getHoldingTimePlug",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "holdingTimeBattery",
            "accessor": "getHoldingTimeBattery",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 11
      },
      "unresolved": [],
      "max_size": 11,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 11,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlProfileRA5": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlProfileRA5",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlProfileRA5Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlProfileRA5Serializer",
      "java_fields": [
        {
          "name": "realRA",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "pos",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "charge",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "climate",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "climateWithoutExternalSupply",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "refProviderId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "operation2bit2",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "operation2bit3",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "maxCurrent",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "targetChargeLevel",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "name",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "NAME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "NAME_LENGTH": {
          "expression": "62 - f.a.d()",
          "value": 61
        },
        "MAX_SIZE": {
          "expression": "10 + (4 + NAME_LENGTH + f.a.d())",
          "value": 76
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.net.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlProfileRA5;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "realRA",
            "accessor": "setRealRA",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "pos",
            "accessor": "setPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "charge",
            "accessor": "setCharge",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "climate",
            "accessor": "setClimate",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "climateWithoutExternalSupply",
            "accessor": "setClimateWithoutExternalSupply",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "refProviderId",
            "accessor": "setRefProviderId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "operation2bit2",
            "accessor": "setOperation2bit2",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "operation2bit3",
            "accessor": "setOperation2bit3",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "maxCurrent",
            "accessor": "setMaxCurrent",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "targetChargeLevel",
            "accessor": "setTargetChargeLevel",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "name",
            "accessor": "setName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.net.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlProfileRA5;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "realRA",
            "accessor": "getRealRA",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "pos",
            "accessor": "getPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "charge",
            "accessor": "getCharge",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "climate",
            "accessor": "getClimate",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "climateWithoutExternalSupply",
            "accessor": "getClimateWithoutExternalSupply",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "refProviderId",
            "accessor": "getRefProviderId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "operation2bit2",
            "accessor": "getOperation2bit2",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "operation2bit3",
            "accessor": "getOperation2bit3",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "maxCurrent",
            "accessor": "getMaxCurrent",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "targetChargeLevel",
            "accessor": "getTargetChargeLevel",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "name",
            "accessor": "getName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 61,
              "max_constant": "NAME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 76,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 76,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlProviderData": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlProviderData",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlProviderDataBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlProviderDataSerializer",
      "java_fields": [
        {
          "name": "nightRateStartHour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "nightRateStartMinute",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "nightRateEndHour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "nightRateEndMinute",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "pos",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.net.k",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlProviderData;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "nightRateStartHour",
            "accessor": "setNightRateStartHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "nightRateStartMinute",
            "accessor": "setNightRateStartMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "nightRateEndHour",
            "accessor": "setNightRateEndHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "nightRateEndMinute",
            "accessor": "setNightRateEndMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "pos",
            "accessor": "setPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.net.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlProviderData;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "nightRateStartHour",
            "accessor": "getNightRateStartHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "nightRateStartMinute",
            "accessor": "getNightRateStartMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "nightRateEndHour",
            "accessor": "getNightRateEndHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "nightRateEndMinute",
            "accessor": "getNightRateEndMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "pos",
            "accessor": "getPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlTimer": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlTimer",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlTimerBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlTimerSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "refProfileID",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "chargeSchedule",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "climateSchedule",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "cycle",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "hour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "minute",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "year",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "month",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "day",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "10",
          "value": 10
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.power.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlTimer;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "refProfileID",
            "accessor": "setRefProfileID",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "chargeSchedule",
            "accessor": "setChargeSchedule",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "climateSchedule",
            "accessor": "setClimateSchedule",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "cycle",
            "accessor": "setCycle",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "hour",
            "accessor": "setHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "minute",
            "accessor": "setMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "year",
            "accessor": "setYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "month",
            "accessor": "setMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "day",
            "accessor": "setDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 10
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.net.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlTimer;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "refProfileID",
            "accessor": "getRefProfileID",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "chargeSchedule",
            "accessor": "getChargeSchedule",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "climateSchedule",
            "accessor": "getClimateSchedule",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "cycle",
            "accessor": "getCycle",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 10
      },
      "unresolved": [],
      "max_size": 10,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 10,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlTimerState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlTimerState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlTimerStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlTimerStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "programmedTimer",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "expiredTimer",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.power.PowerManagerService$c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlTimerState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "programmedTimer",
            "accessor": "setProgrammedTimer",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "expiredTimer",
            "accessor": "setExpiredTimer",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.net.k",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlTimerState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "programmedTimer",
            "accessor": "getProgrammedTimer",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "expiredTimer",
            "accessor": "getExpiredTimer",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlWCChargeModeSelectionState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlWCChargeModeSelectionState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlWCChargeModeSelectionStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlWCChargeModeSelectionStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "chargeMode",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "modificationReason",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "modificationState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.security.a.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCChargeModeSelectionState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "chargeMode",
            "accessor": "setChargeMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "modificationReason",
            "accessor": "setModificationReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "modificationState",
            "accessor": "setModificationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.power.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCChargeModeSelectionState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "chargeMode",
            "accessor": "getChargeMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "modificationReason",
            "accessor": "getModificationReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "modificationState",
            "accessor": "getModificationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlWCChargeState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlWCChargeState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlWCChargeStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlWCChargeStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "chargingState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "chargingMode",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.update.FirmwareManagerService$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCChargeState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "chargingState",
            "accessor": "setChargingState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "chargingMode",
            "accessor": "setChargingMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.power.PowerManagerService$c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCChargeState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "chargingState",
            "accessor": "getChargingState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "chargingMode",
            "accessor": "getChargingMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlWCConnectionState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlWCConnectionState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlWCConnectionStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlWCConnectionStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "panelState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "connectionState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "errorState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.update.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCConnectionState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "panelState",
            "accessor": "setPanelState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "connectionState",
            "accessor": "setConnectionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "errorState",
            "accessor": "setErrorState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.security.a.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCConnectionState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "panelState",
            "accessor": "getPanelState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "connectionState",
            "accessor": "getConnectionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "errorState",
            "accessor": "getErrorState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlWCDisplayState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlWCDisplayState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlWCDisplayStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlWCDisplayStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "ledColor",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "ledState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.update.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCDisplayState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "ledColor",
            "accessor": "setLedColor",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "ledState",
            "accessor": "setLedState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.update.FirmwareManagerService$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCDisplayState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "ledColor",
            "accessor": "getLedColor",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "ledState",
            "accessor": "getLedState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlWCSystemState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlWCSystemState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlWCSystemStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlWCSystemStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "systemState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "modificationReason",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "modificationState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.update.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCSystemState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "systemState",
            "accessor": "setSystemState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "modificationReason",
            "accessor": "setModificationReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "modificationState",
            "accessor": "setModificationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.update.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCSystemState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "systemState",
            "accessor": "getSystemState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "modificationReason",
            "accessor": "getModificationReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "modificationState",
            "accessor": "getModificationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryControlWCTemporaryDeactivationState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryControlWCTemporaryDeactivationState",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryControlWCTemporaryDeactivationStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryControlWCTemporaryDeactivationStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "temporaryDeactivationState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "modificationReason",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "modificationState",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "coreservices.update.a.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCTemporaryDeactivationState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "temporaryDeactivationState",
            "accessor": "setTemporaryDeactivationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "modificationReason",
            "accessor": "setModificationReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "modificationState",
            "accessor": "setModificationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.update.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryControlWCTemporaryDeactivationState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "temporaryDeactivationState",
            "accessor": "getTemporaryDeactivationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "modificationReason",
            "accessor": "getModificationReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "modificationState",
            "accessor": "getModificationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.BatteryTemperature": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.BatteryTemperature",
      "binder_class": "domain.vehicle.v1.binders.someip.BatteryTemperatureBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BatteryTemperatureSerializer",
      "java_fields": [
        {
          "name": "startTemperature",
          "java_type": "StatefulInt16",
          "initializer": null
        },
        {
          "name": "endTemperature",
          "java_type": "StatefulInt16",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "6",
          "value": 6
        }
      },
      "decoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.h",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryTemperature;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "startTemperature",
            "accessor": "getStartTemperature",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "endTemperature",
            "accessor": "getEndTemperature",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 6
      },
      "encoder": {
        "delegate": {
          "class": "coreservices.update.a.a.a$b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/BatteryTemperature;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "startTemperature",
            "accessor": "getStartTemperature",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "endTemperature",
            "accessor": "getEndTemperature",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 6
      },
      "unresolved": [],
      "max_size": 6,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 6,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.Bool": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.Bool",
      "binder_class": "domain.vehicle.v1.binders.someip.BoolBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.BoolSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "1",
          "value": 1
        }
      },
      "decoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.p",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Bool;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 1
      },
      "encoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Bool;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 1
      },
      "unresolved": [],
      "max_size": 1,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 1,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ChallengeListElement": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.ChallengeListElement",
      "binder_class": "domain.vehicle.v1.binders.someip.ChallengeListElementBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ChallengeListElementSerializer",
      "java_fields": [
        {
          "name": "type",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[32]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "32",
          "value": 32
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "37",
          "value": 37
        }
      },
      "decoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.a.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ChallengeListElement;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "type",
            "accessor": "setType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 32,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 32",
                "length >= 0 && length <= 32"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ChallengeListElement;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "type",
            "accessor": "getType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 32,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 32",
                "length >= 0 && length <= 32"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 37,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 37,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ChallengeListResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ChallengeListResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.ChallengeListResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ChallengeListResponseSerializer",
      "java_fields": [
        {
          "name": "header",
          "java_type": "ArrayResponseHeader",
          "initializer": "new ArrayResponseHeader()"
        },
        {
          "name": "elements",
          "java_type": "ChallengeListElement[]",
          "initializer": "new ChallengeListElement[5]"
        },
        {
          "name": "elementsLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "ELEMENTS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ELEMENTS_MAX_LENGTH": {
          "expression": "5",
          "value": 5
        },
        "ELEMENTS_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "201",
          "value": 201
        }
      },
      "decoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.a.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ChallengeListResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "com.google.gson.internal.b$1",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "setElementsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.ChallengeListElement",
                "delegate": [
                  "diagnostics.basicfunctions.a.a.g",
                  "a",
                  "(Ldomain/vehicle/v1/models/ChallengeListElement;[BII)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 5,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 5",
                "length >= 0 && length <= 5"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ChallengeListResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "domain.vehicle.v1.a.b",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "getElementsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.ChallengeListElement",
                "delegate": [
                  "domain.vehicle.v1.a.e",
                  "a",
                  "(Ldomain/vehicle/v1/models/ChallengeListElement;[BI)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getElementsLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 5,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 5",
                "length >= 0 && length <= 5"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 201,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 201,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ChallengeRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ChallengeRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.ChallengeRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ChallengeRequestSerializer",
      "java_fields": [
        {
          "name": "authorizationType",
          "java_type": "byte",
          "initializer": null
        },
        {
          "name": "userType",
          "java_type": "byte",
          "initializer": null
        },
        {
          "name": "user",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "USER_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "USER_LENGTH": {
          "expression": "101 - f.a.d()",
          "value": 100
        },
        "MAX_SIZE": {
          "expression": "2 + (4 + USER_LENGTH + f.a.d())",
          "value": 107
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.backend.mbb.v1.serializers.a",
          "method": "parse",
          "descriptor": "(Ldomain/vehicle/v1/models/ChallengeRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "authorizationType",
            "accessor": "setAuthorizationType",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "someip.e.d.b:([BII)B"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "userType",
            "accessor": "setUserType",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "someip.e.d.b:([BII)B"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "user",
            "accessor": "setUser",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.a.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ChallengeRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "authorizationType",
            "accessor": "getAuthorizationType",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(B[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "userType",
            "accessor": "getUserType",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(B[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "user",
            "accessor": "getUser",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 100,
              "max_constant": "USER_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 107,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 107,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ComfortPowerConsumption": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.ComfortPowerConsumption",
      "binder_class": "domain.vehicle.v1.binders.someip.ComfortPowerConsumptionBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ComfortPowerConsumptionSerializer",
      "java_fields": [
        {
          "name": "shortTermConsumption",
          "java_type": "StatefulUInt16",
          "initializer": null
        },
        {
          "name": "longTermConsumption",
          "java_type": "StatefulUInt16",
          "initializer": null
        },
        {
          "name": "cyclicConsumption",
          "java_type": "StatefulUInt16",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "9",
          "value": 9
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ComfortPowerConsumption;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "shortTermConsumption",
            "accessor": "getShortTermConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "longTermConsumption",
            "accessor": "getLongTermConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "cyclicConsumption",
            "accessor": "getCyclicConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 9
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ComfortPowerConsumption;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "shortTermConsumption",
            "accessor": "getShortTermConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "longTermConsumption",
            "accessor": "getLongTermConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "cyclicConsumption",
            "accessor": "getCyclicConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 9
      },
      "unresolved": [],
      "max_size": 9,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 9,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.CrankInhibitionRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.CrankInhibitionRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.CrankInhibitionRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.CrankInhibitionRequestSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "authenticationRequest",
          "java_type": "byte[]",
          "initializer": "new byte[8]"
        },
        {
          "name": "authenticationRequestLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_REQUEST_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_REQUEST_MAX_LENGTH": {
          "expression": "8",
          "value": 8
        },
        "AUTHENTICATION_REQUEST_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "20",
          "value": 20
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/CrankInhibitionRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "setAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "diagnostics.basicfunctions.a.a.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/CrankInhibitionRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "getAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationRequestLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 20,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 20,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.CrankInhibitionResult": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.CrankInhibitionResult",
      "binder_class": "domain.vehicle.v1.binders.someip.CrankInhibitionResultBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.CrankInhibitionResultSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[52]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "result",
          "java_type": "byte",
          "initializer": null
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "52",
          "value": 52
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "65",
          "value": 65
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/CrankInhibitionResult;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 52,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 52",
                "length >= 0 && length <= 52"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "result",
            "accessor": "setResult",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "someip.e.d.b:([BII)B"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.backend.mbb.v1.binders.b",
          "method": "serialize",
          "descriptor": "(Ldomain/vehicle/v1/models/CrankInhibitionResult;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 52,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 52",
                "length >= 0 && length <= 52"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "result",
            "accessor": "getResult",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(B[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 65,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 65,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.CruisingRangeDisplay": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.CruisingRangeDisplay",
      "binder_class": "domain.vehicle.v1.binders.someip.CruisingRangeDisplayBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.CruisingRangeDisplaySerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "distance",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "unit",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/CruisingRangeDisplay;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "distance",
            "accessor": "setDistance",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "unit",
            "accessor": "setUnit",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "domain.backend.mbb.v1.serializers.a",
          "method": "serialize",
          "descriptor": "(Ldomain/vehicle/v1/models/CruisingRangeDisplay;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "distance",
            "accessor": "getDistance",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "unit",
            "accessor": "getUnit",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DatasetAdaptionRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DatasetAdaptionRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.DatasetAdaptionRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DatasetAdaptionRequestSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "totalLength",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "length",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[238]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "238",
          "value": 238
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.j",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DatasetAdaptionRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "setTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "length",
            "accessor": "setLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 238,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 238",
                "length >= 0 && length <= 238"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DatasetAdaptionRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "getTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "length",
            "accessor": "getLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 238,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 238",
                "length >= 0 && length <= 238"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DatasetDatagram": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DatasetDatagram",
      "binder_class": "domain.vehicle.v1.binders.someip.DatasetDatagramBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DatasetDatagramSerializer",
      "java_fields": [
        {
          "name": "fileId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "totalLength",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "version",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[236]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "236",
          "value": 236
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.k",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DatasetDatagram;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fileId",
            "accessor": "setFileId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "setTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "version",
            "accessor": "setVersion",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 4
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 236,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 236",
                "length >= 0 && length <= 236"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.k",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DatasetDatagram;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fileId",
            "accessor": "getFileId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "getTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "version",
            "accessor": "getVersion",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 4
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 236,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 236",
                "length >= 0 && length <= 236"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DateTime": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DateTime",
      "binder_class": "domain.vehicle.v1.binders.someip.DateTimeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DateTimeSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "hour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "minute",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "second",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "day",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "month",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "year",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "8",
          "value": 8
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.m",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DateTime;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "hour",
            "accessor": "setHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "minute",
            "accessor": "setMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "second",
            "accessor": "setSecond",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "day",
            "accessor": "setDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "month",
            "accessor": "setMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "year",
            "accessor": "setYear",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 8
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.m",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DateTime;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "second",
            "accessor": "getSecond",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 8
      },
      "unresolved": [],
      "max_size": 8,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 8,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DeveloperMode": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DeveloperMode",
      "binder_class": "domain.vehicle.v1.binders.someip.DeveloperModeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DeveloperModeSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "mode",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.q",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DeveloperMode;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "mode",
            "accessor": "setMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.q",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DeveloperMode;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "mode",
            "accessor": "getMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DeveloperModeAuthentication": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DeveloperModeAuthentication",
      "binder_class": "domain.vehicle.v1.binders.someip.DeveloperModeAuthenticationBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DeveloperModeAuthenticationSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[16]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "errorCode",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "16",
          "value": 16
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "25",
          "value": 25
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.p",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DeveloperModeAuthentication;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 16,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 16",
                "length >= 0 && length <= 16"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "errorCode",
            "accessor": "setErrorCode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.p",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DeveloperModeAuthentication;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 16,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 16",
                "length >= 0 && length <= 16"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "errorCode",
            "accessor": "getErrorCode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 25,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 25,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DiagnosticsResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DiagnosticsResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.DiagnosticsResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DiagnosticsResponseSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "totalLength",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "length",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[238]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "238",
          "value": 238
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.s",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DiagnosticsResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "setTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "length",
            "accessor": "setLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 238,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 238",
                "length >= 0 && length <= 238"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.s",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DiagnosticsResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "getTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "length",
            "accessor": "getLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 238,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 238",
                "length >= 0 && length <= 238"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DoorState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DoorState",
      "binder_class": "domain.vehicle.v1.binders.someip.DoorStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DoorStateSerializer",
      "java_fields": [
        {
          "name": "closed",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "locked",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "safe",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.t",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DoorState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "closed",
            "accessor": "setClosed",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "locked",
            "accessor": "setLocked",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "safe",
            "accessor": "setSafe",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.t",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DoorState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "closed",
            "accessor": "getClosed",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "locked",
            "accessor": "getLocked",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "safe",
            "accessor": "getSafe",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DriverCardResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DriverCardResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.DriverCardResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DriverCardResponseSerializer",
      "java_fields": [
        {
          "name": "searchStatus",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "index",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "response",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "batteryLow",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "11",
          "value": 11
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.u",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DriverCardResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "searchStatus",
            "accessor": "setSearchStatus",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "index",
            "accessor": "setIndex",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "response",
            "accessor": "setResponse",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 4
          },
          {
            "order": 4,
            "field": "batteryLow",
            "accessor": "setBatteryLow",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 11
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.u",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DriverCardResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "searchStatus",
            "accessor": "getSearchStatus",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "index",
            "accessor": "getIndex",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "response",
            "accessor": "getResponse",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 4
          },
          {
            "order": 4,
            "field": "batteryLow",
            "accessor": "getBatteryLow",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 11
      },
      "unresolved": [],
      "max_size": 11,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 11,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DriverCardSearchRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DriverCardSearchRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.DriverCardSearchRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DriverCardSearchRequestSerializer",
      "java_fields": [
        {
          "name": "challenge",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "ids",
          "java_type": "long[]",
          "initializer": "new long[7]"
        },
        {
          "name": "idsLength",
          "java_type": "int",
          "initializer": "1"
        }
      ],
      "constants": {
        "IDS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "IDS_MAX_LENGTH": {
          "expression": "7",
          "value": 7
        },
        "IDS_MIN_LENGTH": {
          "expression": "1",
          "value": 1
        },
        "MAX_SIZE": {
          "expression": "36",
          "value": 36
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.v",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DriverCardSearchRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "challenge",
            "accessor": "setChallenge",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "ids",
            "accessor": "setIdsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "u32be",
                "bytes": 4,
                "primitive": "someip.e.d.g:([BII)J"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 7,
              "public_setter_guards": [
                "array.length > 0 && array.length <= 7",
                "length > 0 && length <= 7"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.v",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DriverCardSearchRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "challenge",
            "accessor": "getChallenge",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "ids",
            "accessor": "getIdsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "u32be",
                "bytes": 4,
                "primitive": "org.a.b.b.e.c.a:(J[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getIdsLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 7,
              "public_setter_guards": [
                "array.length > 0 && array.length <= 7",
                "length > 0 && length <= 7"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 36,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 36,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.DrivingCycle": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.DrivingCycle",
      "binder_class": "domain.vehicle.v1.binders.someip.DrivingCycleBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.DrivingCycleSerializer",
      "java_fields": [
        {
          "name": "duration",
          "java_type": "StatefulUInt16",
          "initializer": null
        },
        {
          "name": "distance",
          "java_type": "StatefulUInt16",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "6",
          "value": 6
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.w",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DrivingCycle;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "duration",
            "accessor": "getDuration",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "distance",
            "accessor": "getDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 6
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.w",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/DrivingCycle;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "duration",
            "accessor": "getDuration",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "distance",
            "accessor": "getDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 6
      },
      "unresolved": [],
      "max_size": 6,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 6,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EcuPartNumber": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EcuPartNumber",
      "binder_class": "domain.vehicle.v1.binders.someip.EcuPartNumberBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EcuPartNumberSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "byte[]",
          "initializer": "new byte[11]"
        },
        {
          "name": "valueLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "VALUE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_MAX_LENGTH": {
          "expression": "11",
          "value": 11
        },
        "VALUE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "16",
          "value": 16
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.x",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EcuPartNumber;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 11,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 11",
                "length >= 0 && length <= 11"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.x",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EcuPartNumber;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getValueLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 11,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 11",
                "length >= 0 && length <= 11"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 16,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 16,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EcuSerialNumber": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EcuSerialNumber",
      "binder_class": "domain.vehicle.v1.binders.someip.EcuSerialNumberBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EcuSerialNumberSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "byte[]",
          "initializer": "new byte[14]"
        },
        {
          "name": "valueLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "VALUE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_MAX_LENGTH": {
          "expression": "14",
          "value": 14
        },
        "VALUE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "19",
          "value": 19
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.y",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EcuSerialNumber;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 14,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 14",
                "length >= 0 && length <= 14"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.y",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EcuSerialNumber;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getValueLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 14,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 14",
                "length >= 0 && length <= 14"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 19,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 19,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EcuSoftwareVersion": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EcuSoftwareVersion",
      "binder_class": "domain.vehicle.v1.binders.someip.EcuSoftwareVersionBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EcuSoftwareVersionSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "byte[]",
          "initializer": "new byte[4]"
        },
        {
          "name": "valueLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "VALUE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_MAX_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "9",
          "value": 9
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.A",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EcuSoftwareVersion;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.A",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EcuSoftwareVersion;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getValueLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 9,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 9,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ElectricStatistics": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.ElectricStatistics",
      "binder_class": "domain.vehicle.v1.binders.someip.ElectricStatisticsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ElectricStatisticsSerializer",
      "java_fields": [
        {
          "name": "shortTermAverageZeroEmissionDistance",
          "java_type": "StatefulUInt32",
          "initializer": "new StatefulUInt32()"
        },
        {
          "name": "longTermAverageZeroEmissionDistance",
          "java_type": "StatefulUInt32",
          "initializer": "new StatefulUInt32()"
        },
        {
          "name": "cyclicAverageZeroEmissionDistance",
          "java_type": "StatefulUInt32",
          "initializer": "new StatefulUInt32()"
        },
        {
          "name": "shortTermAverageRecuperation",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "longTermAverageRecuperation",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "cyclicAverageRecuperation",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "shortTermRangeGainDistance",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "longTermRangeGainDistance",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "cyclicRangeGainDistance",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "33",
          "value": 33
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.C",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ElectricStatistics;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "shortTermAverageZeroEmissionDistance",
            "accessor": "getShortTermAverageZeroEmissionDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 5
          },
          {
            "order": 1,
            "field": "longTermAverageZeroEmissionDistance",
            "accessor": "getLongTermAverageZeroEmissionDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 5
          },
          {
            "order": 2,
            "field": "cyclicAverageZeroEmissionDistance",
            "accessor": "getCyclicAverageZeroEmissionDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 5
          },
          {
            "order": 3,
            "field": "shortTermAverageRecuperation",
            "accessor": "getShortTermAverageRecuperation",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "longTermAverageRecuperation",
            "accessor": "getLongTermAverageRecuperation",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 18,
            "fixed_size": 3
          },
          {
            "order": 5,
            "field": "cyclicAverageRecuperation",
            "accessor": "getCyclicAverageRecuperation",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 21,
            "fixed_size": 3
          },
          {
            "order": 6,
            "field": "shortTermRangeGainDistance",
            "accessor": "getShortTermRangeGainDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 24,
            "fixed_size": 3
          },
          {
            "order": 7,
            "field": "longTermRangeGainDistance",
            "accessor": "getLongTermRangeGainDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 27,
            "fixed_size": 3
          },
          {
            "order": 8,
            "field": "cyclicRangeGainDistance",
            "accessor": "getCyclicRangeGainDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 30,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 33
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.C",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ElectricStatistics;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "shortTermAverageZeroEmissionDistance",
            "accessor": "getShortTermAverageZeroEmissionDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 5
          },
          {
            "order": 1,
            "field": "longTermAverageZeroEmissionDistance",
            "accessor": "getLongTermAverageZeroEmissionDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 5
          },
          {
            "order": 2,
            "field": "cyclicAverageZeroEmissionDistance",
            "accessor": "getCyclicAverageZeroEmissionDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 5
          },
          {
            "order": 3,
            "field": "shortTermAverageRecuperation",
            "accessor": "getShortTermAverageRecuperation",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "longTermAverageRecuperation",
            "accessor": "getLongTermAverageRecuperation",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 18,
            "fixed_size": 3
          },
          {
            "order": 5,
            "field": "cyclicAverageRecuperation",
            "accessor": "getCyclicAverageRecuperation",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 21,
            "fixed_size": 3
          },
          {
            "order": 6,
            "field": "shortTermRangeGainDistance",
            "accessor": "getShortTermRangeGainDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 24,
            "fixed_size": 3
          },
          {
            "order": 7,
            "field": "longTermRangeGainDistance",
            "accessor": "getLongTermRangeGainDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 27,
            "fixed_size": 3
          },
          {
            "order": 8,
            "field": "cyclicRangeGainDistance",
            "accessor": "getCyclicRangeGainDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 30,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 33
      },
      "unresolved": [],
      "max_size": 33,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 33,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EnergyConsumers": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EnergyConsumers",
      "binder_class": "domain.vehicle.v1.binders.someip.EnergyConsumersBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EnergyConsumersSerializer",
      "java_fields": [
        {
          "name": "consumers",
          "java_type": "StatefulUInt8[]",
          "initializer": "new StatefulUInt8[3]"
        }
      ],
      "constants": {
        "CONSUMERS_LENGTH": {
          "expression": "3",
          "value": 3
        },
        "MAX_SIZE": {
          "expression": "6",
          "value": 6
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.D",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergyConsumers;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "consumers",
            "accessor": "setConsumersElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.StatefulUInt8",
                "delegate": [
                  "domain.vehicle.v1.a.aX",
                  "a",
                  "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
                ]
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 3,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length == 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 6
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 6
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.D",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergyConsumers;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "consumers",
            "accessor": "getConsumersElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.StatefulUInt8",
                "delegate": [
                  "domain.vehicle.v1.a.aX",
                  "a",
                  "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
                ]
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 3,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length == 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 6
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 6
      },
      "unresolved": [],
      "max_size": 6,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 6,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EnergyManagementRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EnergyManagementRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.EnergyManagementRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EnergyManagementRequestSerializer",
      "java_fields": [
        {
          "name": "networks",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "duration",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "powerConsumption",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.E",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergyManagementRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "networks",
            "accessor": "setNetworks",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "duration",
            "accessor": "setDuration",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "powerConsumption",
            "accessor": "setPowerConsumption",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.E",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergyManagementRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "networks",
            "accessor": "getNetworks",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "duration",
            "accessor": "getDuration",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "powerConsumption",
            "accessor": "getPowerConsumption",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EnergySavingHint": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.EnergySavingHint",
      "binder_class": "domain.vehicle.v1.binders.someip.EnergySavingHintBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EnergySavingHintSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "StatefulUInt8",
          "initializer": null
        },
        {
          "name": "amount",
          "java_type": "StatefulUInt8",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.F",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergySavingHint;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "amount",
            "accessor": "getAmount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.F",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergySavingHint;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "amount",
            "accessor": "getAmount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EnergySavingHints": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EnergySavingHints",
      "binder_class": "domain.vehicle.v1.binders.someip.EnergySavingHintsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EnergySavingHintsSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "hints",
          "java_type": "EnergySavingHint[]",
          "initializer": "new EnergySavingHint[3]"
        }
      ],
      "constants": {
        "HINTS_LENGTH": {
          "expression": "3",
          "value": 3
        },
        "MAX_SIZE": {
          "expression": "13",
          "value": 13
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.G",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergySavingHints;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "hints",
            "accessor": "setHintsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.EnergySavingHint",
                "delegate": [
                  "domain.vehicle.v1.a.F",
                  "a",
                  "(Ldomain/vehicle/v1/models/EnergySavingHint;[BII)I"
                ]
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 3,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length == 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 12
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 13
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.G",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EnergySavingHints;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "hints",
            "accessor": "getHintsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.EnergySavingHint",
                "delegate": [
                  "domain.vehicle.v1.a.F",
                  "a",
                  "(Ldomain/vehicle/v1/models/EnergySavingHint;[BI)I"
                ]
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 3,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length == 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 12
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 13
      },
      "unresolved": [],
      "max_size": 13,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 13,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.EngineStart": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.EngineStart",
      "binder_class": "domain.vehicle.v1.binders.someip.EngineStartBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.EngineStartSerializer",
      "java_fields": [
        {
          "name": "firstStartSource",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "firstStartTemperature",
          "java_type": "StatefulInt16",
          "initializer": "new StatefulInt16()"
        },
        {
          "name": "cogDrivenStarterGeneratorCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "beltDrivenStarterGeneratorCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "cogDrivenStarterGeneratorRestartCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "beltDrivenStarterGeneratorRestartCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "startStopDeactivationCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "startByDriverCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "badStartCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "startStopDeactivationDistance",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "startStopDeactivationTime",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "25",
          "value": 25
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.H",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EngineStart;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "firstStartSource",
            "accessor": "getFirstStartSource",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "firstStartTemperature",
            "accessor": "getFirstStartTemperature",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "cogDrivenStarterGeneratorCount",
            "accessor": "getCogDrivenStarterGeneratorCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "beltDrivenStarterGeneratorCount",
            "accessor": "getBeltDrivenStarterGeneratorCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "cogDrivenStarterGeneratorRestartCount",
            "accessor": "getCogDrivenStarterGeneratorRestartCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 2
          },
          {
            "order": 5,
            "field": "beltDrivenStarterGeneratorRestartCount",
            "accessor": "getBeltDrivenStarterGeneratorRestartCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 2
          },
          {
            "order": 6,
            "field": "startStopDeactivationCount",
            "accessor": "getStartStopDeactivationCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 13,
            "fixed_size": 2
          },
          {
            "order": 7,
            "field": "startByDriverCount",
            "accessor": "getStartByDriverCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 2
          },
          {
            "order": 8,
            "field": "badStartCount",
            "accessor": "getBadStartCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 17,
            "fixed_size": 2
          },
          {
            "order": 9,
            "field": "startStopDeactivationDistance",
            "accessor": "getStartStopDeactivationDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 19,
            "fixed_size": 3
          },
          {
            "order": 10,
            "field": "startStopDeactivationTime",
            "accessor": "getStartStopDeactivationTime",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 22,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 25
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.H",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/EngineStart;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "firstStartSource",
            "accessor": "getFirstStartSource",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "firstStartTemperature",
            "accessor": "getFirstStartTemperature",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "cogDrivenStarterGeneratorCount",
            "accessor": "getCogDrivenStarterGeneratorCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "beltDrivenStarterGeneratorCount",
            "accessor": "getBeltDrivenStarterGeneratorCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "cogDrivenStarterGeneratorRestartCount",
            "accessor": "getCogDrivenStarterGeneratorRestartCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 2
          },
          {
            "order": 5,
            "field": "beltDrivenStarterGeneratorRestartCount",
            "accessor": "getBeltDrivenStarterGeneratorRestartCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 2
          },
          {
            "order": 6,
            "field": "startStopDeactivationCount",
            "accessor": "getStartStopDeactivationCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 13,
            "fixed_size": 2
          },
          {
            "order": 7,
            "field": "startByDriverCount",
            "accessor": "getStartByDriverCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 2
          },
          {
            "order": 8,
            "field": "badStartCount",
            "accessor": "getBadStartCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 17,
            "fixed_size": 2
          },
          {
            "order": 9,
            "field": "startStopDeactivationDistance",
            "accessor": "getStartStopDeactivationDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 19,
            "fixed_size": 3
          },
          {
            "order": 10,
            "field": "startStopDeactivationTime",
            "accessor": "getStartStopDeactivationTime",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 22,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 25
      },
      "unresolved": [],
      "max_size": 25,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 25,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ExtendedConditioningSetup": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ExtendedConditioningSetup",
      "binder_class": "domain.vehicle.v1.binders.someip.ExtendedConditioningSetupBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ExtendedConditioningSetupSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "isEnabledFrontLeft",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isEnabledFrontRight",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isEnabledRearLeft",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isEnabledRearRight",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.J",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ExtendedConditioningSetup;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isEnabledFrontLeft",
            "accessor": "setIsEnabledFrontLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isEnabledFrontRight",
            "accessor": "setIsEnabledFrontRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isEnabledRearLeft",
            "accessor": "setIsEnabledRearLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isEnabledRearRight",
            "accessor": "setIsEnabledRearRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.J",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ExtendedConditioningSetup;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isEnabledFrontLeft",
            "accessor": "getIsEnabledFrontLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isEnabledFrontRight",
            "accessor": "getIsEnabledFrontRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isEnabledRearLeft",
            "accessor": "getIsEnabledRearLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isEnabledRearRight",
            "accessor": "getIsEnabledRearRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ExtendedConditioningState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ExtendedConditioningState",
      "binder_class": "domain.vehicle.v1.binders.someip.ExtendedConditioningStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ExtendedConditioningStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "isActiveFrontLeft",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isActiveFrontRight",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isActiveRearLeft",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "isActiveRearRight",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.K",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ExtendedConditioningState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isActiveFrontLeft",
            "accessor": "setIsActiveFrontLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isActiveFrontRight",
            "accessor": "setIsActiveFrontRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isActiveRearLeft",
            "accessor": "setIsActiveRearLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isActiveRearRight",
            "accessor": "setIsActiveRearRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.K",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ExtendedConditioningState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "isActiveFrontLeft",
            "accessor": "getIsActiveFrontLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "isActiveFrontRight",
            "accessor": "getIsActiveFrontRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "isActiveRearLeft",
            "accessor": "getIsActiveRearLeft",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "isActiveRearRight",
            "accessor": "getIsActiveRearRight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FISData": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.FISData",
      "binder_class": "domain.vehicle.v1.binders.someip.FISDataBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FISDataSerializer",
      "java_fields": [
        {
          "name": "fuelConsumption",
          "java_type": "StatefulInt32",
          "initializer": "new StatefulInt32()"
        },
        {
          "name": "electricFuelConsumption",
          "java_type": "StatefulInt32",
          "initializer": "new StatefulInt32()"
        },
        {
          "name": "gasFuelConsumption",
          "java_type": "StatefulInt32",
          "initializer": "new StatefulInt32()"
        },
        {
          "name": "distance",
          "java_type": "StatefulUInt32",
          "initializer": "new StatefulUInt32()"
        },
        {
          "name": "time",
          "java_type": "StatefulUInt32",
          "initializer": "new StatefulUInt32()"
        },
        {
          "name": "averageSpeed",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "28",
          "value": 28
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.L",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FISData;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fuelConsumption",
            "accessor": "getFuelConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 5
          },
          {
            "order": 1,
            "field": "electricFuelConsumption",
            "accessor": "getElectricFuelConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 5
          },
          {
            "order": 2,
            "field": "gasFuelConsumption",
            "accessor": "getGasFuelConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 5
          },
          {
            "order": 3,
            "field": "distance",
            "accessor": "getDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 5
          },
          {
            "order": 4,
            "field": "time",
            "accessor": "getTime",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 20,
            "fixed_size": 5
          },
          {
            "order": 5,
            "field": "averageSpeed",
            "accessor": "getAverageSpeed",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 25,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 28
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.L",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FISData;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fuelConsumption",
            "accessor": "getFuelConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 5
          },
          {
            "order": 1,
            "field": "electricFuelConsumption",
            "accessor": "getElectricFuelConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 5
          },
          {
            "order": 2,
            "field": "gasFuelConsumption",
            "accessor": "getGasFuelConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 5
          },
          {
            "order": 3,
            "field": "distance",
            "accessor": "getDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 5
          },
          {
            "order": 4,
            "field": "time",
            "accessor": "getTime",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt32",
              "delegate": [
                "domain.vehicle.v1.a.aW",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 20,
            "fixed_size": 5
          },
          {
            "order": 5,
            "field": "averageSpeed",
            "accessor": "getAverageSpeed",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 25,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 28
      },
      "unresolved": [],
      "max_size": 28,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 28,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FazitId": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FazitId",
      "binder_class": "domain.vehicle.v1.binders.someip.FazitIdBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FazitIdSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "byte[]",
          "initializer": "new byte[23]"
        },
        {
          "name": "valueLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "VALUE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_MAX_LENGTH": {
          "expression": "23",
          "value": 23
        },
        "VALUE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "28",
          "value": 28
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.M",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FazitId;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 23,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 23",
                "length >= 0 && length <= 23"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.M",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FazitId;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValueElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getValueLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 23,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 23",
                "length >= 0 && length <= 23"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 28,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 28,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FirmwareBlock": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.FirmwareBlock",
      "binder_class": "domain.vehicle.v1.binders.someip.FirmwareBlockBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FirmwareBlockSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "version",
          "java_type": "byte[]",
          "initializer": "new byte[4]"
        }
      ],
      "constants": {
        "VERSION_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.O",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareBlock;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "version",
            "accessor": "setVersionElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 4,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length == 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.O",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareBlock;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "version",
            "accessor": "getVersionElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 4,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length == 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FirmwareVersion": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FirmwareVersion",
      "binder_class": "domain.vehicle.v1.binders.someip.FirmwareVersionBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FirmwareVersionSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "versionCode",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "versionName",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "versionDateTime",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "VERSION_NAME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VERSION_NAME_LENGTH": {
          "expression": "17 - f.a.d()",
          "value": 16
        },
        "VERSION_DATE_TIME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VERSION_DATE_TIME_LENGTH": {
          "expression": "21 - f.a.d()",
          "value": 20
        },
        "MAX_SIZE": {
          "expression": "5 + (4 + VERSION_NAME_LENGTH + f.a.d()) + (4 + VERSION_DATE_TIME_LENGTH + f.a.d())",
          "value": 51
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.S",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersion;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "versionCode",
            "accessor": "setVersionCode",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          },
          {
            "order": 2,
            "field": "versionName",
            "accessor": "setVersionName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": null
          },
          {
            "order": 3,
            "field": "versionDateTime",
            "accessor": "setVersionDateTime",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.S",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersion;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "versionCode",
            "accessor": "getVersionCode",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          },
          {
            "order": 2,
            "field": "versionName",
            "accessor": "getVersionName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 16,
              "max_constant": "VERSION_NAME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": null
          },
          {
            "order": 3,
            "field": "versionDateTime",
            "accessor": "getVersionDateTime",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 20,
              "max_constant": "VERSION_DATE_TIME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 51,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 51,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FirmwareVersionSet": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FirmwareVersionSet",
      "binder_class": "domain.vehicle.v1.binders.someip.FirmwareVersionSetBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FirmwareVersionSetSerializer",
      "java_fields": [
        {
          "name": "versions",
          "java_type": "byte[]",
          "initializer": "new byte[17]"
        }
      ],
      "constants": {
        "VERSIONS_LENGTH": {
          "expression": "17",
          "value": 17
        },
        "MAX_SIZE": {
          "expression": "17",
          "value": 17
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.T",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersionSet;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "versions",
            "accessor": "setVersionsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 17,
              "default_backing_capacity_elements": 17,
              "public_setter_guards": [
                "array.length == 17"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 17
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 17
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.T",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersionSet;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "versions",
            "accessor": "getVersionsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 17,
              "default_backing_capacity_elements": 17,
              "public_setter_guards": [
                "array.length == 17"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 17
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 17
      },
      "unresolved": [],
      "max_size": 17,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 17,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FirmwareVersionUpdate": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FirmwareVersionUpdate",
      "binder_class": "domain.vehicle.v1.binders.someip.FirmwareVersionUpdateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FirmwareVersionUpdateSerializer",
      "java_fields": [
        {
          "name": "year",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "month",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "day",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "updaterSerialNumber",
          "java_type": "byte[]",
          "initializer": "new byte[6]"
        },
        {
          "name": "updatedBlocks",
          "java_type": "FirmwareBlock[]",
          "initializer": "new FirmwareBlock[4]"
        },
        {
          "name": "updatedBlocksLength",
          "java_type": "int",
          "initializer": "1"
        }
      ],
      "constants": {
        "UPDATER_SERIAL_NUMBER_LENGTH": {
          "expression": "6",
          "value": 6
        },
        "UPDATED_BLOCKS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "UPDATED_BLOCKS_MAX_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "UPDATED_BLOCKS_MIN_LENGTH": {
          "expression": "1",
          "value": 1
        },
        "MAX_SIZE": {
          "expression": "33",
          "value": 33
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.U",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersionUpdate;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "year",
            "accessor": "setYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "month",
            "accessor": "setMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "day",
            "accessor": "setDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "updaterSerialNumber",
            "accessor": "setUpdaterSerialNumberElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 6,
              "default_backing_capacity_elements": 6,
              "public_setter_guards": [
                "array.length == 6"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 6
          },
          {
            "order": 4,
            "field": "updatedBlocks",
            "accessor": "setUpdatedBlocksElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.FirmwareBlock",
                "delegate": [
                  "domain.vehicle.v1.a.O",
                  "a",
                  "(Ldomain/vehicle/v1/models/FirmwareBlock;[BII)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length > 0 && array.length <= 4",
                "length > 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.U",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersionUpdate;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "updaterSerialNumber",
            "accessor": "getUpdaterSerialNumberElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 6,
              "default_backing_capacity_elements": 6,
              "public_setter_guards": [
                "array.length == 6"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 6
          },
          {
            "order": 4,
            "field": "updatedBlocks",
            "accessor": "getUpdatedBlocksElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.FirmwareBlock",
                "delegate": [
                  "domain.vehicle.v1.a.O",
                  "a",
                  "(Ldomain/vehicle/v1/models/FirmwareBlock;[BI)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getUpdatedBlocksLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length > 0 && array.length <= 4",
                "length > 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 33,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 33,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FirmwareVersions": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FirmwareVersions",
      "binder_class": "domain.vehicle.v1.binders.someip.FirmwareVersionsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FirmwareVersionsSerializer",
      "java_fields": [
        {
          "name": "versions",
          "java_type": "FirmwareVersion[]",
          "initializer": "new FirmwareVersion[4]"
        },
        {
          "name": "versionsLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "VERSIONS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VERSIONS_MAX_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VERSIONS_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "4 + 4 * FirmwareVersion.MAX_SIZE",
          "value": 208
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.V",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersions;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "versions",
            "accessor": "setVersionsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.FirmwareVersion",
                "delegate": [
                  "domain.vehicle.v1.a.S",
                  "a",
                  "(Ldomain/vehicle/v1/models/FirmwareVersion;[BII)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.V",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FirmwareVersions;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "versions",
            "accessor": "getVersionsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.FirmwareVersion",
                "delegate": [
                  "domain.vehicle.v1.a.S",
                  "a",
                  "(Ldomain/vehicle/v1/models/FirmwareVersion;[BI)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getVersionsLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 208,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 208,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FreewheelPhases": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FreewheelPhases",
      "binder_class": "domain.vehicle.v1.binders.someip.FreewheelPhasesBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FreewheelPhasesSerializer",
      "java_fields": [
        {
          "name": "tractionPercentage",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "freewheelPercentage",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "nonFreewheelPercentage",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "possibleFreewheelPhaseCount",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "freewheelPhaseCount",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "engineStopFreewheelPhaseCount",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "preventedEngineStopFreewheelPhaseCount",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "freewheelDeactivationCount",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "freewheelDeactivationDistance",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "26",
          "value": 26
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.X",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FreewheelPhases;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "tractionPercentage",
            "accessor": "getTractionPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "freewheelPercentage",
            "accessor": "getFreewheelPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "nonFreewheelPercentage",
            "accessor": "getNonFreewheelPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 3
          },
          {
            "order": 3,
            "field": "possibleFreewheelPhaseCount",
            "accessor": "getPossibleFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "freewheelPhaseCount",
            "accessor": "getFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 3
          },
          {
            "order": 5,
            "field": "engineStopFreewheelPhaseCount",
            "accessor": "getEngineStopFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 3
          },
          {
            "order": 6,
            "field": "preventedEngineStopFreewheelPhaseCount",
            "accessor": "getPreventedEngineStopFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 18,
            "fixed_size": 3
          },
          {
            "order": 7,
            "field": "freewheelDeactivationCount",
            "accessor": "getFreewheelDeactivationCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 21,
            "fixed_size": 2
          },
          {
            "order": 8,
            "field": "freewheelDeactivationDistance",
            "accessor": "getFreewheelDeactivationDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 23,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 26
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.X",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FreewheelPhases;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "tractionPercentage",
            "accessor": "getTractionPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "freewheelPercentage",
            "accessor": "getFreewheelPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "nonFreewheelPercentage",
            "accessor": "getNonFreewheelPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 3
          },
          {
            "order": 3,
            "field": "possibleFreewheelPhaseCount",
            "accessor": "getPossibleFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "freewheelPhaseCount",
            "accessor": "getFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 3
          },
          {
            "order": 5,
            "field": "engineStopFreewheelPhaseCount",
            "accessor": "getEngineStopFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 15,
            "fixed_size": 3
          },
          {
            "order": 6,
            "field": "preventedEngineStopFreewheelPhaseCount",
            "accessor": "getPreventedEngineStopFreewheelPhaseCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 18,
            "fixed_size": 3
          },
          {
            "order": 7,
            "field": "freewheelDeactivationCount",
            "accessor": "getFreewheelDeactivationCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 21,
            "fixed_size": 2
          },
          {
            "order": 8,
            "field": "freewheelDeactivationDistance",
            "accessor": "getFreewheelDeactivationDistance",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 23,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 26
      },
      "unresolved": [],
      "max_size": 26,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 26,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FuelLevel": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FuelLevel",
      "binder_class": "domain.vehicle.v1.binders.someip.FuelLevelBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FuelLevelSerializer",
      "java_fields": [
        {
          "name": "percentage",
          "java_type": "StatefulUInt8",
          "initializer": null
        },
        {
          "name": "liters",
          "java_type": "StatefulUInt16",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.Z",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FuelLevel;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "percentage",
            "accessor": "getPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "liters",
            "accessor": "getLiters",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.Z",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FuelLevel;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "percentage",
            "accessor": "getPercentage",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "liters",
            "accessor": "getLiters",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandActivationResult": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandActivationResult",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandActivationResultBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandActivationResultSerializer",
      "java_fields": [
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[80]"
        }
      ],
      "constants": {
        "DATA_LENGTH": {
          "expression": "80",
          "value": 80
        },
        "MAX_SIZE": {
          "expression": "80",
          "value": 80
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ab",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandActivationResult;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 80,
              "default_backing_capacity_elements": 80,
              "public_setter_guards": [
                "array.length == 80"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 80
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 80
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ab",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandActivationResult;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 0,
              "length_unit": "fixed_elements",
              "fixed_elements": 80,
              "default_backing_capacity_elements": 80,
              "public_setter_guards": [
                "array.length == 80"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 80
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 80
      },
      "unresolved": [],
      "max_size": 80,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 80,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandActivationSegment": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandActivationSegment",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandActivationSegmentBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandActivationSegmentSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "totalLength",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "length",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[238]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "238",
          "value": 238
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ac",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandActivationSegment;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "setTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "length",
            "accessor": "setLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 238,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 238",
                "length >= 0 && length <= 238"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ac",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandActivationSegment;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "getTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "length",
            "accessor": "getLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 238,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 238",
                "length >= 0 && length <= 238"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandFunction": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandFunction",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandFunctionBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandFunctionSerializer",
      "java_fields": [
        {
          "name": "fsid",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "present",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "validityType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "validitySpan",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "validityStart",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "validityEnd",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "individualisationType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "individualisationTokenChecked",
          "java_type": "byte[]",
          "initializer": "new byte[8]"
        },
        {
          "name": "individualisationTokenCheckedLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "individualisationTokenUnchecked",
          "java_type": "byte[]",
          "initializer": "new byte[18]"
        },
        {
          "name": "individualisationTokenUncheckedLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "INDIVIDUALISATION_TOKEN_CHECKED_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "INDIVIDUALISATION_TOKEN_CHECKED_MAX_LENGTH": {
          "expression": "8",
          "value": 8
        },
        "INDIVIDUALISATION_TOKEN_CHECKED_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "INDIVIDUALISATION_TOKEN_UNCHECKED_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "INDIVIDUALISATION_TOKEN_UNCHECKED_MAX_LENGTH": {
          "expression": "18",
          "value": 18
        },
        "INDIVIDUALISATION_TOKEN_UNCHECKED_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "51",
          "value": 51
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ae",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandFunction;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fsid",
            "accessor": "setFsid",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "present",
            "accessor": "setPresent",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "validityType",
            "accessor": "setValidityType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "validitySpan",
            "accessor": "setValiditySpan",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "validityStart",
            "accessor": "setValidityStart",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 4
          },
          {
            "order": 6,
            "field": "validityEnd",
            "accessor": "setValidityEnd",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 4
          },
          {
            "order": 7,
            "field": "individualisationType",
            "accessor": "setIndividualisationType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 16,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "individualisationTokenChecked",
            "accessor": "setIndividualisationTokenCheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 17,
            "fixed_size": null
          },
          {
            "order": 9,
            "field": "individualisationTokenUnchecked",
            "accessor": "setIndividualisationTokenUncheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 18,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 18",
                "length >= 0 && length <= 18"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.af",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandFunction;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fsid",
            "accessor": "getFsid",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "present",
            "accessor": "getPresent",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "validityType",
            "accessor": "getValidityType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "validitySpan",
            "accessor": "getValiditySpan",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "validityStart",
            "accessor": "getValidityStart",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 4
          },
          {
            "order": 6,
            "field": "validityEnd",
            "accessor": "getValidityEnd",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 4
          },
          {
            "order": 7,
            "field": "individualisationType",
            "accessor": "getIndividualisationType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 16,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "individualisationTokenChecked",
            "accessor": "getIndividualisationTokenCheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getIndividualisationTokenCheckedLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 17,
            "fixed_size": null
          },
          {
            "order": 9,
            "field": "individualisationTokenUnchecked",
            "accessor": "getIndividualisationTokenUncheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getIndividualisationTokenUncheckedLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 18,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 18",
                "length >= 0 && length <= 18"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 51,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 51,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandFunctionReport": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandFunctionReport",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandFunctionReportBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandFunctionReportSerializer",
      "java_fields": [
        {
          "name": "fullUpdate",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "totalCount",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "index",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "function",
          "java_type": "FunctionOnDemandFunction",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "54",
          "value": 54
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.af",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandFunctionReport;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fullUpdate",
            "accessor": "setFullUpdate",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "totalCount",
            "accessor": "setTotalCount",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "index",
            "accessor": "setIndex",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "function",
            "accessor": "getFunction",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FunctionOnDemandFunction",
              "delegate": [
                "domain.vehicle.v1.a.ae",
                "a",
                "(Ldomain/vehicle/v1/models/FunctionOnDemandFunction;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ae",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandFunctionReport;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fullUpdate",
            "accessor": "getFullUpdate",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "totalCount",
            "accessor": "getTotalCount",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "index",
            "accessor": "getIndex",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "function",
            "accessor": "getFunction",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FunctionOnDemandFunction",
              "delegate": [
                "domain.vehicle.v1.a.af",
                "a",
                "(Ldomain/vehicle/v1/models/FunctionOnDemandFunction;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 54,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 54,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandListChange": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandListChange",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandListChangeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandListChangeSerializer",
      "java_fields": [
        {
          "name": "index",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "fullChange",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ag",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandListChange;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "index",
            "accessor": "setIndex",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "fullChange",
            "accessor": "setFullChange",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ag",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandListChange;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "index",
            "accessor": "getIndex",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "fullChange",
            "accessor": "getFullChange",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandListEntry": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandListEntry",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandListEntryBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandListEntrySerializer",
      "java_fields": [
        {
          "name": "fsid",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "activationState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "licenseExpiryWarning",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "licenseExpiryWarningForced",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "clampChangeRequired",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "teaserLicense",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "subscription",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "validityType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "validitySpan",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "validityStart",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "validityEnd",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "daysToExpiration",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "notificationPriority",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "serviceId",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "SERVICE_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SERVICE_ID_LENGTH": {
          "expression": "23 - f.a.d()",
          "value": 22
        },
        "MAX_SIZE": {
          "expression": "23 + (4 + SERVICE_ID_LENGTH + f.a.d())",
          "value": 50
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ah",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandListEntry;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fsid",
            "accessor": "setFsid",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "activationState",
            "accessor": "setActivationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "licenseExpiryWarning",
            "accessor": "setLicenseExpiryWarning",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "licenseExpiryWarningForced",
            "accessor": "setLicenseExpiryWarningForced",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "clampChangeRequired",
            "accessor": "setClampChangeRequired",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "teaserLicense",
            "accessor": "setTeaserLicense",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "subscription",
            "accessor": "setSubscription",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "validityType",
            "accessor": "setValidityType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "validitySpan",
            "accessor": "setValiditySpan",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "validityStart",
            "accessor": "setValidityStart",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 4
          },
          {
            "order": 10,
            "field": "validityEnd",
            "accessor": "setValidityEnd",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 16,
            "fixed_size": 4
          },
          {
            "order": 11,
            "field": "daysToExpiration",
            "accessor": "setDaysToExpiration",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 20,
            "fixed_size": 2
          },
          {
            "order": 12,
            "field": "notificationPriority",
            "accessor": "setNotificationPriority",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 22,
            "fixed_size": 1
          },
          {
            "order": 13,
            "field": "serviceId",
            "accessor": "setServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 23,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ah",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandListEntry;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "fsid",
            "accessor": "getFsid",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "activationState",
            "accessor": "getActivationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "licenseExpiryWarning",
            "accessor": "getLicenseExpiryWarning",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "licenseExpiryWarningForced",
            "accessor": "getLicenseExpiryWarningForced",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "clampChangeRequired",
            "accessor": "getClampChangeRequired",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "teaserLicense",
            "accessor": "getTeaserLicense",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "subscription",
            "accessor": "getSubscription",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "validityType",
            "accessor": "getValidityType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "validitySpan",
            "accessor": "getValiditySpan",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "validityStart",
            "accessor": "getValidityStart",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 4
          },
          {
            "order": 10,
            "field": "validityEnd",
            "accessor": "getValidityEnd",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 16,
            "fixed_size": 4
          },
          {
            "order": 11,
            "field": "daysToExpiration",
            "accessor": "getDaysToExpiration",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 20,
            "fixed_size": 2
          },
          {
            "order": 12,
            "field": "notificationPriority",
            "accessor": "getNotificationPriority",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 22,
            "fixed_size": 1
          },
          {
            "order": 13,
            "field": "serviceId",
            "accessor": "getServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 22,
              "max_constant": "SERVICE_ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 23,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 50,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 50,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandListResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandListResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandListResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandListResponseSerializer",
      "java_fields": [
        {
          "name": "header",
          "java_type": "ArrayResponseHeader",
          "initializer": "new ArrayResponseHeader()"
        },
        {
          "name": "elements",
          "java_type": "FunctionOnDemandListEntry[]",
          "initializer": "new FunctionOnDemandListEntry[4]"
        },
        {
          "name": "elementsLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "ELEMENTS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ELEMENTS_MAX_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ELEMENTS_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "16 + 4 * FunctionOnDemandListEntry.MAX_SIZE",
          "value": 216
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aj",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandListResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "com.google.gson.internal.b$1",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "setElementsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.FunctionOnDemandListEntry",
                "delegate": [
                  "domain.vehicle.v1.a.ah",
                  "a",
                  "(Ldomain/vehicle/v1/models/FunctionOnDemandListEntry;[BII)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ai",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandListResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "domain.vehicle.v1.a.b",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "getElementsElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.FunctionOnDemandListEntry",
                "delegate": [
                  "domain.vehicle.v1.a.ah",
                  "a",
                  "(Ldomain/vehicle/v1/models/FunctionOnDemandListEntry;[BI)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getElementsLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 216,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 216,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandReport": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandReport",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandReportBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandReportSerializer",
      "java_fields": [
        {
          "name": "timestampMFsc",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "timestampKeyChangeFsc",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "timestampResetFsc",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "individualizationFeatureType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "individualisationTokenChecked",
          "java_type": "byte[]",
          "initializer": "new byte[8]"
        },
        {
          "name": "individualisationTokenCheckedLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "individualisationTokenUnchecked",
          "java_type": "byte[]",
          "initializer": "new byte[18]"
        },
        {
          "name": "individualisationTokenUncheckedLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "rsaModulus",
          "java_type": "byte[]",
          "initializer": "new byte[16]"
        },
        {
          "name": "rsaModulusLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "rsaExponent",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "totalFunctionCount",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "mFscVersion",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "cryptoAlgorithmVersion",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "diagnosticAddress",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "hardwarePartNumber",
          "java_type": "byte[]",
          "initializer": "new byte[10]"
        },
        {
          "name": "hardwarePartNumberLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "softwarePartNumber",
          "java_type": "byte[]",
          "initializer": "new byte[10]"
        },
        {
          "name": "softwarePartNumberLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "hardwareVersion",
          "java_type": "byte[]",
          "initializer": "new byte[3]"
        },
        {
          "name": "hardwareVersionLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "softwarewareVersion",
          "java_type": "byte[]",
          "initializer": "new byte[4]"
        },
        {
          "name": "softwarewareVersionLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "keyIdent",
          "java_type": "byte[]",
          "initializer": "new byte[4]"
        },
        {
          "name": "keyIdentLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "fazitId",
          "java_type": "byte[]",
          "initializer": "new byte[23]"
        },
        {
          "name": "fazitIdLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "INDIVIDUALISATION_TOKEN_CHECKED_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "INDIVIDUALISATION_TOKEN_CHECKED_MAX_LENGTH": {
          "expression": "8",
          "value": 8
        },
        "INDIVIDUALISATION_TOKEN_CHECKED_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "INDIVIDUALISATION_TOKEN_UNCHECKED_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "INDIVIDUALISATION_TOKEN_UNCHECKED_MAX_LENGTH": {
          "expression": "18",
          "value": 18
        },
        "INDIVIDUALISATION_TOKEN_UNCHECKED_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "RSA_MODULUS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "RSA_MODULUS_MAX_LENGTH": {
          "expression": "16",
          "value": 16
        },
        "RSA_MODULUS_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "HARDWARE_PART_NUMBER_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "HARDWARE_PART_NUMBER_MAX_LENGTH": {
          "expression": "10",
          "value": 10
        },
        "HARDWARE_PART_NUMBER_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "SOFTWARE_PART_NUMBER_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SOFTWARE_PART_NUMBER_MAX_LENGTH": {
          "expression": "10",
          "value": 10
        },
        "SOFTWARE_PART_NUMBER_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "HARDWARE_VERSION_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "HARDWARE_VERSION_MAX_LENGTH": {
          "expression": "3",
          "value": 3
        },
        "HARDWARE_VERSION_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "SOFTWAREWARE_VERSION_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SOFTWAREWARE_VERSION_MAX_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SOFTWAREWARE_VERSION_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "KEY_IDENT_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "KEY_IDENT_MAX_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "KEY_IDENT_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "FAZIT_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "FAZIT_ID_MAX_LENGTH": {
          "expression": "23",
          "value": 23
        },
        "FAZIT_ID_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "154",
          "value": 154
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ak",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandReport;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "timestampMFsc",
            "accessor": "setTimestampMFsc",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "timestampKeyChangeFsc",
            "accessor": "setTimestampKeyChangeFsc",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 4
          },
          {
            "order": 2,
            "field": "timestampResetFsc",
            "accessor": "setTimestampResetFsc",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "individualizationFeatureType",
            "accessor": "setIndividualizationFeatureType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "individualisationTokenChecked",
            "accessor": "setIndividualisationTokenCheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 13,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "individualisationTokenUnchecked",
            "accessor": "setIndividualisationTokenUncheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 18,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 18",
                "length >= 0 && length <= 18"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 6,
            "field": "rsaModulus",
            "accessor": "setRsaModulusElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 16,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 16",
                "length >= 0 && length <= 16"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 7,
            "field": "rsaExponent",
            "accessor": "setRsaExponent",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 8,
            "field": "totalFunctionCount",
            "accessor": "setTotalFunctionCount",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "mFscVersion",
            "accessor": "setMFscVersion",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "cryptoAlgorithmVersion",
            "accessor": "setCryptoAlgorithmVersion",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 11,
            "field": "diagnosticAddress",
            "accessor": "setDiagnosticAddress",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          },
          {
            "order": 12,
            "field": "hardwarePartNumber",
            "accessor": "setHardwarePartNumberElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 10,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 10",
                "length >= 0 && length <= 10"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 13,
            "field": "softwarePartNumber",
            "accessor": "setSoftwarePartNumberElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 10,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 10",
                "length >= 0 && length <= 10"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 14,
            "field": "hardwareVersion",
            "accessor": "setHardwareVersionElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 15,
            "field": "softwarewareVersion",
            "accessor": "setSoftwarewareVersionElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 16,
            "field": "keyIdent",
            "accessor": "setKeyIdentElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 17,
            "field": "fazitId",
            "accessor": "setFazitIdElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 23,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 23",
                "length >= 0 && length <= 23"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ak",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandReport;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "timestampMFsc",
            "accessor": "getTimestampMFsc",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "timestampKeyChangeFsc",
            "accessor": "getTimestampKeyChangeFsc",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 4
          },
          {
            "order": 2,
            "field": "timestampResetFsc",
            "accessor": "getTimestampResetFsc",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "individualizationFeatureType",
            "accessor": "getIndividualizationFeatureType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "individualisationTokenChecked",
            "accessor": "getIndividualisationTokenCheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getIndividualisationTokenCheckedLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 13,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "individualisationTokenUnchecked",
            "accessor": "getIndividualisationTokenUncheckedElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getIndividualisationTokenUncheckedLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 18,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 18",
                "length >= 0 && length <= 18"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 6,
            "field": "rsaModulus",
            "accessor": "getRsaModulusElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getRsaModulusLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 16,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 16",
                "length >= 0 && length <= 16"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 7,
            "field": "rsaExponent",
            "accessor": "getRsaExponent",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 8,
            "field": "totalFunctionCount",
            "accessor": "getTotalFunctionCount",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "mFscVersion",
            "accessor": "getMFscVersion",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "cryptoAlgorithmVersion",
            "accessor": "getCryptoAlgorithmVersion",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 11,
            "field": "diagnosticAddress",
            "accessor": "getDiagnosticAddress",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          },
          {
            "order": 12,
            "field": "hardwarePartNumber",
            "accessor": "getHardwarePartNumberElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getHardwarePartNumberLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 10,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 10",
                "length >= 0 && length <= 10"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 13,
            "field": "softwarePartNumber",
            "accessor": "getSoftwarePartNumberElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getSoftwarePartNumberLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 10,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 10",
                "length >= 0 && length <= 10"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 14,
            "field": "hardwareVersion",
            "accessor": "getHardwareVersionElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getHardwareVersionLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 15,
            "field": "softwarewareVersion",
            "accessor": "getSoftwarewareVersionElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getSoftwarewareVersionLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 16,
            "field": "keyIdent",
            "accessor": "getKeyIdentElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getKeyIdentLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 4,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 4",
                "length >= 0 && length <= 4"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 17,
            "field": "fazitId",
            "accessor": "getFazitIdElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getFazitIdLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 23,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 23",
                "length >= 0 && length <= 23"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 154,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 154,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.FunctionOnDemandState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.FunctionOnDemandState",
      "binder_class": "domain.vehicle.v1.binders.someip.FunctionOnDemandStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.FunctionOnDemandStateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "exceptionState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "additionalData",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "activationProgress",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.al",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "exceptionState",
            "accessor": "setExceptionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "additionalData",
            "accessor": "setAdditionalData",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "activationProgress",
            "accessor": "setActivationProgress",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.al",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/FunctionOnDemandState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "exceptionState",
            "accessor": "getExceptionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "additionalData",
            "accessor": "getAdditionalData",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "activationProgress",
            "accessor": "getActivationProgress",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.GeoCoordinate": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.GeoCoordinate",
      "binder_class": "domain.vehicle.v1.binders.someip.GeoCoordinateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.GeoCoordinateSerializer",
      "java_fields": [
        {
          "name": "longitude",
          "java_type": "StatefulInt32",
          "initializer": null
        },
        {
          "name": "latitude",
          "java_type": "StatefulInt32",
          "initializer": null
        },
        {
          "name": "altitude",
          "java_type": "StatefulInt16",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "13",
          "value": 13
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.am",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/GeoCoordinate;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "longitude",
            "accessor": "getLongitude",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 5
          },
          {
            "order": 1,
            "field": "latitude",
            "accessor": "getLatitude",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 5
          },
          {
            "order": 2,
            "field": "altitude",
            "accessor": "getAltitude",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 13
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.am",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/GeoCoordinate;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "longitude",
            "accessor": "getLongitude",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 5
          },
          {
            "order": 1,
            "field": "latitude",
            "accessor": "getLatitude",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt32",
              "delegate": [
                "domain.vehicle.v1.a.aS",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt32;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 5
          },
          {
            "order": 2,
            "field": "altitude",
            "accessor": "getAltitude",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulInt16",
              "delegate": [
                "domain.vehicle.v1.a.aR",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 13
      },
      "unresolved": [],
      "max_size": 13,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 13,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.HeaterRunningRemainingTime": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.HeaterRunningRemainingTime",
      "binder_class": "domain.vehicle.v1.binders.someip.HeaterRunningRemainingTimeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.HeaterRunningRemainingTimeSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "runningTime",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "remainingTime",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ap",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HeaterRunningRemainingTime;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "runningTime",
            "accessor": "setRunningTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "remainingTime",
            "accessor": "setRemainingTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ap",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HeaterRunningRemainingTime;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "runningTime",
            "accessor": "getRunningTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "remainingTime",
            "accessor": "getRemainingTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.HelloWorld": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.HelloWorld",
      "binder_class": "domain.vehicle.v1.binders.someip.HelloWorldBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.HelloWorldSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "VALUE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_LENGTH": {
          "expression": "16 - f.a.d()",
          "value": 15
        },
        "MAX_SIZE": {
          "expression": "4 + VALUE_LENGTH + f.a.d()",
          "value": 20
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aq",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HelloWorld;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aq",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HelloWorld;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 15,
              "max_constant": "VALUE_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 20,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 20,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.HonkAndFlashRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.HonkAndFlashRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.HonkAndFlashRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.HonkAndFlashRequestSerializer",
      "java_fields": [
        {
          "name": "serviceType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "serviceDuration",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ar",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HonkAndFlashRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceType",
            "accessor": "setServiceType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "serviceDuration",
            "accessor": "setServiceDuration",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.ar",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HonkAndFlashRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceType",
            "accessor": "getServiceType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "serviceDuration",
            "accessor": "getServiceDuration",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.HonkAndFlashState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.HonkAndFlashState",
      "binder_class": "domain.vehicle.v1.binders.someip.HonkAndFlashStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.HonkAndFlashStateSerializer",
      "java_fields": [
        {
          "name": "executionState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "reason",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.as",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HonkAndFlashState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "executionState",
            "accessor": "setExecutionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "reason",
            "accessor": "setReason",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.as",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HonkAndFlashState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "executionState",
            "accessor": "getExecutionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "reason",
            "accessor": "getReason",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.HvChargingTimer": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.HvChargingTimer",
      "binder_class": "domain.vehicle.v1.binders.someip.HvChargingTimerBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.HvChargingTimerSerializer",
      "java_fields": [
        {
          "name": "pos",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "year",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "month",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "day",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "hour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "minute",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "cycle",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "activationState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "shouldCharge",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "shouldClimatize",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "targetSoc",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "holdClimatizationTime",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "shouldClimatizeOffGrid",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "13",
          "value": 13
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.at",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HvChargingTimer;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "pos",
            "accessor": "setPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "year",
            "accessor": "setYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "month",
            "accessor": "setMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "day",
            "accessor": "setDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "hour",
            "accessor": "setHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "minute",
            "accessor": "setMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "cycle",
            "accessor": "setCycle",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "activationState",
            "accessor": "setActivationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "shouldCharge",
            "accessor": "setShouldCharge",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "shouldClimatize",
            "accessor": "setShouldClimatize",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "targetSoc",
            "accessor": "setTargetSoc",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 11,
            "field": "holdClimatizationTime",
            "accessor": "setHoldClimatizationTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 1
          },
          {
            "order": 12,
            "field": "shouldClimatizeOffGrid",
            "accessor": "setShouldClimatizeOffGrid",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 13
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.at",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HvChargingTimer;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "pos",
            "accessor": "getPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "cycle",
            "accessor": "getCycle",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          },
          {
            "order": 7,
            "field": "activationState",
            "accessor": "getActivationState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 7,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "shouldCharge",
            "accessor": "getShouldCharge",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          },
          {
            "order": 9,
            "field": "shouldClimatize",
            "accessor": "getShouldClimatize",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 10,
            "field": "targetSoc",
            "accessor": "getTargetSoc",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 11,
            "field": "holdClimatizationTime",
            "accessor": "getHoldClimatizationTime",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 1
          },
          {
            "order": 12,
            "field": "shouldClimatizeOffGrid",
            "accessor": "getShouldClimatizeOffGrid",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 13
      },
      "unresolved": [],
      "max_size": 13,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 13,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.HvChargingTimerUpdate": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.HvChargingTimerUpdate",
      "binder_class": "domain.vehicle.v1.binders.someip.HvChargingTimerUpdateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.HvChargingTimerUpdateSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "pos",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "year",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "month",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "day",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "hour",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "minute",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "cycle",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "activationState",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "shouldCharge",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "shouldClimatize",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "targetSoc",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "holdClimatizationTime",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        },
        {
          "name": "shouldClimatizeOffGrid",
          "java_type": "StatefulUInt8",
          "initializer": "new StatefulUInt8()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "26",
          "value": 26
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.au",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HvChargingTimerUpdate;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "pos",
            "accessor": "setPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 5,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 2
          },
          {
            "order": 6,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          },
          {
            "order": 7,
            "field": "cycle",
            "accessor": "getCycle",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 2
          },
          {
            "order": 8,
            "field": "activationState",
            "accessor": "getActivationState",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 14,
            "fixed_size": 2
          },
          {
            "order": 9,
            "field": "shouldCharge",
            "accessor": "getShouldCharge",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 16,
            "fixed_size": 2
          },
          {
            "order": 10,
            "field": "shouldClimatize",
            "accessor": "getShouldClimatize",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 18,
            "fixed_size": 2
          },
          {
            "order": 11,
            "field": "targetSoc",
            "accessor": "getTargetSoc",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 20,
            "fixed_size": 2
          },
          {
            "order": 12,
            "field": "holdClimatizationTime",
            "accessor": "getHoldClimatizationTime",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 22,
            "fixed_size": 2
          },
          {
            "order": 13,
            "field": "shouldClimatizeOffGrid",
            "accessor": "getShouldClimatizeOffGrid",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 24,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 26
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.au",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/HvChargingTimerUpdate;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "pos",
            "accessor": "getPos",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 2
          },
          {
            "order": 5,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 2
          },
          {
            "order": 6,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          },
          {
            "order": 7,
            "field": "cycle",
            "accessor": "getCycle",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 2
          },
          {
            "order": 8,
            "field": "activationState",
            "accessor": "getActivationState",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 14,
            "fixed_size": 2
          },
          {
            "order": 9,
            "field": "shouldCharge",
            "accessor": "getShouldCharge",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 16,
            "fixed_size": 2
          },
          {
            "order": 10,
            "field": "shouldClimatize",
            "accessor": "getShouldClimatize",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 18,
            "fixed_size": 2
          },
          {
            "order": 11,
            "field": "targetSoc",
            "accessor": "getTargetSoc",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 20,
            "fixed_size": 2
          },
          {
            "order": 12,
            "field": "holdClimatizationTime",
            "accessor": "getHoldClimatizationTime",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 22,
            "fixed_size": 2
          },
          {
            "order": 13,
            "field": "shouldClimatizeOffGrid",
            "accessor": "getShouldClimatizeOffGrid",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt8",
              "delegate": [
                "domain.vehicle.v1.a.aX",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 24,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 26
      },
      "unresolved": [],
      "max_size": 26,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 26,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ImmobilizerMessage": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ImmobilizerMessage",
      "binder_class": "domain.vehicle.v1.binders.someip.ImmobilizerMessageBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ImmobilizerMessageSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[16]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "errorCode",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "16",
          "value": 16
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "25",
          "value": 25
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aw",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ImmobilizerMessage;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 16,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 16",
                "length >= 0 && length <= 16"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "errorCode",
            "accessor": "setErrorCode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aw",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ImmobilizerMessage;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 16,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 16",
                "length >= 0 && length <= 16"
              ]
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "errorCode",
            "accessor": "getErrorCode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 25,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 25,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.Int64": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.Int64",
      "binder_class": "domain.vehicle.v1.binders.someip.Int64Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.Int64Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "long",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "8",
          "value": 8
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.az",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Int64;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 8
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.az",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Int64;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 8
      },
      "unresolved": [],
      "max_size": 8,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 8,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.KeyInfo": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.KeyInfo",
      "binder_class": "domain.vehicle.v1.binders.someip.KeyInfoBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.KeyInfoSerializer",
      "java_fields": [
        {
          "name": "number",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "type",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "id",
          "java_type": "byte[]",
          "initializer": "new byte[17]"
        },
        {
          "name": "idLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ID_MAX_LENGTH": {
          "expression": "17",
          "value": 17
        },
        "ID_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "23",
          "value": 23
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aB",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/KeyInfo;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "number",
            "accessor": "setNumber",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "type",
            "accessor": "setType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "id",
            "accessor": "setIdElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 17,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 17",
                "length >= 0 && length <= 17"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aB",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/KeyInfo;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "number",
            "accessor": "getNumber",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "type",
            "accessor": "getType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "id",
            "accessor": "getIdElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getIdLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 17,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 17",
                "length >= 0 && length <= 17"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 23,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 23,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.Location": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.Location",
      "binder_class": "domain.vehicle.v1.binders.someip.LocationBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.LocationSerializer",
      "java_fields": [
        {
          "name": "geoCoordinate",
          "java_type": "GeoCoordinate",
          "initializer": "new GeoCoordinate()"
        },
        {
          "name": "timestamp",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "heading",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "confidencePrecision",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "confidenceTrueness",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "provider",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "29",
          "value": 29
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aE",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Location;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "geoCoordinate",
            "accessor": "getGeoCoordinate",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.GeoCoordinate",
              "delegate": [
                "domain.vehicle.v1.a.am",
                "a",
                "(Ldomain/vehicle/v1/models/GeoCoordinate;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 13
          },
          {
            "order": 1,
            "field": "timestamp",
            "accessor": "setTimestamp",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 13,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "heading",
            "accessor": "getHeading",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 21,
            "fixed_size": 3
          },
          {
            "order": 3,
            "field": "confidencePrecision",
            "accessor": "getConfidencePrecision",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 24,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "confidenceTrueness",
            "accessor": "setConfidenceTrueness",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 27,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "provider",
            "accessor": "setProvider",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 28,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 29
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aE",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Location;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "geoCoordinate",
            "accessor": "getGeoCoordinate",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.GeoCoordinate",
              "delegate": [
                "domain.vehicle.v1.a.am",
                "a",
                "(Ldomain/vehicle/v1/models/GeoCoordinate;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 13
          },
          {
            "order": 1,
            "field": "timestamp",
            "accessor": "getTimestamp",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 13,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "heading",
            "accessor": "getHeading",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 21,
            "fixed_size": 3
          },
          {
            "order": 3,
            "field": "confidencePrecision",
            "accessor": "getConfidencePrecision",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 24,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "confidenceTrueness",
            "accessor": "getConfidenceTrueness",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 27,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "provider",
            "accessor": "getProvider",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 28,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 29
      },
      "unresolved": [],
      "max_size": 29,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 29,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.LockResult": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.LockResult",
      "binder_class": "domain.vehicle.v1.binders.someip.LockResultBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.LockResultSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[52]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "result",
          "java_type": "byte",
          "initializer": null
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "52",
          "value": 52
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "65",
          "value": 65
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aF",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/LockResult;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 52,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 52",
                "length >= 0 && length <= 52"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "result",
            "accessor": "setResult",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "someip.e.d.b:([BII)B"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aF",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/LockResult;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 52,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 52",
                "length >= 0 && length <= 52"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "result",
            "accessor": "getResult",
            "wire": {
              "kind": "i8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(B[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 65,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 65,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.LogMessage": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.LogMessage",
      "binder_class": "domain.vehicle.v1.binders.someip.LogMessageBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.LogMessageSerializer",
      "java_fields": [
        {
          "name": "logId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "timestamp",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "threadId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "priority",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "tag",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "message",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "TAG_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TAG_LENGTH": {
          "expression": "17 - f.a.d()",
          "value": 16
        },
        "MESSAGE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "MESSAGE_LENGTH": {
          "expression": "193 - f.a.d()",
          "value": 192
        },
        "MAX_SIZE": {
          "expression": "11 + (4 + TAG_LENGTH + f.a.d()) + (4 + MESSAGE_LENGTH + f.a.d())",
          "value": 229
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aG",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/LogMessage;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "logId",
            "accessor": "setLogId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "timestamp",
            "accessor": "setTimestamp",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "threadId",
            "accessor": "setThreadId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "priority",
            "accessor": "setPriority",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "tag",
            "accessor": "setTag",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "message",
            "accessor": "setMessage",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aG",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/LogMessage;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "logId",
            "accessor": "getLogId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "timestamp",
            "accessor": "getTimestamp",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "threadId",
            "accessor": "getThreadId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "priority",
            "accessor": "getPriority",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "tag",
            "accessor": "getTag",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 16,
              "max_constant": "TAG_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "message",
            "accessor": "getMessage",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 192,
              "max_constant": "MESSAGE_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 229,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 229,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.MobileKeyDataExchangeRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.MobileKeyDataExchangeRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.MobileKeyDataExchangeRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.MobileKeyDataExchangeRequestSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "authenticationRequest",
          "java_type": "byte[]",
          "initializer": "new byte[8]"
        },
        {
          "name": "authenticationRequestLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_REQUEST_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_REQUEST_MAX_LENGTH": {
          "expression": "8",
          "value": 8
        },
        "AUTHENTICATION_REQUEST_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "20",
          "value": 20
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aH",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/MobileKeyDataExchangeRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "setAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aH",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/MobileKeyDataExchangeRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "getAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationRequestLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 8,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 8",
                "length >= 0 && length <= 8"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 20,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 20,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.MobileKeyDatagram": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.MobileKeyDatagram",
      "binder_class": "domain.vehicle.v1.binders.someip.MobileKeyDatagramBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.MobileKeyDatagramSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "totalLength",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[234]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "234",
          "value": 234
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aJ",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/MobileKeyDatagram;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "setTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 234,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 234",
                "length >= 0 && length <= 234"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aJ",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/MobileKeyDatagram;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "totalLength",
            "accessor": "getTotalLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 234,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 234",
                "length >= 0 && length <= 234"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.MobileKeyVehicleIdentification": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.MobileKeyVehicleIdentification",
      "binder_class": "domain.vehicle.v1.binders.someip.MobileKeyVehicleIdentificationBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.MobileKeyVehicleIdentificationSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "authenticationResponse",
          "java_type": "byte[]",
          "initializer": "new byte[45]"
        },
        {
          "name": "authenticationResponseLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_RESPONSE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_RESPONSE_MAX_LENGTH": {
          "expression": "45",
          "value": 45
        },
        "AUTHENTICATION_RESPONSE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "57",
          "value": 57
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aL",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/MobileKeyVehicleIdentification;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationResponse",
            "accessor": "setAuthenticationResponseElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 45,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 45",
                "length >= 0 && length <= 45"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aL",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/MobileKeyVehicleIdentification;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationResponse",
            "accessor": "getAuthenticationResponseElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationResponseLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 45,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 45",
                "length >= 0 && length <= 45"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 57,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 57,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.Null": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.Null",
      "binder_class": "domain.vehicle.v1.binders.someip.NullBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.NullSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "1",
          "value": 1
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.b.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Null;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 1
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.b.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Null;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 1
      },
      "unresolved": [],
      "max_size": 1,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 1,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ObdcIsoTpDatagram": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ObdcIsoTpDatagram",
      "binder_class": "domain.vehicle.v1.binders.someip.ObdcIsoTpDatagramBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ObdcIsoTpDatagramSerializer",
      "java_fields": [
        {
          "name": "serviceId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "totalSize",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[240]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "240",
          "value": 240
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "249",
          "value": 249
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.g.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ObdcIsoTpDatagram;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "setServiceId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "totalSize",
            "accessor": "setTotalSize",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 240,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 240",
                "length >= 0 && length <= 240"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.g.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ObdcIsoTpDatagram;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "getServiceId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "totalSize",
            "accessor": "getTotalSize",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 240,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 240",
                "length >= 0 && length <= 240"
              ]
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 249,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 249,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ObdcIsoTpMessage": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ObdcIsoTpMessage",
      "binder_class": "domain.vehicle.v1.binders.someip.ObdcIsoTpMessageBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ObdcIsoTpMessageSerializer",
      "java_fields": [
        {
          "name": "serviceId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[1024]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "1024",
          "value": 1024
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "1029",
          "value": 1029
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.h.a.l$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ObdcIsoTpMessage;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "setServiceId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 1024,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 1024",
                "length >= 0 && length <= 1024"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.h.a.l$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ObdcIsoTpMessage;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "getServiceId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 1024,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 1024",
                "length >= 0 && length <= 1024"
              ]
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 1029,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 1029,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.OilLevel": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.OilLevel",
      "binder_class": "domain.vehicle.v1.binders.someip.OilLevelBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.OilLevelSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "level",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "capacity",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "belowMinimum",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "warningLight",
          "java_type": "boolean",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "7",
          "value": 7
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.h.d.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/OilLevel;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "level",
            "accessor": "setLevel",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "capacity",
            "accessor": "setCapacity",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "belowMinimum",
            "accessor": "setBelowMinimum",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "warningLight",
            "accessor": "setWarningLight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 7
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.h.d.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/OilLevel;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "level",
            "accessor": "getLevel",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "capacity",
            "accessor": "getCapacity",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "belowMinimum",
            "accessor": "getBelowMinimum",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "warningLight",
            "accessor": "getWarningLight",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 7
      },
      "unresolved": [],
      "max_size": 7,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 7,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.OperationState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.OperationState",
      "binder_class": "domain.vehicle.v1.binders.someip.OperationStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.OperationStateSerializer",
      "java_fields": [
        {
          "name": "module",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.h.d.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/OperationState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "module",
            "accessor": "setModule",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.h.d.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/OperationState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "module",
            "accessor": "getModule",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.PairingRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.PairingRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.PairingRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.PairingRequestSerializer",
      "java_fields": [
        {
          "name": "pin",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "email",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "PIN_LENGTH": {
          "expression": "11 - f.a.d()",
          "value": 10
        },
        "EMAIL_LENGTH": {
          "expression": "239 - f.a.d()",
          "value": 238
        },
        "MAX_SIZE": {
          "expression": "PIN_LENGTH + f.a.d() + (EMAIL_LENGTH + f.a.d())",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.h.f.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PairingRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "pin",
            "accessor": "setPin",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 0,
              "fixed_content_bytes": 10,
              "length_unit": "fixed_content_bytes",
              "delegate": [
                "org.a.b.b.e.c",
                "b",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 11
          },
          {
            "order": 1,
            "field": "email",
            "accessor": "setEmail",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 0,
              "fixed_content_bytes": 238,
              "length_unit": "fixed_content_bytes",
              "delegate": [
                "org.a.b.b.e.c",
                "b",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 239
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 250
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.h.f.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PairingRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "pin",
            "accessor": "getPin",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 0,
              "fixed_content_bytes": 10,
              "length_unit": "fixed_content_bytes",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;Lsomeip/e/f;I[BI)I"
              ],
              "max_content_bytes": 10,
              "max_constant": "PIN_LENGTH",
              "validation": "reject null and content above fixed encoded byte count before write; zero-pad content to fixed width then append charset terminator; capacity uses backing array"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 11
          },
          {
            "order": 1,
            "field": "email",
            "accessor": "getEmail",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 0,
              "fixed_content_bytes": 238,
              "length_unit": "fixed_content_bytes",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;Lsomeip/e/f;I[BI)I"
              ],
              "max_content_bytes": 238,
              "max_constant": "EMAIL_LENGTH",
              "validation": "reject null and content above fixed encoded byte count before write; zero-pad content to fixed width then append charset terminator; capacity uses backing array"
            },
            "unresolved": [],
            "fixed_offset": 11,
            "fixed_size": 239
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 250
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ParkHeaterMode": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ParkHeaterMode",
      "binder_class": "domain.vehicle.v1.binders.someip.ParkHeaterModeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ParkHeaterModeSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "mode",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "reason",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "status",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.h.f.j",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ParkHeaterMode;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "mode",
            "accessor": "setMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "reason",
            "accessor": "setReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "status",
            "accessor": "setStatus",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.h.f.j",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ParkHeaterMode;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "mode",
            "accessor": "getMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "reason",
            "accessor": "getReason",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "status",
            "accessor": "getStatus",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ParkHeaterTimer": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ParkHeaterTimer",
      "binder_class": "domain.vehicle.v1.binders.someip.ParkHeaterTimerBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ParkHeaterTimerSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "dateMode",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "year",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "month",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "day",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "hour",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "minute",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "7",
          "value": 7
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.m.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ParkHeaterTimer;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "dateMode",
            "accessor": "setDateMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "year",
            "accessor": "setYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "month",
            "accessor": "setMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "day",
            "accessor": "setDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "hour",
            "accessor": "setHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "minute",
            "accessor": "setMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 7
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.m.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ParkHeaterTimer;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "dateMode",
            "accessor": "getDateMode",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "year",
            "accessor": "getYear",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "month",
            "accessor": "getMonth",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "day",
            "accessor": "getDay",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "hour",
            "accessor": "getHour",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "minute",
            "accessor": "getMinute",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 7
      },
      "unresolved": [],
      "max_size": 7,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 7,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.Poi": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.Poi",
      "binder_class": "domain.vehicle.v1.binders.someip.PoiBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.PoiSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "arrayHeader",
          "java_type": "ArrayHeader",
          "initializer": "new ArrayHeader()"
        },
        {
          "name": "arraySize",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "arrayIndex",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "name",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "latitude",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "longitude",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "destinationType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "poiType",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "NAME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "NAME_LENGTH": {
          "expression": "129 - f.a.d()",
          "value": 128
        },
        "MAX_SIZE": {
          "expression": "14 + (4 + NAME_LENGTH + f.a.d()) + 4 + 4 + 1 + 1",
          "value": 157
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aO",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Poi;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "someip.d.b.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "arraySize",
            "accessor": "setArraySize",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "arrayIndex",
            "accessor": "setArrayIndex",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "name",
            "accessor": "setName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 14,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "latitude",
            "accessor": "setLatitude",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 6,
            "field": "longitude",
            "accessor": "setLongitude",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 7,
            "field": "destinationType",
            "accessor": "setDestinationType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "poiType",
            "accessor": "setPoiType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aO",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/Poi;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "domain.vehicle.v1.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "arraySize",
            "accessor": "getArraySize",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "arrayIndex",
            "accessor": "getArrayIndex",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 2
          },
          {
            "order": 4,
            "field": "name",
            "accessor": "getName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 128,
              "max_constant": "NAME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 14,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "latitude",
            "accessor": "getLatitude",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 6,
            "field": "longitude",
            "accessor": "getLongitude",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 7,
            "field": "destinationType",
            "accessor": "getDestinationType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 8,
            "field": "poiType",
            "accessor": "getPoiType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 157,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 157,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.PoiAddress": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.PoiAddress",
      "binder_class": "domain.vehicle.v1.binders.someip.PoiAddressBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.PoiAddressSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "arrayHeader",
          "java_type": "ArrayHeader",
          "initializer": "new ArrayHeader()"
        },
        {
          "name": "streetName",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "streetNumber",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "town",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "STREET_NAME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "STREET_NAME_LENGTH": {
          "expression": "129 - f.a.d()",
          "value": 128
        },
        "STREET_NUMBER_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "STREET_NUMBER_LENGTH": {
          "expression": "12 - f.a.d()",
          "value": 11
        },
        "TOWN_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TOWN_LENGTH": {
          "expression": "62 - f.a.d()",
          "value": 61
        },
        "MAX_SIZE": {
          "expression": "10 + (4 + STREET_NAME_LENGTH + f.a.d()) + (4 + STREET_NUMBER_LENGTH + f.a.d()) + (4 + TOWN_LENGTH + f.a.d())",
          "value": 225
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.a.b.n.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PoiAddress;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "someip.d.b.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "streetName",
            "accessor": "setStreetName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          },
          {
            "order": 3,
            "field": "streetNumber",
            "accessor": "setStreetNumber",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 4,
            "field": "town",
            "accessor": "setTown",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "org.a.b.n.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PoiAddress;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "domain.vehicle.v1.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "streetName",
            "accessor": "getStreetName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 128,
              "max_constant": "STREET_NAME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          },
          {
            "order": 3,
            "field": "streetNumber",
            "accessor": "getStreetNumber",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 11,
              "max_constant": "STREET_NUMBER_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 4,
            "field": "town",
            "accessor": "getTown",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 61,
              "max_constant": "TOWN_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 225,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 225,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.PoiDetails": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.PoiDetails",
      "binder_class": "domain.vehicle.v1.binders.someip.PoiDetailsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.PoiDetailsSerializer",
      "java_fields": [
        {
          "name": "requestId",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "arrayHeader",
          "java_type": "ArrayHeader",
          "initializer": "new ArrayHeader()"
        },
        {
          "name": "state",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "zip",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "country",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "telephone",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "STATE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "STATE_LENGTH": {
          "expression": "62 - f.a.d()",
          "value": 61
        },
        "ZIP_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ZIP_LENGTH": {
          "expression": "23 - f.a.d()",
          "value": 22
        },
        "COUNTRY_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "COUNTRY_LENGTH": {
          "expression": "62 - f.a.d()",
          "value": 61
        },
        "TELEPHONE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TELEPHONE_LENGTH": {
          "expression": "42 - f.a.d()",
          "value": 41
        },
        "MAX_SIZE": {
          "expression": "10 + (4 + STATE_LENGTH + f.a.d()) + (4 + ZIP_LENGTH + f.a.d()) + (4 + COUNTRY_LENGTH + f.a.d()) + (4 + TELEPHONE_LENGTH + f.a.d())",
          "value": 215
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.eclipse.paho.client.mqttv3.internal.b.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PoiDetails;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "setRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "someip.d.b.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          },
          {
            "order": 3,
            "field": "zip",
            "accessor": "setZip",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 4,
            "field": "country",
            "accessor": "setCountry",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "telephone",
            "accessor": "setTelephone",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "org.eclipse.paho.client.mqttv3.internal.b.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PoiDetails;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "requestId",
            "accessor": "getRequestId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "domain.vehicle.v1.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 61,
              "max_constant": "STATE_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 10,
            "fixed_size": null
          },
          {
            "order": 3,
            "field": "zip",
            "accessor": "getZip",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 22,
              "max_constant": "ZIP_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 4,
            "field": "country",
            "accessor": "getCountry",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 61,
              "max_constant": "COUNTRY_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 5,
            "field": "telephone",
            "accessor": "getTelephone",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 41,
              "max_constant": "TELEPHONE_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 215,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 215,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.PoiName": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.PoiName",
      "binder_class": "domain.vehicle.v1.binders.someip.PoiNameBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.PoiNameSerializer",
      "java_fields": [
        {
          "name": "arrayHeader",
          "java_type": "ArrayHeader",
          "initializer": null
        },
        {
          "name": "name",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "NAME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "NAME_LENGTH": {
          "expression": "1 - f.a.d()",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "8 + (4 + NAME_LENGTH + f.a.d())",
          "value": 13
        }
      },
      "decoder": {
        "delegate": {
          "class": "org.b.b.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PoiName;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "someip.d.b.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "name",
            "accessor": "setName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "org.b.b.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PoiName;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "domain.vehicle.v1.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "name",
            "accessor": "getName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 0,
              "max_constant": "NAME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 13,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 13,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.PosResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.PosResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.PosResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.PosResponseSerializer",
      "java_fields": [
        {
          "name": "data",
          "java_type": "short[]",
          "initializer": "new short[120]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "120",
          "value": 120
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "124",
          "value": 124
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PosResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "u8",
                "bytes": 1,
                "primitive": "someip.e.d.c:([BII)S"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 120,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 120",
                "length >= 0 && length <= 120"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/PosResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "u8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(S[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 120,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 120",
                "length >= 0 && length <= 120"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 124,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 124,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ProtectedFunctionLogin": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ProtectedFunctionLogin",
      "binder_class": "domain.vehicle.v1.binders.someip.ProtectedFunctionLoginBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ProtectedFunctionLoginSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[35]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "35",
          "value": 35
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "47",
          "value": 47
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ProtectedFunctionLogin;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 35,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 35",
                "length >= 0 && length <= 35"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ProtectedFunctionLogin;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 35,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 35",
                "length >= 0 && length <= 35"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 47,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 47,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.RemoteLockJob": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.RemoteLockJob",
      "binder_class": "domain.vehicle.v1.binders.someip.RemoteLockJobBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.RemoteLockJobSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "authenticationRequest",
          "java_type": "byte[]",
          "initializer": "new byte[5]"
        },
        {
          "name": "authenticationRequestLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_REQUEST_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_REQUEST_MAX_LENGTH": {
          "expression": "5",
          "value": 5
        },
        "AUTHENTICATION_REQUEST_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "17",
          "value": 17
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.b$a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RemoteLockJob;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "setAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 5,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 5",
                "length >= 0 && length <= 5"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.b$a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RemoteLockJob;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "getAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationRequestLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 5,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 5",
                "length >= 0 && length <= 5"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 17,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 17,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.RemoteProcessState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.RemoteProcessState",
      "binder_class": "domain.vehicle.v1.binders.someip.RemoteProcessStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.RemoteProcessStateSerializer",
      "java_fields": [
        {
          "name": "commandType",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "processState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "exceptionState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "additionalData",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RemoteProcessState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "commandType",
            "accessor": "setCommandType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "processState",
            "accessor": "setProcessState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "exceptionState",
            "accessor": "setExceptionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "additionalData",
            "accessor": "setAdditionalData",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RemoteProcessState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "commandType",
            "accessor": "getCommandType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "processState",
            "accessor": "getProcessState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "exceptionState",
            "accessor": "getExceptionState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "additionalData",
            "accessor": "getAdditionalData",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.RemoteUnlockJob": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.RemoteUnlockJob",
      "binder_class": "domain.vehicle.v1.binders.someip.RemoteUnlockJobBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.RemoteUnlockJobSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "authenticationRequest",
          "java_type": "byte[]",
          "initializer": "new byte[5]"
        },
        {
          "name": "authenticationRequestLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_REQUEST_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_REQUEST_MAX_LENGTH": {
          "expression": "5",
          "value": 5
        },
        "AUTHENTICATION_REQUEST_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "17",
          "value": 17
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RemoteUnlockJob;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "setAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 5,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 5",
                "length >= 0 && length <= 5"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RemoteUnlockJob;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationRequest",
            "accessor": "getAuthenticationRequestElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationRequestLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 5,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 5",
                "length >= 0 && length <= 5"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 17,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 17,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.RoutineServiceRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.RoutineServiceRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.RoutineServiceRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.RoutineServiceRequestSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "type",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[3]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "3",
          "value": 3
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "10",
          "value": 10
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RoutineServiceRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "type",
            "accessor": "setType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.a.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RoutineServiceRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "type",
            "accessor": "getType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 10,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 10,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.RoutineServiceResult": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.RoutineServiceResult",
      "binder_class": "domain.vehicle.v1.binders.someip.RoutineServiceResultBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.RoutineServiceResultSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[3]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "3",
          "value": 3
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "9",
          "value": 9
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RoutineServiceResult;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/RoutineServiceResult;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 3,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 3",
                "length >= 0 && length <= 3"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 9,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 9,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.SPin": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.SPin",
      "binder_class": "domain.vehicle.v1.binders.someip.SPinBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.SPinSerializer",
      "java_fields": [
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[100]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "targetProcess",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "100",
          "value": 100
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "106",
          "value": 106
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/SPin;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 100,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 100",
                "length >= 0 && length <= 100"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "targetProcess",
            "accessor": "setTargetProcess",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/SPin;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 100,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 100",
                "length >= 0 && length <= 100"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "targetProcess",
            "accessor": "getTargetProcess",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 106,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 106,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ScrRange": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ScrRange",
      "binder_class": "domain.vehicle.v1.binders.someip.ScrRangeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ScrRangeSerializer",
      "java_fields": [
        {
          "name": "remainingRange",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "remainingEngineStartCount",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ScrRange;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "remainingRange",
            "accessor": "setRemainingRange",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "remainingEngineStartCount",
            "accessor": "setRemainingEngineStartCount",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ScrRange;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "remainingRange",
            "accessor": "getRemainingRange",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "remainingEngineStartCount",
            "accessor": "getRemainingEngineStartCount",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ServiceExpiryWarning": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ServiceExpiryWarning",
      "binder_class": "domain.vehicle.v1.binders.someip.ServiceExpiryWarningBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ServiceExpiryWarningSerializer",
      "java_fields": [
        {
          "name": "serviceId",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "SERVICE_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SERVICE_ID_LENGTH": {
          "expression": "34 - f.a.d()",
          "value": 33
        },
        "MAX_SIZE": {
          "expression": "4 + SERVICE_ID_LENGTH + f.a.d()",
          "value": 38
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceExpiryWarning;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "setServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceExpiryWarning;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "getServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 33,
              "max_constant": "SERVICE_ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 38,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 38,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ServiceKeyData": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ServiceKeyData",
      "binder_class": "domain.vehicle.v1.binders.someip.ServiceKeyDataBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ServiceKeyDataSerializer",
      "java_fields": [
        {
          "name": "data",
          "java_type": "byte[]",
          "initializer": "new byte[128]"
        },
        {
          "name": "dataLength",
          "java_type": "int",
          "initializer": "0"
        },
        {
          "name": "timestamp",
          "java_type": "DateTime",
          "initializer": "new DateTime()"
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "DATA_MAX_LENGTH": {
          "expression": "128",
          "value": 128
        },
        "DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "141",
          "value": 141
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceKeyData;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "setDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 128,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 128",
                "length >= 0 && length <= 128"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "timestamp",
            "accessor": "getTimestamp",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.DateTime",
              "delegate": [
                "domain.vehicle.v1.a.m",
                "a",
                "(Ldomain/vehicle/v1/models/DateTime;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.a.b.i",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceKeyData;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "data",
            "accessor": "getDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 128,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 128",
                "length >= 0 && length <= 128"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "timestamp",
            "accessor": "getTimestamp",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.DateTime",
              "delegate": [
                "domain.vehicle.v1.a.m",
                "a",
                "(Ldomain/vehicle/v1/models/DateTime;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 8
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 141,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 141,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ServiceListElement": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.ServiceListElement",
      "binder_class": "domain.vehicle.v1.binders.someip.ServiceListElementBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ServiceListElementSerializer",
      "java_fields": [
        {
          "name": "serviceId",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "serviceVersion",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "serviceState",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "userSettings",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "licenseState",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "licenseId",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "licenseDuration",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "licenseExpiration",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "licenseActivation",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "SERVICE_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SERVICE_ID_LENGTH": {
          "expression": "34 - f.a.d()",
          "value": 33
        },
        "SERVICE_VERSION_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SERVICE_VERSION_LENGTH": {
          "expression": "10 - f.a.d()",
          "value": 9
        },
        "LICENSE_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "LICENSE_ID_LENGTH": {
          "expression": "34 - f.a.d()",
          "value": 33
        },
        "LICENSE_DURATION_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "LICENSE_DURATION_LENGTH": {
          "expression": "19 - f.a.d()",
          "value": 18
        },
        "LICENSE_EXPIRATION_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "LICENSE_EXPIRATION_LENGTH": {
          "expression": "19 - f.a.d()",
          "value": 18
        },
        "LICENSE_ACTIVATION_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "LICENSE_ACTIVATION_LENGTH": {
          "expression": "19 - f.a.d()",
          "value": 18
        },
        "MAX_SIZE": {
          "expression": "4 + SERVICE_ID_LENGTH + f.a.d() + (4 + SERVICE_VERSION_LENGTH + f.a.d()) + 2 + 1 + 1 + (4 + LICENSE_ID_LENGTH + f.a.d()) + (4 + LICENSE_DURATION_LENGTH + f.a.d()) + (4 + LICENSE_EXPIRATION_LENGTH + f.a.d()) + (4 + LICENSE_ACTIVATION_LENGTH + f.a.d())",
          "value": 163
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aP",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListElement;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "setServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "serviceVersion",
            "accessor": "setServiceVersion",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "serviceState",
            "accessor": "setServiceState",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "userSettings",
            "accessor": "setUserSettings",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "licenseState",
            "accessor": "setLicenseState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "licenseId",
            "accessor": "setLicenseId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 6,
            "field": "licenseDuration",
            "accessor": "setLicenseDuration",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 7,
            "field": "licenseExpiration",
            "accessor": "setLicenseExpiration",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 8,
            "field": "licenseActivation",
            "accessor": "setLicenseActivation",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aP",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListElement;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "serviceId",
            "accessor": "getServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 33,
              "max_constant": "SERVICE_ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "serviceVersion",
            "accessor": "getServiceVersion",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 9,
              "max_constant": "SERVICE_VERSION_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "serviceState",
            "accessor": "getServiceState",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "userSettings",
            "accessor": "getUserSettings",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "licenseState",
            "accessor": "getLicenseState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "licenseId",
            "accessor": "getLicenseId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 33,
              "max_constant": "LICENSE_ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 6,
            "field": "licenseDuration",
            "accessor": "getLicenseDuration",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 18,
              "max_constant": "LICENSE_DURATION_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 7,
            "field": "licenseExpiration",
            "accessor": "getLicenseExpiration",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 18,
              "max_constant": "LICENSE_EXPIRATION_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          },
          {
            "order": 8,
            "field": "licenseActivation",
            "accessor": "getLicenseActivation",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 18,
              "max_constant": "LICENSE_ACTIVATION_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 163,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 163,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ServiceListResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ServiceListResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.ServiceListResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ServiceListResponseSerializer",
      "java_fields": [
        {
          "name": "header",
          "java_type": "ArrayResponseHeader",
          "initializer": "new ArrayResponseHeader()"
        },
        {
          "name": "elements",
          "java_type": "ServiceListElement[]",
          "initializer": "new ServiceListElement[1]"
        },
        {
          "name": "elementsLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "ELEMENTS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "MAX_SIZE": {
          "expression": "16 + ServiceListElement.MAX_SIZE",
          "value": 179
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.b.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "com.google.gson.internal.b$1",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "setElements",
            "wire": {
              "kind": "optional",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.ServiceListElement",
                "delegate": [
                  "domain.vehicle.v1.a.aP",
                  "a",
                  "(Ldomain/vehicle/v1/models/ServiceListElement;[BII)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "decode_presence": "declared_byte_length > 0",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "encode_presence": null,
              "max_elements": 1
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.b.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "domain.vehicle.v1.a.b",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "getElements",
            "wire": {
              "kind": "optional",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.ServiceListElement",
                "delegate": [
                  "domain.vehicle.v1.a.aP",
                  "a",
                  "(Ldomain/vehicle/v1/models/ServiceListElement;[BI)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "decode_presence": "declared_byte_length > 0",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "encode_presence": "hasElements()",
              "max_elements": 1
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 179,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 179,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ServiceListUserSettings": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.ServiceListUserSettings",
      "binder_class": "domain.vehicle.v1.binders.someip.ServiceListUserSettingsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ServiceListUserSettingsSerializer",
      "java_fields": [
        {
          "name": "index",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "serviceId",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "userSettings",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "SERVICE_ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "SERVICE_ID_LENGTH": {
          "expression": "33 - f.a.d()",
          "value": 32
        },
        "MAX_SIZE": {
          "expression": "2 + (4 + SERVICE_ID_LENGTH + f.a.d()) + 1",
          "value": 40
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.d.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListUserSettings;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "index",
            "accessor": "setIndex",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "serviceId",
            "accessor": "setServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "userSettings",
            "accessor": "setUserSettings",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aQ",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListUserSettings;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "index",
            "accessor": "getIndex",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "serviceId",
            "accessor": "getServiceId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 32,
              "max_constant": "SERVICE_ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          },
          {
            "order": 2,
            "field": "userSettings",
            "accessor": "getUserSettings",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 40,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 40,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ServiceListUserSettingsRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ServiceListUserSettingsRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.ServiceListUserSettingsRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ServiceListUserSettingsRequestSerializer",
      "java_fields": [
        {
          "name": "arrayHeader",
          "java_type": "ArrayHeader",
          "initializer": null
        },
        {
          "name": "element",
          "java_type": "ServiceListUserSettings",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "8 + ServiceListUserSettings.MAX_SIZE",
          "value": 48
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aQ",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListUserSettingsRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "someip.d.b.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "element",
            "accessor": "getElement",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ServiceListUserSettings",
              "delegate": [
                "pubsub.broker.d.b",
                "a",
                "(Ldomain/vehicle/v1/models/ServiceListUserSettings;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.d.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ServiceListUserSettingsRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "arrayHeader",
            "accessor": "getArrayHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayHeader",
              "delegate": [
                "domain.vehicle.v1.a.a",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "element",
            "accessor": "getElement",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ServiceListUserSettings",
              "delegate": [
                "domain.vehicle.v1.a.aQ",
                "a",
                "(Ldomain/vehicle/v1/models/ServiceListUserSettings;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 48,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 48,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.ShockEvent": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.ShockEvent",
      "binder_class": "domain.vehicle.v1.binders.someip.ShockEventBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.ShockEventSerializer",
      "java_fields": [
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "accelerationX",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "accelerationY",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "accelerationZ",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "7",
          "value": 7
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.d.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ShockEvent;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "accelerationX",
            "accessor": "setAccelerationX",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "someip.e.d.f:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "accelerationY",
            "accessor": "setAccelerationY",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "someip.e.d.f:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "accelerationZ",
            "accessor": "setAccelerationZ",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "someip.e.d.f:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 7
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.d.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/ShockEvent;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "accelerationX",
            "accessor": "getAccelerationX",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.b:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "accelerationY",
            "accessor": "getAccelerationY",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.b:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 2
          },
          {
            "order": 3,
            "field": "accelerationZ",
            "accessor": "getAccelerationZ",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.b:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 5,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 7
      },
      "unresolved": [],
      "max_size": 7,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 7,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulBool": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulBool",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulBoolBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulBoolSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulBool;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulBool;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulInt16": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulInt16",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulInt16Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulInt16Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aR",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulInt16;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "someip.e.d.f:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aR",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulInt16;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.b:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulInt32": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulInt32",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulInt32Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulInt32Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aS",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulInt32;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "someip.e.d.h:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aS",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulInt32;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "i32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.b:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulInt64": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulInt64",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulInt64Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulInt64Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "9",
          "value": 9
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aT",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulInt64;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 9
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aT",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulInt64;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 9
      },
      "unresolved": [],
      "max_size": 9,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 9,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulUInt16": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulUInt16",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulUInt16Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulUInt16Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aV",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aV",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulUInt32": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulUInt32",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulUInt32Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulUInt32Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aW",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulUInt32;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aW",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulUInt32;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 4,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StatefulUInt8": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StatefulUInt8",
      "binder_class": "domain.vehicle.v1.binders.someip.StatefulUInt8Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StatefulUInt8Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aX",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulUInt8;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aX",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StatefulUInt8;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.StopPhases": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.StopPhases",
      "binder_class": "domain.vehicle.v1.binders.someip.StopPhasesBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.StopPhasesSerializer",
      "java_fields": [
        {
          "name": "count",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "engineStopCount",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "preventedEngineStopCount",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "duration",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        },
        {
          "name": "engineStopDuration",
          "java_type": "StatefulUInt16",
          "initializer": "new StatefulUInt16()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "15",
          "value": 15
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StopPhases;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "count",
            "accessor": "getCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "engineStopCount",
            "accessor": "getEngineStopCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "preventedEngineStopCount",
            "accessor": "getPreventedEngineStopCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 3
          },
          {
            "order": 3,
            "field": "duration",
            "accessor": "getDuration",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "engineStopDuration",
            "accessor": "getEngineStopDuration",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 15
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.d",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/StopPhases;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "count",
            "accessor": "getCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 3
          },
          {
            "order": 1,
            "field": "engineStopCount",
            "accessor": "getEngineStopCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 3
          },
          {
            "order": 2,
            "field": "preventedEngineStopCount",
            "accessor": "getPreventedEngineStopCount",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": 3
          },
          {
            "order": 3,
            "field": "duration",
            "accessor": "getDuration",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 9,
            "fixed_size": 3
          },
          {
            "order": 4,
            "field": "engineStopDuration",
            "accessor": "getEngineStopDuration",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.StatefulUInt16",
              "delegate": [
                "domain.vehicle.v1.a.aV",
                "a",
                "(Ldomain/vehicle/v1/models/StatefulUInt16;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": 3
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 15
      },
      "unresolved": [],
      "max_size": 15,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 15,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.SunroofState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.SunroofState",
      "binder_class": "domain.vehicle.v1.binders.someip.SunroofStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.SunroofStateSerializer",
      "java_fields": [
        {
          "name": "percentOpen",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.h",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/SunroofState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "percentOpen",
            "accessor": "setPercentOpen",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.h",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/SunroofState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "percentOpen",
            "accessor": "getPercentOpen",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.TripStatistics": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.TripStatistics",
      "binder_class": "domain.vehicle.v1.binders.someip.TripStatisticsBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.TripStatisticsSerializer",
      "java_fields": [
        {
          "name": "shortTermStatistics",
          "java_type": "FISData",
          "initializer": "new FISData()"
        },
        {
          "name": "longTermStatistics",
          "java_type": "FISData",
          "initializer": "new FISData()"
        },
        {
          "name": "cycleStatistics",
          "java_type": "FISData",
          "initializer": "new FISData()"
        },
        {
          "name": "comfortPowerConsumption",
          "java_type": "ComfortPowerConsumption",
          "initializer": "new ComfortPowerConsumption()"
        },
        {
          "name": "electricStatistics",
          "java_type": "ElectricStatistics",
          "initializer": "new ElectricStatistics()"
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "126",
          "value": 126
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.m",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/TripStatistics;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "shortTermStatistics",
            "accessor": "getShortTermStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FISData",
              "delegate": [
                "domain.vehicle.v1.a.L",
                "a",
                "(Ldomain/vehicle/v1/models/FISData;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 28
          },
          {
            "order": 1,
            "field": "longTermStatistics",
            "accessor": "getLongTermStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FISData",
              "delegate": [
                "domain.vehicle.v1.a.L",
                "a",
                "(Ldomain/vehicle/v1/models/FISData;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 28,
            "fixed_size": 28
          },
          {
            "order": 2,
            "field": "cycleStatistics",
            "accessor": "getCycleStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FISData",
              "delegate": [
                "domain.vehicle.v1.a.L",
                "a",
                "(Ldomain/vehicle/v1/models/FISData;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 56,
            "fixed_size": 28
          },
          {
            "order": 3,
            "field": "comfortPowerConsumption",
            "accessor": "getComfortPowerConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ComfortPowerConsumption",
              "delegate": [
                "domain.vehicle.v1.a.b",
                "a",
                "(Ldomain/vehicle/v1/models/ComfortPowerConsumption;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 84,
            "fixed_size": 9
          },
          {
            "order": 4,
            "field": "electricStatistics",
            "accessor": "getElectricStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ElectricStatistics",
              "delegate": [
                "domain.vehicle.v1.a.C",
                "a",
                "(Ldomain/vehicle/v1/models/ElectricStatistics;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 93,
            "fixed_size": 33
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 126
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.broker.d.a.m",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/TripStatistics;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "shortTermStatistics",
            "accessor": "getShortTermStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FISData",
              "delegate": [
                "domain.vehicle.v1.a.L",
                "a",
                "(Ldomain/vehicle/v1/models/FISData;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 28
          },
          {
            "order": 1,
            "field": "longTermStatistics",
            "accessor": "getLongTermStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FISData",
              "delegate": [
                "domain.vehicle.v1.a.L",
                "a",
                "(Ldomain/vehicle/v1/models/FISData;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 28,
            "fixed_size": 28
          },
          {
            "order": 2,
            "field": "cycleStatistics",
            "accessor": "getCycleStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.FISData",
              "delegate": [
                "domain.vehicle.v1.a.L",
                "a",
                "(Ldomain/vehicle/v1/models/FISData;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 56,
            "fixed_size": 28
          },
          {
            "order": 3,
            "field": "comfortPowerConsumption",
            "accessor": "getComfortPowerConsumption",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ComfortPowerConsumption",
              "delegate": [
                "domain.vehicle.v1.a.g",
                "a",
                "(Ldomain/vehicle/v1/models/ComfortPowerConsumption;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 84,
            "fixed_size": 9
          },
          {
            "order": 4,
            "field": "electricStatistics",
            "accessor": "getElectricStatistics",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ElectricStatistics",
              "delegate": [
                "domain.vehicle.v1.a.C",
                "a",
                "(Ldomain/vehicle/v1/models/ElectricStatistics;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 93,
            "fixed_size": 33
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 126
      },
      "unresolved": [],
      "max_size": 126,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 126,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.TyreState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.TyreState",
      "binder_class": "domain.vehicle.v1.binders.someip.TyreStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.TyreStateSerializer",
      "java_fields": [
        {
          "name": "actualPressure",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "differentialPressure",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/TyreState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "actualPressure",
            "accessor": "setActualPressure",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "differentialPressure",
            "accessor": "setDifferentialPressure",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "someip.e.d.f:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.a.a$a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/TyreState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "actualPressure",
            "accessor": "getActualPressure",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "differentialPressure",
            "accessor": "getDifferentialPressure",
            "wire": {
              "kind": "i16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.b:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 2
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 3,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UInt16": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UInt16",
      "binder_class": "domain.vehicle.v1.binders.someip.UInt16Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UInt16Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.a.a$b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UInt16;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.a.a$b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UInt16;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UInt32": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UInt32",
      "binder_class": "domain.vehicle.v1.binders.someip.UInt32Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UInt32Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "long",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "4",
          "value": 4
        }
      },
      "decoder": {
        "delegate": {
          "class": "pubsub.a.a$c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UInt32;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 4
      },
      "encoder": {
        "delegate": {
          "class": "pubsub.a.a$c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UInt32;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 4
      },
      "unresolved": [],
      "max_size": 4,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 4,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UInt8": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UInt8",
      "binder_class": "domain.vehicle.v1.binders.someip.UInt8Binder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UInt8Serializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "1",
          "value": 1
        }
      },
      "decoder": {
        "delegate": {
          "class": "smartcard.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UInt8;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 1
      },
      "encoder": {
        "delegate": {
          "class": "smartcard.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UInt8;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 1
      },
      "unresolved": [],
      "max_size": 1,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 1,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UpdateId": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UpdateId",
      "binder_class": "domain.vehicle.v1.binders.someip.UpdateIdBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UpdateIdSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ID_LENGTH": {
          "expression": "21 - f.a.d()",
          "value": 20
        },
        "MAX_SIZE": {
          "expression": "4 + ID_LENGTH + f.a.d()",
          "value": 25
        }
      },
      "decoder": {
        "delegate": {
          "class": "smartcard.provider.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateId;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "smartcard.provider.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateId;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 20,
              "max_constant": "ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 25,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 25,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UpdateInfoSegment": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UpdateInfoSegment",
      "binder_class": "domain.vehicle.v1.binders.someip.UpdateInfoSegmentBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UpdateInfoSegmentSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "downloadSize",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "estimatedDuration",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "domain",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "preconditions",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "language",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "totalTextLength",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "text",
          "java_type": "byte[]",
          "initializer": "new byte[211]"
        },
        {
          "name": "textLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ID_LENGTH": {
          "expression": "21 - f.a.d()",
          "value": 20
        },
        "TEXT_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TEXT_MAX_LENGTH": {
          "expression": "211",
          "value": 211
        },
        "TEXT_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "4 + ID_LENGTH + f.a.d() + 4 + 1 + 1 + 1 + 1 + 2 + 4 + 211",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "smartcard.provider.e$e",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateInfoSegment;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "downloadSize",
            "accessor": "setDownloadSize",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 2,
            "field": "estimatedDuration",
            "accessor": "setEstimatedDuration",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "domain",
            "accessor": "setDomain",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "preconditions",
            "accessor": "setPreconditions",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "language",
            "accessor": "setLanguage",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "totalTextLength",
            "accessor": "setTotalTextLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          },
          {
            "order": 7,
            "field": "text",
            "accessor": "setTextElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 211,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 211",
                "length >= 0 && length <= 211"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "smartcard.provider.e$b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateInfoSegment;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 20,
              "max_constant": "ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "downloadSize",
            "accessor": "getDownloadSize",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 4
          },
          {
            "order": 2,
            "field": "estimatedDuration",
            "accessor": "getEstimatedDuration",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 3,
            "field": "domain",
            "accessor": "getDomain",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 4,
            "field": "preconditions",
            "accessor": "getPreconditions",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 5,
            "field": "language",
            "accessor": "getLanguage",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          },
          {
            "order": 6,
            "field": "totalTextLength",
            "accessor": "getTotalTextLength",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          },
          {
            "order": 7,
            "field": "text",
            "accessor": "getTextElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getTextLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 211,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 211",
                "length >= 0 && length <= 211"
              ]
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UpdateLanguage": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UpdateLanguage",
      "binder_class": "domain.vehicle.v1.binders.someip.UpdateLanguageBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UpdateLanguageSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "language",
          "java_type": "int",
          "initializer": null
        }
      ],
      "constants": {
        "ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ID_LENGTH": {
          "expression": "21 - f.a.d()",
          "value": 20
        },
        "MAX_SIZE": {
          "expression": "4 + ID_LENGTH + f.a.d() + 2",
          "value": 27
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.c.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateLanguage;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "language",
            "accessor": "setLanguage",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.c.f",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateLanguage;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 20,
              "max_constant": "ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "language",
            "accessor": "getLanguage",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 2
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 27,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 27,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UpdateTextSegment": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UpdateTextSegment",
      "binder_class": "domain.vehicle.v1.binders.someip.UpdateTextSegmentBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UpdateTextSegmentSerializer",
      "java_fields": [
        {
          "name": "offset",
          "java_type": "int",
          "initializer": null
        },
        {
          "name": "text",
          "java_type": "byte[]",
          "initializer": "new byte[244]"
        },
        {
          "name": "textLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "TEXT_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TEXT_MAX_LENGTH": {
          "expression": "244",
          "value": 244
        },
        "TEXT_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "250",
          "value": 250
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.c.b.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateTextSegment;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "offset",
            "accessor": "setOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "someip.e.d.e:([BII)I"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "text",
            "accessor": "setTextElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 244,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 244",
                "length >= 0 && length <= 244"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.c.b.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateTextSegment;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "offset",
            "accessor": "getOffset",
            "wire": {
              "kind": "u16be",
              "bytes": 2,
              "primitive": "org.a.b.b.e.c.a:(I[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 2
          },
          {
            "order": 1,
            "field": "text",
            "accessor": "getTextElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getTextLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 244,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 244",
                "length >= 0 && length <= 244"
              ]
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 250,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 250,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UpdateTime": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UpdateTime",
      "binder_class": "domain.vehicle.v1.binders.someip.UpdateTimeBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UpdateTimeSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "time",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "ID_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "ID_LENGTH": {
          "expression": "21 - f.a.d()",
          "value": 20
        },
        "TIME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TIME_LENGTH": {
          "expression": "101 - f.a.d()",
          "value": 100
        },
        "MAX_SIZE": {
          "expression": "4 + ID_LENGTH + f.a.d() + (4 + TIME_LENGTH + f.a.d())",
          "value": 130
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.c.c.d.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateTime;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "time",
            "accessor": "setTime",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.c.c.d.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UpdateTime;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 20,
              "max_constant": "ID_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "time",
            "accessor": "getTime",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 100,
              "max_constant": "TIME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 130,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 130,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UserListElement": {
      "referenced_by_xml": false,
      "model_class": "domain.vehicle.v1.models.UserListElement",
      "binder_class": "domain.vehicle.v1.binders.someip.UserListElementBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UserListElementSerializer",
      "java_fields": [
        {
          "name": "type",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "loggedIn",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "name",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "NAME_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "NAME_LENGTH": {
          "expression": "227 - f.a.d()",
          "value": 226
        },
        "MAX_SIZE": {
          "expression": "2 + (4 + NAME_LENGTH + f.a.d())",
          "value": 233
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aY",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UserListElement;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "type",
            "accessor": "setType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "loggedIn",
            "accessor": "setLoggedIn",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "name",
            "accessor": "setName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aY",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UserListElement;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "type",
            "accessor": "getType",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "loggedIn",
            "accessor": "getLoggedIn",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "name",
            "accessor": "getName",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 226,
              "max_constant": "NAME_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 233,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 233,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.UserListResponse": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.UserListResponse",
      "binder_class": "domain.vehicle.v1.binders.someip.UserListResponseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.UserListResponseSerializer",
      "java_fields": [
        {
          "name": "header",
          "java_type": "ArrayResponseHeader",
          "initializer": "new ArrayResponseHeader()"
        },
        {
          "name": "elements",
          "java_type": "UserListElement[]",
          "initializer": "new UserListElement[1]"
        },
        {
          "name": "elementsLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "ELEMENTS_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "MAX_SIZE": {
          "expression": "16 + UserListElement.MAX_SIZE",
          "value": 249
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.c.c.d.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UserListResponse;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "com.google.gson.internal.b$1",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BII)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "setElements",
            "wire": {
              "kind": "optional",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.UserListElement",
                "delegate": [
                  "domain.vehicle.v1.a.aY",
                  "a",
                  "(Ldomain/vehicle/v1/models/UserListElement;[BII)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "decode_presence": "declared_byte_length > 0",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "encode_presence": null,
              "max_elements": 1
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.c.c.d.c",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/UserListResponse;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "header",
            "accessor": "getHeader",
            "wire": {
              "kind": "model",
              "model": "domain.vehicle.v1.models.ArrayResponseHeader",
              "delegate": [
                "domain.vehicle.v1.a.b",
                "a",
                "(Ldomain/vehicle/v1/models/ArrayResponseHeader;[BI)I"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 12
          },
          {
            "order": 1,
            "field": "elements",
            "accessor": "getElements",
            "wire": {
              "kind": "optional",
              "element": {
                "kind": "model",
                "model": "domain.vehicle.v1.models.UserListElement",
                "delegate": [
                  "domain.vehicle.v1.a.aY",
                  "a",
                  "(Ldomain/vehicle/v1/models/UserListElement;[BI)I"
                ]
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "decode_presence": "declared_byte_length > 0",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "encode_presence": "hasElements()",
              "max_elements": 1
            },
            "unresolved": [],
            "fixed_offset": 12,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 249,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 249,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.VIN": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.VIN",
      "binder_class": "domain.vehicle.v1.binders.someip.VINBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.VINSerializer",
      "java_fields": [
        {
          "name": "value",
          "java_type": "String",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "VALUE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "VALUE_LENGTH": {
          "expression": "18 - f.a.d()",
          "value": 17
        },
        "MAX_SIZE": {
          "expression": "4 + VALUE_LENGTH + f.a.d() + 1",
          "value": 23
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.c.f.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VIN;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.c.f.g",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VIN;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 17,
              "max_constant": "VALUE_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          },
          {
            "order": 1,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": null,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 23,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 23,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.VTanRequest": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.VTanRequest",
      "binder_class": "domain.vehicle.v1.binders.someip.VTanRequestBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.VTanRequestSerializer",
      "java_fields": [
        {
          "name": "authenticationData",
          "java_type": "byte[]",
          "initializer": "new byte[45]"
        },
        {
          "name": "authenticationDataLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_DATA_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_DATA_MAX_LENGTH": {
          "expression": "45",
          "value": 45
        },
        "AUTHENTICATION_DATA_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "49",
          "value": 49
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.d.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VTanRequest;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "authenticationData",
            "accessor": "setAuthenticationDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 45,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 45",
                "length >= 0 && length <= 45"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.c.g.a",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VTanRequest;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "authenticationData",
            "accessor": "getAuthenticationDataElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationDataLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 45,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 45",
                "length >= 0 && length <= 45"
              ]
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 49,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 49,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.VehicleIdentification": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.VehicleIdentification",
      "binder_class": "domain.vehicle.v1.binders.someip.VehicleIdentificationBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.VehicleIdentificationSerializer",
      "java_fields": [
        {
          "name": "id",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "authenticationResponse",
          "java_type": "byte[]",
          "initializer": "new byte[40]"
        },
        {
          "name": "authenticationResponseLength",
          "java_type": "int",
          "initializer": "0"
        }
      ],
      "constants": {
        "AUTHENTICATION_RESPONSE_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "AUTHENTICATION_RESPONSE_MAX_LENGTH": {
          "expression": "40",
          "value": 40
        },
        "AUTHENTICATION_RESPONSE_MIN_LENGTH": {
          "expression": "0",
          "value": 0
        },
        "MAX_SIZE": {
          "expression": "52",
          "value": 52
        }
      },
      "decoder": {
        "delegate": {
          "class": "someip.d.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VehicleIdentification;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "someip.e.d.i:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationResponse",
            "accessor": "setAuthenticationResponseElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "someip.e.d.b:([BII)B"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "decode_termination": "while cursor - body_start < declared_byte_length",
              "decode_exact_body_consumption_check": false,
              "max_declared_body_bytes": 2147483647,
              "default_backing_capacity_elements": 40,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 40",
                "length >= 0 && length <= 40"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "someip.d.b",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VehicleIdentification;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "i64be",
              "bytes": 8,
              "primitive": "org.a.b.b.e.c.b:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 8
          },
          {
            "order": 1,
            "field": "authenticationResponse",
            "accessor": "getAuthenticationResponseElement",
            "wire": {
              "kind": "array",
              "element": {
                "kind": "i8",
                "bytes": 1,
                "primitive": "org.a.b.b.e.c.a:(B[BI)V"
              },
              "length_prefix_bytes": 4,
              "length_unit": "encoded_body_bytes",
              "fixed_elements": null,
              "encode_count_source": "getAuthenticationResponseLength()",
              "encode_prefix_source": "cursor - body_start after elements",
              "default_backing_capacity_elements": 40,
              "public_setter_guards": [
                "array.length >= 0 && array.length <= 40",
                "length >= 0 && length <= 40"
              ]
            },
            "unresolved": [],
            "fixed_offset": 8,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 52,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 52,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.VoiceServiceTrigger": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.VoiceServiceTrigger",
      "binder_class": "domain.vehicle.v1.binders.someip.VoiceServiceTriggerBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.VoiceServiceTriggerSerializer",
      "java_fields": [
        {
          "name": "trigger",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "keyEvent",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "2",
          "value": 2
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aZ",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VoiceServiceTrigger;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "trigger",
            "accessor": "setTrigger",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "keyEvent",
            "accessor": "setKeyEvent",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 2
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.aZ",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/VoiceServiceTrigger;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "trigger",
            "accessor": "getTrigger",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "keyEvent",
            "accessor": "getKeyEvent",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 2
      },
      "unresolved": [],
      "max_size": 2,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 2,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.WakeLockLease": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.WakeLockLease",
      "binder_class": "domain.vehicle.v1.binders.someip.WakeLockLeaseBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.WakeLockLeaseSerializer",
      "java_fields": [
        {
          "name": "systemId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "id",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "duration",
          "java_type": "long",
          "initializer": null
        },
        {
          "name": "tag",
          "java_type": "String",
          "initializer": null
        }
      ],
      "constants": {
        "TAG_LENGTH_FIELD_LENGTH": {
          "expression": "4",
          "value": 4
        },
        "TAG_LENGTH": {
          "expression": "17 - f.a.d()",
          "value": 16
        },
        "MAX_SIZE": {
          "expression": "6 + (4 + TAG_LENGTH + f.a.d())",
          "value": 27
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.bc",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/WakeLockLease;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "systemId",
            "accessor": "setSystemId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "id",
            "accessor": "setId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "duration",
            "accessor": "setDuration",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "tag",
            "accessor": "setTag",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "([BIIILsomeip/e/f;)Lsomeip/f/g;"
              ],
              "validation": "check prefix and content bounds and charset terminator; no model nominal maximum check; fixed strings trim trailing zero padding",
              "max_declared_byte_length": 2147483647,
              "zero_length_prefix_behavior": "returns empty string after prefix only, without reading terminator"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": null
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.bc",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/WakeLockLease;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "systemId",
            "accessor": "getSystemId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "id",
            "accessor": "getId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "duration",
            "accessor": "getDuration",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 4
          },
          {
            "order": 3,
            "field": "tag",
            "accessor": "getTag",
            "wire": {
              "kind": "string",
              "charset": "UTF-8",
              "charset_enum": "someip.e.f.a",
              "bom_hex": "",
              "terminator_hex": "00",
              "length_prefix_bytes": 4,
              "fixed_content_bytes": null,
              "length_unit": "encoded_bytes_including_bom_and_terminator",
              "delegate": [
                "org.a.b.b.e.c",
                "a",
                "(Ljava/lang/String;ILsomeip/e/f;[BII)I"
              ],
              "max_content_bytes": 16,
              "max_constant": "TAG_LENGTH",
              "validation": "reject null; encode content then check byte maximum; capacity uses backing array; may partially write before error"
            },
            "unresolved": [],
            "fixed_offset": 6,
            "fixed_size": null
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": null
      },
      "unresolved": [],
      "max_size": 27,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 27,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.WatchdogPingPong": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.WatchdogPingPong",
      "binder_class": "domain.vehicle.v1.binders.someip.WatchdogPingPongBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.WatchdogPingPongSerializer",
      "java_fields": [
        {
          "name": "systemId",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "value",
          "java_type": "long",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "5",
          "value": 5
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.bd",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/WatchdogPingPong;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "systemId",
            "accessor": "setSystemId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "value",
            "accessor": "setValue",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "someip.e.d.g:([BII)J"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 5
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.bd",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/WatchdogPingPong;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "systemId",
            "accessor": "getSystemId",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "value",
            "accessor": "getValue",
            "wire": {
              "kind": "u32be",
              "bytes": 4,
              "primitive": "org.a.b.b.e.c.a:(J[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 4
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 5
      },
      "unresolved": [],
      "max_size": 5,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 5,
      "declared_max_matches_nominal_encoder": true
    },
    "domain.vehicle.v1.models.WindowState": {
      "referenced_by_xml": true,
      "model_class": "domain.vehicle.v1.models.WindowState",
      "binder_class": "domain.vehicle.v1.binders.someip.WindowStateBinder",
      "serializer_class": "domain.vehicle.v1.serializers.someip.WindowStateSerializer",
      "java_fields": [
        {
          "name": "percentOpen",
          "java_type": "short",
          "initializer": null
        },
        {
          "name": "open",
          "java_type": "boolean",
          "initializer": null
        },
        {
          "name": "state",
          "java_type": "short",
          "initializer": null
        }
      ],
      "constants": {
        "MAX_SIZE": {
          "expression": "3",
          "value": 3
        }
      },
      "decoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.bg",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/WindowState;[BII)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "percentOpen",
            "accessor": "setPercentOpen",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "open",
            "accessor": "setOpen",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "someip.e.d.a:([BII)Z"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "setState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "someip.e.d.c:([BII)S"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "primitive_bounds_argument": "wrapper passes ByteBuffer.remaining(), helpers compare bound - absolute_array_offset",
          "wrapper_advances_position": false,
          "wrapper_checks_consumed_equals_remaining": false,
          "wrapper_wraps_exception": "java.lang.Exception -> BinderException",
          "array_setter_enforces_nominal_minimum": false,
          "array_capacity": "backing array indexed directly by set*Element; overflow raises JVM exception, wrapped by binder"
        },
        "fixed_size": 3
      },
      "encoder": {
        "delegate": {
          "class": "domain.vehicle.v1.a.bg",
          "method": "a",
          "descriptor": "(Ldomain/vehicle/v1/models/WindowState;[BI)I"
        },
        "fields": [
          {
            "order": 0,
            "field": "percentOpen",
            "accessor": "getPercentOpen",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 0,
            "fixed_size": 1
          },
          {
            "order": 1,
            "field": "open",
            "accessor": "getOpen",
            "wire": {
              "kind": "bool01",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(Z[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 1,
            "fixed_size": 1
          },
          {
            "order": 2,
            "field": "state",
            "accessor": "getState",
            "wire": {
              "kind": "u8",
              "bytes": 1,
              "primitive": "org.a.b.b.e.c.a:(S[BI)V"
            },
            "unresolved": [],
            "fixed_offset": 2,
            "fixed_size": 1
          }
        ],
        "unresolved": [],
        "status": "resolved_layout",
        "validation": {
          "wrapper_advances_position": "by returned delegate byte count",
          "wrapper_checks_buffer_limit": "no preflight; final ByteBuffer.position update may reject after writes",
          "primitive_bounds": "backing byte[].length, not ByteBuffer.limit()",
          "model_null_rejected": true,
          "wrapper_wraps_exception": "java.lang.Exception -> SerializerException"
        },
        "fixed_size": 3
      },
      "unresolved": [],
      "max_size": 3,
      "directional_field_order_equal": true,
      "directional_wire_shapes_equal": true,
      "nominal_max_from_encoder_fields": 3,
      "declared_max_matches_nominal_encoder": true
    }
  }
}
