You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2024/09/02 13:22:45 UTC

(plc4x) 06/10: fix(code-gen/go): use partial instance

This is an automated email from the ASF dual-hosted git repository.

sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git

commit 03b9fcf374795cb78da9ed3c5ed8d41348ee1ee6
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Mon Sep 2 11:37:17 2024 +0200

    fix(code-gen/go): use partial instance
---
 .../src/main/resources/templates/go/complex-type-template.go.ftlh     | 4 ++--
 plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go      | 2 +-
 plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go           | 2 +-
 plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go           | 2 +-
 plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go          | 2 +-
 plc4go/protocols/ads/discovery/readwrite/model/AdsDiscovery.go        | 2 +-
 plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryBlock.go   | 2 +-
 .../protocols/ads/discovery/readwrite/model/AdsDiscoveryConstants.go  | 2 +-
 plc4go/protocols/ads/discovery/readwrite/model/AmsNetId.go            | 2 +-
 plc4go/protocols/ads/discovery/readwrite/model/AmsString.go           | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsConstants.go                  | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go          | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go    | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go         | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go           | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go         | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsStampHeader.go                | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go           | 2 +-
 plc4go/protocols/ads/readwrite/model/AdsTableSizes.go                 | 2 +-
 plc4go/protocols/ads/readwrite/model/AmsNetId.go                      | 2 +-
 plc4go/protocols/ads/readwrite/model/AmsPacket.go                     | 2 +-
 plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go     | 2 +-
 plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go                | 2 +-
 plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go           | 2 +-
 plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go                  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/APDU.go                     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go  | 2 +-
 .../readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go  | 2 +-
 .../readwrite/model/BACnetAccessCredentialDisableReasonTagged.go      | 2 +-
 .../bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go         | 2 +-
 .../readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go        | 2 +-
 .../readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go  | 2 +-
 .../readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go            | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go     | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go  | 2 +-
 .../readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go     | 2 +-
 .../model/BACnetAssignedLandingCallsLandingCallsListEntry.go          | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go      | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go        | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go      | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go           | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go         | 2 +-
 ...BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go | 2 +-
 ...tCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go | 2 +-
 ...ptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go | 2 +-
 ...ListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go      | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go         | 2 +-
 .../BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go      | 2 +-
 .../BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go  | 2 +-
 ...onfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go | 2 +-
 .../model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go | 2 +-
 ...rmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go | 2 +-
 ...edServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go | 2 +-
 ...nfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go | 2 +-
 ...BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go | 2 +-
 .../readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go    | 2 +-
 ...erviceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go | 2 +-
 ...SubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go | 2 +-
 ...cribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go | 2 +-
 ...COVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetConstructedDataElement.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetCredentialAuthenticationFactor.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDailySchedule.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDateRange.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDateRangeEnclosed.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDateTime.go           | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDateTimeEnclosed.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDaysOfWeekTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDestination.go        | 2 +-
 .../bacnetip/readwrite/model/BACnetDeviceObjectPropertyReference.go   | 2 +-
 .../readwrite/model/BACnetDeviceObjectPropertyReferenceEnclosed.go    | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetDeviceObjectReference.go | 2 +-
 .../bacnetip/readwrite/model/BACnetDeviceObjectReferenceEnclosed.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceStatusTagged.go | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetDoorAlarmStateTagged.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetDoorSecuredStatusTagged.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDoorStatusTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetDoorValueTagged.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetEngineeringUnitsTagged.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetError.go              | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetEscalatorFaultTagged.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetEscalatorModeTagged.go   | 2 +-
 .../readwrite/model/BACnetEscalatorOperationDirectionTagged.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecord.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go          | 2 +-
 .../bacnetip/readwrite/model/BACnetEventNotificationSubscription.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go     | 2 +-
 .../model/BACnetEventParameterAccessEventListOfAccessEvents.go        | 2 +-
 .../BACnetEventParameterChangeOfBitstringListOfBitstringValues.go     | 2 +-
 .../BACnetEventParameterChangeOfCharacterStringListOfAlarmValues.go   | 2 +-
 .../model/BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues.go  | 2 +-
 ...CnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues.go | 2 +-
 .../readwrite/model/BACnetEventParameterChangeOfStateListOfValues.go  | 2 +-
 .../readwrite/model/BACnetEventParameterChangeOfTimerAlarmValue.go    | 2 +-
 .../readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go   | 2 +-
 .../readwrite/model/BACnetEventParameterExtendedParameters.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventPriorities.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventStateTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummariesList.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummary.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestamps.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetEventTimestampsEnclosed.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetEventTransitionBitsTagged.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventTypeTagged.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go     | 2 +-
 .../BACnetFaultParameterFaultCharacterStringListOfFaultValues.go      | 2 +-
 .../readwrite/model/BACnetFaultParameterFaultExtendedParameters.go    | 2 +-
 .../model/BACnetFaultParameterFaultExtendedParametersEntry.go         | 2 +-
 .../model/BACnetFaultParameterFaultLifeSafetyListOfFaultValues.go     | 2 +-
 .../model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go        | 2 +-
 .../model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go        | 2 +-
 .../model/BACnetFaultParameterFaultStateListOfFaultValues.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetFaultTypeTagged.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetFileAccessMethodTagged.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValue.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetGroupChannelValueList.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go        | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetHostAddressEnclosed.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPort.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPortEnclosed.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetIPModeTagged.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetKeyIdentifier.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatus.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatus.go  | 2 +-
 .../readwrite/model/BACnetLandingDoorStatusLandingDoorsList.go        | 2 +-
 .../readwrite/model/BACnetLandingDoorStatusLandingDoorsListEntry.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetLifeSafetyModeTagged.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetLifeSafetyOperationTagged.go       | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetLifeSafetyStateTagged.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallList.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetLiftCarCallListFloorList.go        | 2 +-
 .../bacnetip/readwrite/model/BACnetLiftCarDirectionTagged.go          | 2 +-
 .../bacnetip/readwrite/model/BACnetLiftCarDoorCommandTagged.go        | 2 +-
 .../bacnetip/readwrite/model/BACnetLiftCarDriveStatusTagged.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarModeTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLiftFaultTagged.go    | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetLiftGroupModeTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommand.go    | 2 +-
 .../bacnetip/readwrite/model/BACnetLightingCommandEnclosed.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetLightingInProgressTagged.go        | 2 +-
 .../bacnetip/readwrite/model/BACnetLightingOperationTagged.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetLightingTransitionTagged.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLimitEnableTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLockStatusTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go            | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogMultipleRecord.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecord.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogStatusTagged.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetLoggingTypeTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetMaintenanceTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetNameValue.go          | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetNameValueCollection.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetNetworkNumberQualityTagged.go      | 2 +-
 .../bacnetip/readwrite/model/BACnetNetworkPortCommandTagged.go        | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetNetworkSecurityPolicy.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkTypeTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetNodeTypeTagged.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetNotificationParameters.go          | 2 +-
 .../BACnetNotificationParametersChangeOfDiscreteValueNewValue.go      | 2 +-
 .../model/BACnetNotificationParametersChangeOfValueNewValue.go        | 2 +-
 .../readwrite/model/BACnetNotificationParametersExtendedParameters.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetNotifyTypeTagged.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetObjectPropertyReference.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetObjectPropertyReferenceEnclosed.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypeTagged.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetObjectTypesSupportedTagged.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetOpeningTag.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetOptionalCharacterString.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPolarityTagged.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPortPermission.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPrescale.go           | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityArray.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetProgramErrorTagged.go | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetProgramRequestTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetProgramStateTagged.go | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetPropertyAccessResult.go  | 2 +-
 .../readwrite/model/BACnetPropertyAccessResultAccessResult.go         | 2 +-
 .../bacnetip/readwrite/model/BACnetPropertyIdentifierTagged.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReference.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetPropertyReferenceEnclosed.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetPropertyStatesEnclosed.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValue.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValues.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetPropertyWriteDefinition.go         | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetProtocolLevelTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessProperty.go | 2 +-
 .../bacnetip/readwrite/model/BACnetReadAccessPropertyReadResult.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResult.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetReadAccessResultListOfResults.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetReadAccessSpecification.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientEnclosed.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcess.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetRecipientProcessEnclosed.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetRejectReasonTagged.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetRelationshipTagged.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetReliabilityTagged.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetRestartReasonTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetResultFlagsTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntry.go        | 2 +-
 .../bacnetip/readwrite/model/BACnetRouterEntryStatusTagged.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go              | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySet.go     | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetSecurityKeySetKeyIds.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetSecurityLevelTagged.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetSecurityPolicyTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetSegmentationTagged.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go         | 2 +-
 .../readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go   | 2 +-
 .../bacnetip/readwrite/model/BACnetServicesSupportedTagged.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetSetpointReference.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetShedStateTagged.go    | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetSilencedStateTagged.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEvent.go       | 2 +-
 .../bacnetip/readwrite/model/BACnetSpecialEventListOfTimeValues.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetStatusFlagsTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTagHeader.go          | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetTagPayloadBitString.go   | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBoolean.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetTagPayloadCharacterString.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDate.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDouble.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetTagPayloadEnumerated.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetTagPayloadObjectIdentifier.go      | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetTagPayloadOctetString.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadReal.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadTime.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetTagPayloadUnsignedInteger.go       | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampEnclosed.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampsEnclosed.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTimeValue.go          | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateTagged.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/BACnetTimerTransitionTagged.go | 2 +-
 .../bacnetip/readwrite/model/BACnetUnconfirmedServiceChoiceTagged.go  | 2 +-
 .../bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go       | 2 +-
 .../readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetVMACEntry.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetVTClassTagged.go      | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetVTSession.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetVendorIdTagged.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDay.go           | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDayTagged.go     | 2 +-
 .../bacnetip/readwrite/model/BACnetWriteAccessSpecification.go        | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BACnetWriteStatusTagged.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BVLC.go                     | 2 +-
 .../bacnetip/readwrite/model/BVLCBroadcastDistributionTableEntry.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/BVLCForeignDeviceTableEntry.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BVLCResultCodeTagged.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/BacnetConstants.go          | 2 +-
 .../bacnetip/readwrite/model/ConfirmedEventNotificationRequest.go     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/Error.go                    | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/ErrorClassTagged.go         | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/ErrorCodeTagged.go          | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/ErrorEnclosed.go            | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotifications.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/ListOfCovNotificationsList.go  | 2 +-
 .../protocols/bacnetip/readwrite/model/ListOfCovNotificationsValue.go | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/NLM.go                      | 2 +-
 .../bacnetip/readwrite/model/NLMInitializeRoutingTablePortMapping.go  | 2 +-
 .../bacnetip/readwrite/model/NLMUpdateKeyUpdateControlFlags.go        | 2 +-
 .../protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateKeyEntry.go  | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/NPDU.go                     | 2 +-
 plc4go/protocols/bacnetip/readwrite/model/NPDUControl.go              | 2 +-
 .../protocols/bacnetip/readwrite/model/NPDUNetworkPriorityTagged.go   | 2 +-
 .../protocols/bacnetip/readwrite/model/SecurityResponseCodeTagged.go  | 2 +-
 .../model/SubscribeCOVPropertyMultipleErrorFirstFailedSubscription.go | 2 +-
 .../readwrite/model/VTCloseErrorListOfVTSessionIdentifiers.go         | 2 +-
 plc4go/protocols/cbus/readwrite/model/AccessControlData.go            | 2 +-
 plc4go/protocols/cbus/readwrite/model/AirConditioningData.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/Alpha.go                        | 2 +-
 plc4go/protocols/cbus/readwrite/model/ApplicationAddress1.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/ApplicationAddress2.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/BridgeAddress.go                | 2 +-
 plc4go/protocols/cbus/readwrite/model/CALData.go                      | 2 +-
 plc4go/protocols/cbus/readwrite/model/CALReply.go                     | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusCommand.go                  | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusConstants.go                | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusHeader.go                   | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusMessage.go                  | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusOptions.go                  | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go | 2 +-
 plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go      | 2 +-
 .../cbus/readwrite/model/CBusPointToPointToMultiPointCommand.go       | 2 +-
 plc4go/protocols/cbus/readwrite/model/Checksum.go                     | 2 +-
 plc4go/protocols/cbus/readwrite/model/ClockAndTimekeepingData.go      | 2 +-
 plc4go/protocols/cbus/readwrite/model/Confirmation.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/CustomManufacturer.go           | 2 +-
 plc4go/protocols/cbus/readwrite/model/CustomTypes.go                  | 2 +-
 plc4go/protocols/cbus/readwrite/model/EnableControlData.go            | 2 +-
 plc4go/protocols/cbus/readwrite/model/EncodedReply.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/ErrorReportingData.go           | 2 +-
 plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategory.go | 2 +-
 .../cbus/readwrite/model/ErrorReportingSystemCategoryType.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACAuxiliaryLevel.go           | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACHumidity.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACHumidityModeAndFlags.go     | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACHumidityStatusFlags.go      | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACModeAndFlags.go             | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACRawLevels.go                | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACStartTime.go                | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACStatusFlags.go              | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACTemperature.go              | 2 +-
 plc4go/protocols/cbus/readwrite/model/HVACZoneList.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go         | 2 +-
 .../protocols/cbus/readwrite/model/IdentifyReplyCommandUnitSummary.go | 2 +-
 plc4go/protocols/cbus/readwrite/model/InterfaceOptions1.go            | 2 +-
 .../cbus/readwrite/model/InterfaceOptions1PowerUpSettings.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/InterfaceOptions2.go            | 2 +-
 plc4go/protocols/cbus/readwrite/model/InterfaceOptions3.go            | 2 +-
 plc4go/protocols/cbus/readwrite/model/LevelInformation.go             | 2 +-
 plc4go/protocols/cbus/readwrite/model/LightingData.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/LightingLabelOptions.go         | 2 +-
 plc4go/protocols/cbus/readwrite/model/LogicAssignment.go              | 2 +-
 plc4go/protocols/cbus/readwrite/model/MeasurementData.go              | 2 +-
 plc4go/protocols/cbus/readwrite/model/MediaTransportControlData.go    | 2 +-
 plc4go/protocols/cbus/readwrite/model/MeteringData.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go                 | 2 +-
 .../cbus/readwrite/model/NetworkProtocolControlInformation.go         | 2 +-
 plc4go/protocols/cbus/readwrite/model/NetworkRoute.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/PanicStatus.go                  | 2 +-
 plc4go/protocols/cbus/readwrite/model/ParameterChange.go              | 2 +-
 plc4go/protocols/cbus/readwrite/model/ParameterValue.go               | 2 +-
 plc4go/protocols/cbus/readwrite/model/PowerUp.go                      | 2 +-
 plc4go/protocols/cbus/readwrite/model/Reply.go                        | 2 +-
 plc4go/protocols/cbus/readwrite/model/ReplyNetwork.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/ReplyOrConfirmation.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/Request.go                      | 2 +-
 plc4go/protocols/cbus/readwrite/model/RequestContext.go               | 2 +-
 plc4go/protocols/cbus/readwrite/model/RequestTermination.go           | 2 +-
 plc4go/protocols/cbus/readwrite/model/ResponseTermination.go          | 2 +-
 plc4go/protocols/cbus/readwrite/model/SALData.go                      | 2 +-
 plc4go/protocols/cbus/readwrite/model/SecurityArmCode.go              | 2 +-
 plc4go/protocols/cbus/readwrite/model/SecurityData.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/SerialInterfaceAddress.go       | 2 +-
 plc4go/protocols/cbus/readwrite/model/SerialNumber.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/StatusByte.go                   | 2 +-
 plc4go/protocols/cbus/readwrite/model/StatusRequest.go                | 2 +-
 plc4go/protocols/cbus/readwrite/model/TamperStatus.go                 | 2 +-
 plc4go/protocols/cbus/readwrite/model/TelephonyData.go                | 2 +-
 plc4go/protocols/cbus/readwrite/model/TemperatureBroadcastData.go     | 2 +-
 plc4go/protocols/cbus/readwrite/model/TriggerControlData.go           | 2 +-
 plc4go/protocols/cbus/readwrite/model/TriggerControlLabelOptions.go   | 2 +-
 plc4go/protocols/cbus/readwrite/model/UnitAddress.go                  | 2 +-
 plc4go/protocols/cbus/readwrite/model/ZoneStatus.go                   | 2 +-
 plc4go/protocols/df1/readwrite/model/DF1Command.go                    | 2 +-
 plc4go/protocols/df1/readwrite/model/DF1Symbol.go                     | 2 +-
 plc4go/protocols/eip/readwrite/model/CIPAttributes.go                 | 2 +-
 plc4go/protocols/eip/readwrite/model/CIPData.go                       | 2 +-
 plc4go/protocols/eip/readwrite/model/CIPDataConnected.go              | 2 +-
 plc4go/protocols/eip/readwrite/model/CipService.go                    | 2 +-
 plc4go/protocols/eip/readwrite/model/ClassSegment.go                  | 2 +-
 plc4go/protocols/eip/readwrite/model/CommandSpecificDataItem.go       | 2 +-
 plc4go/protocols/eip/readwrite/model/DataSegmentType.go               | 2 +-
 plc4go/protocols/eip/readwrite/model/EipConstants.go                  | 2 +-
 plc4go/protocols/eip/readwrite/model/EipPacket.go                     | 2 +-
 plc4go/protocols/eip/readwrite/model/InstanceSegment.go               | 2 +-
 plc4go/protocols/eip/readwrite/model/LogicalSegmentType.go            | 2 +-
 plc4go/protocols/eip/readwrite/model/NetworkConnectionParameters.go   | 2 +-
 plc4go/protocols/eip/readwrite/model/PathSegment.go                   | 2 +-
 plc4go/protocols/eip/readwrite/model/PortSegmentType.go               | 2 +-
 plc4go/protocols/eip/readwrite/model/Services.go                      | 2 +-
 plc4go/protocols/eip/readwrite/model/TransportType.go                 | 2 +-
 plc4go/protocols/eip/readwrite/model/TypeId.go                        | 2 +-
 plc4go/protocols/firmata/readwrite/model/FirmataCommand.go            | 2 +-
 plc4go/protocols/firmata/readwrite/model/FirmataMessage.go            | 2 +-
 plc4go/protocols/firmata/readwrite/model/SysexCommand.go              | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/Apdu.go                     | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/ApduControl.go              | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/ApduData.go                 | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go              | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/CEMI.go                     | 2 +-
 .../protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go   | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/ChannelInformation.go       | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go           | 2 +-
 .../knxnetip/readwrite/model/ConnectionRequestInformation.go          | 2 +-
 .../protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/DIBDeviceInfo.go            | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/DIBSuppSvcFamilies.go       | 2 +-
 .../knxnetip/readwrite/model/DeviceConfigurationAckDataBlock.go       | 2 +-
 .../knxnetip/readwrite/model/DeviceConfigurationRequestDataBlock.go   | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/DeviceDescriptorType2.go    | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/DeviceStatus.go             | 2 +-
 .../knxnetip/readwrite/model/GroupObjectDescriptorRealisationType1.go | 2 +-
 .../knxnetip/readwrite/model/GroupObjectDescriptorRealisationType2.go | 2 +-
 .../knxnetip/readwrite/model/GroupObjectDescriptorRealisationType6.go | 2 +-
 .../knxnetip/readwrite/model/GroupObjectDescriptorRealisationType7.go | 2 +-
 .../knxnetip/readwrite/model/GroupObjectDescriptorRealisationTypeB.go | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/HPAIControlEndpoint.go      | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/HPAIDataEndpoint.go         | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/HPAIDiscoveryEndpoint.go    | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/IPAddress.go                | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/KnxAddress.go               | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go          | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go          | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go               | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/MACAddress.go               | 2 +-
 .../knxnetip/readwrite/model/ProjectInstallationIdentifier.go         | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/RelativeTimestamp.go        | 2 +-
 plc4go/protocols/knxnetip/readwrite/model/ServiceId.go                | 2 +-
 .../protocols/knxnetip/readwrite/model/TunnelingRequestDataBlock.go   | 2 +-
 .../protocols/knxnetip/readwrite/model/TunnelingResponseDataBlock.go  | 2 +-
 plc4go/protocols/modbus/readwrite/model/ModbusADU.go                  | 2 +-
 plc4go/protocols/modbus/readwrite/model/ModbusConstants.go            | 2 +-
 .../protocols/modbus/readwrite/model/ModbusDeviceInformationObject.go | 2 +-
 plc4go/protocols/modbus/readwrite/model/ModbusPDU.go                  | 2 +-
 .../modbus/readwrite/model/ModbusPDUReadFileRecordRequestItem.go      | 2 +-
 .../modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go     | 2 +-
 .../modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go     | 2 +-
 .../modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go    | 2 +-
 .../protocols/opcua/readwrite/model/ApplicationInstanceCertificate.go | 2 +-
 plc4go/protocols/opcua/readwrite/model/AudioDataType.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/BitFieldMaskDataType.go        | 2 +-
 plc4go/protocols/opcua/readwrite/model/ByteStringArray.go             | 2 +-
 plc4go/protocols/opcua/readwrite/model/ByteStringNodeId.go            | 2 +-
 plc4go/protocols/opcua/readwrite/model/ContinuationPoint.go           | 2 +-
 plc4go/protocols/opcua/readwrite/model/Counter.go                     | 2 +-
 plc4go/protocols/opcua/readwrite/model/DataValue.go                   | 2 +-
 plc4go/protocols/opcua/readwrite/model/DateString.go                  | 2 +-
 plc4go/protocols/opcua/readwrite/model/DecimalString.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/DiagnosticInfo.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/DurationString.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/EccEncryptedSecret.go          | 2 +-
 plc4go/protocols/opcua/readwrite/model/EncodedTicket.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/ExpandedNodeId.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/ExtensionHeader.go             | 2 +-
 plc4go/protocols/opcua/readwrite/model/ExtensionObject.go             | 2 +-
 plc4go/protocols/opcua/readwrite/model/ExtensionObjectDefinition.go   | 2 +-
 plc4go/protocols/opcua/readwrite/model/ExtensionObjectEncodingMask.go | 2 +-
 plc4go/protocols/opcua/readwrite/model/FourByteNodeId.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/GuidNodeId.go                  | 2 +-
 plc4go/protocols/opcua/readwrite/model/GuidValue.go                   | 2 +-
 plc4go/protocols/opcua/readwrite/model/Handle.go                      | 2 +-
 plc4go/protocols/opcua/readwrite/model/ImageBMP.go                    | 2 +-
 plc4go/protocols/opcua/readwrite/model/ImageGIF.go                    | 2 +-
 plc4go/protocols/opcua/readwrite/model/ImageJPG.go                    | 2 +-
 plc4go/protocols/opcua/readwrite/model/ImagePNG.go                    | 2 +-
 plc4go/protocols/opcua/readwrite/model/Index.go                       | 2 +-
 plc4go/protocols/opcua/readwrite/model/IntegerId.go                   | 2 +-
 plc4go/protocols/opcua/readwrite/model/LocaleId.go                    | 2 +-
 plc4go/protocols/opcua/readwrite/model/LocalizedText.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/MessagePDU.go                  | 2 +-
 plc4go/protocols/opcua/readwrite/model/NodeId.go                      | 2 +-
 plc4go/protocols/opcua/readwrite/model/NodeIdTypeDefinition.go        | 2 +-
 plc4go/protocols/opcua/readwrite/model/NormalizedString.go            | 2 +-
 plc4go/protocols/opcua/readwrite/model/NumericNodeId.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/NumericRange.go                | 2 +-
 plc4go/protocols/opcua/readwrite/model/OpcuaAPU.go                    | 2 +-
 plc4go/protocols/opcua/readwrite/model/OpcuaConstants.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/OpcuaProtocolLimits.go         | 2 +-
 plc4go/protocols/opcua/readwrite/model/OpenChannelMessage.go          | 2 +-
 plc4go/protocols/opcua/readwrite/model/PascalByteString.go            | 2 +-
 plc4go/protocols/opcua/readwrite/model/PascalString.go                | 2 +-
 plc4go/protocols/opcua/readwrite/model/Payload.go                     | 2 +-
 plc4go/protocols/opcua/readwrite/model/QualifiedName.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/RsaEncryptedSecret.go          | 2 +-
 plc4go/protocols/opcua/readwrite/model/SecurityHeader.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/SemanticVersionString.go       | 2 +-
 plc4go/protocols/opcua/readwrite/model/SequenceHeader.go              | 2 +-
 plc4go/protocols/opcua/readwrite/model/SessionAuthenticationToken.go  | 2 +-
 plc4go/protocols/opcua/readwrite/model/StatusCode.go                  | 2 +-
 plc4go/protocols/opcua/readwrite/model/StringNodeId.go                | 2 +-
 plc4go/protocols/opcua/readwrite/model/Structure.go                   | 2 +-
 plc4go/protocols/opcua/readwrite/model/TimeString.go                  | 2 +-
 plc4go/protocols/opcua/readwrite/model/TrimmedString.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/TwoByteNodeId.go               | 2 +-
 plc4go/protocols/opcua/readwrite/model/UriString.go                   | 2 +-
 plc4go/protocols/opcua/readwrite/model/UserIdentityTokenDefinition.go | 2 +-
 plc4go/protocols/opcua/readwrite/model/UtcTime.go                     | 2 +-
 plc4go/protocols/opcua/readwrite/model/Variant.go                     | 2 +-
 plc4go/protocols/opcua/readwrite/model/VersionTime.go                 | 2 +-
 plc4go/protocols/opcua/readwrite/model/XmlElement.go                  | 2 +-
 plc4go/protocols/s7/readwrite/model/Alarm8MessageQueryType.go         | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageAckObjectPushType.go  | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageAckPushType.go        | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageAckResponseType.go    | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageAckType.go            | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageObjectAckType.go      | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageObjectPushType.go     | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageObjectQueryType.go    | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessagePushType.go           | 2 +-
 plc4go/protocols/s7/readwrite/model/AlarmMessageQueryType.go          | 2 +-
 plc4go/protocols/s7/readwrite/model/AssociatedQueryValueType.go       | 2 +-
 plc4go/protocols/s7/readwrite/model/AssociatedValueType.go            | 2 +-
 plc4go/protocols/s7/readwrite/model/COTPPacket.go                     | 2 +-
 plc4go/protocols/s7/readwrite/model/COTPParameter.go                  | 2 +-
 plc4go/protocols/s7/readwrite/model/CycServiceItemType.go             | 2 +-
 plc4go/protocols/s7/readwrite/model/DateAndTime.go                    | 2 +-
 plc4go/protocols/s7/readwrite/model/S7Address.go                      | 2 +-
 plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go             | 2 +-
 plc4go/protocols/s7/readwrite/model/S7Message.go                      | 2 +-
 plc4go/protocols/s7/readwrite/model/S7Parameter.go                    | 2 +-
 plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go        | 2 +-
 plc4go/protocols/s7/readwrite/model/S7Payload.go                      | 2 +-
 plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go          | 2 +-
 plc4go/protocols/s7/readwrite/model/S7VarPayloadDataItem.go           | 2 +-
 plc4go/protocols/s7/readwrite/model/S7VarPayloadStatusItem.go         | 2 +-
 plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go      | 2 +-
 plc4go/protocols/s7/readwrite/model/State.go                          | 2 +-
 plc4go/protocols/s7/readwrite/model/SubItem.go                        | 2 +-
 plc4go/protocols/s7/readwrite/model/SzlDataTreeItem.go                | 2 +-
 plc4go/protocols/s7/readwrite/model/SzlId.go                          | 2 +-
 plc4go/protocols/s7/readwrite/model/TPKTPacket.go                     | 2 +-
 plc4go/protocols/simulated/readwrite/model/Dummy.go                   | 2 +-
 550 files changed, 551 insertions(+), 551 deletions(-)

diff --git a/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh b/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh
index edfff1f3b4..5b25f665b9 100644
--- a/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh
+++ b/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh
@@ -809,8 +809,8 @@ func ${type.name}ParseWithBufferProducer<#if type.isDiscriminatedParentTypeDefin
 }
 
 func ${type.name}ParseWithBuffer<#if type.isDiscriminatedParentTypeDefinition()>[T ${type.name}]</#if>(ctx context.Context, readBuffer utils.ReadBuffer<#if hasParserArguments>, ${parserArgumentList}</#if>) (<#if type.isDiscriminatedParentTypeDefinition()>T<#else>${type.name}</#if>, error) {
-	<#assign filteredParserArgumentList><#if filteredParserArgumentsLocalToType?has_content> <#list filteredParserArgumentsLocalToType as parserArgument>${parserArgument.name}<#sep>, </#sep></#list> </#if></#assign>
-	v,err:= New${type.name}(${filteredParserArgumentList}).parse(ctx , readBuffer<#if hasParserArguments>, ${parserArgumentNameList}</#if>)
+	<#assign filteredPartialTypeCreationArgumentList><#if filteredParserArgumentsLocalToType?has_content> <#list filteredParserArgumentsLocalToType as parserArgument>${parserArgument.name?cap_first}: ${parserArgument.name}<#sep>, </#sep></#list> </#if></#assign>
+	v,err:= (&_${type.name}{${filteredPartialTypeCreationArgumentList}}).parse(ctx , readBuffer<#if hasParserArguments>, ${parserArgumentNameList}</#if>)
 	if err != nil {
 	<#if !type.isDiscriminatedParentTypeDefinition()>
 		return nil,err
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
index 7d99fb58c5..f70f1948a6 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
@@ -187,7 +187,7 @@ func CIPEncapsulationPacketParseWithBufferProducer[T CIPEncapsulationPacket]() f
 }
 
 func CIPEncapsulationPacketParseWithBuffer[T CIPEncapsulationPacket](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewCIPEncapsulationPacket().parse(ctx, readBuffer)
+	v, err := (&_CIPEncapsulationPacket{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
index 68aac4a942..1320630c1d 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
@@ -125,7 +125,7 @@ func DF1RequestCommandParseWithBufferProducer[T DF1RequestCommand]() func(ctx co
 }
 
 func DF1RequestCommandParseWithBuffer[T DF1RequestCommand](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewDF1RequestCommand().parse(ctx, readBuffer)
+	v, err := (&_DF1RequestCommand{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
index 87561651ca..5fd5a2e941 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
@@ -180,7 +180,7 @@ func DF1RequestMessageParseWithBufferProducer[T DF1RequestMessage]() func(ctx co
 }
 
 func DF1RequestMessageParseWithBuffer[T DF1RequestMessage](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewDF1RequestMessage().parse(ctx, readBuffer)
+	v, err := (&_DF1RequestMessage{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
index 791fcf1b1d..cb3d946869 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
@@ -189,7 +189,7 @@ func DF1ResponseMessageParseWithBufferProducer[T DF1ResponseMessage](payloadLeng
 }
 
 func DF1ResponseMessageParseWithBuffer[T DF1ResponseMessage](ctx context.Context, readBuffer utils.ReadBuffer, payloadLength uint16) (T, error) {
-	v, err := NewDF1ResponseMessage(payloadLength).parse(ctx, readBuffer, payloadLength)
+	v, err := (&_DF1ResponseMessage{PayloadLength: payloadLength}).parse(ctx, readBuffer, payloadLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscovery.go b/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscovery.go
index 755eda309b..a7e54fd8a2 100644
--- a/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscovery.go
+++ b/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscovery.go
@@ -185,7 +185,7 @@ func AdsDiscoveryParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func AdsDiscoveryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsDiscovery, error) {
-	v, err := NewAdsDiscovery().parse(ctx, readBuffer)
+	v, err := (&_AdsDiscovery{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryBlock.go b/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryBlock.go
index 44d34039c0..585e5f126d 100644
--- a/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryBlock.go
+++ b/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryBlock.go
@@ -125,7 +125,7 @@ func AdsDiscoveryBlockParseWithBufferProducer[T AdsDiscoveryBlock]() func(ctx co
 }
 
 func AdsDiscoveryBlockParseWithBuffer[T AdsDiscoveryBlock](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewAdsDiscoveryBlock().parse(ctx, readBuffer)
+	v, err := (&_AdsDiscoveryBlock{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryConstants.go b/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryConstants.go
index 023f6ea917..02312dda96 100644
--- a/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryConstants.go
+++ b/plc4go/protocols/ads/discovery/readwrite/model/AdsDiscoveryConstants.go
@@ -114,7 +114,7 @@ func AdsDiscoveryConstantsParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func AdsDiscoveryConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsDiscoveryConstants, error) {
-	v, err := NewAdsDiscoveryConstants().parse(ctx, readBuffer)
+	v, err := (&_AdsDiscoveryConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/discovery/readwrite/model/AmsNetId.go b/plc4go/protocols/ads/discovery/readwrite/model/AmsNetId.go
index 72ea562ed8..e10c658d99 100644
--- a/plc4go/protocols/ads/discovery/readwrite/model/AmsNetId.go
+++ b/plc4go/protocols/ads/discovery/readwrite/model/AmsNetId.go
@@ -164,7 +164,7 @@ func AmsNetIdParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func AmsNetIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsNetId, error) {
-	v, err := NewAmsNetId().parse(ctx, readBuffer)
+	v, err := (&_AmsNetId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/discovery/readwrite/model/AmsString.go b/plc4go/protocols/ads/discovery/readwrite/model/AmsString.go
index 7a99b30002..917eabc1f5 100644
--- a/plc4go/protocols/ads/discovery/readwrite/model/AmsString.go
+++ b/plc4go/protocols/ads/discovery/readwrite/model/AmsString.go
@@ -123,7 +123,7 @@ func AmsStringParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func AmsStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsString, error) {
-	v, err := NewAmsString().parse(ctx, readBuffer)
+	v, err := (&_AmsString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsConstants.go b/plc4go/protocols/ads/readwrite/model/AdsConstants.go
index ea915b604e..20de536fe8 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsConstants.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsConstants.go
@@ -114,7 +114,7 @@ func AdsConstantsParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func AdsConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsConstants, error) {
-	v, err := NewAdsConstants().parse(ctx, readBuffer)
+	v, err := (&_AdsConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go b/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go
index 3a4cbf7fee..321629de51 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go
@@ -145,7 +145,7 @@ func AdsDataTypeArrayInfoParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func AdsDataTypeArrayInfoParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsDataTypeArrayInfo, error) {
-	v, err := NewAdsDataTypeArrayInfo().parse(ctx, readBuffer)
+	v, err := (&_AdsDataTypeArrayInfo{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go
index 8eff1fbce1..e15c804db8 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go
@@ -326,7 +326,7 @@ func AdsDataTypeTableChildEntryParseWithBufferProducer() func(ctx context.Contex
 }
 
 func AdsDataTypeTableChildEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsDataTypeTableChildEntry, error) {
-	v, err := NewAdsDataTypeTableChildEntry().parse(ctx, readBuffer)
+	v, err := (&_AdsDataTypeTableChildEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go
index 38f96653eb..ed1bae5e81 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go
@@ -326,7 +326,7 @@ func AdsDataTypeTableEntryParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func AdsDataTypeTableEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsDataTypeTableEntry, error) {
-	v, err := NewAdsDataTypeTableEntry().parse(ctx, readBuffer)
+	v, err := (&_AdsDataTypeTableEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
index a8504614e2..bf7905d13d 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
@@ -121,7 +121,7 @@ func AdsMultiRequestItemParseWithBufferProducer[T AdsMultiRequestItem](indexGrou
 }
 
 func AdsMultiRequestItemParseWithBuffer[T AdsMultiRequestItem](ctx context.Context, readBuffer utils.ReadBuffer, indexGroup uint32) (T, error) {
-	v, err := NewAdsMultiRequestItem().parse(ctx, readBuffer, indexGroup)
+	v, err := (&_AdsMultiRequestItem{}).parse(ctx, readBuffer, indexGroup)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go b/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
index c418992fa5..79dd0e0440 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
@@ -136,7 +136,7 @@ func AdsNotificationSampleParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func AdsNotificationSampleParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsNotificationSample, error) {
-	v, err := NewAdsNotificationSample().parse(ctx, readBuffer)
+	v, err := (&_AdsNotificationSample{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go b/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
index 43aabf355d..525549589a 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
@@ -141,7 +141,7 @@ func AdsStampHeaderParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func AdsStampHeaderParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsStampHeader, error) {
-	v, err := NewAdsStampHeader().parse(ctx, readBuffer)
+	v, err := (&_AdsStampHeader{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go b/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go
index f2d801d120..4a85877ba3 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go
@@ -381,7 +381,7 @@ func AdsSymbolTableEntryParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func AdsSymbolTableEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsSymbolTableEntry, error) {
-	v, err := NewAdsSymbolTableEntry().parse(ctx, readBuffer)
+	v, err := (&_AdsSymbolTableEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go b/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go
index 8f78b5141c..436f7288f6 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go
@@ -166,7 +166,7 @@ func AdsTableSizesParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func AdsTableSizesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AdsTableSizes, error) {
-	v, err := NewAdsTableSizes().parse(ctx, readBuffer)
+	v, err := (&_AdsTableSizes{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsNetId.go b/plc4go/protocols/ads/readwrite/model/AmsNetId.go
index 72ea562ed8..e10c658d99 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsNetId.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsNetId.go
@@ -164,7 +164,7 @@ func AmsNetIdParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func AmsNetIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsNetId, error) {
-	v, err := NewAmsNetId().parse(ctx, readBuffer)
+	v, err := (&_AmsNetId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsPacket.go b/plc4go/protocols/ads/readwrite/model/AmsPacket.go
index 9cd51a6b09..4f75672bac 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsPacket.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsPacket.go
@@ -284,7 +284,7 @@ func AmsPacketParseWithBufferProducer[T AmsPacket]() func(ctx context.Context, r
 }
 
 func AmsPacketParseWithBuffer[T AmsPacket](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewAmsPacket().parse(ctx, readBuffer)
+	v, err := (&_AmsPacket{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
index 6408e77067..650435c851 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
@@ -164,7 +164,7 @@ func AmsSerialAcknowledgeFrameParseWithBufferProducer() func(ctx context.Context
 }
 
 func AmsSerialAcknowledgeFrameParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsSerialAcknowledgeFrame, error) {
-	v, err := NewAmsSerialAcknowledgeFrame().parse(ctx, readBuffer)
+	v, err := (&_AmsSerialAcknowledgeFrame{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
index 1bb77c557a..c010646026 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
@@ -174,7 +174,7 @@ func AmsSerialFrameParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func AmsSerialFrameParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsSerialFrame, error) {
-	v, err := NewAmsSerialFrame().parse(ctx, readBuffer)
+	v, err := (&_AmsSerialFrame{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
index 29ef424caa..118d5486b0 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
@@ -164,7 +164,7 @@ func AmsSerialResetFrameParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func AmsSerialResetFrameParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsSerialResetFrame, error) {
-	v, err := NewAmsSerialResetFrame().parse(ctx, readBuffer)
+	v, err := (&_AmsSerialResetFrame{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go b/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
index a6bc670c57..9d569eb181 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
@@ -124,7 +124,7 @@ func AmsTCPPacketParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func AmsTCPPacketParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AmsTCPPacket, error) {
-	v, err := NewAmsTCPPacket().parse(ctx, readBuffer)
+	v, err := (&_AmsTCPPacket{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDU.go b/plc4go/protocols/bacnetip/readwrite/model/APDU.go
index 705dcb5aa8..665935541b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDU.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDU.go
@@ -130,7 +130,7 @@ func APDUParseWithBufferProducer[T APDU](apduLength uint16) func(ctx context.Con
 }
 
 func APDUParseWithBuffer[T APDU](ctx context.Context, readBuffer utils.ReadBuffer, apduLength uint16) (T, error) {
-	v, err := NewAPDU(apduLength).parse(ctx, readBuffer, apduLength)
+	v, err := (&_APDU{ApduLength: apduLength}).parse(ctx, readBuffer, apduLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
index be6c901353..6b9fd01d93 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
@@ -145,7 +145,7 @@ func BACnetAbortReasonTaggedParseWithBufferProducer(actualLength uint32) func(ct
 }
 
 func BACnetAbortReasonTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetAbortReasonTagged, error) {
-	v, err := NewBACnetAbortReasonTagged(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetAbortReasonTagged{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
index 61f158c08b..62722155c3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
@@ -157,7 +157,7 @@ func BACnetAccessAuthenticationFactorDisableTaggedParseWithBufferProducer(tagNum
 }
 
 func BACnetAccessAuthenticationFactorDisableTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessAuthenticationFactorDisableTagged, error) {
-	v, err := NewBACnetAccessAuthenticationFactorDisableTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessAuthenticationFactorDisableTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
index 80349cb787..c2ffc6e1a6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
@@ -157,7 +157,7 @@ func BACnetAccessCredentialDisableReasonTaggedParseWithBufferProducer(tagNumber
 }
 
 func BACnetAccessCredentialDisableReasonTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessCredentialDisableReasonTagged, error) {
-	v, err := NewBACnetAccessCredentialDisableReasonTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessCredentialDisableReasonTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
index 98646a392d..b1b440cef9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
@@ -157,7 +157,7 @@ func BACnetAccessCredentialDisableTaggedParseWithBufferProducer(tagNumber uint8,
 }
 
 func BACnetAccessCredentialDisableTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessCredentialDisableTagged, error) {
-	v, err := NewBACnetAccessCredentialDisableTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessCredentialDisableTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
index 8fb53d6dff..d7c3da8743 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
@@ -157,7 +157,7 @@ func BACnetAccessEventTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetAccessEventTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessEventTagged, error) {
-	v, err := NewBACnetAccessEventTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessEventTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
index 6e90484e68..719181bc13 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
@@ -128,7 +128,7 @@ func BACnetAccessPassbackModeTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetAccessPassbackModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessPassbackModeTagged, error) {
-	v, err := NewBACnetAccessPassbackModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessPassbackModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
index 5b5e8bd06f..94155ac13c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
@@ -158,7 +158,7 @@ func BACnetAccessRuleParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func BACnetAccessRuleParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAccessRule, error) {
-	v, err := NewBACnetAccessRule().parse(ctx, readBuffer)
+	v, err := (&_BACnetAccessRule{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
index 11bedce138..66c425bef5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
@@ -128,7 +128,7 @@ func BACnetAccessRuleLocationSpecifierTaggedParseWithBufferProducer(tagNumber ui
 }
 
 func BACnetAccessRuleLocationSpecifierTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessRuleLocationSpecifierTagged, error) {
-	v, err := NewBACnetAccessRuleLocationSpecifierTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessRuleLocationSpecifierTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
index e491cae30f..bbb8e23676 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
@@ -128,7 +128,7 @@ func BACnetAccessRuleTimeRangeSpecifierTaggedParseWithBufferProducer(tagNumber u
 }
 
 func BACnetAccessRuleTimeRangeSpecifierTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessRuleTimeRangeSpecifierTagged, error) {
-	v, err := NewBACnetAccessRuleTimeRangeSpecifierTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessRuleTimeRangeSpecifierTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
index 62cfbafd7e..d14d941dad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
@@ -114,7 +114,7 @@ func BACnetAccessThreatLevelParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetAccessThreatLevelParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAccessThreatLevel, error) {
-	v, err := NewBACnetAccessThreatLevel().parse(ctx, readBuffer)
+	v, err := (&_BACnetAccessThreatLevel{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
index ae968f11bb..1dd61ec2ab 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
@@ -157,7 +157,7 @@ func BACnetAccessUserTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetAccessUserTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessUserTypeTagged, error) {
-	v, err := NewBACnetAccessUserTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessUserTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
index 2b7640811c..dd793d30d4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
@@ -157,7 +157,7 @@ func BACnetAccessZoneOccupancyStateTaggedParseWithBufferProducer(tagNumber uint8
 }
 
 func BACnetAccessZoneOccupancyStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccessZoneOccupancyStateTagged, error) {
-	v, err := NewBACnetAccessZoneOccupancyStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccessZoneOccupancyStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
index 84354e69e9..24b540ea4e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
@@ -144,7 +144,7 @@ func BACnetAccumulatorRecordParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetAccumulatorRecordParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAccumulatorRecord, error) {
-	v, err := NewBACnetAccumulatorRecord().parse(ctx, readBuffer)
+	v, err := (&_BACnetAccumulatorRecord{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
index 242b006c91..dbc72d6765 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
@@ -128,7 +128,7 @@ func BACnetAccumulatorRecordAccumulatorStatusTaggedParseWithBufferProducer(tagNu
 }
 
 func BACnetAccumulatorRecordAccumulatorStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAccumulatorRecordAccumulatorStatusTagged, error) {
-	v, err := NewBACnetAccumulatorRecordAccumulatorStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAccumulatorRecordAccumulatorStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
index 8a43ca6f24..618abba8fe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
@@ -204,7 +204,7 @@ func BACnetActionCommandParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func BACnetActionCommandParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetActionCommand, error) {
-	v, err := NewBACnetActionCommand().parse(ctx, readBuffer)
+	v, err := (&_BACnetActionCommand{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
index 605e4c37d4..990c6e10d2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
@@ -138,7 +138,7 @@ func BACnetActionListParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func BACnetActionListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetActionList, error) {
-	v, err := NewBACnetActionList().parse(ctx, readBuffer)
+	v, err := (&_BACnetActionList{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
index 6c7fef3bf8..b9e6a755e3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
@@ -128,7 +128,7 @@ func BACnetActionTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagClas
 }
 
 func BACnetActionTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetActionTagged, error) {
-	v, err := NewBACnetActionTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetActionTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
index 8c78727530..dc9d231cdb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
@@ -163,7 +163,7 @@ func BACnetAddressParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func BACnetAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAddress, error) {
-	v, err := NewBACnetAddress().parse(ctx, readBuffer)
+	v, err := (&_BACnetAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
index 80dddad27a..3cc2556f2b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
@@ -124,7 +124,7 @@ func BACnetAddressBindingParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetAddressBindingParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAddressBinding, error) {
-	v, err := NewBACnetAddressBinding().parse(ctx, readBuffer)
+	v, err := (&_BACnetAddressBinding{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
index 22fe06741f..e7983b0e39 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
@@ -137,7 +137,7 @@ func BACnetAddressEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx cont
 }
 
 func BACnetAddressEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetAddressEnclosed, error) {
-	v, err := NewBACnetAddressEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetAddressEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
index c30229ab85..85ce1ccaea 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
@@ -174,7 +174,7 @@ func BACnetApplicationTagParseWithBufferProducer[T BACnetApplicationTag]() func(
 }
 
 func BACnetApplicationTagParseWithBuffer[T BACnetApplicationTag](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetApplicationTag().parse(ctx, readBuffer)
+	v, err := (&_BACnetApplicationTag{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
index 030ee9a936..d1676606af 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
@@ -124,7 +124,7 @@ func BACnetAssignedAccessRightsParseWithBufferProducer() func(ctx context.Contex
 }
 
 func BACnetAssignedAccessRightsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAssignedAccessRights, error) {
-	v, err := NewBACnetAssignedAccessRights().parse(ctx, readBuffer)
+	v, err := (&_BACnetAssignedAccessRights{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
index 28e6e80565..cae1c11609 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
@@ -114,7 +114,7 @@ func BACnetAssignedLandingCallsParseWithBufferProducer() func(ctx context.Contex
 }
 
 func BACnetAssignedLandingCallsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAssignedLandingCalls, error) {
-	v, err := NewBACnetAssignedLandingCalls().parse(ctx, readBuffer)
+	v, err := (&_BACnetAssignedLandingCalls{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
index 90b8b412d8..198607af6f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
@@ -141,7 +141,7 @@ func BACnetAssignedLandingCallsLandingCallsListParseWithBufferProducer(tagNumber
 }
 
 func BACnetAssignedLandingCallsLandingCallsListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetAssignedLandingCallsLandingCallsList, error) {
-	v, err := NewBACnetAssignedLandingCallsLandingCallsList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetAssignedLandingCallsLandingCallsList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
index e38acaf575..2d5580ce2e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
@@ -124,7 +124,7 @@ func BACnetAssignedLandingCallsLandingCallsListEntryParseWithBufferProducer() fu
 }
 
 func BACnetAssignedLandingCallsLandingCallsListEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAssignedLandingCallsLandingCallsListEntry, error) {
-	v, err := NewBACnetAssignedLandingCallsLandingCallsListEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetAssignedLandingCallsLandingCallsListEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
index 365cb6e54e..2a268a086a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
@@ -134,7 +134,7 @@ func BACnetAuthenticationFactorParseWithBufferProducer() func(ctx context.Contex
 }
 
 func BACnetAuthenticationFactorParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAuthenticationFactor, error) {
-	v, err := NewBACnetAuthenticationFactor().parse(ctx, readBuffer)
+	v, err := (&_BACnetAuthenticationFactor{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
index 597fae7d36..c6459deb35 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
@@ -137,7 +137,7 @@ func BACnetAuthenticationFactorEnclosedParseWithBufferProducer(tagNumber uint8)
 }
 
 func BACnetAuthenticationFactorEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetAuthenticationFactorEnclosed, error) {
-	v, err := NewBACnetAuthenticationFactorEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetAuthenticationFactorEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
index aa94d40284..4a2e004540 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
@@ -138,7 +138,7 @@ func BACnetAuthenticationFactorFormatParseWithBufferProducer() func(ctx context.
 }
 
 func BACnetAuthenticationFactorFormatParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAuthenticationFactorFormat, error) {
-	v, err := NewBACnetAuthenticationFactorFormat().parse(ctx, readBuffer)
+	v, err := (&_BACnetAuthenticationFactorFormat{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
index 1ddeef0d3a..0bc010c260 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
@@ -128,7 +128,7 @@ func BACnetAuthenticationFactorTypeTaggedParseWithBufferProducer(tagNumber uint8
 }
 
 func BACnetAuthenticationFactorTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAuthenticationFactorTypeTagged, error) {
-	v, err := NewBACnetAuthenticationFactorTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAuthenticationFactorTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
index 0d5510194f..82f198da23 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
@@ -134,7 +134,7 @@ func BACnetAuthenticationPolicyParseWithBufferProducer() func(ctx context.Contex
 }
 
 func BACnetAuthenticationPolicyParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAuthenticationPolicy, error) {
-	v, err := NewBACnetAuthenticationPolicy().parse(ctx, readBuffer)
+	v, err := (&_BACnetAuthenticationPolicy{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
index 54eeaf19ba..65f69a5c44 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
@@ -141,7 +141,7 @@ func BACnetAuthenticationPolicyListParseWithBufferProducer(tagNumber uint8) func
 }
 
 func BACnetAuthenticationPolicyListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetAuthenticationPolicyList, error) {
-	v, err := NewBACnetAuthenticationPolicyList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetAuthenticationPolicyList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
index 6539344804..9900160550 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
@@ -124,7 +124,7 @@ func BACnetAuthenticationPolicyListEntryParseWithBufferProducer() func(ctx conte
 }
 
 func BACnetAuthenticationPolicyListEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetAuthenticationPolicyListEntry, error) {
-	v, err := NewBACnetAuthenticationPolicyListEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetAuthenticationPolicyListEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
index 839873a074..647d4a705c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
@@ -128,7 +128,7 @@ func BACnetAuthenticationStatusTaggedParseWithBufferProducer(tagNumber uint8, ta
 }
 
 func BACnetAuthenticationStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAuthenticationStatusTagged, error) {
-	v, err := NewBACnetAuthenticationStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAuthenticationStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
index f1cb9d8bdc..8ff7a4819f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
@@ -157,7 +157,7 @@ func BACnetAuthorizationExemptionTaggedParseWithBufferProducer(tagNumber uint8,
 }
 
 func BACnetAuthorizationExemptionTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAuthorizationExemptionTagged, error) {
-	v, err := NewBACnetAuthorizationExemptionTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAuthorizationExemptionTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
index 52f5fcde85..44847f3552 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
@@ -157,7 +157,7 @@ func BACnetAuthorizationModeTaggedParseWithBufferProducer(tagNumber uint8, tagCl
 }
 
 func BACnetAuthorizationModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetAuthorizationModeTagged, error) {
-	v, err := NewBACnetAuthorizationModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetAuthorizationModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
index de70b97e06..63337c0c60 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
@@ -126,7 +126,7 @@ func BACnetBDTEntryParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func BACnetBDTEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetBDTEntry, error) {
-	v, err := NewBACnetBDTEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetBDTEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
index 4389956787..3292eb1fec 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
@@ -128,7 +128,7 @@ func BACnetBackupStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetBackupStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetBackupStateTagged, error) {
-	v, err := NewBACnetBackupStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetBackupStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
index a42da12c68..39d568d39f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
@@ -157,7 +157,7 @@ func BACnetBinaryLightingPVTaggedParseWithBufferProducer(tagNumber uint8, tagCla
 }
 
 func BACnetBinaryLightingPVTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetBinaryLightingPVTagged, error) {
-	v, err := NewBACnetBinaryLightingPVTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetBinaryLightingPVTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
index 934da6cfcd..d5d3f868bb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
@@ -128,7 +128,7 @@ func BACnetBinaryPVTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCl
 }
 
 func BACnetBinaryPVTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetBinaryPVTagged, error) {
-	v, err := NewBACnetBinaryPVTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetBinaryPVTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
index ff0529e16e..4a879b40a9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
@@ -154,7 +154,7 @@ func BACnetCOVMultipleSubscriptionParseWithBufferProducer() func(ctx context.Con
 }
 
 func BACnetCOVMultipleSubscriptionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetCOVMultipleSubscription, error) {
-	v, err := NewBACnetCOVMultipleSubscription().parse(ctx, readBuffer)
+	v, err := (&_BACnetCOVMultipleSubscription{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
index f8205f40d1..93f1b79088 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
@@ -141,7 +141,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParseWithBuf
 }
 
 func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification, error) {
-	v, err := NewBACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
index 4772ba3a44..d7d8ee75b7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
@@ -124,7 +124,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryParseWi
 }
 
 func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry, error) {
-	v, err := NewBACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
index ab7ac9eac7..9ab3d1818d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
@@ -141,7 +141,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 }
 
 func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences, error) {
-	v, err := NewBACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
index 36a3e7f726..fe79febd56 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
@@ -136,7 +136,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 }
 
 func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry, error) {
-	v, err := NewBACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
index 3ba0536540..f9c51a85a5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
@@ -156,7 +156,7 @@ func BACnetCOVSubscriptionParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func BACnetCOVSubscriptionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetCOVSubscription, error) {
-	v, err := NewBACnetCOVSubscription().parse(ctx, readBuffer)
+	v, err := (&_BACnetCOVSubscription{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
index 888c79d58b..f4746d8be0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
@@ -160,7 +160,7 @@ func BACnetCalendarEntryParseWithBufferProducer[T BACnetCalendarEntry]() func(ct
 }
 
 func BACnetCalendarEntryParseWithBuffer[T BACnetCalendarEntry](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetCalendarEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetCalendarEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
index 035e5bd0cc..9452fdd5dd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
@@ -137,7 +137,7 @@ func BACnetCalendarEntryEnclosedParseWithBufferProducer(tagNumber uint8) func(ct
 }
 
 func BACnetCalendarEntryEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetCalendarEntryEnclosed, error) {
-	v, err := NewBACnetCalendarEntryEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetCalendarEntryEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
index 8e268fdeae..c6c99260aa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
@@ -173,7 +173,7 @@ func BACnetChannelValueParseWithBufferProducer[T BACnetChannelValue]() func(ctx
 }
 
 func BACnetChannelValueParseWithBuffer[T BACnetChannelValue](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetChannelValue().parse(ctx, readBuffer)
+	v, err := (&_BACnetChannelValue{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
index d0cb052f11..189e83c8ec 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
@@ -160,7 +160,7 @@ func BACnetClientCOVParseWithBufferProducer[T BACnetClientCOV]() func(ctx contex
 }
 
 func BACnetClientCOVParseWithBuffer[T BACnetClientCOV](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetClientCOV().parse(ctx, readBuffer)
+	v, err := (&_BACnetClientCOV{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
index bf25df807c..80fea30c41 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
@@ -117,7 +117,7 @@ func BACnetClosingTagParseWithBufferProducer(tagNumberArgument uint8) func(ctx c
 }
 
 func BACnetClosingTagParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumberArgument uint8) (BACnetClosingTag, error) {
-	v, err := NewBACnetClosingTag(tagNumberArgument).parse(ctx, readBuffer, tagNumberArgument)
+	v, err := (&_BACnetClosingTag{TagNumberArgument: tagNumberArgument}).parse(ctx, readBuffer, tagNumberArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
index 3ef74b74f6..7083880a80 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
@@ -151,7 +151,7 @@ func BACnetConfirmedServiceRequestParseWithBufferProducer[T BACnetConfirmedServi
 }
 
 func BACnetConfirmedServiceRequestParseWithBuffer[T BACnetConfirmedServiceRequest](ctx context.Context, readBuffer utils.ReadBuffer, serviceRequestLength uint32) (T, error) {
-	v, err := NewBACnetConfirmedServiceRequest(serviceRequestLength).parse(ctx, readBuffer, serviceRequestLength)
+	v, err := (&_BACnetConfirmedServiceRequest{ServiceRequestLength: serviceRequestLength}).parse(ctx, readBuffer, serviceRequestLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
index 3c7a113a95..cbd4d879bf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
@@ -180,7 +180,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParseWithBufferPro
 }
 
 func BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParseWithBuffer[T BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord().parse(ctx, readBuffer)
+	v, err := (&_BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
index 3b55bf6631..eb5b02c023 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
@@ -185,7 +185,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassParseWithBuffe
 }
 
 func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassParseWithBuffer[T BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetConfirmedServiceRequestConfirmedTextMessageMessageClass(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
index 4253a84fed..a63596500e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
@@ -128,7 +128,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTaggedParse
 }
 
 func BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged, error) {
-	v, err := NewBACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
index 87b588dbaf..74c5e36906 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
@@ -202,7 +202,7 @@ func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParseWithBufferProd
 }
 
 func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetConfirmedServiceRequestCreateObjectObjectSpecifier, error) {
-	v, err := NewBACnetConfirmedServiceRequestCreateObjectObjectSpecifier(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetConfirmedServiceRequestCreateObjectObjectSpecifier{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
index 0214cd6b6a..f7119abd5c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
@@ -128,7 +128,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTaggedP
 }
 
 func BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged, error) {
-	v, err := NewBACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
index b76c105fff..e00f688a9d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
@@ -128,7 +128,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagge
 }
 
 func BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged, error) {
-	v, err := NewBACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
index ec6269a56d..14204d6e67 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
@@ -128,7 +128,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTaggedPars
 }
 
 func BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged, error) {
-	v, err := NewBACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
index efa5aae92a..031adb9318 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
@@ -147,7 +147,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParseWithBuf
 }
 
 func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter, error) {
-	v, err := NewBACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
index 3db4c59a5d..1e7ad72615 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
@@ -180,7 +180,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeParseWithBufferProducer[T BACnet
 }
 
 func BACnetConfirmedServiceRequestReadRangeRangeParseWithBuffer[T BACnetConfirmedServiceRequestReadRangeRange](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetConfirmedServiceRequestReadRangeRange().parse(ctx, readBuffer)
+	v, err := (&_BACnetConfirmedServiceRequestReadRangeRange{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
index 51c3485765..7826e35240 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
@@ -128,7 +128,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTa
 }
 
 func BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged, error) {
-	v, err := NewBACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
index fbbb856b4b..00716bbdb9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
@@ -148,7 +148,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 }
 
 func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications, error) {
-	v, err := NewBACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications().parse(ctx, readBuffer)
+	v, err := (&_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
index 7c195e55ae..00a9d1a164 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
@@ -141,7 +141,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 }
 
 func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList, error) {
-	v, err := NewBACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
index 073843a2b5..9e03e1fb7b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
@@ -136,7 +136,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 }
 
 func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReferenceParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference, error) {
-	v, err := NewBACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference().parse(ctx, readBuffer)
+	v, err := (&_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
index cbb25acc2f..4c5967141d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
@@ -192,7 +192,7 @@ func BACnetConstructedDataParseWithBufferProducer[T BACnetConstructedData](tagNu
 }
 
 func BACnetConstructedDataParseWithBuffer[T BACnetConstructedData](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, objectTypeArgument BACnetObjectType, propertyIdentifierArgument BACnetPropertyIdentifier, arrayIndexArgument BACnetTagPayloadUnsignedInteger) (T, error) {
-	v, err := NewBACnetConstructedData(tagNumber, arrayIndexArgument).parse(ctx, readBuffer, tagNumber, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
+	v, err := (&_BACnetConstructedData{TagNumber: tagNumber, ArrayIndexArgument: arrayIndexArgument}).parse(ctx, readBuffer, tagNumber, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
index 89c816ce32..1740f263ab 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
@@ -225,7 +225,7 @@ func BACnetConstructedDataElementParseWithBufferProducer(objectTypeArgument BACn
 }
 
 func BACnetConstructedDataElementParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType, propertyIdentifierArgument BACnetPropertyIdentifier, arrayIndexArgument BACnetTagPayloadUnsignedInteger) (BACnetConstructedDataElement, error) {
-	v, err := NewBACnetConstructedDataElement(objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument).parse(ctx, readBuffer, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
+	v, err := (&_BACnetConstructedDataElement{ObjectTypeArgument: objectTypeArgument, PropertyIdentifierArgument: propertyIdentifierArgument, ArrayIndexArgument: arrayIndexArgument}).parse(ctx, readBuffer, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go
index d44e8b872d..0977ee6add 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go
@@ -179,7 +179,7 @@ func BACnetContextTagParseWithBufferProducer[T BACnetContextTag](tagNumberArgume
 }
 
 func BACnetContextTagParseWithBuffer[T BACnetContextTag](ctx context.Context, readBuffer utils.ReadBuffer, tagNumberArgument uint8, dataType BACnetDataType) (T, error) {
-	v, err := NewBACnetContextTag(tagNumberArgument).parse(ctx, readBuffer, tagNumberArgument, dataType)
+	v, err := (&_BACnetContextTag{TagNumberArgument: tagNumberArgument}).parse(ctx, readBuffer, tagNumberArgument, dataType)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCredentialAuthenticationFactor.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCredentialAuthenticationFactor.go
index d21212b78c..994cd5aa73 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCredentialAuthenticationFactor.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCredentialAuthenticationFactor.go
@@ -124,7 +124,7 @@ func BACnetCredentialAuthenticationFactorParseWithBufferProducer() func(ctx cont
 }
 
 func BACnetCredentialAuthenticationFactorParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetCredentialAuthenticationFactor, error) {
-	v, err := NewBACnetCredentialAuthenticationFactor().parse(ctx, readBuffer)
+	v, err := (&_BACnetCredentialAuthenticationFactor{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDailySchedule.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDailySchedule.go
index b8863ba4f0..d6420bba1d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDailySchedule.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDailySchedule.go
@@ -138,7 +138,7 @@ func BACnetDailyScheduleParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func BACnetDailyScheduleParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetDailySchedule, error) {
-	v, err := NewBACnetDailySchedule().parse(ctx, readBuffer)
+	v, err := (&_BACnetDailySchedule{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRange.go
index 2d2de33611..40c951b5f1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRange.go
@@ -124,7 +124,7 @@ func BACnetDateRangeParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetDateRangeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetDateRange, error) {
-	v, err := NewBACnetDateRange().parse(ctx, readBuffer)
+	v, err := (&_BACnetDateRange{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRangeEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRangeEnclosed.go
index 38fda93a87..1252fa79b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRangeEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateRangeEnclosed.go
@@ -137,7 +137,7 @@ func BACnetDateRangeEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx co
 }
 
 func BACnetDateRangeEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetDateRangeEnclosed, error) {
-	v, err := NewBACnetDateRangeEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetDateRangeEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTime.go
index 7cd3db39c5..b96f31cc0b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTime.go
@@ -124,7 +124,7 @@ func BACnetDateTimeParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func BACnetDateTimeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetDateTime, error) {
-	v, err := NewBACnetDateTime().parse(ctx, readBuffer)
+	v, err := (&_BACnetDateTime{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTimeEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTimeEnclosed.go
index 561552807d..14a0298e3a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTimeEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDateTimeEnclosed.go
@@ -137,7 +137,7 @@ func BACnetDateTimeEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx con
 }
 
 func BACnetDateTimeEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetDateTimeEnclosed, error) {
-	v, err := NewBACnetDateTimeEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetDateTimeEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDaysOfWeekTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDaysOfWeekTagged.go
index 97ba4ef925..de0d4e9c78 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDaysOfWeekTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDaysOfWeekTagged.go
@@ -207,7 +207,7 @@ func BACnetDaysOfWeekTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetDaysOfWeekTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetDaysOfWeekTagged, error) {
-	v, err := NewBACnetDaysOfWeekTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetDaysOfWeekTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDestination.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDestination.go
index af36ccbe6f..f446a7ed24 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDestination.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDestination.go
@@ -174,7 +174,7 @@ func BACnetDestinationParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func BACnetDestinationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetDestination, error) {
-	v, err := NewBACnetDestination().parse(ctx, readBuffer)
+	v, err := (&_BACnetDestination{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReference.go
index 3b97d361bf..e85ffeb1ef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReference.go
@@ -148,7 +148,7 @@ func BACnetDeviceObjectPropertyReferenceParseWithBufferProducer() func(ctx conte
 }
 
 func BACnetDeviceObjectPropertyReferenceParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetDeviceObjectPropertyReference, error) {
-	v, err := NewBACnetDeviceObjectPropertyReference().parse(ctx, readBuffer)
+	v, err := (&_BACnetDeviceObjectPropertyReference{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReferenceEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReferenceEnclosed.go
index dcfb3f126b..784c7453b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReferenceEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectPropertyReferenceEnclosed.go
@@ -137,7 +137,7 @@ func BACnetDeviceObjectPropertyReferenceEnclosedParseWithBufferProducer(tagNumbe
 }
 
 func BACnetDeviceObjectPropertyReferenceEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetDeviceObjectPropertyReferenceEnclosed, error) {
-	v, err := NewBACnetDeviceObjectPropertyReferenceEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetDeviceObjectPropertyReferenceEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReference.go
index 58d11aa6a4..f008d3b131 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReference.go
@@ -126,7 +126,7 @@ func BACnetDeviceObjectReferenceParseWithBufferProducer() func(ctx context.Conte
 }
 
 func BACnetDeviceObjectReferenceParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetDeviceObjectReference, error) {
-	v, err := NewBACnetDeviceObjectReference().parse(ctx, readBuffer)
+	v, err := (&_BACnetDeviceObjectReference{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReferenceEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReferenceEnclosed.go
index 3222700017..9cbecf0c89 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReferenceEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceObjectReferenceEnclosed.go
@@ -137,7 +137,7 @@ func BACnetDeviceObjectReferenceEnclosedParseWithBufferProducer(tagNumber uint8)
 }
 
 func BACnetDeviceObjectReferenceEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetDeviceObjectReferenceEnclosed, error) {
-	v, err := NewBACnetDeviceObjectReferenceEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetDeviceObjectReferenceEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceStatusTagged.go
index 642ec010cb..f973a4ec51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDeviceStatusTagged.go
@@ -157,7 +157,7 @@ func BACnetDeviceStatusTaggedParseWithBufferProducer(tagNumber uint8, tagClass T
 }
 
 func BACnetDeviceStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetDeviceStatusTagged, error) {
-	v, err := NewBACnetDeviceStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetDeviceStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorAlarmStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorAlarmStateTagged.go
index 97090b4626..9a8080400d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorAlarmStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorAlarmStateTagged.go
@@ -157,7 +157,7 @@ func BACnetDoorAlarmStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetDoorAlarmStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetDoorAlarmStateTagged, error) {
-	v, err := NewBACnetDoorAlarmStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetDoorAlarmStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorSecuredStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorSecuredStatusTagged.go
index bd8321b9c8..d0884b3811 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorSecuredStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorSecuredStatusTagged.go
@@ -128,7 +128,7 @@ func BACnetDoorSecuredStatusTaggedParseWithBufferProducer(tagNumber uint8, tagCl
 }
 
 func BACnetDoorSecuredStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetDoorSecuredStatusTagged, error) {
-	v, err := NewBACnetDoorSecuredStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetDoorSecuredStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorStatusTagged.go
index 9a90aa4e45..e569dd8aff 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorStatusTagged.go
@@ -157,7 +157,7 @@ func BACnetDoorStatusTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetDoorStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetDoorStatusTagged, error) {
-	v, err := NewBACnetDoorStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetDoorStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorValueTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorValueTagged.go
index 2906597abe..916330bea0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorValueTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetDoorValueTagged.go
@@ -128,7 +128,7 @@ func BACnetDoorValueTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagC
 }
 
 func BACnetDoorValueTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetDoorValueTagged, error) {
-	v, err := NewBACnetDoorValueTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetDoorValueTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEngineeringUnitsTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEngineeringUnitsTagged.go
index 8f75999727..cf924684d7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEngineeringUnitsTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEngineeringUnitsTagged.go
@@ -157,7 +157,7 @@ func BACnetEngineeringUnitsTaggedParseWithBufferProducer(tagNumber uint8, tagCla
 }
 
 func BACnetEngineeringUnitsTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEngineeringUnitsTagged, error) {
-	v, err := NewBACnetEngineeringUnitsTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEngineeringUnitsTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go
index debdac55ec..3890c6e442 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go
@@ -121,7 +121,7 @@ func BACnetErrorParseWithBufferProducer[T BACnetError](errorChoice BACnetConfirm
 }
 
 func BACnetErrorParseWithBuffer[T BACnetError](ctx context.Context, readBuffer utils.ReadBuffer, errorChoice BACnetConfirmedServiceChoice) (T, error) {
-	v, err := NewBACnetError().parse(ctx, readBuffer, errorChoice)
+	v, err := (&_BACnetError{}).parse(ctx, readBuffer, errorChoice)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorFaultTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorFaultTagged.go
index 4110e85545..fc68c9567c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorFaultTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorFaultTagged.go
@@ -157,7 +157,7 @@ func BACnetEscalatorFaultTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetEscalatorFaultTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEscalatorFaultTagged, error) {
-	v, err := NewBACnetEscalatorFaultTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEscalatorFaultTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorModeTagged.go
index 46a223aa6f..6ba12a933c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorModeTagged.go
@@ -157,7 +157,7 @@ func BACnetEscalatorModeTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetEscalatorModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEscalatorModeTagged, error) {
-	v, err := NewBACnetEscalatorModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEscalatorModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorOperationDirectionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorOperationDirectionTagged.go
index 8420afae8a..11870fb088 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorOperationDirectionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEscalatorOperationDirectionTagged.go
@@ -157,7 +157,7 @@ func BACnetEscalatorOperationDirectionTaggedParseWithBufferProducer(tagNumber ui
 }
 
 func BACnetEscalatorOperationDirectionTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEscalatorOperationDirectionTagged, error) {
-	v, err := NewBACnetEscalatorOperationDirectionTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEscalatorOperationDirectionTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecord.go
index 8c15ca847c..cf00cf7c0e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecord.go
@@ -124,7 +124,7 @@ func BACnetEventLogRecordParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetEventLogRecordParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetEventLogRecord, error) {
-	v, err := NewBACnetEventLogRecord().parse(ctx, readBuffer)
+	v, err := (&_BACnetEventLogRecord{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go
index 508305d503..0cdaa74e3b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go
@@ -185,7 +185,7 @@ func BACnetEventLogRecordLogDatumParseWithBufferProducer[T BACnetEventLogRecordL
 }
 
 func BACnetEventLogRecordLogDatumParseWithBuffer[T BACnetEventLogRecordLogDatum](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetEventLogRecordLogDatum(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventLogRecordLogDatum{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventNotificationSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventNotificationSubscription.go
index 6b05e27324..2c5ac25e5e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventNotificationSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventNotificationSubscription.go
@@ -146,7 +146,7 @@ func BACnetEventNotificationSubscriptionParseWithBufferProducer() func(ctx conte
 }
 
 func BACnetEventNotificationSubscriptionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetEventNotificationSubscription, error) {
-	v, err := NewBACnetEventNotificationSubscription().parse(ctx, readBuffer)
+	v, err := (&_BACnetEventNotificationSubscription{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go
index 2f2fd17cc2..94924d9caf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go
@@ -160,7 +160,7 @@ func BACnetEventParameterParseWithBufferProducer[T BACnetEventParameter]() func(
 }
 
 func BACnetEventParameterParseWithBuffer[T BACnetEventParameter](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetEventParameter().parse(ctx, readBuffer)
+	v, err := (&_BACnetEventParameter{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterAccessEventListOfAccessEvents.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterAccessEventListOfAccessEvents.go
index b76264f226..012d8fbfc3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterAccessEventListOfAccessEvents.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterAccessEventListOfAccessEvents.go
@@ -141,7 +141,7 @@ func BACnetEventParameterAccessEventListOfAccessEventsParseWithBufferProducer(ta
 }
 
 func BACnetEventParameterAccessEventListOfAccessEventsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterAccessEventListOfAccessEvents, error) {
-	v, err := NewBACnetEventParameterAccessEventListOfAccessEvents(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterAccessEventListOfAccessEvents{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfBitstringListOfBitstringValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfBitstringListOfBitstringValues.go
index 82faba4b6e..87ecc1f484 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfBitstringListOfBitstringValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfBitstringListOfBitstringValues.go
@@ -141,7 +141,7 @@ func BACnetEventParameterChangeOfBitstringListOfBitstringValuesParseWithBufferPr
 }
 
 func BACnetEventParameterChangeOfBitstringListOfBitstringValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterChangeOfBitstringListOfBitstringValues, error) {
-	v, err := NewBACnetEventParameterChangeOfBitstringListOfBitstringValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfBitstringListOfBitstringValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfCharacterStringListOfAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfCharacterStringListOfAlarmValues.go
index 1a5502592b..2cc6e9f084 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfCharacterStringListOfAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfCharacterStringListOfAlarmValues.go
@@ -141,7 +141,7 @@ func BACnetEventParameterChangeOfCharacterStringListOfAlarmValuesParseWithBuffer
 }
 
 func BACnetEventParameterChangeOfCharacterStringListOfAlarmValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterChangeOfCharacterStringListOfAlarmValues, error) {
-	v, err := NewBACnetEventParameterChangeOfCharacterStringListOfAlarmValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfCharacterStringListOfAlarmValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues.go
index 077be8f8c2..8a1d52d23d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues.go
@@ -141,7 +141,7 @@ func BACnetEventParameterChangeOfLifeSavetyListOfAlarmValuesParseWithBufferProdu
 }
 
 func BACnetEventParameterChangeOfLifeSavetyListOfAlarmValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues, error) {
-	v, err := NewBACnetEventParameterChangeOfLifeSavetyListOfAlarmValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfLifeSavetyListOfAlarmValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues.go
index af8d67e577..90bdac7e2d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues.go
@@ -141,7 +141,7 @@ func BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValuesParseWithB
 }
 
 func BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues, error) {
-	v, err := NewBACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfLifeSavetyListOfLifeSavetyAlarmValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfStateListOfValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfStateListOfValues.go
index 9248dab4ba..3349742416 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfStateListOfValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfStateListOfValues.go
@@ -141,7 +141,7 @@ func BACnetEventParameterChangeOfStateListOfValuesParseWithBufferProducer(tagNum
 }
 
 func BACnetEventParameterChangeOfStateListOfValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterChangeOfStateListOfValues, error) {
-	v, err := NewBACnetEventParameterChangeOfStateListOfValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfStateListOfValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfTimerAlarmValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfTimerAlarmValue.go
index ce03cb9f5e..19bcd74550 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfTimerAlarmValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfTimerAlarmValue.go
@@ -141,7 +141,7 @@ func BACnetEventParameterChangeOfTimerAlarmValueParseWithBufferProducer(tagNumbe
 }
 
 func BACnetEventParameterChangeOfTimerAlarmValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterChangeOfTimerAlarmValue, error) {
-	v, err := NewBACnetEventParameterChangeOfTimerAlarmValue(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfTimerAlarmValue{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go
index 40f023ae86..5f6dddc5b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go
@@ -185,7 +185,7 @@ func BACnetEventParameterChangeOfValueCivCriteriaParseWithBufferProducer[T BACne
 }
 
 func BACnetEventParameterChangeOfValueCivCriteriaParseWithBuffer[T BACnetEventParameterChangeOfValueCivCriteria](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetEventParameterChangeOfValueCivCriteria(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterChangeOfValueCivCriteria{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterExtendedParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterExtendedParameters.go
index b49a8662ee..72809c311e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterExtendedParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterExtendedParameters.go
@@ -425,7 +425,7 @@ func BACnetEventParameterExtendedParametersParseWithBufferProducer(tagNumber uin
 }
 
 func BACnetEventParameterExtendedParametersParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventParameterExtendedParameters, error) {
-	v, err := NewBACnetEventParameterExtendedParameters(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventParameterExtendedParameters{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventPriorities.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventPriorities.go
index d09d30753d..61cbdbbb53 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventPriorities.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventPriorities.go
@@ -157,7 +157,7 @@ func BACnetEventPrioritiesParseWithBufferProducer(tagNumber uint8) func(ctx cont
 }
 
 func BACnetEventPrioritiesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventPriorities, error) {
-	v, err := NewBACnetEventPriorities(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventPriorities{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventStateTagged.go
index b7b577652f..6666dbee46 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventStateTagged.go
@@ -157,7 +157,7 @@ func BACnetEventStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetEventStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEventStateTagged, error) {
-	v, err := NewBACnetEventStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEventStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummariesList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummariesList.go
index f938e28c92..d8300b3396 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummariesList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummariesList.go
@@ -141,7 +141,7 @@ func BACnetEventSummariesListParseWithBufferProducer(tagNumber uint8) func(ctx c
 }
 
 func BACnetEventSummariesListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventSummariesList, error) {
-	v, err := NewBACnetEventSummariesList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventSummariesList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummary.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummary.go
index 87fb37ef0c..83a49f5904 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummary.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventSummary.go
@@ -174,7 +174,7 @@ func BACnetEventSummaryParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func BACnetEventSummaryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetEventSummary, error) {
-	v, err := NewBACnetEventSummary().parse(ctx, readBuffer)
+	v, err := (&_BACnetEventSummary{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestamps.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestamps.go
index 05379f09d8..9b12959652 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestamps.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestamps.go
@@ -134,7 +134,7 @@ func BACnetEventTimestampsParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func BACnetEventTimestampsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetEventTimestamps, error) {
-	v, err := NewBACnetEventTimestamps().parse(ctx, readBuffer)
+	v, err := (&_BACnetEventTimestamps{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestampsEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestampsEnclosed.go
index 693627cee4..b80fd01af2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestampsEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTimestampsEnclosed.go
@@ -137,7 +137,7 @@ func BACnetEventTimestampsEnclosedParseWithBufferProducer(tagNumber uint8) func(
 }
 
 func BACnetEventTimestampsEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetEventTimestampsEnclosed, error) {
-	v, err := NewBACnetEventTimestampsEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetEventTimestampsEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTransitionBitsTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTransitionBitsTagged.go
index ced2d4777a..17300ccafd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTransitionBitsTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTransitionBitsTagged.go
@@ -167,7 +167,7 @@ func BACnetEventTransitionBitsTaggedParseWithBufferProducer(tagNumber uint8, tag
 }
 
 func BACnetEventTransitionBitsTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEventTransitionBitsTagged, error) {
-	v, err := NewBACnetEventTransitionBitsTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEventTransitionBitsTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTypeTagged.go
index 4964dc78ea..33a75af691 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventTypeTagged.go
@@ -157,7 +157,7 @@ func BACnetEventTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagC
 }
 
 func BACnetEventTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetEventTypeTagged, error) {
-	v, err := NewBACnetEventTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetEventTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go
index 280ee8c1f4..4408799606 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go
@@ -160,7 +160,7 @@ func BACnetFaultParameterParseWithBufferProducer[T BACnetFaultParameter]() func(
 }
 
 func BACnetFaultParameterParseWithBuffer[T BACnetFaultParameter](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetFaultParameter().parse(ctx, readBuffer)
+	v, err := (&_BACnetFaultParameter{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultCharacterStringListOfFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultCharacterStringListOfFaultValues.go
index 64bd0169f1..6912c637f6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultCharacterStringListOfFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultCharacterStringListOfFaultValues.go
@@ -141,7 +141,7 @@ func BACnetFaultParameterFaultCharacterStringListOfFaultValuesParseWithBufferPro
 }
 
 func BACnetFaultParameterFaultCharacterStringListOfFaultValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetFaultParameterFaultCharacterStringListOfFaultValues, error) {
-	v, err := NewBACnetFaultParameterFaultCharacterStringListOfFaultValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetFaultParameterFaultCharacterStringListOfFaultValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParameters.go
index 7d3cf7dfec..b4d0d277b4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParameters.go
@@ -141,7 +141,7 @@ func BACnetFaultParameterFaultExtendedParametersParseWithBufferProducer(tagNumbe
 }
 
 func BACnetFaultParameterFaultExtendedParametersParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetFaultParameterFaultExtendedParameters, error) {
-	v, err := NewBACnetFaultParameterFaultExtendedParameters(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetFaultParameterFaultExtendedParameters{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go
index da9a487a14..995d881bfe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go
@@ -173,7 +173,7 @@ func BACnetFaultParameterFaultExtendedParametersEntryParseWithBufferProducer[T B
 }
 
 func BACnetFaultParameterFaultExtendedParametersEntryParseWithBuffer[T BACnetFaultParameterFaultExtendedParametersEntry](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetFaultParameterFaultExtendedParametersEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetFaultParameterFaultExtendedParametersEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultLifeSafetyListOfFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultLifeSafetyListOfFaultValues.go
index 11d86164c4..4c27cda7b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultLifeSafetyListOfFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultLifeSafetyListOfFaultValues.go
@@ -141,7 +141,7 @@ func BACnetFaultParameterFaultLifeSafetyListOfFaultValuesParseWithBufferProducer
 }
 
 func BACnetFaultParameterFaultLifeSafetyListOfFaultValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetFaultParameterFaultLifeSafetyListOfFaultValues, error) {
-	v, err := NewBACnetFaultParameterFaultLifeSafetyListOfFaultValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetFaultParameterFaultLifeSafetyListOfFaultValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go
index 0b25131f66..cab8ad3098 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go
@@ -185,7 +185,7 @@ func BACnetFaultParameterFaultOutOfRangeMaxNormalValueParseWithBufferProducer[T
 }
 
 func BACnetFaultParameterFaultOutOfRangeMaxNormalValueParseWithBuffer[T BACnetFaultParameterFaultOutOfRangeMaxNormalValue](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetFaultParameterFaultOutOfRangeMaxNormalValue(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetFaultParameterFaultOutOfRangeMaxNormalValue{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go
index 18309ea8f7..684ca63cca 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go
@@ -185,7 +185,7 @@ func BACnetFaultParameterFaultOutOfRangeMinNormalValueParseWithBufferProducer[T
 }
 
 func BACnetFaultParameterFaultOutOfRangeMinNormalValueParseWithBuffer[T BACnetFaultParameterFaultOutOfRangeMinNormalValue](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetFaultParameterFaultOutOfRangeMinNormalValue(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetFaultParameterFaultOutOfRangeMinNormalValue{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultStateListOfFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultStateListOfFaultValues.go
index 92e36e8513..eabc150a51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultStateListOfFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultStateListOfFaultValues.go
@@ -141,7 +141,7 @@ func BACnetFaultParameterFaultStateListOfFaultValuesParseWithBufferProducer(tagN
 }
 
 func BACnetFaultParameterFaultStateListOfFaultValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetFaultParameterFaultStateListOfFaultValues, error) {
-	v, err := NewBACnetFaultParameterFaultStateListOfFaultValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetFaultParameterFaultStateListOfFaultValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultTypeTagged.go
index 82e578858f..ea42685478 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultTypeTagged.go
@@ -128,7 +128,7 @@ func BACnetFaultTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagC
 }
 
 func BACnetFaultTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetFaultTypeTagged, error) {
-	v, err := NewBACnetFaultTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetFaultTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFileAccessMethodTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFileAccessMethodTagged.go
index c3acdc74e3..a6e0441b7a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFileAccessMethodTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFileAccessMethodTagged.go
@@ -128,7 +128,7 @@ func BACnetFileAccessMethodTaggedParseWithBufferProducer(tagNumber uint8, tagCla
 }
 
 func BACnetFileAccessMethodTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetFileAccessMethodTagged, error) {
-	v, err := NewBACnetFileAccessMethodTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetFileAccessMethodTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValue.go
index 65b6002d5e..acde665e7e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValue.go
@@ -136,7 +136,7 @@ func BACnetGroupChannelValueParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetGroupChannelValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetGroupChannelValue, error) {
-	v, err := NewBACnetGroupChannelValue().parse(ctx, readBuffer)
+	v, err := (&_BACnetGroupChannelValue{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValueList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValueList.go
index 1f857ab97a..1ae2f5516d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValueList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetGroupChannelValueList.go
@@ -141,7 +141,7 @@ func BACnetGroupChannelValueListParseWithBufferProducer(tagNumber uint8) func(ct
 }
 
 func BACnetGroupChannelValueListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetGroupChannelValueList, error) {
-	v, err := NewBACnetGroupChannelValueList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetGroupChannelValueList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go
index 5cfc9cab39..442ea68e06 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go
@@ -160,7 +160,7 @@ func BACnetHostAddressParseWithBufferProducer[T BACnetHostAddress]() func(ctx co
 }
 
 func BACnetHostAddressParseWithBuffer[T BACnetHostAddress](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetHostAddress().parse(ctx, readBuffer)
+	v, err := (&_BACnetHostAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddressEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddressEnclosed.go
index 08f57bc194..c74c6f9012 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddressEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddressEnclosed.go
@@ -137,7 +137,7 @@ func BACnetHostAddressEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx
 }
 
 func BACnetHostAddressEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetHostAddressEnclosed, error) {
-	v, err := NewBACnetHostAddressEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetHostAddressEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPort.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPort.go
index 994fd637ad..02bb5a797b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPort.go
@@ -124,7 +124,7 @@ func BACnetHostNPortParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetHostNPortParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetHostNPort, error) {
-	v, err := NewBACnetHostNPort().parse(ctx, readBuffer)
+	v, err := (&_BACnetHostNPort{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPortEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPortEnclosed.go
index 67232b783d..908f16ced2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPortEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostNPortEnclosed.go
@@ -137,7 +137,7 @@ func BACnetHostNPortEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx co
 }
 
 func BACnetHostNPortEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetHostNPortEnclosed, error) {
-	v, err := NewBACnetHostNPortEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetHostNPortEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetIPModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetIPModeTagged.go
index 29d4c6c5d6..caff632525 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetIPModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetIPModeTagged.go
@@ -128,7 +128,7 @@ func BACnetIPModeTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagClas
 }
 
 func BACnetIPModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetIPModeTagged, error) {
-	v, err := NewBACnetIPModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetIPModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetKeyIdentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetKeyIdentifier.go
index 99f9d535f0..38b250e9dc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetKeyIdentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetKeyIdentifier.go
@@ -124,7 +124,7 @@ func BACnetKeyIdentifierParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func BACnetKeyIdentifierParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetKeyIdentifier, error) {
-	v, err := NewBACnetKeyIdentifier().parse(ctx, readBuffer)
+	v, err := (&_BACnetKeyIdentifier{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatus.go
index 4026bdd4fb..301f64d0e1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatus.go
@@ -136,7 +136,7 @@ func BACnetLandingCallStatusParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetLandingCallStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLandingCallStatus, error) {
-	v, err := NewBACnetLandingCallStatus().parse(ctx, readBuffer)
+	v, err := (&_BACnetLandingCallStatus{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go
index 95b3ccd58e..d591405644 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go
@@ -160,7 +160,7 @@ func BACnetLandingCallStatusCommandParseWithBufferProducer[T BACnetLandingCallSt
 }
 
 func BACnetLandingCallStatusCommandParseWithBuffer[T BACnetLandingCallStatusCommand](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetLandingCallStatusCommand().parse(ctx, readBuffer)
+	v, err := (&_BACnetLandingCallStatusCommand{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatus.go
index fa1ebe4fcc..bae4bc306a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatus.go
@@ -114,7 +114,7 @@ func BACnetLandingDoorStatusParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetLandingDoorStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLandingDoorStatus, error) {
-	v, err := NewBACnetLandingDoorStatus().parse(ctx, readBuffer)
+	v, err := (&_BACnetLandingDoorStatus{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsList.go
index d64dd7dcf3..acc5574581 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsList.go
@@ -141,7 +141,7 @@ func BACnetLandingDoorStatusLandingDoorsListParseWithBufferProducer(tagNumber ui
 }
 
 func BACnetLandingDoorStatusLandingDoorsListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetLandingDoorStatusLandingDoorsList, error) {
-	v, err := NewBACnetLandingDoorStatusLandingDoorsList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetLandingDoorStatusLandingDoorsList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsListEntry.go
index adcecdf347..0481b2405a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingDoorStatusLandingDoorsListEntry.go
@@ -124,7 +124,7 @@ func BACnetLandingDoorStatusLandingDoorsListEntryParseWithBufferProducer() func(
 }
 
 func BACnetLandingDoorStatusLandingDoorsListEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLandingDoorStatusLandingDoorsListEntry, error) {
-	v, err := NewBACnetLandingDoorStatusLandingDoorsListEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetLandingDoorStatusLandingDoorsListEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyModeTagged.go
index baf43d210c..179d260f82 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyModeTagged.go
@@ -157,7 +157,7 @@ func BACnetLifeSafetyModeTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetLifeSafetyModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLifeSafetyModeTagged, error) {
-	v, err := NewBACnetLifeSafetyModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLifeSafetyModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyOperationTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyOperationTagged.go
index df3a81f8b2..664936b9e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyOperationTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyOperationTagged.go
@@ -157,7 +157,7 @@ func BACnetLifeSafetyOperationTaggedParseWithBufferProducer(tagNumber uint8, tag
 }
 
 func BACnetLifeSafetyOperationTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLifeSafetyOperationTagged, error) {
-	v, err := NewBACnetLifeSafetyOperationTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLifeSafetyOperationTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyStateTagged.go
index 2ac54aefd7..93b7c4c7c3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLifeSafetyStateTagged.go
@@ -157,7 +157,7 @@ func BACnetLifeSafetyStateTaggedParseWithBufferProducer(tagNumber uint8, tagClas
 }
 
 func BACnetLifeSafetyStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLifeSafetyStateTagged, error) {
-	v, err := NewBACnetLifeSafetyStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLifeSafetyStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallList.go
index 6530a52240..1582b64537 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallList.go
@@ -114,7 +114,7 @@ func BACnetLiftCarCallListParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func BACnetLiftCarCallListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLiftCarCallList, error) {
-	v, err := NewBACnetLiftCarCallList().parse(ctx, readBuffer)
+	v, err := (&_BACnetLiftCarCallList{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallListFloorList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallListFloorList.go
index f5b09e3c02..d530b35352 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallListFloorList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarCallListFloorList.go
@@ -141,7 +141,7 @@ func BACnetLiftCarCallListFloorListParseWithBufferProducer(tagNumber uint8) func
 }
 
 func BACnetLiftCarCallListFloorListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetLiftCarCallListFloorList, error) {
-	v, err := NewBACnetLiftCarCallListFloorList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetLiftCarCallListFloorList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDirectionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDirectionTagged.go
index 124bc3c3b2..b0b545b140 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDirectionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDirectionTagged.go
@@ -157,7 +157,7 @@ func BACnetLiftCarDirectionTaggedParseWithBufferProducer(tagNumber uint8, tagCla
 }
 
 func BACnetLiftCarDirectionTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLiftCarDirectionTagged, error) {
-	v, err := NewBACnetLiftCarDirectionTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLiftCarDirectionTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDoorCommandTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDoorCommandTagged.go
index cbc8383e94..2fe4860954 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDoorCommandTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDoorCommandTagged.go
@@ -128,7 +128,7 @@ func BACnetLiftCarDoorCommandTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetLiftCarDoorCommandTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLiftCarDoorCommandTagged, error) {
-	v, err := NewBACnetLiftCarDoorCommandTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLiftCarDoorCommandTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDriveStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDriveStatusTagged.go
index a5483b7af5..a5692548dc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDriveStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarDriveStatusTagged.go
@@ -157,7 +157,7 @@ func BACnetLiftCarDriveStatusTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetLiftCarDriveStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLiftCarDriveStatusTagged, error) {
-	v, err := NewBACnetLiftCarDriveStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLiftCarDriveStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarModeTagged.go
index c6a7a80dd2..351631ae66 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftCarModeTagged.go
@@ -157,7 +157,7 @@ func BACnetLiftCarModeTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetLiftCarModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLiftCarModeTagged, error) {
-	v, err := NewBACnetLiftCarModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLiftCarModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftFaultTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftFaultTagged.go
index bea9ece10f..98ef9583d3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftFaultTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftFaultTagged.go
@@ -157,7 +157,7 @@ func BACnetLiftFaultTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagC
 }
 
 func BACnetLiftFaultTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLiftFaultTagged, error) {
-	v, err := NewBACnetLiftFaultTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLiftFaultTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftGroupModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftGroupModeTagged.go
index 85d6187dd5..3758aa8ba1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftGroupModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLiftGroupModeTagged.go
@@ -128,7 +128,7 @@ func BACnetLiftGroupModeTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetLiftGroupModeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLiftGroupModeTagged, error) {
-	v, err := NewBACnetLiftGroupModeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLiftGroupModeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommand.go
index 68fcc91af9..f34077b990 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommand.go
@@ -174,7 +174,7 @@ func BACnetLightingCommandParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func BACnetLightingCommandParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLightingCommand, error) {
-	v, err := NewBACnetLightingCommand().parse(ctx, readBuffer)
+	v, err := (&_BACnetLightingCommand{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommandEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommandEnclosed.go
index 78b4fe7419..a8795d3309 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommandEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingCommandEnclosed.go
@@ -137,7 +137,7 @@ func BACnetLightingCommandEnclosedParseWithBufferProducer(tagNumber uint8) func(
 }
 
 func BACnetLightingCommandEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetLightingCommandEnclosed, error) {
-	v, err := NewBACnetLightingCommandEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetLightingCommandEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingInProgressTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingInProgressTagged.go
index f8bf45db22..099eb36b91 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingInProgressTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingInProgressTagged.go
@@ -128,7 +128,7 @@ func BACnetLightingInProgressTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetLightingInProgressTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLightingInProgressTagged, error) {
-	v, err := NewBACnetLightingInProgressTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLightingInProgressTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingOperationTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingOperationTagged.go
index 42223f7555..158b55f05c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingOperationTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingOperationTagged.go
@@ -157,7 +157,7 @@ func BACnetLightingOperationTaggedParseWithBufferProducer(tagNumber uint8, tagCl
 }
 
 func BACnetLightingOperationTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLightingOperationTagged, error) {
-	v, err := NewBACnetLightingOperationTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLightingOperationTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingTransitionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingTransitionTagged.go
index 16fb091e2a..d2079b3ddf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingTransitionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLightingTransitionTagged.go
@@ -157,7 +157,7 @@ func BACnetLightingTransitionTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetLightingTransitionTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLightingTransitionTagged, error) {
-	v, err := NewBACnetLightingTransitionTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLightingTransitionTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLimitEnableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLimitEnableTagged.go
index c1974d7d72..7ae393d8db 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLimitEnableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLimitEnableTagged.go
@@ -157,7 +157,7 @@ func BACnetLimitEnableTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetLimitEnableTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLimitEnableTagged, error) {
-	v, err := NewBACnetLimitEnableTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLimitEnableTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLockStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLockStatusTagged.go
index ff5cbc3f2a..ade65576d2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLockStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLockStatusTagged.go
@@ -128,7 +128,7 @@ func BACnetLockStatusTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetLockStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLockStatusTagged, error) {
-	v, err := NewBACnetLockStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLockStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go
index 860f358af8..eb144d315a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go
@@ -185,7 +185,7 @@ func BACnetLogDataParseWithBufferProducer[T BACnetLogData](tagNumber uint8) func
 }
 
 func BACnetLogDataParseWithBuffer[T BACnetLogData](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetLogData(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetLogData{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go
index c5c95b172e..787fa658b8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go
@@ -160,7 +160,7 @@ func BACnetLogDataLogDataEntryParseWithBufferProducer[T BACnetLogDataLogDataEntr
 }
 
 func BACnetLogDataLogDataEntryParseWithBuffer[T BACnetLogDataLogDataEntry](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetLogDataLogDataEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetLogDataLogDataEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogMultipleRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogMultipleRecord.go
index 27078d3330..cb05752264 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogMultipleRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogMultipleRecord.go
@@ -124,7 +124,7 @@ func BACnetLogMultipleRecordParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetLogMultipleRecordParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLogMultipleRecord, error) {
-	v, err := NewBACnetLogMultipleRecord().parse(ctx, readBuffer)
+	v, err := (&_BACnetLogMultipleRecord{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecord.go
index 3716d68bc8..95eac54b65 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecord.go
@@ -136,7 +136,7 @@ func BACnetLogRecordParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetLogRecordParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetLogRecord, error) {
-	v, err := NewBACnetLogRecord().parse(ctx, readBuffer)
+	v, err := (&_BACnetLogRecord{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go
index 37c72c56da..5cbb94019e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go
@@ -185,7 +185,7 @@ func BACnetLogRecordLogDatumParseWithBufferProducer[T BACnetLogRecordLogDatum](t
 }
 
 func BACnetLogRecordLogDatumParseWithBuffer[T BACnetLogRecordLogDatum](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetLogRecordLogDatum(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetLogRecordLogDatum{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogStatusTagged.go
index f33652c458..c56c39c358 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogStatusTagged.go
@@ -167,7 +167,7 @@ func BACnetLogStatusTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagC
 }
 
 func BACnetLogStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLogStatusTagged, error) {
-	v, err := NewBACnetLogStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLogStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLoggingTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLoggingTypeTagged.go
index 94e0855834..b7ab93767c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLoggingTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLoggingTypeTagged.go
@@ -157,7 +157,7 @@ func BACnetLoggingTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetLoggingTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetLoggingTypeTagged, error) {
-	v, err := NewBACnetLoggingTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetLoggingTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetMaintenanceTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetMaintenanceTagged.go
index cd5c158cf8..af23fb2c7c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetMaintenanceTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetMaintenanceTagged.go
@@ -157,7 +157,7 @@ func BACnetMaintenanceTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetMaintenanceTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetMaintenanceTagged, error) {
-	v, err := NewBACnetMaintenanceTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetMaintenanceTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValue.go
index 2b82064fbf..0e425aeb91 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValue.go
@@ -126,7 +126,7 @@ func BACnetNameValueParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetNameValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetNameValue, error) {
-	v, err := NewBACnetNameValue().parse(ctx, readBuffer)
+	v, err := (&_BACnetNameValue{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValueCollection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValueCollection.go
index c9a074077c..242982866f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValueCollection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNameValueCollection.go
@@ -141,7 +141,7 @@ func BACnetNameValueCollectionParseWithBufferProducer(tagNumber uint8) func(ctx
 }
 
 func BACnetNameValueCollectionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetNameValueCollection, error) {
-	v, err := NewBACnetNameValueCollection(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetNameValueCollection{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkNumberQualityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkNumberQualityTagged.go
index a0e48775a4..a5a8d31c44 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkNumberQualityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkNumberQualityTagged.go
@@ -128,7 +128,7 @@ func BACnetNetworkNumberQualityTaggedParseWithBufferProducer(tagNumber uint8, ta
 }
 
 func BACnetNetworkNumberQualityTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetNetworkNumberQualityTagged, error) {
-	v, err := NewBACnetNetworkNumberQualityTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetNetworkNumberQualityTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkPortCommandTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkPortCommandTagged.go
index fab7cceed6..50533d7578 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkPortCommandTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkPortCommandTagged.go
@@ -157,7 +157,7 @@ func BACnetNetworkPortCommandTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetNetworkPortCommandTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetNetworkPortCommandTagged, error) {
-	v, err := NewBACnetNetworkPortCommandTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetNetworkPortCommandTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkSecurityPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkSecurityPolicy.go
index 4b702fbf66..0f6487e353 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkSecurityPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkSecurityPolicy.go
@@ -124,7 +124,7 @@ func BACnetNetworkSecurityPolicyParseWithBufferProducer() func(ctx context.Conte
 }
 
 func BACnetNetworkSecurityPolicyParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetNetworkSecurityPolicy, error) {
-	v, err := NewBACnetNetworkSecurityPolicy().parse(ctx, readBuffer)
+	v, err := (&_BACnetNetworkSecurityPolicy{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkTypeTagged.go
index b8aba32c4c..50895a4a80 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNetworkTypeTagged.go
@@ -157,7 +157,7 @@ func BACnetNetworkTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetNetworkTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetNetworkTypeTagged, error) {
-	v, err := NewBACnetNetworkTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetNetworkTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNodeTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNodeTypeTagged.go
index 1cb35d8d68..17e111c84d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNodeTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNodeTypeTagged.go
@@ -128,7 +128,7 @@ func BACnetNodeTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCl
 }
 
 func BACnetNodeTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetNodeTypeTagged, error) {
-	v, err := NewBACnetNodeTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetNodeTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go
index 266e193b73..1e6e987c7f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go
@@ -188,7 +188,7 @@ func BACnetNotificationParametersParseWithBufferProducer[T BACnetNotificationPar
 }
 
 func BACnetNotificationParametersParseWithBuffer[T BACnetNotificationParameters](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, objectTypeArgument BACnetObjectType) (T, error) {
-	v, err := NewBACnetNotificationParameters(tagNumber, objectTypeArgument).parse(ctx, readBuffer, tagNumber, objectTypeArgument)
+	v, err := (&_BACnetNotificationParameters{TagNumber: tagNumber, ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, tagNumber, objectTypeArgument)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go
index 565136df43..d5450a5c6b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go
@@ -198,7 +198,7 @@ func BACnetNotificationParametersChangeOfDiscreteValueNewValueParseWithBufferPro
 }
 
 func BACnetNotificationParametersChangeOfDiscreteValueNewValueParseWithBuffer[T BACnetNotificationParametersChangeOfDiscreteValueNewValue](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetNotificationParametersChangeOfDiscreteValueNewValue(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetNotificationParametersChangeOfDiscreteValueNewValue{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go
index cf915271d0..fece682d45 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go
@@ -185,7 +185,7 @@ func BACnetNotificationParametersChangeOfValueNewValueParseWithBufferProducer[T
 }
 
 func BACnetNotificationParametersChangeOfValueNewValueParseWithBuffer[T BACnetNotificationParametersChangeOfValueNewValue](ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (T, error) {
-	v, err := NewBACnetNotificationParametersChangeOfValueNewValue(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetNotificationParametersChangeOfValueNewValue{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersExtendedParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersExtendedParameters.go
index 64f0c9afcf..4a2075c184 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersExtendedParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersExtendedParameters.go
@@ -425,7 +425,7 @@ func BACnetNotificationParametersExtendedParametersParseWithBufferProducer(tagNu
 }
 
 func BACnetNotificationParametersExtendedParametersParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetNotificationParametersExtendedParameters, error) {
-	v, err := NewBACnetNotificationParametersExtendedParameters(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetNotificationParametersExtendedParameters{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotifyTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotifyTypeTagged.go
index 3f132f57e3..81f80050c9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotifyTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotifyTypeTagged.go
@@ -128,7 +128,7 @@ func BACnetNotifyTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetNotifyTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetNotifyTypeTagged, error) {
-	v, err := NewBACnetNotifyTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetNotifyTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReference.go
index 67a41a822e..a2c2c11937 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReference.go
@@ -136,7 +136,7 @@ func BACnetObjectPropertyReferenceParseWithBufferProducer() func(ctx context.Con
 }
 
 func BACnetObjectPropertyReferenceParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetObjectPropertyReference, error) {
-	v, err := NewBACnetObjectPropertyReference().parse(ctx, readBuffer)
+	v, err := (&_BACnetObjectPropertyReference{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReferenceEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReferenceEnclosed.go
index 2f41b12d3f..9030e9e248 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReferenceEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectPropertyReferenceEnclosed.go
@@ -137,7 +137,7 @@ func BACnetObjectPropertyReferenceEnclosedParseWithBufferProducer(tagNumber uint
 }
 
 func BACnetObjectPropertyReferenceEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetObjectPropertyReferenceEnclosed, error) {
-	v, err := NewBACnetObjectPropertyReferenceEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetObjectPropertyReferenceEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypeTagged.go
index 48f80c5b8a..46a4ed1357 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypeTagged.go
@@ -157,7 +157,7 @@ func BACnetObjectTypeTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetObjectTypeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetObjectTypeTagged, error) {
-	v, err := NewBACnetObjectTypeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetObjectTypeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypesSupportedTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypesSupportedTagged.go
index aad55966ec..199f2c1dab 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypesSupportedTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetObjectTypesSupportedTagged.go
@@ -237,7 +237,7 @@ func BACnetObjectTypesSupportedTaggedParseWithBufferProducer(tagNumber uint8, ta
 }
 
 func BACnetObjectTypesSupportedTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetObjectTypesSupportedTagged, error) {
-	v, err := NewBACnetObjectTypesSupportedTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetObjectTypesSupportedTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOpeningTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOpeningTag.go
index 87618c5a42..e392dd053d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOpeningTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOpeningTag.go
@@ -117,7 +117,7 @@ func BACnetOpeningTagParseWithBufferProducer(tagNumberArgument uint8) func(ctx c
 }
 
 func BACnetOpeningTagParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumberArgument uint8) (BACnetOpeningTag, error) {
-	v, err := NewBACnetOpeningTag(tagNumberArgument).parse(ctx, readBuffer, tagNumberArgument)
+	v, err := (&_BACnetOpeningTag{TagNumberArgument: tagNumberArgument}).parse(ctx, readBuffer, tagNumberArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go
index f4041d7ff3..39a8d21dbd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go
@@ -160,7 +160,7 @@ func BACnetOptionalBinaryPVParseWithBufferProducer[T BACnetOptionalBinaryPV]() f
 }
 
 func BACnetOptionalBinaryPVParseWithBuffer[T BACnetOptionalBinaryPV](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetOptionalBinaryPV().parse(ctx, readBuffer)
+	v, err := (&_BACnetOptionalBinaryPV{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go
index 2b644b05fc..e4c62d2280 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go
@@ -160,7 +160,7 @@ func BACnetOptionalCharacterStringParseWithBufferProducer[T BACnetOptionalCharac
 }
 
 func BACnetOptionalCharacterStringParseWithBuffer[T BACnetOptionalCharacterString](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetOptionalCharacterString().parse(ctx, readBuffer)
+	v, err := (&_BACnetOptionalCharacterString{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go
index d2fa3080f5..dee52da623 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go
@@ -160,7 +160,7 @@ func BACnetOptionalREALParseWithBufferProducer[T BACnetOptionalREAL]() func(ctx
 }
 
 func BACnetOptionalREALParseWithBuffer[T BACnetOptionalREAL](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetOptionalREAL().parse(ctx, readBuffer)
+	v, err := (&_BACnetOptionalREAL{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go
index ff701e2dda..c90a747f40 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go
@@ -160,7 +160,7 @@ func BACnetOptionalUnsignedParseWithBufferProducer[T BACnetOptionalUnsigned]() f
 }
 
 func BACnetOptionalUnsignedParseWithBuffer[T BACnetOptionalUnsigned](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetOptionalUnsigned().parse(ctx, readBuffer)
+	v, err := (&_BACnetOptionalUnsigned{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPolarityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPolarityTagged.go
index 2cda73fb2c..f8924a9069 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPolarityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPolarityTagged.go
@@ -128,7 +128,7 @@ func BACnetPolarityTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCl
 }
 
 func BACnetPolarityTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetPolarityTagged, error) {
-	v, err := NewBACnetPolarityTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetPolarityTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPortPermission.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPortPermission.go
index 2ddc77e48e..90fe05d03e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPortPermission.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPortPermission.go
@@ -126,7 +126,7 @@ func BACnetPortPermissionParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetPortPermissionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetPortPermission, error) {
-	v, err := NewBACnetPortPermission().parse(ctx, readBuffer)
+	v, err := (&_BACnetPortPermission{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPrescale.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPrescale.go
index 452a750fcf..56922addfd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPrescale.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPrescale.go
@@ -124,7 +124,7 @@ func BACnetPrescaleParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func BACnetPrescaleParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetPrescale, error) {
-	v, err := NewBACnetPrescale().parse(ctx, readBuffer)
+	v, err := (&_BACnetPrescale{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityArray.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityArray.go
index a12c73cf0a..05566b45df 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityArray.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityArray.go
@@ -372,7 +372,7 @@ func BACnetPriorityArrayParseWithBufferProducer(objectTypeArgument BACnetObjectT
 }
 
 func BACnetPriorityArrayParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType, tagNumber uint8, arrayIndexArgument BACnetTagPayloadUnsignedInteger) (BACnetPriorityArray, error) {
-	v, err := NewBACnetPriorityArray(objectTypeArgument, tagNumber, arrayIndexArgument).parse(ctx, readBuffer, objectTypeArgument, tagNumber, arrayIndexArgument)
+	v, err := (&_BACnetPriorityArray{ObjectTypeArgument: objectTypeArgument, TagNumber: tagNumber, ArrayIndexArgument: arrayIndexArgument}).parse(ctx, readBuffer, objectTypeArgument, tagNumber, arrayIndexArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go
index 978d2eacaa..755e70b9be 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go
@@ -178,7 +178,7 @@ func BACnetPriorityValueParseWithBufferProducer[T BACnetPriorityValue](objectTyp
 }
 
 func BACnetPriorityValueParseWithBuffer[T BACnetPriorityValue](ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType) (T, error) {
-	v, err := NewBACnetPriorityValue(objectTypeArgument).parse(ctx, readBuffer, objectTypeArgument)
+	v, err := (&_BACnetPriorityValue{ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, objectTypeArgument)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go
index 6802ac1ae6..b0981433d6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go
@@ -160,7 +160,7 @@ func BACnetProcessIdSelectionParseWithBufferProducer[T BACnetProcessIdSelection]
 }
 
 func BACnetProcessIdSelectionParseWithBuffer[T BACnetProcessIdSelection](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetProcessIdSelection().parse(ctx, readBuffer)
+	v, err := (&_BACnetProcessIdSelection{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramErrorTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramErrorTagged.go
index 3df012dfb8..c8fbf941f9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramErrorTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramErrorTagged.go
@@ -157,7 +157,7 @@ func BACnetProgramErrorTaggedParseWithBufferProducer(tagNumber uint8, tagClass T
 }
 
 func BACnetProgramErrorTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetProgramErrorTagged, error) {
-	v, err := NewBACnetProgramErrorTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetProgramErrorTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramRequestTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramRequestTagged.go
index 80581cfed2..4b5ddc8b2d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramRequestTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramRequestTagged.go
@@ -128,7 +128,7 @@ func BACnetProgramRequestTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetProgramRequestTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetProgramRequestTagged, error) {
-	v, err := NewBACnetProgramRequestTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetProgramRequestTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramStateTagged.go
index 0a769666d0..05f759d123 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetProgramStateTagged.go
@@ -128,7 +128,7 @@ func BACnetProgramStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass T
 }
 
 func BACnetProgramStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetProgramStateTagged, error) {
-	v, err := NewBACnetProgramStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetProgramStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResult.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResult.go
index 930a48d3d4..e34d8de87e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResult.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResult.go
@@ -158,7 +158,7 @@ func BACnetPropertyAccessResultParseWithBufferProducer() func(ctx context.Contex
 }
 
 func BACnetPropertyAccessResultParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetPropertyAccessResult, error) {
-	v, err := NewBACnetPropertyAccessResult().parse(ctx, readBuffer)
+	v, err := (&_BACnetPropertyAccessResult{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go
index 8413eac963..2f73404b02 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go
@@ -171,7 +171,7 @@ func BACnetPropertyAccessResultAccessResultParseWithBufferProducer[T BACnetPrope
 }
 
 func BACnetPropertyAccessResultAccessResultParseWithBuffer[T BACnetPropertyAccessResultAccessResult](ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType, propertyIdentifierArgument BACnetPropertyIdentifier, propertyArrayIndexArgument BACnetTagPayloadUnsignedInteger) (T, error) {
-	v, err := NewBACnetPropertyAccessResultAccessResult(objectTypeArgument, propertyIdentifierArgument, propertyArrayIndexArgument).parse(ctx, readBuffer, objectTypeArgument, propertyIdentifierArgument, propertyArrayIndexArgument)
+	v, err := (&_BACnetPropertyAccessResultAccessResult{ObjectTypeArgument: objectTypeArgument, PropertyIdentifierArgument: propertyIdentifierArgument, PropertyArrayIndexArgument: propertyArrayIndexArgument}).parse(ctx, readBuffer, objectTypeArgument, propertyIdentifierArgument, propertyArrayIndexArgument)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyIdentifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyIdentifierTagged.go
index 674f57c3a2..decc7cc0c8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyIdentifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyIdentifierTagged.go
@@ -157,7 +157,7 @@ func BACnetPropertyIdentifierTaggedParseWithBufferProducer(tagNumber uint8, tagC
 }
 
 func BACnetPropertyIdentifierTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetPropertyIdentifierTagged, error) {
-	v, err := NewBACnetPropertyIdentifierTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetPropertyIdentifierTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReference.go
index 6510ddba28..2a8edf5235 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReference.go
@@ -126,7 +126,7 @@ func BACnetPropertyReferenceParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetPropertyReferenceParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetPropertyReference, error) {
-	v, err := NewBACnetPropertyReference().parse(ctx, readBuffer)
+	v, err := (&_BACnetPropertyReference{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReferenceEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReferenceEnclosed.go
index c900bf9db3..41a9462f0b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReferenceEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyReferenceEnclosed.go
@@ -137,7 +137,7 @@ func BACnetPropertyReferenceEnclosedParseWithBufferProducer(tagNumber uint8) fun
 }
 
 func BACnetPropertyReferenceEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetPropertyReferenceEnclosed, error) {
-	v, err := NewBACnetPropertyReferenceEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetPropertyReferenceEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go
index 8c293848dc..6aa8e9d7fd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go
@@ -160,7 +160,7 @@ func BACnetPropertyStatesParseWithBufferProducer[T BACnetPropertyStates]() func(
 }
 
 func BACnetPropertyStatesParseWithBuffer[T BACnetPropertyStates](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetPropertyStates().parse(ctx, readBuffer)
+	v, err := (&_BACnetPropertyStates{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStatesEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStatesEnclosed.go
index 19928893d3..d95f668134 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStatesEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStatesEnclosed.go
@@ -137,7 +137,7 @@ func BACnetPropertyStatesEnclosedParseWithBufferProducer(tagNumber uint8) func(c
 }
 
 func BACnetPropertyStatesEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetPropertyStatesEnclosed, error) {
-	v, err := NewBACnetPropertyStatesEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetPropertyStatesEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValue.go
index 07f568f177..0b34a0362c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValue.go
@@ -153,7 +153,7 @@ func BACnetPropertyValueParseWithBufferProducer(objectTypeArgument BACnetObjectT
 }
 
 func BACnetPropertyValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType) (BACnetPropertyValue, error) {
-	v, err := NewBACnetPropertyValue(objectTypeArgument).parse(ctx, readBuffer, objectTypeArgument)
+	v, err := (&_BACnetPropertyValue{ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, objectTypeArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValues.go
index 3427f69b5b..f97ff9e558 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyValues.go
@@ -142,7 +142,7 @@ func BACnetPropertyValuesParseWithBufferProducer(tagNumber uint8, objectTypeArgu
 }
 
 func BACnetPropertyValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, objectTypeArgument BACnetObjectType) (BACnetPropertyValues, error) {
-	v, err := NewBACnetPropertyValues(tagNumber, objectTypeArgument).parse(ctx, readBuffer, tagNumber, objectTypeArgument)
+	v, err := (&_BACnetPropertyValues{TagNumber: tagNumber, ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, tagNumber, objectTypeArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyWriteDefinition.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyWriteDefinition.go
index 1179dd968d..af071021e9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyWriteDefinition.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyWriteDefinition.go
@@ -153,7 +153,7 @@ func BACnetPropertyWriteDefinitionParseWithBufferProducer(objectTypeArgument BAC
 }
 
 func BACnetPropertyWriteDefinitionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType) (BACnetPropertyWriteDefinition, error) {
-	v, err := NewBACnetPropertyWriteDefinition(objectTypeArgument).parse(ctx, readBuffer, objectTypeArgument)
+	v, err := (&_BACnetPropertyWriteDefinition{ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, objectTypeArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetProtocolLevelTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetProtocolLevelTagged.go
index c9932385e6..328fa8ef5f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetProtocolLevelTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetProtocolLevelTagged.go
@@ -128,7 +128,7 @@ func BACnetProtocolLevelTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetProtocolLevelTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetProtocolLevelTagged, error) {
-	v, err := NewBACnetProtocolLevelTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetProtocolLevelTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessProperty.go
index 240e549eac..5211066b95 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessProperty.go
@@ -141,7 +141,7 @@ func BACnetReadAccessPropertyParseWithBufferProducer(objectTypeArgument BACnetOb
 }
 
 func BACnetReadAccessPropertyParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType) (BACnetReadAccessProperty, error) {
-	v, err := NewBACnetReadAccessProperty(objectTypeArgument).parse(ctx, readBuffer, objectTypeArgument)
+	v, err := (&_BACnetReadAccessProperty{ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, objectTypeArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessPropertyReadResult.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessPropertyReadResult.go
index e97537118d..5fa304cc13 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessPropertyReadResult.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessPropertyReadResult.go
@@ -163,7 +163,7 @@ func BACnetReadAccessPropertyReadResultParseWithBufferProducer(objectTypeArgumen
 }
 
 func BACnetReadAccessPropertyReadResultParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType, propertyIdentifierArgument BACnetPropertyIdentifier, arrayIndexArgument BACnetTagPayloadUnsignedInteger) (BACnetReadAccessPropertyReadResult, error) {
-	v, err := NewBACnetReadAccessPropertyReadResult(objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument).parse(ctx, readBuffer, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
+	v, err := (&_BACnetReadAccessPropertyReadResult{ObjectTypeArgument: objectTypeArgument, PropertyIdentifierArgument: propertyIdentifierArgument, ArrayIndexArgument: arrayIndexArgument}).parse(ctx, readBuffer, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResult.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResult.go
index 64dbaca915..6e09d29012 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResult.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResult.go
@@ -126,7 +126,7 @@ func BACnetReadAccessResultParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func BACnetReadAccessResultParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetReadAccessResult, error) {
-	v, err := NewBACnetReadAccessResult().parse(ctx, readBuffer)
+	v, err := (&_BACnetReadAccessResult{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResultListOfResults.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResultListOfResults.go
index 1a51c3ace9..a2253e42df 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResultListOfResults.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessResultListOfResults.go
@@ -142,7 +142,7 @@ func BACnetReadAccessResultListOfResultsParseWithBufferProducer(tagNumber uint8,
 }
 
 func BACnetReadAccessResultListOfResultsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, objectTypeArgument BACnetObjectType) (BACnetReadAccessResultListOfResults, error) {
-	v, err := NewBACnetReadAccessResultListOfResults(tagNumber, objectTypeArgument).parse(ctx, readBuffer, tagNumber, objectTypeArgument)
+	v, err := (&_BACnetReadAccessResultListOfResults{TagNumber: tagNumber, ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, tagNumber, objectTypeArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessSpecification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessSpecification.go
index 02c3934416..5deddeeec6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessSpecification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetReadAccessSpecification.go
@@ -148,7 +148,7 @@ func BACnetReadAccessSpecificationParseWithBufferProducer() func(ctx context.Con
 }
 
 func BACnetReadAccessSpecificationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetReadAccessSpecification, error) {
-	v, err := NewBACnetReadAccessSpecification().parse(ctx, readBuffer)
+	v, err := (&_BACnetReadAccessSpecification{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go
index 5cfcf457f6..b45aecda7c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go
@@ -160,7 +160,7 @@ func BACnetRecipientParseWithBufferProducer[T BACnetRecipient]() func(ctx contex
 }
 
 func BACnetRecipientParseWithBuffer[T BACnetRecipient](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetRecipient().parse(ctx, readBuffer)
+	v, err := (&_BACnetRecipient{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientEnclosed.go
index 31acbb8f35..f8af990465 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientEnclosed.go
@@ -137,7 +137,7 @@ func BACnetRecipientEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx co
 }
 
 func BACnetRecipientEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetRecipientEnclosed, error) {
-	v, err := NewBACnetRecipientEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetRecipientEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcess.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcess.go
index 90e221fa6c..7a1848a850 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcess.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcess.go
@@ -126,7 +126,7 @@ func BACnetRecipientProcessParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func BACnetRecipientProcessParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetRecipientProcess, error) {
-	v, err := NewBACnetRecipientProcess().parse(ctx, readBuffer)
+	v, err := (&_BACnetRecipientProcess{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcessEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcessEnclosed.go
index c0472314d4..b158fe2011 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcessEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipientProcessEnclosed.go
@@ -137,7 +137,7 @@ func BACnetRecipientProcessEnclosedParseWithBufferProducer(tagNumber uint8) func
 }
 
 func BACnetRecipientProcessEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetRecipientProcessEnclosed, error) {
-	v, err := NewBACnetRecipientProcessEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetRecipientProcessEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRejectReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRejectReasonTagged.go
index a2e772894d..58b1b2b847 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRejectReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRejectReasonTagged.go
@@ -145,7 +145,7 @@ func BACnetRejectReasonTaggedParseWithBufferProducer(actualLength uint32) func(c
 }
 
 func BACnetRejectReasonTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetRejectReasonTagged, error) {
-	v, err := NewBACnetRejectReasonTagged(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetRejectReasonTagged{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRelationshipTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRelationshipTagged.go
index 9ed978e6df..80d4c9ca5b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRelationshipTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRelationshipTagged.go
@@ -157,7 +157,7 @@ func BACnetRelationshipTaggedParseWithBufferProducer(tagNumber uint8, tagClass T
 }
 
 func BACnetRelationshipTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetRelationshipTagged, error) {
-	v, err := NewBACnetRelationshipTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetRelationshipTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetReliabilityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetReliabilityTagged.go
index 3dc7004367..9c667885db 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetReliabilityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetReliabilityTagged.go
@@ -157,7 +157,7 @@ func BACnetReliabilityTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetReliabilityTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetReliabilityTagged, error) {
-	v, err := NewBACnetReliabilityTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetReliabilityTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRestartReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRestartReasonTagged.go
index 8357210fd6..386a5a7780 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRestartReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRestartReasonTagged.go
@@ -157,7 +157,7 @@ func BACnetRestartReasonTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetRestartReasonTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetRestartReasonTagged, error) {
-	v, err := NewBACnetRestartReasonTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetRestartReasonTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetResultFlagsTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetResultFlagsTagged.go
index ec7bdf59d3..4103834388 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetResultFlagsTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetResultFlagsTagged.go
@@ -167,7 +167,7 @@ func BACnetResultFlagsTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetResultFlagsTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetResultFlagsTagged, error) {
-	v, err := NewBACnetResultFlagsTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetResultFlagsTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntry.go
index 8088e36c52..195f530503 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntry.go
@@ -146,7 +146,7 @@ func BACnetRouterEntryParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func BACnetRouterEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetRouterEntry, error) {
-	v, err := NewBACnetRouterEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetRouterEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntryStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntryStatusTagged.go
index 67a60dc5ff..52418c4a78 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntryStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRouterEntryStatusTagged.go
@@ -128,7 +128,7 @@ func BACnetRouterEntryStatusTaggedParseWithBufferProducer(tagNumber uint8, tagCl
 }
 
 func BACnetRouterEntryStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetRouterEntryStatusTagged, error) {
-	v, err := NewBACnetRouterEntryStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetRouterEntryStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go
index b99ca9c9b4..0e96707f17 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go
@@ -160,7 +160,7 @@ func BACnetScaleParseWithBufferProducer[T BACnetScale]() func(ctx context.Contex
 }
 
 func BACnetScaleParseWithBuffer[T BACnetScale](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetScale().parse(ctx, readBuffer)
+	v, err := (&_BACnetScale{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySet.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySet.go
index 9841bc0b95..435b1d590e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySet.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySet.go
@@ -144,7 +144,7 @@ func BACnetSecurityKeySetParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetSecurityKeySetParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetSecurityKeySet, error) {
-	v, err := NewBACnetSecurityKeySet().parse(ctx, readBuffer)
+	v, err := (&_BACnetSecurityKeySet{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySetKeyIds.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySetKeyIds.go
index 6337eac22c..c14a7d79a4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySetKeyIds.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityKeySetKeyIds.go
@@ -141,7 +141,7 @@ func BACnetSecurityKeySetKeyIdsParseWithBufferProducer(tagNumber uint8) func(ctx
 }
 
 func BACnetSecurityKeySetKeyIdsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetSecurityKeySetKeyIds, error) {
-	v, err := NewBACnetSecurityKeySetKeyIds(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetSecurityKeySetKeyIds{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityLevelTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityLevelTagged.go
index 680ff3c3fd..a6be4eac7d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityLevelTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityLevelTagged.go
@@ -128,7 +128,7 @@ func BACnetSecurityLevelTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetSecurityLevelTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetSecurityLevelTagged, error) {
-	v, err := NewBACnetSecurityLevelTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetSecurityLevelTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityPolicyTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityPolicyTagged.go
index e662fef44e..52119ef26f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityPolicyTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSecurityPolicyTagged.go
@@ -128,7 +128,7 @@ func BACnetSecurityPolicyTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetSecurityPolicyTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetSecurityPolicyTagged, error) {
-	v, err := NewBACnetSecurityPolicyTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetSecurityPolicyTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSegmentationTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSegmentationTagged.go
index 9a4dbc565e..b8254ac228 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSegmentationTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSegmentationTagged.go
@@ -128,7 +128,7 @@ func BACnetSegmentationTaggedParseWithBufferProducer(tagNumber uint8, tagClass T
 }
 
 func BACnetSegmentationTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetSegmentationTagged, error) {
-	v, err := NewBACnetSegmentationTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetSegmentationTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go
index dae3fe7732..8833ed6ee8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go
@@ -151,7 +151,7 @@ func BACnetServiceAckParseWithBufferProducer[T BACnetServiceAck](serviceAckLengt
 }
 
 func BACnetServiceAckParseWithBuffer[T BACnetServiceAck](ctx context.Context, readBuffer utils.ReadBuffer, serviceAckLength uint32) (T, error) {
-	v, err := NewBACnetServiceAck(serviceAckLength).parse(ctx, readBuffer, serviceAckLength)
+	v, err := (&_BACnetServiceAck{ServiceAckLength: serviceAckLength}).parse(ctx, readBuffer, serviceAckLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go
index cf747e2e52..7347955afe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go
@@ -180,7 +180,7 @@ func BACnetServiceAckAtomicReadFileStreamOrRecordParseWithBufferProducer[T BACne
 }
 
 func BACnetServiceAckAtomicReadFileStreamOrRecordParseWithBuffer[T BACnetServiceAckAtomicReadFileStreamOrRecord](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetServiceAckAtomicReadFileStreamOrRecord().parse(ctx, readBuffer)
+	v, err := (&_BACnetServiceAckAtomicReadFileStreamOrRecord{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetServicesSupportedTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetServicesSupportedTagged.go
index e9f7897d49..71479ea0a6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetServicesSupportedTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetServicesSupportedTagged.go
@@ -237,7 +237,7 @@ func BACnetServicesSupportedTaggedParseWithBufferProducer(tagNumber uint8, tagCl
 }
 
 func BACnetServicesSupportedTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetServicesSupportedTagged, error) {
-	v, err := NewBACnetServicesSupportedTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetServicesSupportedTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSetpointReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSetpointReference.go
index f3bffb7f30..c27e6bcd3d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSetpointReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSetpointReference.go
@@ -116,7 +116,7 @@ func BACnetSetpointReferenceParseWithBufferProducer() func(ctx context.Context,
 }
 
 func BACnetSetpointReferenceParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetSetpointReference, error) {
-	v, err := NewBACnetSetpointReference().parse(ctx, readBuffer)
+	v, err := (&_BACnetSetpointReference{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go
index 00c5003cd4..42febe3ff0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go
@@ -160,7 +160,7 @@ func BACnetShedLevelParseWithBufferProducer[T BACnetShedLevel]() func(ctx contex
 }
 
 func BACnetShedLevelParseWithBuffer[T BACnetShedLevel](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetShedLevel().parse(ctx, readBuffer)
+	v, err := (&_BACnetShedLevel{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetShedStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetShedStateTagged.go
index 54f43ab8f7..7b4ade86f8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetShedStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetShedStateTagged.go
@@ -128,7 +128,7 @@ func BACnetShedStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagC
 }
 
 func BACnetShedStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetShedStateTagged, error) {
-	v, err := NewBACnetShedStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetShedStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSilencedStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSilencedStateTagged.go
index 01fbc41700..7e68f1af7e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSilencedStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSilencedStateTagged.go
@@ -157,7 +157,7 @@ func BACnetSilencedStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func BACnetSilencedStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetSilencedStateTagged, error) {
-	v, err := NewBACnetSilencedStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetSilencedStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEvent.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEvent.go
index d9274440f1..834f73f6ad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEvent.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEvent.go
@@ -134,7 +134,7 @@ func BACnetSpecialEventParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func BACnetSpecialEventParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetSpecialEvent, error) {
-	v, err := NewBACnetSpecialEvent().parse(ctx, readBuffer)
+	v, err := (&_BACnetSpecialEvent{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventListOfTimeValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventListOfTimeValues.go
index 2815eb195b..8f559bd7c5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventListOfTimeValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventListOfTimeValues.go
@@ -141,7 +141,7 @@ func BACnetSpecialEventListOfTimeValuesParseWithBufferProducer(tagNumber uint8)
 }
 
 func BACnetSpecialEventListOfTimeValuesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetSpecialEventListOfTimeValues, error) {
-	v, err := NewBACnetSpecialEventListOfTimeValues(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetSpecialEventListOfTimeValues{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go
index a5beca6844..a2957d7136 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go
@@ -160,7 +160,7 @@ func BACnetSpecialEventPeriodParseWithBufferProducer[T BACnetSpecialEventPeriod]
 }
 
 func BACnetSpecialEventPeriodParseWithBuffer[T BACnetSpecialEventPeriod](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetSpecialEventPeriod().parse(ctx, readBuffer)
+	v, err := (&_BACnetSpecialEventPeriod{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetStatusFlagsTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetStatusFlagsTagged.go
index 134368db20..41b0220d24 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetStatusFlagsTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetStatusFlagsTagged.go
@@ -177,7 +177,7 @@ func BACnetStatusFlagsTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetStatusFlagsTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetStatusFlagsTagged, error) {
-	v, err := NewBACnetStatusFlagsTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetStatusFlagsTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagHeader.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagHeader.go
index fbeae1c61a..71debf7bc9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagHeader.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagHeader.go
@@ -285,7 +285,7 @@ func BACnetTagHeaderParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetTagHeaderParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTagHeader, error) {
-	v, err := NewBACnetTagHeader().parse(ctx, readBuffer)
+	v, err := (&_BACnetTagHeader{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBitString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBitString.go
index cd28018f2a..e9cacb75fa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBitString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBitString.go
@@ -141,7 +141,7 @@ func BACnetTagPayloadBitStringParseWithBufferProducer(actualLength uint32) func(
 }
 
 func BACnetTagPayloadBitStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadBitString, error) {
-	v, err := NewBACnetTagPayloadBitString(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadBitString{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBoolean.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBoolean.go
index 6e288dfb75..164236defb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBoolean.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadBoolean.go
@@ -136,7 +136,7 @@ func BACnetTagPayloadBooleanParseWithBufferProducer(actualLength uint32) func(ct
 }
 
 func BACnetTagPayloadBooleanParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadBoolean, error) {
-	v, err := NewBACnetTagPayloadBoolean(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadBoolean{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadCharacterString.go
index e6031aa0d1..811c29eaa6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadCharacterString.go
@@ -147,7 +147,7 @@ func BACnetTagPayloadCharacterStringParseWithBufferProducer(actualLength uint32)
 }
 
 func BACnetTagPayloadCharacterStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadCharacterString, error) {
-	v, err := NewBACnetTagPayloadCharacterString(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadCharacterString{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDate.go
index 67fb1100b2..6f0031bb7b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDate.go
@@ -263,7 +263,7 @@ func BACnetTagPayloadDateParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetTagPayloadDateParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTagPayloadDate, error) {
-	v, err := NewBACnetTagPayloadDate().parse(ctx, readBuffer)
+	v, err := (&_BACnetTagPayloadDate{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDouble.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDouble.go
index 79100714b6..9ca0f0859a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDouble.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadDouble.go
@@ -114,7 +114,7 @@ func BACnetTagPayloadDoubleParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func BACnetTagPayloadDoubleParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTagPayloadDouble, error) {
-	v, err := NewBACnetTagPayloadDouble().parse(ctx, readBuffer)
+	v, err := (&_BACnetTagPayloadDouble{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadEnumerated.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadEnumerated.go
index 987611d7bc..e7bd7bb4be 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadEnumerated.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadEnumerated.go
@@ -138,7 +138,7 @@ func BACnetTagPayloadEnumeratedParseWithBufferProducer(actualLength uint32) func
 }
 
 func BACnetTagPayloadEnumeratedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadEnumerated, error) {
-	v, err := NewBACnetTagPayloadEnumerated(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadEnumerated{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadObjectIdentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadObjectIdentifier.go
index a2fefadbf9..854a0a4254 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadObjectIdentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadObjectIdentifier.go
@@ -153,7 +153,7 @@ func BACnetTagPayloadObjectIdentifierParseWithBufferProducer() func(ctx context.
 }
 
 func BACnetTagPayloadObjectIdentifierParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTagPayloadObjectIdentifier, error) {
-	v, err := NewBACnetTagPayloadObjectIdentifier().parse(ctx, readBuffer)
+	v, err := (&_BACnetTagPayloadObjectIdentifier{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadOctetString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadOctetString.go
index f635b93bb4..1d9a6f2cbf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadOctetString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadOctetString.go
@@ -119,7 +119,7 @@ func BACnetTagPayloadOctetStringParseWithBufferProducer(actualLength uint32) fun
 }
 
 func BACnetTagPayloadOctetStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadOctetString, error) {
-	v, err := NewBACnetTagPayloadOctetString(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadOctetString{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadReal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadReal.go
index 11f37be368..91ae21d7c6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadReal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadReal.go
@@ -114,7 +114,7 @@ func BACnetTagPayloadRealParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetTagPayloadRealParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTagPayloadReal, error) {
-	v, err := NewBACnetTagPayloadReal().parse(ctx, readBuffer)
+	v, err := (&_BACnetTagPayloadReal{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go
index 2961aaa157..7266d9339a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadSignedInteger.go
@@ -458,7 +458,7 @@ func BACnetTagPayloadSignedIntegerParseWithBufferProducer(actualLength uint32) f
 }
 
 func BACnetTagPayloadSignedIntegerParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadSignedInteger, error) {
-	v, err := NewBACnetTagPayloadSignedInteger(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadSignedInteger{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadTime.go
index 6b949db27b..b8648921b9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadTime.go
@@ -203,7 +203,7 @@ func BACnetTagPayloadTimeParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BACnetTagPayloadTimeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTagPayloadTime, error) {
-	v, err := NewBACnetTagPayloadTime().parse(ctx, readBuffer)
+	v, err := (&_BACnetTagPayloadTime{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadUnsignedInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadUnsignedInteger.go
index 0af7249133..3ea9ba9b23 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadUnsignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTagPayloadUnsignedInteger.go
@@ -458,7 +458,7 @@ func BACnetTagPayloadUnsignedIntegerParseWithBufferProducer(actualLength uint32)
 }
 
 func BACnetTagPayloadUnsignedIntegerParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, actualLength uint32) (BACnetTagPayloadUnsignedInteger, error) {
-	v, err := NewBACnetTagPayloadUnsignedInteger(actualLength).parse(ctx, readBuffer, actualLength)
+	v, err := (&_BACnetTagPayloadUnsignedInteger{ActualLength: actualLength}).parse(ctx, readBuffer, actualLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go
index 7dc35471dd..c6ebbfb369 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go
@@ -160,7 +160,7 @@ func BACnetTimeStampParseWithBufferProducer[T BACnetTimeStamp]() func(ctx contex
 }
 
 func BACnetTimeStampParseWithBuffer[T BACnetTimeStamp](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetTimeStamp().parse(ctx, readBuffer)
+	v, err := (&_BACnetTimeStamp{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampEnclosed.go
index b5c157cb9d..cdb478e50a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampEnclosed.go
@@ -137,7 +137,7 @@ func BACnetTimeStampEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx co
 }
 
 func BACnetTimeStampEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetTimeStampEnclosed, error) {
-	v, err := NewBACnetTimeStampEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetTimeStampEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampsEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampsEnclosed.go
index 3be3e088b3..4f93038728 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampsEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStampsEnclosed.go
@@ -141,7 +141,7 @@ func BACnetTimeStampsEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx c
 }
 
 func BACnetTimeStampsEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetTimeStampsEnclosed, error) {
-	v, err := NewBACnetTimeStampsEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_BACnetTimeStampsEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeValue.go
index 1ffea9e196..3b8eb92d42 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeValue.go
@@ -124,7 +124,7 @@ func BACnetTimeValueParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetTimeValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetTimeValue, error) {
-	v, err := NewBACnetTimeValue().parse(ctx, readBuffer)
+	v, err := (&_BACnetTimeValue{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go
index 65cb7443ce..bc896808ef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go
@@ -178,7 +178,7 @@ func BACnetTimerStateChangeValueParseWithBufferProducer[T BACnetTimerStateChange
 }
 
 func BACnetTimerStateChangeValueParseWithBuffer[T BACnetTimerStateChangeValue](ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType) (T, error) {
-	v, err := NewBACnetTimerStateChangeValue(objectTypeArgument).parse(ctx, readBuffer, objectTypeArgument)
+	v, err := (&_BACnetTimerStateChangeValue{ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, objectTypeArgument)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateTagged.go
index 5c3d1c9727..39c7392115 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateTagged.go
@@ -128,7 +128,7 @@ func BACnetTimerStateTaggedParseWithBufferProducer(tagNumber uint8, tagClass Tag
 }
 
 func BACnetTimerStateTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetTimerStateTagged, error) {
-	v, err := NewBACnetTimerStateTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetTimerStateTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerTransitionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerTransitionTagged.go
index ed77d55094..895b0376b0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerTransitionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerTransitionTagged.go
@@ -128,7 +128,7 @@ func BACnetTimerTransitionTaggedParseWithBufferProducer(tagNumber uint8, tagClas
 }
 
 func BACnetTimerTransitionTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetTimerTransitionTagged, error) {
-	v, err := NewBACnetTimerTransitionTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetTimerTransitionTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceChoiceTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceChoiceTagged.go
index d75bb4fc5c..8c18854028 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceChoiceTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceChoiceTagged.go
@@ -128,7 +128,7 @@ func BACnetUnconfirmedServiceChoiceTaggedParseWithBufferProducer(tagNumber uint8
 }
 
 func BACnetUnconfirmedServiceChoiceTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetUnconfirmedServiceChoiceTagged, error) {
-	v, err := NewBACnetUnconfirmedServiceChoiceTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetUnconfirmedServiceChoiceTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go
index 0d28efae15..5fe974ce2d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go
@@ -130,7 +130,7 @@ func BACnetUnconfirmedServiceRequestParseWithBufferProducer[T BACnetUnconfirmedS
 }
 
 func BACnetUnconfirmedServiceRequestParseWithBuffer[T BACnetUnconfirmedServiceRequest](ctx context.Context, readBuffer utils.ReadBuffer, serviceRequestLength uint16) (T, error) {
-	v, err := NewBACnetUnconfirmedServiceRequest(serviceRequestLength).parse(ctx, readBuffer, serviceRequestLength)
+	v, err := (&_BACnetUnconfirmedServiceRequest{ServiceRequestLength: serviceRequestLength}).parse(ctx, readBuffer, serviceRequestLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go
index 69a684a792..a6f857cda2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go
@@ -160,7 +160,7 @@ func BACnetUnconfirmedServiceRequestWhoHasObjectParseWithBufferProducer[T BACnet
 }
 
 func BACnetUnconfirmedServiceRequestWhoHasObjectParseWithBuffer[T BACnetUnconfirmedServiceRequestWhoHasObject](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetUnconfirmedServiceRequestWhoHasObject().parse(ctx, readBuffer)
+	v, err := (&_BACnetUnconfirmedServiceRequestWhoHasObject{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetVMACEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetVMACEntry.go
index 58168092ce..2fbd93e97c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetVMACEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetVMACEntry.go
@@ -128,7 +128,7 @@ func BACnetVMACEntryParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetVMACEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetVMACEntry, error) {
-	v, err := NewBACnetVMACEntry().parse(ctx, readBuffer)
+	v, err := (&_BACnetVMACEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetVTClassTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetVTClassTagged.go
index 1af4d42f92..9021cbdb17 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetVTClassTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetVTClassTagged.go
@@ -157,7 +157,7 @@ func BACnetVTClassTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCla
 }
 
 func BACnetVTClassTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetVTClassTagged, error) {
-	v, err := NewBACnetVTClassTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetVTClassTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetVTSession.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetVTSession.go
index 915c1bbf66..59d71e093e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetVTSession.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetVTSession.go
@@ -134,7 +134,7 @@ func BACnetVTSessionParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BACnetVTSessionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetVTSession, error) {
-	v, err := NewBACnetVTSession().parse(ctx, readBuffer)
+	v, err := (&_BACnetVTSession{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go
index 3a280fc339..e6731d3ed1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go
@@ -160,7 +160,7 @@ func BACnetValueSourceParseWithBufferProducer[T BACnetValueSource]() func(ctx co
 }
 
 func BACnetValueSourceParseWithBuffer[T BACnetValueSource](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBACnetValueSource().parse(ctx, readBuffer)
+	v, err := (&_BACnetValueSource{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetVendorIdTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetVendorIdTagged.go
index 3d1e695f6b..6bc8a0ddb5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetVendorIdTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetVendorIdTagged.go
@@ -157,7 +157,7 @@ func BACnetVendorIdTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCl
 }
 
 func BACnetVendorIdTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetVendorIdTagged, error) {
-	v, err := NewBACnetVendorIdTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetVendorIdTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDay.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDay.go
index 77ce3fc63d..90441e03ae 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDay.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDay.go
@@ -92,7 +92,7 @@ func BACnetWeekNDayParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func BACnetWeekNDayParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetWeekNDay, error) {
-	v, err := NewBACnetWeekNDay().parse(ctx, readBuffer)
+	v, err := (&_BACnetWeekNDay{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDayTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDayTagged.go
index 01ec4b8a0c..592866f391 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDayTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetWeekNDayTagged.go
@@ -297,7 +297,7 @@ func BACnetWeekNDayTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCl
 }
 
 func BACnetWeekNDayTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetWeekNDayTagged, error) {
-	v, err := NewBACnetWeekNDayTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetWeekNDayTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteAccessSpecification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteAccessSpecification.go
index fc60cc5eed..82658e3f28 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteAccessSpecification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteAccessSpecification.go
@@ -148,7 +148,7 @@ func BACnetWriteAccessSpecificationParseWithBufferProducer() func(ctx context.Co
 }
 
 func BACnetWriteAccessSpecificationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BACnetWriteAccessSpecification, error) {
-	v, err := NewBACnetWriteAccessSpecification().parse(ctx, readBuffer)
+	v, err := (&_BACnetWriteAccessSpecification{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteStatusTagged.go
index 6522cbc95b..1cd6d26f47 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetWriteStatusTagged.go
@@ -128,7 +128,7 @@ func BACnetWriteStatusTaggedParseWithBufferProducer(tagNumber uint8, tagClass Ta
 }
 
 func BACnetWriteStatusTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BACnetWriteStatusTagged, error) {
-	v, err := NewBACnetWriteStatusTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BACnetWriteStatusTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BVLC.go b/plc4go/protocols/bacnetip/readwrite/model/BVLC.go
index e5beb7e049..611af821d6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BVLC.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BVLC.go
@@ -170,7 +170,7 @@ func BVLCParseWithBufferProducer[T BVLC]() func(ctx context.Context, readBuffer
 }
 
 func BVLCParseWithBuffer[T BVLC](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewBVLC().parse(ctx, readBuffer)
+	v, err := (&_BVLC{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BVLCBroadcastDistributionTableEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BVLCBroadcastDistributionTableEntry.go
index 5ca8dcde93..2c38bd52bd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BVLCBroadcastDistributionTableEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BVLCBroadcastDistributionTableEntry.go
@@ -138,7 +138,7 @@ func BVLCBroadcastDistributionTableEntryParseWithBufferProducer() func(ctx conte
 }
 
 func BVLCBroadcastDistributionTableEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BVLCBroadcastDistributionTableEntry, error) {
-	v, err := NewBVLCBroadcastDistributionTableEntry().parse(ctx, readBuffer)
+	v, err := (&_BVLCBroadcastDistributionTableEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BVLCForeignDeviceTableEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BVLCForeignDeviceTableEntry.go
index b82822b05d..ce682652d3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BVLCForeignDeviceTableEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BVLCForeignDeviceTableEntry.go
@@ -146,7 +146,7 @@ func BVLCForeignDeviceTableEntryParseWithBufferProducer() func(ctx context.Conte
 }
 
 func BVLCForeignDeviceTableEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BVLCForeignDeviceTableEntry, error) {
-	v, err := NewBVLCForeignDeviceTableEntry().parse(ctx, readBuffer)
+	v, err := (&_BVLCForeignDeviceTableEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BVLCResultCodeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BVLCResultCodeTagged.go
index f0a7b966fc..1161b7be20 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BVLCResultCodeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BVLCResultCodeTagged.go
@@ -128,7 +128,7 @@ func BVLCResultCodeTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagCl
 }
 
 func BVLCResultCodeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (BVLCResultCodeTagged, error) {
-	v, err := NewBVLCResultCodeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_BVLCResultCodeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BacnetConstants.go b/plc4go/protocols/bacnetip/readwrite/model/BacnetConstants.go
index c3d5872f9b..cfff4b85cb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BacnetConstants.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BacnetConstants.go
@@ -114,7 +114,7 @@ func BacnetConstantsParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func BacnetConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BacnetConstants, error) {
-	v, err := NewBacnetConstants().parse(ctx, readBuffer)
+	v, err := (&_BacnetConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ConfirmedEventNotificationRequest.go b/plc4go/protocols/bacnetip/readwrite/model/ConfirmedEventNotificationRequest.go
index 39d6ef4d2a..d657e65d99 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ConfirmedEventNotificationRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ConfirmedEventNotificationRequest.go
@@ -242,7 +242,7 @@ func ConfirmedEventNotificationRequestParseWithBufferProducer() func(ctx context
 }
 
 func ConfirmedEventNotificationRequestParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ConfirmedEventNotificationRequest, error) {
-	v, err := NewConfirmedEventNotificationRequest().parse(ctx, readBuffer)
+	v, err := (&_ConfirmedEventNotificationRequest{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/Error.go b/plc4go/protocols/bacnetip/readwrite/model/Error.go
index a6f3ed7a62..df1f1c5066 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/Error.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/Error.go
@@ -124,7 +124,7 @@ func ErrorParseWithBufferProducer() func(ctx context.Context, readBuffer utils.R
 }
 
 func ErrorParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Error, error) {
-	v, err := NewError().parse(ctx, readBuffer)
+	v, err := (&_Error{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ErrorClassTagged.go b/plc4go/protocols/bacnetip/readwrite/model/ErrorClassTagged.go
index 885d8bfe6c..acca8d47c2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ErrorClassTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ErrorClassTagged.go
@@ -157,7 +157,7 @@ func ErrorClassTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagClass)
 }
 
 func ErrorClassTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (ErrorClassTagged, error) {
-	v, err := NewErrorClassTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_ErrorClassTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ErrorCodeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/ErrorCodeTagged.go
index 21f6ea9f68..b1b97f563e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ErrorCodeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ErrorCodeTagged.go
@@ -157,7 +157,7 @@ func ErrorCodeTaggedParseWithBufferProducer(tagNumber uint8, tagClass TagClass)
 }
 
 func ErrorCodeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (ErrorCodeTagged, error) {
-	v, err := NewErrorCodeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_ErrorCodeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ErrorEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/ErrorEnclosed.go
index bb8eaada92..c258863955 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ErrorEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ErrorEnclosed.go
@@ -137,7 +137,7 @@ func ErrorEnclosedParseWithBufferProducer(tagNumber uint8) func(ctx context.Cont
 }
 
 func ErrorEnclosedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (ErrorEnclosed, error) {
-	v, err := NewErrorEnclosed(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_ErrorEnclosed{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotifications.go b/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotifications.go
index e7c913085c..a2074834ac 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotifications.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotifications.go
@@ -148,7 +148,7 @@ func ListOfCovNotificationsParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func ListOfCovNotificationsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ListOfCovNotifications, error) {
-	v, err := NewListOfCovNotifications().parse(ctx, readBuffer)
+	v, err := (&_ListOfCovNotifications{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsList.go b/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsList.go
index eb0f292293..b72da03f48 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsList.go
@@ -141,7 +141,7 @@ func ListOfCovNotificationsListParseWithBufferProducer(tagNumber uint8) func(ctx
 }
 
 func ListOfCovNotificationsListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (ListOfCovNotificationsList, error) {
-	v, err := NewListOfCovNotificationsList(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_ListOfCovNotificationsList{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsValue.go b/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsValue.go
index 6a01638082..cef2980d62 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/ListOfCovNotificationsValue.go
@@ -151,7 +151,7 @@ func ListOfCovNotificationsValueParseWithBufferProducer(objectTypeArgument BACne
 }
 
 func ListOfCovNotificationsValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, objectTypeArgument BACnetObjectType) (ListOfCovNotificationsValue, error) {
-	v, err := NewListOfCovNotificationsValue(objectTypeArgument).parse(ctx, readBuffer, objectTypeArgument)
+	v, err := (&_ListOfCovNotificationsValue{ObjectTypeArgument: objectTypeArgument}).parse(ctx, readBuffer, objectTypeArgument)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NLM.go b/plc4go/protocols/bacnetip/readwrite/model/NLM.go
index 0bd9e1e346..1888dabe91 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NLM.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NLM.go
@@ -153,7 +153,7 @@ func NLMParseWithBufferProducer[T NLM](apduLength uint16) func(ctx context.Conte
 }
 
 func NLMParseWithBuffer[T NLM](ctx context.Context, readBuffer utils.ReadBuffer, apduLength uint16) (T, error) {
-	v, err := NewNLM(apduLength).parse(ctx, readBuffer, apduLength)
+	v, err := (&_NLM{ApduLength: apduLength}).parse(ctx, readBuffer, apduLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NLMInitializeRoutingTablePortMapping.go b/plc4go/protocols/bacnetip/readwrite/model/NLMInitializeRoutingTablePortMapping.go
index 76b16d721c..73d02e4677 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NLMInitializeRoutingTablePortMapping.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NLMInitializeRoutingTablePortMapping.go
@@ -146,7 +146,7 @@ func NLMInitializeRoutingTablePortMappingParseWithBufferProducer() func(ctx cont
 }
 
 func NLMInitializeRoutingTablePortMappingParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NLMInitializeRoutingTablePortMapping, error) {
-	v, err := NewNLMInitializeRoutingTablePortMapping().parse(ctx, readBuffer)
+	v, err := (&_NLMInitializeRoutingTablePortMapping{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateControlFlags.go b/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateControlFlags.go
index 92f917262b..78e2603413 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateControlFlags.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateControlFlags.go
@@ -184,7 +184,7 @@ func NLMUpdateKeyUpdateControlFlagsParseWithBufferProducer() func(ctx context.Co
 }
 
 func NLMUpdateKeyUpdateControlFlagsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NLMUpdateKeyUpdateControlFlags, error) {
-	v, err := NewNLMUpdateKeyUpdateControlFlags().parse(ctx, readBuffer)
+	v, err := (&_NLMUpdateKeyUpdateControlFlags{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateKeyEntry.go b/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateKeyEntry.go
index 84d5026048..9afdaa0b72 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateKeyEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NLMUpdateKeyUpdateKeyEntry.go
@@ -136,7 +136,7 @@ func NLMUpdateKeyUpdateKeyEntryParseWithBufferProducer() func(ctx context.Contex
 }
 
 func NLMUpdateKeyUpdateKeyEntryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NLMUpdateKeyUpdateKeyEntry, error) {
-	v, err := NewNLMUpdateKeyUpdateKeyEntry().parse(ctx, readBuffer)
+	v, err := (&_NLMUpdateKeyUpdateKeyEntry{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NPDU.go b/plc4go/protocols/bacnetip/readwrite/model/NPDU.go
index 0d4985576d..3d214e6f89 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NPDU.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NPDU.go
@@ -316,7 +316,7 @@ func NPDUParseWithBufferProducer(npduLength uint16) func(ctx context.Context, re
 }
 
 func NPDUParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, npduLength uint16) (NPDU, error) {
-	v, err := NewNPDU(npduLength).parse(ctx, readBuffer, npduLength)
+	v, err := (&_NPDU{NpduLength: npduLength}).parse(ctx, readBuffer, npduLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NPDUControl.go b/plc4go/protocols/bacnetip/readwrite/model/NPDUControl.go
index 6b38eb5931..617776094c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NPDUControl.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NPDUControl.go
@@ -163,7 +163,7 @@ func NPDUControlParseWithBufferProducer() func(ctx context.Context, readBuffer u
 }
 
 func NPDUControlParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NPDUControl, error) {
-	v, err := NewNPDUControl().parse(ctx, readBuffer)
+	v, err := (&_NPDUControl{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NPDUNetworkPriorityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/NPDUNetworkPriorityTagged.go
index 3415647aa2..b9b2be84f7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NPDUNetworkPriorityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NPDUNetworkPriorityTagged.go
@@ -128,7 +128,7 @@ func NPDUNetworkPriorityTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func NPDUNetworkPriorityTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (NPDUNetworkPriorityTagged, error) {
-	v, err := NewNPDUNetworkPriorityTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_NPDUNetworkPriorityTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/SecurityResponseCodeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/SecurityResponseCodeTagged.go
index b7ab201340..27184f901e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/SecurityResponseCodeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/SecurityResponseCodeTagged.go
@@ -128,7 +128,7 @@ func SecurityResponseCodeTaggedParseWithBufferProducer(tagNumber uint8, tagClass
 }
 
 func SecurityResponseCodeTaggedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8, tagClass TagClass) (SecurityResponseCodeTagged, error) {
-	v, err := NewSecurityResponseCodeTagged(tagNumber, tagClass).parse(ctx, readBuffer, tagNumber, tagClass)
+	v, err := (&_SecurityResponseCodeTagged{TagNumber: tagNumber, TagClass: tagClass}).parse(ctx, readBuffer, tagNumber, tagClass)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/SubscribeCOVPropertyMultipleErrorFirstFailedSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/SubscribeCOVPropertyMultipleErrorFirstFailedSubscription.go
index e11329b4e5..330e073fc2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/SubscribeCOVPropertyMultipleErrorFirstFailedSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/SubscribeCOVPropertyMultipleErrorFirstFailedSubscription.go
@@ -157,7 +157,7 @@ func SubscribeCOVPropertyMultipleErrorFirstFailedSubscriptionParseWithBufferProd
 }
 
 func SubscribeCOVPropertyMultipleErrorFirstFailedSubscriptionParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (SubscribeCOVPropertyMultipleErrorFirstFailedSubscription, error) {
-	v, err := NewSubscribeCOVPropertyMultipleErrorFirstFailedSubscription(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_SubscribeCOVPropertyMultipleErrorFirstFailedSubscription{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/VTCloseErrorListOfVTSessionIdentifiers.go b/plc4go/protocols/bacnetip/readwrite/model/VTCloseErrorListOfVTSessionIdentifiers.go
index 61acd60512..6ff60b9eef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/VTCloseErrorListOfVTSessionIdentifiers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/VTCloseErrorListOfVTSessionIdentifiers.go
@@ -141,7 +141,7 @@ func VTCloseErrorListOfVTSessionIdentifiersParseWithBufferProducer(tagNumber uin
 }
 
 func VTCloseErrorListOfVTSessionIdentifiersParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, tagNumber uint8) (VTCloseErrorListOfVTSessionIdentifiers, error) {
-	v, err := NewVTCloseErrorListOfVTSessionIdentifiers(tagNumber).parse(ctx, readBuffer, tagNumber)
+	v, err := (&_VTCloseErrorListOfVTSessionIdentifiers{TagNumber: tagNumber}).parse(ctx, readBuffer, tagNumber)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/AccessControlData.go b/plc4go/protocols/cbus/readwrite/model/AccessControlData.go
index 2d35912138..18f3528843 100644
--- a/plc4go/protocols/cbus/readwrite/model/AccessControlData.go
+++ b/plc4go/protocols/cbus/readwrite/model/AccessControlData.go
@@ -183,7 +183,7 @@ func AccessControlDataParseWithBufferProducer[T AccessControlData]() func(ctx co
 }
 
 func AccessControlDataParseWithBuffer[T AccessControlData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewAccessControlData().parse(ctx, readBuffer)
+	v, err := (&_AccessControlData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/AirConditioningData.go b/plc4go/protocols/cbus/readwrite/model/AirConditioningData.go
index b725dfba69..cdf265fce3 100644
--- a/plc4go/protocols/cbus/readwrite/model/AirConditioningData.go
+++ b/plc4go/protocols/cbus/readwrite/model/AirConditioningData.go
@@ -163,7 +163,7 @@ func AirConditioningDataParseWithBufferProducer[T AirConditioningData]() func(ct
 }
 
 func AirConditioningDataParseWithBuffer[T AirConditioningData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewAirConditioningData().parse(ctx, readBuffer)
+	v, err := (&_AirConditioningData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/Alpha.go b/plc4go/protocols/cbus/readwrite/model/Alpha.go
index b065082255..43c09ae160 100644
--- a/plc4go/protocols/cbus/readwrite/model/Alpha.go
+++ b/plc4go/protocols/cbus/readwrite/model/Alpha.go
@@ -114,7 +114,7 @@ func AlphaParseWithBufferProducer() func(ctx context.Context, readBuffer utils.R
 }
 
 func AlphaParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Alpha, error) {
-	v, err := NewAlpha().parse(ctx, readBuffer)
+	v, err := (&_Alpha{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ApplicationAddress1.go b/plc4go/protocols/cbus/readwrite/model/ApplicationAddress1.go
index 558ef56f4c..63637a005e 100644
--- a/plc4go/protocols/cbus/readwrite/model/ApplicationAddress1.go
+++ b/plc4go/protocols/cbus/readwrite/model/ApplicationAddress1.go
@@ -133,7 +133,7 @@ func ApplicationAddress1ParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func ApplicationAddress1ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ApplicationAddress1, error) {
-	v, err := NewApplicationAddress1().parse(ctx, readBuffer)
+	v, err := (&_ApplicationAddress1{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ApplicationAddress2.go b/plc4go/protocols/cbus/readwrite/model/ApplicationAddress2.go
index 8aed9b0b75..c83d0a347e 100644
--- a/plc4go/protocols/cbus/readwrite/model/ApplicationAddress2.go
+++ b/plc4go/protocols/cbus/readwrite/model/ApplicationAddress2.go
@@ -133,7 +133,7 @@ func ApplicationAddress2ParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func ApplicationAddress2ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ApplicationAddress2, error) {
-	v, err := NewApplicationAddress2().parse(ctx, readBuffer)
+	v, err := (&_ApplicationAddress2{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/BridgeAddress.go b/plc4go/protocols/cbus/readwrite/model/BridgeAddress.go
index 749a5e7a8d..238ed4103e 100644
--- a/plc4go/protocols/cbus/readwrite/model/BridgeAddress.go
+++ b/plc4go/protocols/cbus/readwrite/model/BridgeAddress.go
@@ -114,7 +114,7 @@ func BridgeAddressParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func BridgeAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BridgeAddress, error) {
-	v, err := NewBridgeAddress().parse(ctx, readBuffer)
+	v, err := (&_BridgeAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CALData.go b/plc4go/protocols/cbus/readwrite/model/CALData.go
index 1892011fe9..01e0658ea4 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALData.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALData.go
@@ -197,7 +197,7 @@ func CALDataParseWithBufferProducer[T CALData](requestContext RequestContext) fu
 }
 
 func CALDataParseWithBuffer[T CALData](ctx context.Context, readBuffer utils.ReadBuffer, requestContext RequestContext) (T, error) {
-	v, err := NewCALData(requestContext).parse(ctx, readBuffer, requestContext)
+	v, err := (&_CALData{RequestContext: requestContext}).parse(ctx, readBuffer, requestContext)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/CALReply.go b/plc4go/protocols/cbus/readwrite/model/CALReply.go
index 3a37ff4a05..f7be76898c 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALReply.go
@@ -158,7 +158,7 @@ func CALReplyParseWithBufferProducer[T CALReply](cBusOptions CBusOptions, reques
 }
 
 func CALReplyParseWithBuffer[T CALReply](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions, requestContext RequestContext) (T, error) {
-	v, err := NewCALReply(cBusOptions, requestContext).parse(ctx, readBuffer, cBusOptions, requestContext)
+	v, err := (&_CALReply{CBusOptions: cBusOptions, RequestContext: requestContext}).parse(ctx, readBuffer, cBusOptions, requestContext)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
index 6b835792a2..ba38642f29 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
@@ -181,7 +181,7 @@ func CBusCommandParseWithBufferProducer[T CBusCommand](cBusOptions CBusOptions)
 }
 
 func CBusCommandParseWithBuffer[T CBusCommand](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions) (T, error) {
-	v, err := NewCBusCommand(cBusOptions).parse(ctx, readBuffer, cBusOptions)
+	v, err := (&_CBusCommand{CBusOptions: cBusOptions}).parse(ctx, readBuffer, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusConstants.go b/plc4go/protocols/cbus/readwrite/model/CBusConstants.go
index d2a89d3683..6cdeafbc39 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusConstants.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusConstants.go
@@ -114,7 +114,7 @@ func CBusConstantsParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func CBusConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CBusConstants, error) {
-	v, err := NewCBusConstants().parse(ctx, readBuffer)
+	v, err := (&_CBusConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusHeader.go b/plc4go/protocols/cbus/readwrite/model/CBusHeader.go
index c200c75d2d..7a6d6f4eba 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusHeader.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusHeader.go
@@ -144,7 +144,7 @@ func CBusHeaderParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func CBusHeaderParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CBusHeader, error) {
-	v, err := NewCBusHeader().parse(ctx, readBuffer)
+	v, err := (&_CBusHeader{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusMessage.go b/plc4go/protocols/cbus/readwrite/model/CBusMessage.go
index 22c7b91d6d..5deece30ea 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusMessage.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusMessage.go
@@ -129,7 +129,7 @@ func CBusMessageParseWithBufferProducer[T CBusMessage](isResponse bool, requestC
 }
 
 func CBusMessageParseWithBuffer[T CBusMessage](ctx context.Context, readBuffer utils.ReadBuffer, isResponse bool, requestContext RequestContext, cBusOptions CBusOptions) (T, error) {
-	v, err := NewCBusMessage(requestContext, cBusOptions).parse(ctx, readBuffer, isResponse, requestContext, cBusOptions)
+	v, err := (&_CBusMessage{RequestContext: requestContext, CBusOptions: cBusOptions}).parse(ctx, readBuffer, isResponse, requestContext, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusOptions.go b/plc4go/protocols/cbus/readwrite/model/CBusOptions.go
index 50e43092c2..c8f7610f82 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusOptions.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusOptions.go
@@ -194,7 +194,7 @@ func CBusOptionsParseWithBufferProducer() func(ctx context.Context, readBuffer u
 }
 
 func CBusOptionsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CBusOptions, error) {
-	v, err := NewCBusOptions().parse(ctx, readBuffer)
+	v, err := (&_CBusOptions{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
index 98a787026a..ac74788b10 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
@@ -145,7 +145,7 @@ func CBusPointToMultiPointCommandParseWithBufferProducer[T CBusPointToMultiPoint
 }
 
 func CBusPointToMultiPointCommandParseWithBuffer[T CBusPointToMultiPointCommand](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions) (T, error) {
-	v, err := NewCBusPointToMultiPointCommand(cBusOptions).parse(ctx, readBuffer, cBusOptions)
+	v, err := (&_CBusPointToMultiPointCommand{CBusOptions: cBusOptions}).parse(ctx, readBuffer, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
index 2c37e1dae6..de5b65b56a 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
@@ -175,7 +175,7 @@ func CBusPointToPointCommandParseWithBufferProducer[T CBusPointToPointCommand](c
 }
 
 func CBusPointToPointCommandParseWithBuffer[T CBusPointToPointCommand](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions) (T, error) {
-	v, err := NewCBusPointToPointCommand(cBusOptions).parse(ctx, readBuffer, cBusOptions)
+	v, err := (&_CBusPointToPointCommand{CBusOptions: cBusOptions}).parse(ctx, readBuffer, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultiPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultiPointCommand.go
index d0847ba276..4e29b85b08 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultiPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultiPointCommand.go
@@ -165,7 +165,7 @@ func CBusPointToPointToMultiPointCommandParseWithBufferProducer[T CBusPointToPoi
 }
 
 func CBusPointToPointToMultiPointCommandParseWithBuffer[T CBusPointToPointToMultiPointCommand](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions) (T, error) {
-	v, err := NewCBusPointToPointToMultiPointCommand(cBusOptions).parse(ctx, readBuffer, cBusOptions)
+	v, err := (&_CBusPointToPointToMultiPointCommand{CBusOptions: cBusOptions}).parse(ctx, readBuffer, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/Checksum.go b/plc4go/protocols/cbus/readwrite/model/Checksum.go
index b24c585c12..3e2bad24ef 100644
--- a/plc4go/protocols/cbus/readwrite/model/Checksum.go
+++ b/plc4go/protocols/cbus/readwrite/model/Checksum.go
@@ -114,7 +114,7 @@ func ChecksumParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func ChecksumParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Checksum, error) {
-	v, err := NewChecksum().parse(ctx, readBuffer)
+	v, err := (&_Checksum{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ClockAndTimekeepingData.go b/plc4go/protocols/cbus/readwrite/model/ClockAndTimekeepingData.go
index 09346b11bf..6e0d8778f7 100644
--- a/plc4go/protocols/cbus/readwrite/model/ClockAndTimekeepingData.go
+++ b/plc4go/protocols/cbus/readwrite/model/ClockAndTimekeepingData.go
@@ -175,7 +175,7 @@ func ClockAndTimekeepingDataParseWithBufferProducer[T ClockAndTimekeepingData]()
 }
 
 func ClockAndTimekeepingDataParseWithBuffer[T ClockAndTimekeepingData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewClockAndTimekeepingData().parse(ctx, readBuffer)
+	v, err := (&_ClockAndTimekeepingData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/Confirmation.go b/plc4go/protocols/cbus/readwrite/model/Confirmation.go
index 40ac2b4e3b..6579321ebc 100644
--- a/plc4go/protocols/cbus/readwrite/model/Confirmation.go
+++ b/plc4go/protocols/cbus/readwrite/model/Confirmation.go
@@ -157,7 +157,7 @@ func ConfirmationParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func ConfirmationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Confirmation, error) {
-	v, err := NewConfirmation().parse(ctx, readBuffer)
+	v, err := (&_Confirmation{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CustomManufacturer.go b/plc4go/protocols/cbus/readwrite/model/CustomManufacturer.go
index 348e00afb0..52edc50222 100644
--- a/plc4go/protocols/cbus/readwrite/model/CustomManufacturer.go
+++ b/plc4go/protocols/cbus/readwrite/model/CustomManufacturer.go
@@ -117,7 +117,7 @@ func CustomManufacturerParseWithBufferProducer(numBytes uint8) func(ctx context.
 }
 
 func CustomManufacturerParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, numBytes uint8) (CustomManufacturer, error) {
-	v, err := NewCustomManufacturer(numBytes).parse(ctx, readBuffer, numBytes)
+	v, err := (&_CustomManufacturer{NumBytes: numBytes}).parse(ctx, readBuffer, numBytes)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CustomTypes.go b/plc4go/protocols/cbus/readwrite/model/CustomTypes.go
index 238489832d..4cebee646f 100644
--- a/plc4go/protocols/cbus/readwrite/model/CustomTypes.go
+++ b/plc4go/protocols/cbus/readwrite/model/CustomTypes.go
@@ -117,7 +117,7 @@ func CustomTypesParseWithBufferProducer(numBytes uint8) func(ctx context.Context
 }
 
 func CustomTypesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, numBytes uint8) (CustomTypes, error) {
-	v, err := NewCustomTypes(numBytes).parse(ctx, readBuffer, numBytes)
+	v, err := (&_CustomTypes{NumBytes: numBytes}).parse(ctx, readBuffer, numBytes)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/EnableControlData.go b/plc4go/protocols/cbus/readwrite/model/EnableControlData.go
index ab615bffbd..8291c588e9 100644
--- a/plc4go/protocols/cbus/readwrite/model/EnableControlData.go
+++ b/plc4go/protocols/cbus/readwrite/model/EnableControlData.go
@@ -153,7 +153,7 @@ func EnableControlDataParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func EnableControlDataParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (EnableControlData, error) {
-	v, err := NewEnableControlData().parse(ctx, readBuffer)
+	v, err := (&_EnableControlData{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/EncodedReply.go b/plc4go/protocols/cbus/readwrite/model/EncodedReply.go
index 8c84c0280f..5ccda153d9 100644
--- a/plc4go/protocols/cbus/readwrite/model/EncodedReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/EncodedReply.go
@@ -168,7 +168,7 @@ func EncodedReplyParseWithBufferProducer[T EncodedReply](cBusOptions CBusOptions
 }
 
 func EncodedReplyParseWithBuffer[T EncodedReply](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions, requestContext RequestContext) (T, error) {
-	v, err := NewEncodedReply(cBusOptions, requestContext).parse(ctx, readBuffer, cBusOptions, requestContext)
+	v, err := (&_EncodedReply{CBusOptions: cBusOptions, RequestContext: requestContext}).parse(ctx, readBuffer, cBusOptions, requestContext)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/ErrorReportingData.go b/plc4go/protocols/cbus/readwrite/model/ErrorReportingData.go
index 769c0cb426..d0d2539a5e 100644
--- a/plc4go/protocols/cbus/readwrite/model/ErrorReportingData.go
+++ b/plc4go/protocols/cbus/readwrite/model/ErrorReportingData.go
@@ -163,7 +163,7 @@ func ErrorReportingDataParseWithBufferProducer[T ErrorReportingData]() func(ctx
 }
 
 func ErrorReportingDataParseWithBuffer[T ErrorReportingData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewErrorReportingData().parse(ctx, readBuffer)
+	v, err := (&_ErrorReportingData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategory.go b/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategory.go
index e71e9ebb9c..17d418d7c7 100644
--- a/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategory.go
+++ b/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategory.go
@@ -134,7 +134,7 @@ func ErrorReportingSystemCategoryParseWithBufferProducer() func(ctx context.Cont
 }
 
 func ErrorReportingSystemCategoryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ErrorReportingSystemCategory, error) {
-	v, err := NewErrorReportingSystemCategory().parse(ctx, readBuffer)
+	v, err := (&_ErrorReportingSystemCategory{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategoryType.go b/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategoryType.go
index f3ec6e7661..45ca5a937a 100644
--- a/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategoryType.go
+++ b/plc4go/protocols/cbus/readwrite/model/ErrorReportingSystemCategoryType.go
@@ -121,7 +121,7 @@ func ErrorReportingSystemCategoryTypeParseWithBufferProducer[T ErrorReportingSys
 }
 
 func ErrorReportingSystemCategoryTypeParseWithBuffer[T ErrorReportingSystemCategoryType](ctx context.Context, readBuffer utils.ReadBuffer, errorReportingSystemCategoryClass ErrorReportingSystemCategoryClass) (T, error) {
-	v, err := NewErrorReportingSystemCategoryType().parse(ctx, readBuffer, errorReportingSystemCategoryClass)
+	v, err := (&_ErrorReportingSystemCategoryType{}).parse(ctx, readBuffer, errorReportingSystemCategoryClass)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACAuxiliaryLevel.go b/plc4go/protocols/cbus/readwrite/model/HVACAuxiliaryLevel.go
index 81a0d63427..239727e283 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACAuxiliaryLevel.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACAuxiliaryLevel.go
@@ -178,7 +178,7 @@ func HVACAuxiliaryLevelParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func HVACAuxiliaryLevelParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACAuxiliaryLevel, error) {
-	v, err := NewHVACAuxiliaryLevel().parse(ctx, readBuffer)
+	v, err := (&_HVACAuxiliaryLevel{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACHumidity.go b/plc4go/protocols/cbus/readwrite/model/HVACHumidity.go
index 20ea57df9d..7c203c8f41 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACHumidity.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACHumidity.go
@@ -133,7 +133,7 @@ func HVACHumidityParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func HVACHumidityParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACHumidity, error) {
-	v, err := NewHVACHumidity().parse(ctx, readBuffer)
+	v, err := (&_HVACHumidity{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACHumidityModeAndFlags.go b/plc4go/protocols/cbus/readwrite/model/HVACHumidityModeAndFlags.go
index 3ec00c9632..32879c23c6 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACHumidityModeAndFlags.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACHumidityModeAndFlags.go
@@ -248,7 +248,7 @@ func HVACHumidityModeAndFlagsParseWithBufferProducer() func(ctx context.Context,
 }
 
 func HVACHumidityModeAndFlagsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACHumidityModeAndFlags, error) {
-	v, err := NewHVACHumidityModeAndFlags().parse(ctx, readBuffer)
+	v, err := (&_HVACHumidityModeAndFlags{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACHumidityStatusFlags.go b/plc4go/protocols/cbus/readwrite/model/HVACHumidityStatusFlags.go
index a10e6a1ead..e93df85a50 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACHumidityStatusFlags.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACHumidityStatusFlags.go
@@ -208,7 +208,7 @@ func HVACHumidityStatusFlagsParseWithBufferProducer() func(ctx context.Context,
 }
 
 func HVACHumidityStatusFlagsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACHumidityStatusFlags, error) {
-	v, err := NewHVACHumidityStatusFlags().parse(ctx, readBuffer)
+	v, err := (&_HVACHumidityStatusFlags{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACModeAndFlags.go b/plc4go/protocols/cbus/readwrite/model/HVACModeAndFlags.go
index 16e3c774b5..37e0fa132c 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACModeAndFlags.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACModeAndFlags.go
@@ -248,7 +248,7 @@ func HVACModeAndFlagsParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func HVACModeAndFlagsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACModeAndFlags, error) {
-	v, err := NewHVACModeAndFlags().parse(ctx, readBuffer)
+	v, err := (&_HVACModeAndFlags{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACRawLevels.go b/plc4go/protocols/cbus/readwrite/model/HVACRawLevels.go
index 03ba4e75f7..6932bad841 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACRawLevels.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACRawLevels.go
@@ -133,7 +133,7 @@ func HVACRawLevelsParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func HVACRawLevelsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACRawLevels, error) {
-	v, err := NewHVACRawLevels().parse(ctx, readBuffer)
+	v, err := (&_HVACRawLevels{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACStartTime.go b/plc4go/protocols/cbus/readwrite/model/HVACStartTime.go
index 91e680fe66..26ee5dfc78 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACStartTime.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACStartTime.go
@@ -173,7 +173,7 @@ func HVACStartTimeParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func HVACStartTimeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACStartTime, error) {
-	v, err := NewHVACStartTime().parse(ctx, readBuffer)
+	v, err := (&_HVACStartTime{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACStatusFlags.go b/plc4go/protocols/cbus/readwrite/model/HVACStatusFlags.go
index c70b5f2547..1ea09ba891 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACStatusFlags.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACStatusFlags.go
@@ -208,7 +208,7 @@ func HVACStatusFlagsParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func HVACStatusFlagsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACStatusFlags, error) {
-	v, err := NewHVACStatusFlags().parse(ctx, readBuffer)
+	v, err := (&_HVACStatusFlags{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACTemperature.go b/plc4go/protocols/cbus/readwrite/model/HVACTemperature.go
index 6aaabe9ab9..01d4ebd9fd 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACTemperature.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACTemperature.go
@@ -133,7 +133,7 @@ func HVACTemperatureParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func HVACTemperatureParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACTemperature, error) {
-	v, err := NewHVACTemperature().parse(ctx, readBuffer)
+	v, err := (&_HVACTemperature{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/HVACZoneList.go b/plc4go/protocols/cbus/readwrite/model/HVACZoneList.go
index 8124163c43..5a872d5936 100644
--- a/plc4go/protocols/cbus/readwrite/model/HVACZoneList.go
+++ b/plc4go/protocols/cbus/readwrite/model/HVACZoneList.go
@@ -203,7 +203,7 @@ func HVACZoneListParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func HVACZoneListParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HVACZoneList, error) {
-	v, err := NewHVACZoneList().parse(ctx, readBuffer)
+	v, err := (&_HVACZoneList{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go b/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go
index d439a6370c..4d6a990f41 100644
--- a/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go
@@ -126,7 +126,7 @@ func IdentifyReplyCommandParseWithBufferProducer[T IdentifyReplyCommand](attribu
 }
 
 func IdentifyReplyCommandParseWithBuffer[T IdentifyReplyCommand](ctx context.Context, readBuffer utils.ReadBuffer, attribute Attribute, numBytes uint8) (T, error) {
-	v, err := NewIdentifyReplyCommand(numBytes).parse(ctx, readBuffer, attribute, numBytes)
+	v, err := (&_IdentifyReplyCommand{NumBytes: numBytes}).parse(ctx, readBuffer, attribute, numBytes)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommandUnitSummary.go b/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommandUnitSummary.go
index fa662eec57..33558aaf22 100644
--- a/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommandUnitSummary.go
+++ b/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommandUnitSummary.go
@@ -184,7 +184,7 @@ func IdentifyReplyCommandUnitSummaryParseWithBufferProducer() func(ctx context.C
 }
 
 func IdentifyReplyCommandUnitSummaryParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (IdentifyReplyCommandUnitSummary, error) {
-	v, err := NewIdentifyReplyCommandUnitSummary().parse(ctx, readBuffer)
+	v, err := (&_IdentifyReplyCommandUnitSummary{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1.go b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1.go
index 6e396cad54..f889ac56f7 100644
--- a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1.go
+++ b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1.go
@@ -173,7 +173,7 @@ func InterfaceOptions1ParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func InterfaceOptions1ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (InterfaceOptions1, error) {
-	v, err := NewInterfaceOptions1().parse(ctx, readBuffer)
+	v, err := (&_InterfaceOptions1{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1PowerUpSettings.go b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1PowerUpSettings.go
index d0555d5770..8333887864 100644
--- a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1PowerUpSettings.go
+++ b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions1PowerUpSettings.go
@@ -114,7 +114,7 @@ func InterfaceOptions1PowerUpSettingsParseWithBufferProducer() func(ctx context.
 }
 
 func InterfaceOptions1PowerUpSettingsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (InterfaceOptions1PowerUpSettings, error) {
-	v, err := NewInterfaceOptions1PowerUpSettings().parse(ctx, readBuffer)
+	v, err := (&_InterfaceOptions1PowerUpSettings{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions2.go b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions2.go
index 091b131db6..3983dc7154 100644
--- a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions2.go
+++ b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions2.go
@@ -149,7 +149,7 @@ func InterfaceOptions2ParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func InterfaceOptions2ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (InterfaceOptions2, error) {
-	v, err := NewInterfaceOptions2().parse(ctx, readBuffer)
+	v, err := (&_InterfaceOptions2{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions3.go b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions3.go
index 3551dadbd3..2a2199e45e 100644
--- a/plc4go/protocols/cbus/readwrite/model/InterfaceOptions3.go
+++ b/plc4go/protocols/cbus/readwrite/model/InterfaceOptions3.go
@@ -161,7 +161,7 @@ func InterfaceOptions3ParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func InterfaceOptions3ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (InterfaceOptions3, error) {
-	v, err := NewInterfaceOptions3().parse(ctx, readBuffer)
+	v, err := (&_InterfaceOptions3{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/LevelInformation.go b/plc4go/protocols/cbus/readwrite/model/LevelInformation.go
index a1847201aa..76b8c82ca8 100644
--- a/plc4go/protocols/cbus/readwrite/model/LevelInformation.go
+++ b/plc4go/protocols/cbus/readwrite/model/LevelInformation.go
@@ -239,7 +239,7 @@ func LevelInformationParseWithBufferProducer[T LevelInformation]() func(ctx cont
 }
 
 func LevelInformationParseWithBuffer[T LevelInformation](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewLevelInformation().parse(ctx, readBuffer)
+	v, err := (&_LevelInformation{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/LightingData.go b/plc4go/protocols/cbus/readwrite/model/LightingData.go
index 2364aa2797..6d0cbf4fd5 100644
--- a/plc4go/protocols/cbus/readwrite/model/LightingData.go
+++ b/plc4go/protocols/cbus/readwrite/model/LightingData.go
@@ -163,7 +163,7 @@ func LightingDataParseWithBufferProducer[T LightingData]() func(ctx context.Cont
 }
 
 func LightingDataParseWithBuffer[T LightingData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewLightingData().parse(ctx, readBuffer)
+	v, err := (&_LightingData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/LightingLabelOptions.go b/plc4go/protocols/cbus/readwrite/model/LightingLabelOptions.go
index e6ecce96e9..a02b13db39 100644
--- a/plc4go/protocols/cbus/readwrite/model/LightingLabelOptions.go
+++ b/plc4go/protocols/cbus/readwrite/model/LightingLabelOptions.go
@@ -141,7 +141,7 @@ func LightingLabelOptionsParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func LightingLabelOptionsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (LightingLabelOptions, error) {
-	v, err := NewLightingLabelOptions().parse(ctx, readBuffer)
+	v, err := (&_LightingLabelOptions{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/LogicAssignment.go b/plc4go/protocols/cbus/readwrite/model/LogicAssignment.go
index eb1fb007d0..ddf9ceb94d 100644
--- a/plc4go/protocols/cbus/readwrite/model/LogicAssignment.go
+++ b/plc4go/protocols/cbus/readwrite/model/LogicAssignment.go
@@ -173,7 +173,7 @@ func LogicAssignmentParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func LogicAssignmentParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (LogicAssignment, error) {
-	v, err := NewLogicAssignment().parse(ctx, readBuffer)
+	v, err := (&_LogicAssignment{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/MeasurementData.go b/plc4go/protocols/cbus/readwrite/model/MeasurementData.go
index 85e86aee43..edd4f1a978 100644
--- a/plc4go/protocols/cbus/readwrite/model/MeasurementData.go
+++ b/plc4go/protocols/cbus/readwrite/model/MeasurementData.go
@@ -163,7 +163,7 @@ func MeasurementDataParseWithBufferProducer[T MeasurementData]() func(ctx contex
 }
 
 func MeasurementDataParseWithBuffer[T MeasurementData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewMeasurementData().parse(ctx, readBuffer)
+	v, err := (&_MeasurementData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/MediaTransportControlData.go b/plc4go/protocols/cbus/readwrite/model/MediaTransportControlData.go
index 6ed4cb4f29..02ff197359 100644
--- a/plc4go/protocols/cbus/readwrite/model/MediaTransportControlData.go
+++ b/plc4go/protocols/cbus/readwrite/model/MediaTransportControlData.go
@@ -173,7 +173,7 @@ func MediaTransportControlDataParseWithBufferProducer[T MediaTransportControlDat
 }
 
 func MediaTransportControlDataParseWithBuffer[T MediaTransportControlData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewMediaTransportControlData().parse(ctx, readBuffer)
+	v, err := (&_MediaTransportControlData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/MeteringData.go b/plc4go/protocols/cbus/readwrite/model/MeteringData.go
index 45def25f59..e25adbbf65 100644
--- a/plc4go/protocols/cbus/readwrite/model/MeteringData.go
+++ b/plc4go/protocols/cbus/readwrite/model/MeteringData.go
@@ -175,7 +175,7 @@ func MeteringDataParseWithBufferProducer[T MeteringData]() func(ctx context.Cont
 }
 
 func MeteringDataParseWithBuffer[T MeteringData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewMeteringData().parse(ctx, readBuffer)
+	v, err := (&_MeteringData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go b/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
index 835f90f95a..9266bd51f4 100644
--- a/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
+++ b/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
@@ -145,7 +145,7 @@ func MonitoredSALParseWithBufferProducer[T MonitoredSAL](cBusOptions CBusOptions
 }
 
 func MonitoredSALParseWithBuffer[T MonitoredSAL](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions) (T, error) {
-	v, err := NewMonitoredSAL(cBusOptions).parse(ctx, readBuffer, cBusOptions)
+	v, err := (&_MonitoredSAL{CBusOptions: cBusOptions}).parse(ctx, readBuffer, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/NetworkProtocolControlInformation.go b/plc4go/protocols/cbus/readwrite/model/NetworkProtocolControlInformation.go
index 1a650cccaa..ede827d0d6 100644
--- a/plc4go/protocols/cbus/readwrite/model/NetworkProtocolControlInformation.go
+++ b/plc4go/protocols/cbus/readwrite/model/NetworkProtocolControlInformation.go
@@ -129,7 +129,7 @@ func NetworkProtocolControlInformationParseWithBufferProducer() func(ctx context
 }
 
 func NetworkProtocolControlInformationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NetworkProtocolControlInformation, error) {
-	v, err := NewNetworkProtocolControlInformation().parse(ctx, readBuffer)
+	v, err := (&_NetworkProtocolControlInformation{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/NetworkRoute.go b/plc4go/protocols/cbus/readwrite/model/NetworkRoute.go
index 9eab1337b9..e8feac0b00 100644
--- a/plc4go/protocols/cbus/readwrite/model/NetworkRoute.go
+++ b/plc4go/protocols/cbus/readwrite/model/NetworkRoute.go
@@ -131,7 +131,7 @@ func NetworkRouteParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func NetworkRouteParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NetworkRoute, error) {
-	v, err := NewNetworkRoute().parse(ctx, readBuffer)
+	v, err := (&_NetworkRoute{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/PanicStatus.go b/plc4go/protocols/cbus/readwrite/model/PanicStatus.go
index 06abb250db..961a908bed 100644
--- a/plc4go/protocols/cbus/readwrite/model/PanicStatus.go
+++ b/plc4go/protocols/cbus/readwrite/model/PanicStatus.go
@@ -153,7 +153,7 @@ func PanicStatusParseWithBufferProducer() func(ctx context.Context, readBuffer u
 }
 
 func PanicStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (PanicStatus, error) {
-	v, err := NewPanicStatus().parse(ctx, readBuffer)
+	v, err := (&_PanicStatus{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ParameterChange.go b/plc4go/protocols/cbus/readwrite/model/ParameterChange.go
index 9a9520652a..15ebdcd6ec 100644
--- a/plc4go/protocols/cbus/readwrite/model/ParameterChange.go
+++ b/plc4go/protocols/cbus/readwrite/model/ParameterChange.go
@@ -122,7 +122,7 @@ func ParameterChangeParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func ParameterChangeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ParameterChange, error) {
-	v, err := NewParameterChange().parse(ctx, readBuffer)
+	v, err := (&_ParameterChange{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ParameterValue.go b/plc4go/protocols/cbus/readwrite/model/ParameterValue.go
index 0dbddfecb4..b01deeeefe 100644
--- a/plc4go/protocols/cbus/readwrite/model/ParameterValue.go
+++ b/plc4go/protocols/cbus/readwrite/model/ParameterValue.go
@@ -126,7 +126,7 @@ func ParameterValueParseWithBufferProducer[T ParameterValue](parameterType Param
 }
 
 func ParameterValueParseWithBuffer[T ParameterValue](ctx context.Context, readBuffer utils.ReadBuffer, parameterType ParameterType, numBytes uint8) (T, error) {
-	v, err := NewParameterValue(numBytes).parse(ctx, readBuffer, parameterType, numBytes)
+	v, err := (&_ParameterValue{NumBytes: numBytes}).parse(ctx, readBuffer, parameterType, numBytes)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/PowerUp.go b/plc4go/protocols/cbus/readwrite/model/PowerUp.go
index f4f92f3b1b..4beba6461c 100644
--- a/plc4go/protocols/cbus/readwrite/model/PowerUp.go
+++ b/plc4go/protocols/cbus/readwrite/model/PowerUp.go
@@ -122,7 +122,7 @@ func PowerUpParseWithBufferProducer() func(ctx context.Context, readBuffer utils
 }
 
 func PowerUpParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (PowerUp, error) {
-	v, err := NewPowerUp().parse(ctx, readBuffer)
+	v, err := (&_PowerUp{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/Reply.go b/plc4go/protocols/cbus/readwrite/model/Reply.go
index 575d193d34..9aacf2caa3 100644
--- a/plc4go/protocols/cbus/readwrite/model/Reply.go
+++ b/plc4go/protocols/cbus/readwrite/model/Reply.go
@@ -148,7 +148,7 @@ func ReplyParseWithBufferProducer[T Reply](cBusOptions CBusOptions, requestConte
 }
 
 func ReplyParseWithBuffer[T Reply](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions, requestContext RequestContext) (T, error) {
-	v, err := NewReply(cBusOptions, requestContext).parse(ctx, readBuffer, cBusOptions, requestContext)
+	v, err := (&_Reply{CBusOptions: cBusOptions, RequestContext: requestContext}).parse(ctx, readBuffer, cBusOptions, requestContext)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/ReplyNetwork.go b/plc4go/protocols/cbus/readwrite/model/ReplyNetwork.go
index 98bc2bd149..3dce3173bd 100644
--- a/plc4go/protocols/cbus/readwrite/model/ReplyNetwork.go
+++ b/plc4go/protocols/cbus/readwrite/model/ReplyNetwork.go
@@ -124,7 +124,7 @@ func ReplyNetworkParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func ReplyNetworkParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ReplyNetwork, error) {
-	v, err := NewReplyNetwork().parse(ctx, readBuffer)
+	v, err := (&_ReplyNetwork{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ReplyOrConfirmation.go b/plc4go/protocols/cbus/readwrite/model/ReplyOrConfirmation.go
index 661ab3fa3f..d7c8578c49 100644
--- a/plc4go/protocols/cbus/readwrite/model/ReplyOrConfirmation.go
+++ b/plc4go/protocols/cbus/readwrite/model/ReplyOrConfirmation.go
@@ -170,7 +170,7 @@ func ReplyOrConfirmationParseWithBufferProducer[T ReplyOrConfirmation](cBusOptio
 }
 
 func ReplyOrConfirmationParseWithBuffer[T ReplyOrConfirmation](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions, requestContext RequestContext) (T, error) {
-	v, err := NewReplyOrConfirmation(cBusOptions, requestContext).parse(ctx, readBuffer, cBusOptions, requestContext)
+	v, err := (&_ReplyOrConfirmation{CBusOptions: cBusOptions, RequestContext: requestContext}).parse(ctx, readBuffer, cBusOptions, requestContext)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/Request.go b/plc4go/protocols/cbus/readwrite/model/Request.go
index 71505cbe25..ce18f466ed 100644
--- a/plc4go/protocols/cbus/readwrite/model/Request.go
+++ b/plc4go/protocols/cbus/readwrite/model/Request.go
@@ -210,7 +210,7 @@ func RequestParseWithBufferProducer[T Request](cBusOptions CBusOptions) func(ctx
 }
 
 func RequestParseWithBuffer[T Request](ctx context.Context, readBuffer utils.ReadBuffer, cBusOptions CBusOptions) (T, error) {
-	v, err := NewRequest(cBusOptions).parse(ctx, readBuffer, cBusOptions)
+	v, err := (&_Request{CBusOptions: cBusOptions}).parse(ctx, readBuffer, cBusOptions)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestContext.go b/plc4go/protocols/cbus/readwrite/model/RequestContext.go
index adc860d75c..ed1e2863ea 100644
--- a/plc4go/protocols/cbus/readwrite/model/RequestContext.go
+++ b/plc4go/protocols/cbus/readwrite/model/RequestContext.go
@@ -114,7 +114,7 @@ func RequestContextParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func RequestContextParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (RequestContext, error) {
-	v, err := NewRequestContext().parse(ctx, readBuffer)
+	v, err := (&_RequestContext{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestTermination.go b/plc4go/protocols/cbus/readwrite/model/RequestTermination.go
index 68a134aff4..67199e84f6 100644
--- a/plc4go/protocols/cbus/readwrite/model/RequestTermination.go
+++ b/plc4go/protocols/cbus/readwrite/model/RequestTermination.go
@@ -114,7 +114,7 @@ func RequestTerminationParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func RequestTerminationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (RequestTermination, error) {
-	v, err := NewRequestTermination().parse(ctx, readBuffer)
+	v, err := (&_RequestTermination{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ResponseTermination.go b/plc4go/protocols/cbus/readwrite/model/ResponseTermination.go
index aa9a6815e0..a50a8291cd 100644
--- a/plc4go/protocols/cbus/readwrite/model/ResponseTermination.go
+++ b/plc4go/protocols/cbus/readwrite/model/ResponseTermination.go
@@ -122,7 +122,7 @@ func ResponseTerminationParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func ResponseTerminationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ResponseTermination, error) {
-	v, err := NewResponseTermination().parse(ctx, readBuffer)
+	v, err := (&_ResponseTermination{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/SALData.go b/plc4go/protocols/cbus/readwrite/model/SALData.go
index 4b126053bf..f65dd2df40 100644
--- a/plc4go/protocols/cbus/readwrite/model/SALData.go
+++ b/plc4go/protocols/cbus/readwrite/model/SALData.go
@@ -145,7 +145,7 @@ func SALDataParseWithBufferProducer[T SALData](applicationId ApplicationId) func
 }
 
 func SALDataParseWithBuffer[T SALData](ctx context.Context, readBuffer utils.ReadBuffer, applicationId ApplicationId) (T, error) {
-	v, err := NewSALData().parse(ctx, readBuffer, applicationId)
+	v, err := (&_SALData{}).parse(ctx, readBuffer, applicationId)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/SecurityArmCode.go b/plc4go/protocols/cbus/readwrite/model/SecurityArmCode.go
index 41d59dde03..25b1f4b0e0 100644
--- a/plc4go/protocols/cbus/readwrite/model/SecurityArmCode.go
+++ b/plc4go/protocols/cbus/readwrite/model/SecurityArmCode.go
@@ -173,7 +173,7 @@ func SecurityArmCodeParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func SecurityArmCodeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SecurityArmCode, error) {
-	v, err := NewSecurityArmCode().parse(ctx, readBuffer)
+	v, err := (&_SecurityArmCode{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/SecurityData.go b/plc4go/protocols/cbus/readwrite/model/SecurityData.go
index 7e485143d4..46c53969ee 100644
--- a/plc4go/protocols/cbus/readwrite/model/SecurityData.go
+++ b/plc4go/protocols/cbus/readwrite/model/SecurityData.go
@@ -175,7 +175,7 @@ func SecurityDataParseWithBufferProducer[T SecurityData]() func(ctx context.Cont
 }
 
 func SecurityDataParseWithBuffer[T SecurityData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewSecurityData().parse(ctx, readBuffer)
+	v, err := (&_SecurityData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/SerialInterfaceAddress.go b/plc4go/protocols/cbus/readwrite/model/SerialInterfaceAddress.go
index 8b57beb121..77ca5a12b8 100644
--- a/plc4go/protocols/cbus/readwrite/model/SerialInterfaceAddress.go
+++ b/plc4go/protocols/cbus/readwrite/model/SerialInterfaceAddress.go
@@ -114,7 +114,7 @@ func SerialInterfaceAddressParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func SerialInterfaceAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SerialInterfaceAddress, error) {
-	v, err := NewSerialInterfaceAddress().parse(ctx, readBuffer)
+	v, err := (&_SerialInterfaceAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/SerialNumber.go b/plc4go/protocols/cbus/readwrite/model/SerialNumber.go
index a09e7771d1..6e106c9638 100644
--- a/plc4go/protocols/cbus/readwrite/model/SerialNumber.go
+++ b/plc4go/protocols/cbus/readwrite/model/SerialNumber.go
@@ -144,7 +144,7 @@ func SerialNumberParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func SerialNumberParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SerialNumber, error) {
-	v, err := NewSerialNumber().parse(ctx, readBuffer)
+	v, err := (&_SerialNumber{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/StatusByte.go b/plc4go/protocols/cbus/readwrite/model/StatusByte.go
index ecfcd96f17..d648f2120d 100644
--- a/plc4go/protocols/cbus/readwrite/model/StatusByte.go
+++ b/plc4go/protocols/cbus/readwrite/model/StatusByte.go
@@ -144,7 +144,7 @@ func StatusByteParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func StatusByteParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (StatusByte, error) {
-	v, err := NewStatusByte().parse(ctx, readBuffer)
+	v, err := (&_StatusByte{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/StatusRequest.go b/plc4go/protocols/cbus/readwrite/model/StatusRequest.go
index 51a34b0256..cfe115e031 100644
--- a/plc4go/protocols/cbus/readwrite/model/StatusRequest.go
+++ b/plc4go/protocols/cbus/readwrite/model/StatusRequest.go
@@ -140,7 +140,7 @@ func StatusRequestParseWithBufferProducer[T StatusRequest]() func(ctx context.Co
 }
 
 func StatusRequestParseWithBuffer[T StatusRequest](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewStatusRequest().parse(ctx, readBuffer)
+	v, err := (&_StatusRequest{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/TamperStatus.go b/plc4go/protocols/cbus/readwrite/model/TamperStatus.go
index fcbf37b0e9..5259201e83 100644
--- a/plc4go/protocols/cbus/readwrite/model/TamperStatus.go
+++ b/plc4go/protocols/cbus/readwrite/model/TamperStatus.go
@@ -153,7 +153,7 @@ func TamperStatusParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func TamperStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TamperStatus, error) {
-	v, err := NewTamperStatus().parse(ctx, readBuffer)
+	v, err := (&_TamperStatus{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/TelephonyData.go b/plc4go/protocols/cbus/readwrite/model/TelephonyData.go
index 5bf34e0fbd..890978abea 100644
--- a/plc4go/protocols/cbus/readwrite/model/TelephonyData.go
+++ b/plc4go/protocols/cbus/readwrite/model/TelephonyData.go
@@ -175,7 +175,7 @@ func TelephonyDataParseWithBufferProducer[T TelephonyData]() func(ctx context.Co
 }
 
 func TelephonyDataParseWithBuffer[T TelephonyData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewTelephonyData().parse(ctx, readBuffer)
+	v, err := (&_TelephonyData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/TemperatureBroadcastData.go b/plc4go/protocols/cbus/readwrite/model/TemperatureBroadcastData.go
index c0715ae80c..fce604f97d 100644
--- a/plc4go/protocols/cbus/readwrite/model/TemperatureBroadcastData.go
+++ b/plc4go/protocols/cbus/readwrite/model/TemperatureBroadcastData.go
@@ -163,7 +163,7 @@ func TemperatureBroadcastDataParseWithBufferProducer() func(ctx context.Context,
 }
 
 func TemperatureBroadcastDataParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TemperatureBroadcastData, error) {
-	v, err := NewTemperatureBroadcastData().parse(ctx, readBuffer)
+	v, err := (&_TemperatureBroadcastData{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/TriggerControlData.go b/plc4go/protocols/cbus/readwrite/model/TriggerControlData.go
index 44e4143c16..ee2c78db0b 100644
--- a/plc4go/protocols/cbus/readwrite/model/TriggerControlData.go
+++ b/plc4go/protocols/cbus/readwrite/model/TriggerControlData.go
@@ -184,7 +184,7 @@ func TriggerControlDataParseWithBufferProducer[T TriggerControlData]() func(ctx
 }
 
 func TriggerControlDataParseWithBuffer[T TriggerControlData](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewTriggerControlData().parse(ctx, readBuffer)
+	v, err := (&_TriggerControlData{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/cbus/readwrite/model/TriggerControlLabelOptions.go b/plc4go/protocols/cbus/readwrite/model/TriggerControlLabelOptions.go
index d50685c361..95f000bd5f 100644
--- a/plc4go/protocols/cbus/readwrite/model/TriggerControlLabelOptions.go
+++ b/plc4go/protocols/cbus/readwrite/model/TriggerControlLabelOptions.go
@@ -141,7 +141,7 @@ func TriggerControlLabelOptionsParseWithBufferProducer() func(ctx context.Contex
 }
 
 func TriggerControlLabelOptionsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TriggerControlLabelOptions, error) {
-	v, err := NewTriggerControlLabelOptions().parse(ctx, readBuffer)
+	v, err := (&_TriggerControlLabelOptions{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/UnitAddress.go b/plc4go/protocols/cbus/readwrite/model/UnitAddress.go
index 01697a8929..c2214fcb56 100644
--- a/plc4go/protocols/cbus/readwrite/model/UnitAddress.go
+++ b/plc4go/protocols/cbus/readwrite/model/UnitAddress.go
@@ -114,7 +114,7 @@ func UnitAddressParseWithBufferProducer() func(ctx context.Context, readBuffer u
 }
 
 func UnitAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (UnitAddress, error) {
-	v, err := NewUnitAddress().parse(ctx, readBuffer)
+	v, err := (&_UnitAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ZoneStatus.go b/plc4go/protocols/cbus/readwrite/model/ZoneStatus.go
index 0d550f7da2..3c116db32f 100644
--- a/plc4go/protocols/cbus/readwrite/model/ZoneStatus.go
+++ b/plc4go/protocols/cbus/readwrite/model/ZoneStatus.go
@@ -114,7 +114,7 @@ func ZoneStatusParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func ZoneStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ZoneStatus, error) {
-	v, err := NewZoneStatus().parse(ctx, readBuffer)
+	v, err := (&_ZoneStatus{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/df1/readwrite/model/DF1Command.go b/plc4go/protocols/df1/readwrite/model/DF1Command.go
index ed3a08daec..72ebb6ed00 100644
--- a/plc4go/protocols/df1/readwrite/model/DF1Command.go
+++ b/plc4go/protocols/df1/readwrite/model/DF1Command.go
@@ -155,7 +155,7 @@ func DF1CommandParseWithBufferProducer[T DF1Command]() func(ctx context.Context,
 }
 
 func DF1CommandParseWithBuffer[T DF1Command](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewDF1Command().parse(ctx, readBuffer)
+	v, err := (&_DF1Command{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/df1/readwrite/model/DF1Symbol.go b/plc4go/protocols/df1/readwrite/model/DF1Symbol.go
index 71ca82c484..fb13fee4a4 100644
--- a/plc4go/protocols/df1/readwrite/model/DF1Symbol.go
+++ b/plc4go/protocols/df1/readwrite/model/DF1Symbol.go
@@ -147,7 +147,7 @@ func DF1SymbolParseWithBufferProducer[T DF1Symbol]() func(ctx context.Context, r
 }
 
 func DF1SymbolParseWithBuffer[T DF1Symbol](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewDF1Symbol().parse(ctx, readBuffer)
+	v, err := (&_DF1Symbol{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/CIPAttributes.go b/plc4go/protocols/eip/readwrite/model/CIPAttributes.go
index 0f0fdbf056..4138988726 100644
--- a/plc4go/protocols/eip/readwrite/model/CIPAttributes.go
+++ b/plc4go/protocols/eip/readwrite/model/CIPAttributes.go
@@ -158,7 +158,7 @@ func CIPAttributesParseWithBufferProducer(packetLength uint16) func(ctx context.
 }
 
 func CIPAttributesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, packetLength uint16) (CIPAttributes, error) {
-	v, err := NewCIPAttributes(packetLength).parse(ctx, readBuffer, packetLength)
+	v, err := (&_CIPAttributes{PacketLength: packetLength}).parse(ctx, readBuffer, packetLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/CIPData.go b/plc4go/protocols/eip/readwrite/model/CIPData.go
index 16bb5a4578..d119b32d20 100644
--- a/plc4go/protocols/eip/readwrite/model/CIPData.go
+++ b/plc4go/protocols/eip/readwrite/model/CIPData.go
@@ -129,7 +129,7 @@ func CIPDataParseWithBufferProducer(packetLength uint16) func(ctx context.Contex
 }
 
 func CIPDataParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, packetLength uint16) (CIPData, error) {
-	v, err := NewCIPData(packetLength).parse(ctx, readBuffer, packetLength)
+	v, err := (&_CIPData{PacketLength: packetLength}).parse(ctx, readBuffer, packetLength)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/CIPDataConnected.go b/plc4go/protocols/eip/readwrite/model/CIPDataConnected.go
index f61d1016f7..79922d172f 100644
--- a/plc4go/protocols/eip/readwrite/model/CIPDataConnected.go
+++ b/plc4go/protocols/eip/readwrite/model/CIPDataConnected.go
@@ -124,7 +124,7 @@ func CIPDataConnectedParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func CIPDataConnectedParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (CIPDataConnected, error) {
-	v, err := NewCIPDataConnected().parse(ctx, readBuffer)
+	v, err := (&_CIPDataConnected{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/CipService.go b/plc4go/protocols/eip/readwrite/model/CipService.go
index 96c0f6d8c1..f170f4d6b0 100644
--- a/plc4go/protocols/eip/readwrite/model/CipService.go
+++ b/plc4go/protocols/eip/readwrite/model/CipService.go
@@ -136,7 +136,7 @@ func CipServiceParseWithBufferProducer[T CipService](connected bool, serviceLen
 }
 
 func CipServiceParseWithBuffer[T CipService](ctx context.Context, readBuffer utils.ReadBuffer, connected bool, serviceLen uint16) (T, error) {
-	v, err := NewCipService(serviceLen).parse(ctx, readBuffer, connected, serviceLen)
+	v, err := (&_CipService{ServiceLen: serviceLen}).parse(ctx, readBuffer, connected, serviceLen)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/ClassSegment.go b/plc4go/protocols/eip/readwrite/model/ClassSegment.go
index 1e12683705..4d9bac43ba 100644
--- a/plc4go/protocols/eip/readwrite/model/ClassSegment.go
+++ b/plc4go/protocols/eip/readwrite/model/ClassSegment.go
@@ -144,7 +144,7 @@ func ClassSegmentParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func ClassSegmentParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ClassSegment, error) {
-	v, err := NewClassSegment().parse(ctx, readBuffer)
+	v, err := (&_ClassSegment{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/CommandSpecificDataItem.go b/plc4go/protocols/eip/readwrite/model/CommandSpecificDataItem.go
index 9ac73b1487..d7defd15c9 100644
--- a/plc4go/protocols/eip/readwrite/model/CommandSpecificDataItem.go
+++ b/plc4go/protocols/eip/readwrite/model/CommandSpecificDataItem.go
@@ -125,7 +125,7 @@ func CommandSpecificDataItemParseWithBufferProducer[T CommandSpecificDataItem]()
 }
 
 func CommandSpecificDataItemParseWithBuffer[T CommandSpecificDataItem](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewCommandSpecificDataItem().parse(ctx, readBuffer)
+	v, err := (&_CommandSpecificDataItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/DataSegmentType.go b/plc4go/protocols/eip/readwrite/model/DataSegmentType.go
index 84b43fd285..bfcef3d3d7 100644
--- a/plc4go/protocols/eip/readwrite/model/DataSegmentType.go
+++ b/plc4go/protocols/eip/readwrite/model/DataSegmentType.go
@@ -125,7 +125,7 @@ func DataSegmentTypeParseWithBufferProducer[T DataSegmentType]() func(ctx contex
 }
 
 func DataSegmentTypeParseWithBuffer[T DataSegmentType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewDataSegmentType().parse(ctx, readBuffer)
+	v, err := (&_DataSegmentType{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/EipConstants.go b/plc4go/protocols/eip/readwrite/model/EipConstants.go
index a41a8375f8..2bf0baf4df 100644
--- a/plc4go/protocols/eip/readwrite/model/EipConstants.go
+++ b/plc4go/protocols/eip/readwrite/model/EipConstants.go
@@ -122,7 +122,7 @@ func EipConstantsParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func EipConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (EipConstants, error) {
-	v, err := NewEipConstants().parse(ctx, readBuffer)
+	v, err := (&_EipConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/EipPacket.go b/plc4go/protocols/eip/readwrite/model/EipPacket.go
index 5b577d85ad..24cbd99ec0 100644
--- a/plc4go/protocols/eip/readwrite/model/EipPacket.go
+++ b/plc4go/protocols/eip/readwrite/model/EipPacket.go
@@ -184,7 +184,7 @@ func EipPacketParseWithBufferProducer[T EipPacket](response bool) func(ctx conte
 }
 
 func EipPacketParseWithBuffer[T EipPacket](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewEipPacket().parse(ctx, readBuffer, response)
+	v, err := (&_EipPacket{}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/InstanceSegment.go b/plc4go/protocols/eip/readwrite/model/InstanceSegment.go
index a0f28d5164..c04a27c2c2 100644
--- a/plc4go/protocols/eip/readwrite/model/InstanceSegment.go
+++ b/plc4go/protocols/eip/readwrite/model/InstanceSegment.go
@@ -144,7 +144,7 @@ func InstanceSegmentParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func InstanceSegmentParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (InstanceSegment, error) {
-	v, err := NewInstanceSegment().parse(ctx, readBuffer)
+	v, err := (&_InstanceSegment{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/LogicalSegmentType.go b/plc4go/protocols/eip/readwrite/model/LogicalSegmentType.go
index 0969e3c0a9..9dd2185625 100644
--- a/plc4go/protocols/eip/readwrite/model/LogicalSegmentType.go
+++ b/plc4go/protocols/eip/readwrite/model/LogicalSegmentType.go
@@ -125,7 +125,7 @@ func LogicalSegmentTypeParseWithBufferProducer[T LogicalSegmentType]() func(ctx
 }
 
 func LogicalSegmentTypeParseWithBuffer[T LogicalSegmentType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewLogicalSegmentType().parse(ctx, readBuffer)
+	v, err := (&_LogicalSegmentType{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/NetworkConnectionParameters.go b/plc4go/protocols/eip/readwrite/model/NetworkConnectionParameters.go
index c7fcb89f88..86fd9c4a93 100644
--- a/plc4go/protocols/eip/readwrite/model/NetworkConnectionParameters.go
+++ b/plc4go/protocols/eip/readwrite/model/NetworkConnectionParameters.go
@@ -167,7 +167,7 @@ func NetworkConnectionParametersParseWithBufferProducer() func(ctx context.Conte
 }
 
 func NetworkConnectionParametersParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NetworkConnectionParameters, error) {
-	v, err := NewNetworkConnectionParameters().parse(ctx, readBuffer)
+	v, err := (&_NetworkConnectionParameters{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/PathSegment.go b/plc4go/protocols/eip/readwrite/model/PathSegment.go
index 56181fbbbd..24e2fcf1db 100644
--- a/plc4go/protocols/eip/readwrite/model/PathSegment.go
+++ b/plc4go/protocols/eip/readwrite/model/PathSegment.go
@@ -125,7 +125,7 @@ func PathSegmentParseWithBufferProducer[T PathSegment]() func(ctx context.Contex
 }
 
 func PathSegmentParseWithBuffer[T PathSegment](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewPathSegment().parse(ctx, readBuffer)
+	v, err := (&_PathSegment{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/PortSegmentType.go b/plc4go/protocols/eip/readwrite/model/PortSegmentType.go
index e1f58b7ecc..4a9060bcd1 100644
--- a/plc4go/protocols/eip/readwrite/model/PortSegmentType.go
+++ b/plc4go/protocols/eip/readwrite/model/PortSegmentType.go
@@ -125,7 +125,7 @@ func PortSegmentTypeParseWithBufferProducer[T PortSegmentType]() func(ctx contex
 }
 
 func PortSegmentTypeParseWithBuffer[T PortSegmentType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewPortSegmentType().parse(ctx, readBuffer)
+	v, err := (&_PortSegmentType{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/eip/readwrite/model/Services.go b/plc4go/protocols/eip/readwrite/model/Services.go
index b0f68964fc..9f0aa654c6 100644
--- a/plc4go/protocols/eip/readwrite/model/Services.go
+++ b/plc4go/protocols/eip/readwrite/model/Services.go
@@ -139,7 +139,7 @@ func ServicesParseWithBufferProducer(servicesLen uint16) func(ctx context.Contex
 }
 
 func ServicesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, servicesLen uint16) (Services, error) {
-	v, err := NewServices(servicesLen).parse(ctx, readBuffer, servicesLen)
+	v, err := (&_Services{ServicesLen: servicesLen}).parse(ctx, readBuffer, servicesLen)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/TransportType.go b/plc4go/protocols/eip/readwrite/model/TransportType.go
index 354c44416f..bf3c85cfde 100644
--- a/plc4go/protocols/eip/readwrite/model/TransportType.go
+++ b/plc4go/protocols/eip/readwrite/model/TransportType.go
@@ -134,7 +134,7 @@ func TransportTypeParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func TransportTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TransportType, error) {
-	v, err := NewTransportType().parse(ctx, readBuffer)
+	v, err := (&_TransportType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/eip/readwrite/model/TypeId.go b/plc4go/protocols/eip/readwrite/model/TypeId.go
index ec416e0851..da241c7f53 100644
--- a/plc4go/protocols/eip/readwrite/model/TypeId.go
+++ b/plc4go/protocols/eip/readwrite/model/TypeId.go
@@ -125,7 +125,7 @@ func TypeIdParseWithBufferProducer[T TypeId]() func(ctx context.Context, readBuf
 }
 
 func TypeIdParseWithBuffer[T TypeId](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewTypeId().parse(ctx, readBuffer)
+	v, err := (&_TypeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go b/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go
index 1781cbb0bd..8b6083ca3b 100644
--- a/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go
+++ b/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go
@@ -130,7 +130,7 @@ func FirmataCommandParseWithBufferProducer[T FirmataCommand](response bool) func
 }
 
 func FirmataCommandParseWithBuffer[T FirmataCommand](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewFirmataCommand(response).parse(ctx, readBuffer, response)
+	v, err := (&_FirmataCommand{Response: response}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go b/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go
index 6c96173d23..38afa6d16f 100644
--- a/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go
+++ b/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go
@@ -132,7 +132,7 @@ func FirmataMessageParseWithBufferProducer[T FirmataMessage](response bool) func
 }
 
 func FirmataMessageParseWithBuffer[T FirmataMessage](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewFirmataMessage(response).parse(ctx, readBuffer, response)
+	v, err := (&_FirmataMessage{Response: response}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/firmata/readwrite/model/SysexCommand.go b/plc4go/protocols/firmata/readwrite/model/SysexCommand.go
index b2a12cae85..e55edb6f3c 100644
--- a/plc4go/protocols/firmata/readwrite/model/SysexCommand.go
+++ b/plc4go/protocols/firmata/readwrite/model/SysexCommand.go
@@ -127,7 +127,7 @@ func SysexCommandParseWithBufferProducer[T SysexCommand](response bool) func(ctx
 }
 
 func SysexCommandParseWithBuffer[T SysexCommand](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewSysexCommand().parse(ctx, readBuffer, response)
+	v, err := (&_SysexCommand{}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/Apdu.go b/plc4go/protocols/knxnetip/readwrite/model/Apdu.go
index ef2f43d627..2256e847ef 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/Apdu.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/Apdu.go
@@ -160,7 +160,7 @@ func ApduParseWithBufferProducer[T Apdu](dataLength uint8) func(ctx context.Cont
 }
 
 func ApduParseWithBuffer[T Apdu](ctx context.Context, readBuffer utils.ReadBuffer, dataLength uint8) (T, error) {
-	v, err := NewApdu(dataLength).parse(ctx, readBuffer, dataLength)
+	v, err := (&_Apdu{DataLength: dataLength}).parse(ctx, readBuffer, dataLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go b/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go
index fe6e050219..de57c1d19b 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go
@@ -125,7 +125,7 @@ func ApduControlParseWithBufferProducer[T ApduControl]() func(ctx context.Contex
 }
 
 func ApduControlParseWithBuffer[T ApduControl](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewApduControl().parse(ctx, readBuffer)
+	v, err := (&_ApduControl{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ApduData.go b/plc4go/protocols/knxnetip/readwrite/model/ApduData.go
index 123703ea04..2e002e2548 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ApduData.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ApduData.go
@@ -130,7 +130,7 @@ func ApduDataParseWithBufferProducer[T ApduData](dataLength uint8) func(ctx cont
 }
 
 func ApduDataParseWithBuffer[T ApduData](ctx context.Context, readBuffer utils.ReadBuffer, dataLength uint8) (T, error) {
-	v, err := NewApduData(dataLength).parse(ctx, readBuffer, dataLength)
+	v, err := (&_ApduData{DataLength: dataLength}).parse(ctx, readBuffer, dataLength)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go b/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go
index edcdca7c53..1c122d7aa1 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go
@@ -130,7 +130,7 @@ func ApduDataExtParseWithBufferProducer[T ApduDataExt](length uint8) func(ctx co
 }
 
 func ApduDataExtParseWithBuffer[T ApduDataExt](ctx context.Context, readBuffer utils.ReadBuffer, length uint8) (T, error) {
-	v, err := NewApduDataExt(length).parse(ctx, readBuffer, length)
+	v, err := (&_ApduDataExt{Length: length}).parse(ctx, readBuffer, length)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/CEMI.go b/plc4go/protocols/knxnetip/readwrite/model/CEMI.go
index 3f135e4680..c3ab7649bf 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/CEMI.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/CEMI.go
@@ -130,7 +130,7 @@ func CEMIParseWithBufferProducer[T CEMI](size uint16) func(ctx context.Context,
 }
 
 func CEMIParseWithBuffer[T CEMI](ctx context.Context, readBuffer utils.ReadBuffer, size uint16) (T, error) {
-	v, err := NewCEMI(size).parse(ctx, readBuffer, size)
+	v, err := (&_CEMI{Size: size}).parse(ctx, readBuffer, size)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go b/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go
index 34f87d84ca..1bc794cbb7 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go
@@ -125,7 +125,7 @@ func CEMIAdditionalInformationParseWithBufferProducer[T CEMIAdditionalInformatio
 }
 
 func CEMIAdditionalInformationParseWithBuffer[T CEMIAdditionalInformation](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewCEMIAdditionalInformation().parse(ctx, readBuffer)
+	v, err := (&_CEMIAdditionalInformation{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ChannelInformation.go b/plc4go/protocols/knxnetip/readwrite/model/ChannelInformation.go
index ac10949e7a..e1766e7439 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ChannelInformation.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ChannelInformation.go
@@ -124,7 +124,7 @@ func ChannelInformationParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func ChannelInformationParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ChannelInformation, error) {
-	v, err := NewChannelInformation().parse(ctx, readBuffer)
+	v, err := (&_ChannelInformation{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go b/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go
index 8af0f5ccf9..66c23eff15 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go
@@ -121,7 +121,7 @@ func ComObjectTableParseWithBufferProducer[T ComObjectTable](firmwareType Firmwa
 }
 
 func ComObjectTableParseWithBuffer[T ComObjectTable](ctx context.Context, readBuffer utils.ReadBuffer, firmwareType FirmwareType) (T, error) {
-	v, err := NewComObjectTable().parse(ctx, readBuffer, firmwareType)
+	v, err := (&_ComObjectTable{}).parse(ctx, readBuffer, firmwareType)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go b/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go
index d27527f98c..91de2b1b24 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go
@@ -128,7 +128,7 @@ func ConnectionRequestInformationParseWithBufferProducer[T ConnectionRequestInfo
 }
 
 func ConnectionRequestInformationParseWithBuffer[T ConnectionRequestInformation](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewConnectionRequestInformation().parse(ctx, readBuffer)
+	v, err := (&_ConnectionRequestInformation{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go b/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go
index 83e883459e..825be1e40d 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go
@@ -128,7 +128,7 @@ func ConnectionResponseDataBlockParseWithBufferProducer[T ConnectionResponseData
 }
 
 func ConnectionResponseDataBlockParseWithBuffer[T ConnectionResponseDataBlock](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewConnectionResponseDataBlock().parse(ctx, readBuffer)
+	v, err := (&_ConnectionResponseDataBlock{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/DIBDeviceInfo.go b/plc4go/protocols/knxnetip/readwrite/model/DIBDeviceInfo.go
index de1f2ba10a..d3bd3db8db 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/DIBDeviceInfo.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/DIBDeviceInfo.go
@@ -201,7 +201,7 @@ func DIBDeviceInfoParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func DIBDeviceInfoParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DIBDeviceInfo, error) {
-	v, err := NewDIBDeviceInfo().parse(ctx, readBuffer)
+	v, err := (&_DIBDeviceInfo{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/DIBSuppSvcFamilies.go b/plc4go/protocols/knxnetip/readwrite/model/DIBSuppSvcFamilies.go
index 3c0fece312..84dc9a0b9f 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/DIBSuppSvcFamilies.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/DIBSuppSvcFamilies.go
@@ -131,7 +131,7 @@ func DIBSuppSvcFamiliesParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func DIBSuppSvcFamiliesParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DIBSuppSvcFamilies, error) {
-	v, err := NewDIBSuppSvcFamilies().parse(ctx, readBuffer)
+	v, err := (&_DIBSuppSvcFamilies{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationAckDataBlock.go b/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationAckDataBlock.go
index e41ebb1c84..22e6f96bf3 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationAckDataBlock.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationAckDataBlock.go
@@ -137,7 +137,7 @@ func DeviceConfigurationAckDataBlockParseWithBufferProducer() func(ctx context.C
 }
 
 func DeviceConfigurationAckDataBlockParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DeviceConfigurationAckDataBlock, error) {
-	v, err := NewDeviceConfigurationAckDataBlock().parse(ctx, readBuffer)
+	v, err := (&_DeviceConfigurationAckDataBlock{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationRequestDataBlock.go b/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationRequestDataBlock.go
index f4b2bff3d3..4502e87ff3 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationRequestDataBlock.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/DeviceConfigurationRequestDataBlock.go
@@ -132,7 +132,7 @@ func DeviceConfigurationRequestDataBlockParseWithBufferProducer() func(ctx conte
 }
 
 func DeviceConfigurationRequestDataBlockParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DeviceConfigurationRequestDataBlock, error) {
-	v, err := NewDeviceConfigurationRequestDataBlock().parse(ctx, readBuffer)
+	v, err := (&_DeviceConfigurationRequestDataBlock{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/DeviceDescriptorType2.go b/plc4go/protocols/knxnetip/readwrite/model/DeviceDescriptorType2.go
index 412681fb8b..22e539568a 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/DeviceDescriptorType2.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/DeviceDescriptorType2.go
@@ -204,7 +204,7 @@ func DeviceDescriptorType2ParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func DeviceDescriptorType2ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DeviceDescriptorType2, error) {
-	v, err := NewDeviceDescriptorType2().parse(ctx, readBuffer)
+	v, err := (&_DeviceDescriptorType2{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/DeviceStatus.go b/plc4go/protocols/knxnetip/readwrite/model/DeviceStatus.go
index 776209ecb9..2de1b5e155 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/DeviceStatus.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/DeviceStatus.go
@@ -119,7 +119,7 @@ func DeviceStatusParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func DeviceStatusParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DeviceStatus, error) {
-	v, err := NewDeviceStatus().parse(ctx, readBuffer)
+	v, err := (&_DeviceStatus{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType1.go b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType1.go
index 40292909cf..e5ed647b19 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType1.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType1.go
@@ -189,7 +189,7 @@ func GroupObjectDescriptorRealisationType1ParseWithBufferProducer() func(ctx con
 }
 
 func GroupObjectDescriptorRealisationType1ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GroupObjectDescriptorRealisationType1, error) {
-	v, err := NewGroupObjectDescriptorRealisationType1().parse(ctx, readBuffer)
+	v, err := (&_GroupObjectDescriptorRealisationType1{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType2.go b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType2.go
index 6e7dcf5cf8..2b88281eb1 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType2.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType2.go
@@ -194,7 +194,7 @@ func GroupObjectDescriptorRealisationType2ParseWithBufferProducer() func(ctx con
 }
 
 func GroupObjectDescriptorRealisationType2ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GroupObjectDescriptorRealisationType2, error) {
-	v, err := NewGroupObjectDescriptorRealisationType2().parse(ctx, readBuffer)
+	v, err := (&_GroupObjectDescriptorRealisationType2{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType6.go b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType6.go
index 40841a48f0..ef3c768c89 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType6.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType6.go
@@ -92,7 +92,7 @@ func GroupObjectDescriptorRealisationType6ParseWithBufferProducer() func(ctx con
 }
 
 func GroupObjectDescriptorRealisationType6ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GroupObjectDescriptorRealisationType6, error) {
-	v, err := NewGroupObjectDescriptorRealisationType6().parse(ctx, readBuffer)
+	v, err := (&_GroupObjectDescriptorRealisationType6{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType7.go b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType7.go
index 3cae532ca0..0879ed653a 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType7.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationType7.go
@@ -194,7 +194,7 @@ func GroupObjectDescriptorRealisationType7ParseWithBufferProducer() func(ctx con
 }
 
 func GroupObjectDescriptorRealisationType7ParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GroupObjectDescriptorRealisationType7, error) {
-	v, err := NewGroupObjectDescriptorRealisationType7().parse(ctx, readBuffer)
+	v, err := (&_GroupObjectDescriptorRealisationType7{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationTypeB.go b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationTypeB.go
index 4c94ce06cf..9ba403dcbc 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationTypeB.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/GroupObjectDescriptorRealisationTypeB.go
@@ -184,7 +184,7 @@ func GroupObjectDescriptorRealisationTypeBParseWithBufferProducer() func(ctx con
 }
 
 func GroupObjectDescriptorRealisationTypeBParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GroupObjectDescriptorRealisationTypeB, error) {
-	v, err := NewGroupObjectDescriptorRealisationTypeB().parse(ctx, readBuffer)
+	v, err := (&_GroupObjectDescriptorRealisationTypeB{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/HPAIControlEndpoint.go b/plc4go/protocols/knxnetip/readwrite/model/HPAIControlEndpoint.go
index f3681f0f73..29eeb40e86 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/HPAIControlEndpoint.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/HPAIControlEndpoint.go
@@ -137,7 +137,7 @@ func HPAIControlEndpointParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func HPAIControlEndpointParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HPAIControlEndpoint, error) {
-	v, err := NewHPAIControlEndpoint().parse(ctx, readBuffer)
+	v, err := (&_HPAIControlEndpoint{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/HPAIDataEndpoint.go b/plc4go/protocols/knxnetip/readwrite/model/HPAIDataEndpoint.go
index 4114da06c2..951d36b84c 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/HPAIDataEndpoint.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/HPAIDataEndpoint.go
@@ -137,7 +137,7 @@ func HPAIDataEndpointParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func HPAIDataEndpointParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HPAIDataEndpoint, error) {
-	v, err := NewHPAIDataEndpoint().parse(ctx, readBuffer)
+	v, err := (&_HPAIDataEndpoint{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/HPAIDiscoveryEndpoint.go b/plc4go/protocols/knxnetip/readwrite/model/HPAIDiscoveryEndpoint.go
index a940353cd5..fd7abd7b30 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/HPAIDiscoveryEndpoint.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/HPAIDiscoveryEndpoint.go
@@ -137,7 +137,7 @@ func HPAIDiscoveryEndpointParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func HPAIDiscoveryEndpointParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (HPAIDiscoveryEndpoint, error) {
-	v, err := NewHPAIDiscoveryEndpoint().parse(ctx, readBuffer)
+	v, err := (&_HPAIDiscoveryEndpoint{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/IPAddress.go b/plc4go/protocols/knxnetip/readwrite/model/IPAddress.go
index 6064875b43..ab3a846b3a 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/IPAddress.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/IPAddress.go
@@ -116,7 +116,7 @@ func IPAddressParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func IPAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (IPAddress, error) {
-	v, err := NewIPAddress().parse(ctx, readBuffer)
+	v, err := (&_IPAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/KnxAddress.go b/plc4go/protocols/knxnetip/readwrite/model/KnxAddress.go
index 0356576632..69de57a43b 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/KnxAddress.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/KnxAddress.go
@@ -134,7 +134,7 @@ func KnxAddressParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func KnxAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (KnxAddress, error) {
-	v, err := NewKnxAddress().parse(ctx, readBuffer)
+	v, err := (&_KnxAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go b/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go
index ca1c718d31..fa54f8da7f 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go
@@ -121,7 +121,7 @@ func KnxGroupAddressParseWithBufferProducer[T KnxGroupAddress](numLevels uint8)
 }
 
 func KnxGroupAddressParseWithBuffer[T KnxGroupAddress](ctx context.Context, readBuffer utils.ReadBuffer, numLevels uint8) (T, error) {
-	v, err := NewKnxGroupAddress().parse(ctx, readBuffer, numLevels)
+	v, err := (&_KnxGroupAddress{}).parse(ctx, readBuffer, numLevels)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go b/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go
index 24ab0339c7..ad19ebd288 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go
@@ -153,7 +153,7 @@ func KnxNetIpMessageParseWithBufferProducer[T KnxNetIpMessage]() func(ctx contex
 }
 
 func KnxNetIpMessageParseWithBuffer[T KnxNetIpMessage](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewKnxNetIpMessage().parse(ctx, readBuffer)
+	v, err := (&_KnxNetIpMessage{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go b/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go
index d27dc43dea..1d5c3392e9 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go
@@ -189,7 +189,7 @@ func LDataFrameParseWithBufferProducer[T LDataFrame]() func(ctx context.Context,
 }
 
 func LDataFrameParseWithBuffer[T LDataFrame](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewLDataFrame().parse(ctx, readBuffer)
+	v, err := (&_LDataFrame{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/MACAddress.go b/plc4go/protocols/knxnetip/readwrite/model/MACAddress.go
index 1bd96a305c..bee5d9ae88 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/MACAddress.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/MACAddress.go
@@ -116,7 +116,7 @@ func MACAddressParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func MACAddressParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (MACAddress, error) {
-	v, err := NewMACAddress().parse(ctx, readBuffer)
+	v, err := (&_MACAddress{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ProjectInstallationIdentifier.go b/plc4go/protocols/knxnetip/readwrite/model/ProjectInstallationIdentifier.go
index bc7c67174b..fdaada6a63 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ProjectInstallationIdentifier.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ProjectInstallationIdentifier.go
@@ -124,7 +124,7 @@ func ProjectInstallationIdentifierParseWithBufferProducer() func(ctx context.Con
 }
 
 func ProjectInstallationIdentifierParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ProjectInstallationIdentifier, error) {
-	v, err := NewProjectInstallationIdentifier().parse(ctx, readBuffer)
+	v, err := (&_ProjectInstallationIdentifier{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/RelativeTimestamp.go b/plc4go/protocols/knxnetip/readwrite/model/RelativeTimestamp.go
index 95ce7f6a92..6487010ee5 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/RelativeTimestamp.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/RelativeTimestamp.go
@@ -114,7 +114,7 @@ func RelativeTimestampParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func RelativeTimestampParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (RelativeTimestamp, error) {
-	v, err := NewRelativeTimestamp().parse(ctx, readBuffer)
+	v, err := (&_RelativeTimestamp{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go b/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go
index 29d4a46877..3745c6ef9f 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go
@@ -125,7 +125,7 @@ func ServiceIdParseWithBufferProducer[T ServiceId]() func(ctx context.Context, r
 }
 
 func ServiceIdParseWithBuffer[T ServiceId](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewServiceId().parse(ctx, readBuffer)
+	v, err := (&_ServiceId{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/knxnetip/readwrite/model/TunnelingRequestDataBlock.go b/plc4go/protocols/knxnetip/readwrite/model/TunnelingRequestDataBlock.go
index c7f8aa07ef..c3930d33f8 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/TunnelingRequestDataBlock.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/TunnelingRequestDataBlock.go
@@ -132,7 +132,7 @@ func TunnelingRequestDataBlockParseWithBufferProducer() func(ctx context.Context
 }
 
 func TunnelingRequestDataBlockParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TunnelingRequestDataBlock, error) {
-	v, err := NewTunnelingRequestDataBlock().parse(ctx, readBuffer)
+	v, err := (&_TunnelingRequestDataBlock{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/knxnetip/readwrite/model/TunnelingResponseDataBlock.go b/plc4go/protocols/knxnetip/readwrite/model/TunnelingResponseDataBlock.go
index 8a10cfcdcd..90a6732652 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/TunnelingResponseDataBlock.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/TunnelingResponseDataBlock.go
@@ -137,7 +137,7 @@ func TunnelingResponseDataBlockParseWithBufferProducer() func(ctx context.Contex
 }
 
 func TunnelingResponseDataBlockParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TunnelingResponseDataBlock, error) {
-	v, err := NewTunnelingResponseDataBlock().parse(ctx, readBuffer)
+	v, err := (&_TunnelingResponseDataBlock{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusADU.go b/plc4go/protocols/modbus/readwrite/model/ModbusADU.go
index 9f295c5dd2..7361bf53f7 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusADU.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusADU.go
@@ -127,7 +127,7 @@ func ModbusADUParseWithBufferProducer[T ModbusADU](driverType DriverType, respon
 }
 
 func ModbusADUParseWithBuffer[T ModbusADU](ctx context.Context, readBuffer utils.ReadBuffer, driverType DriverType, response bool) (T, error) {
-	v, err := NewModbusADU(response).parse(ctx, readBuffer, driverType, response)
+	v, err := (&_ModbusADU{Response: response}).parse(ctx, readBuffer, driverType, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusConstants.go b/plc4go/protocols/modbus/readwrite/model/ModbusConstants.go
index c6b315b1d5..639c527f89 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusConstants.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusConstants.go
@@ -114,7 +114,7 @@ func ModbusConstantsParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func ModbusConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ModbusConstants, error) {
-	v, err := NewModbusConstants().parse(ctx, readBuffer)
+	v, err := (&_ModbusConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusDeviceInformationObject.go b/plc4go/protocols/modbus/readwrite/model/ModbusDeviceInformationObject.go
index a56c0bc5fc..47e0e7bb33 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusDeviceInformationObject.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusDeviceInformationObject.go
@@ -129,7 +129,7 @@ func ModbusDeviceInformationObjectParseWithBufferProducer() func(ctx context.Con
 }
 
 func ModbusDeviceInformationObjectParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ModbusDeviceInformationObject, error) {
-	v, err := NewModbusDeviceInformationObject().parse(ctx, readBuffer)
+	v, err := (&_ModbusDeviceInformationObject{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go b/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go
index f45617b6e5..bd8e47697d 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go
@@ -131,7 +131,7 @@ func ModbusPDUParseWithBufferProducer[T ModbusPDU](response bool) func(ctx conte
 }
 
 func ModbusPDUParseWithBuffer[T ModbusPDU](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewModbusPDU().parse(ctx, readBuffer, response)
+	v, err := (&_ModbusPDU{}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordRequestItem.go b/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordRequestItem.go
index a62d4e3eed..302c0a2647 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordRequestItem.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordRequestItem.go
@@ -144,7 +144,7 @@ func ModbusPDUReadFileRecordRequestItemParseWithBufferProducer() func(ctx contex
 }
 
 func ModbusPDUReadFileRecordRequestItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ModbusPDUReadFileRecordRequestItem, error) {
-	v, err := NewModbusPDUReadFileRecordRequestItem().parse(ctx, readBuffer)
+	v, err := (&_ModbusPDUReadFileRecordRequestItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go b/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go
index 4bb604da26..cfdbc5eae7 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusPDUReadFileRecordResponseItem.go
@@ -129,7 +129,7 @@ func ModbusPDUReadFileRecordResponseItemParseWithBufferProducer() func(ctx conte
 }
 
 func ModbusPDUReadFileRecordResponseItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ModbusPDUReadFileRecordResponseItem, error) {
-	v, err := NewModbusPDUReadFileRecordResponseItem().parse(ctx, readBuffer)
+	v, err := (&_ModbusPDUReadFileRecordResponseItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go b/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go
index e4eeab91f4..ef46ce3579 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordRequestItem.go
@@ -149,7 +149,7 @@ func ModbusPDUWriteFileRecordRequestItemParseWithBufferProducer() func(ctx conte
 }
 
 func ModbusPDUWriteFileRecordRequestItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ModbusPDUWriteFileRecordRequestItem, error) {
-	v, err := NewModbusPDUWriteFileRecordRequestItem().parse(ctx, readBuffer)
+	v, err := (&_ModbusPDUWriteFileRecordRequestItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go b/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go
index 31e41dc3e7..61fb92ca7a 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusPDUWriteFileRecordResponseItem.go
@@ -149,7 +149,7 @@ func ModbusPDUWriteFileRecordResponseItemParseWithBufferProducer() func(ctx cont
 }
 
 func ModbusPDUWriteFileRecordResponseItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ModbusPDUWriteFileRecordResponseItem, error) {
-	v, err := NewModbusPDUWriteFileRecordResponseItem().parse(ctx, readBuffer)
+	v, err := (&_ModbusPDUWriteFileRecordResponseItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ApplicationInstanceCertificate.go b/plc4go/protocols/opcua/readwrite/model/ApplicationInstanceCertificate.go
index c6ee9f7e7e..7c23158937 100644
--- a/plc4go/protocols/opcua/readwrite/model/ApplicationInstanceCertificate.go
+++ b/plc4go/protocols/opcua/readwrite/model/ApplicationInstanceCertificate.go
@@ -92,7 +92,7 @@ func ApplicationInstanceCertificateParseWithBufferProducer() func(ctx context.Co
 }
 
 func ApplicationInstanceCertificateParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ApplicationInstanceCertificate, error) {
-	v, err := NewApplicationInstanceCertificate().parse(ctx, readBuffer)
+	v, err := (&_ApplicationInstanceCertificate{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/AudioDataType.go b/plc4go/protocols/opcua/readwrite/model/AudioDataType.go
index 7f6c96aa82..2b775fd5d5 100644
--- a/plc4go/protocols/opcua/readwrite/model/AudioDataType.go
+++ b/plc4go/protocols/opcua/readwrite/model/AudioDataType.go
@@ -92,7 +92,7 @@ func AudioDataTypeParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func AudioDataTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AudioDataType, error) {
-	v, err := NewAudioDataType().parse(ctx, readBuffer)
+	v, err := (&_AudioDataType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/BitFieldMaskDataType.go b/plc4go/protocols/opcua/readwrite/model/BitFieldMaskDataType.go
index 5174116b8f..2e6d2f4efc 100644
--- a/plc4go/protocols/opcua/readwrite/model/BitFieldMaskDataType.go
+++ b/plc4go/protocols/opcua/readwrite/model/BitFieldMaskDataType.go
@@ -92,7 +92,7 @@ func BitFieldMaskDataTypeParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func BitFieldMaskDataTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (BitFieldMaskDataType, error) {
-	v, err := NewBitFieldMaskDataType().parse(ctx, readBuffer)
+	v, err := (&_BitFieldMaskDataType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ByteStringArray.go b/plc4go/protocols/opcua/readwrite/model/ByteStringArray.go
index a6923167e5..2db10fb639 100644
--- a/plc4go/protocols/opcua/readwrite/model/ByteStringArray.go
+++ b/plc4go/protocols/opcua/readwrite/model/ByteStringArray.go
@@ -126,7 +126,7 @@ func ByteStringArrayParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func ByteStringArrayParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ByteStringArray, error) {
-	v, err := NewByteStringArray().parse(ctx, readBuffer)
+	v, err := (&_ByteStringArray{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ByteStringNodeId.go b/plc4go/protocols/opcua/readwrite/model/ByteStringNodeId.go
index b0a59fb7a4..522bb8061e 100644
--- a/plc4go/protocols/opcua/readwrite/model/ByteStringNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/ByteStringNodeId.go
@@ -124,7 +124,7 @@ func ByteStringNodeIdParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func ByteStringNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ByteStringNodeId, error) {
-	v, err := NewByteStringNodeId().parse(ctx, readBuffer)
+	v, err := (&_ByteStringNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ContinuationPoint.go b/plc4go/protocols/opcua/readwrite/model/ContinuationPoint.go
index e8ee52c373..3b8afcdabf 100644
--- a/plc4go/protocols/opcua/readwrite/model/ContinuationPoint.go
+++ b/plc4go/protocols/opcua/readwrite/model/ContinuationPoint.go
@@ -92,7 +92,7 @@ func ContinuationPointParseWithBufferProducer() func(ctx context.Context, readBu
 }
 
 func ContinuationPointParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ContinuationPoint, error) {
-	v, err := NewContinuationPoint().parse(ctx, readBuffer)
+	v, err := (&_ContinuationPoint{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/Counter.go b/plc4go/protocols/opcua/readwrite/model/Counter.go
index d6ebbbcf49..d75660731b 100644
--- a/plc4go/protocols/opcua/readwrite/model/Counter.go
+++ b/plc4go/protocols/opcua/readwrite/model/Counter.go
@@ -92,7 +92,7 @@ func CounterParseWithBufferProducer() func(ctx context.Context, readBuffer utils
 }
 
 func CounterParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Counter, error) {
-	v, err := NewCounter().parse(ctx, readBuffer)
+	v, err := (&_Counter{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/DataValue.go b/plc4go/protocols/opcua/readwrite/model/DataValue.go
index 1ad8b1630b..58194807b2 100644
--- a/plc4go/protocols/opcua/readwrite/model/DataValue.go
+++ b/plc4go/protocols/opcua/readwrite/model/DataValue.go
@@ -241,7 +241,7 @@ func DataValueParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func DataValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DataValue, error) {
-	v, err := NewDataValue().parse(ctx, readBuffer)
+	v, err := (&_DataValue{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/DateString.go b/plc4go/protocols/opcua/readwrite/model/DateString.go
index 2daedc5c61..5c3baf8a50 100644
--- a/plc4go/protocols/opcua/readwrite/model/DateString.go
+++ b/plc4go/protocols/opcua/readwrite/model/DateString.go
@@ -92,7 +92,7 @@ func DateStringParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func DateStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DateString, error) {
-	v, err := NewDateString().parse(ctx, readBuffer)
+	v, err := (&_DateString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/DecimalString.go b/plc4go/protocols/opcua/readwrite/model/DecimalString.go
index 683bee6ec4..976f58c9bd 100644
--- a/plc4go/protocols/opcua/readwrite/model/DecimalString.go
+++ b/plc4go/protocols/opcua/readwrite/model/DecimalString.go
@@ -92,7 +92,7 @@ func DecimalStringParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func DecimalStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DecimalString, error) {
-	v, err := NewDecimalString().parse(ctx, readBuffer)
+	v, err := (&_DecimalString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/DiagnosticInfo.go b/plc4go/protocols/opcua/readwrite/model/DiagnosticInfo.go
index 66672069ce..9f1ba1cefb 100644
--- a/plc4go/protocols/opcua/readwrite/model/DiagnosticInfo.go
+++ b/plc4go/protocols/opcua/readwrite/model/DiagnosticInfo.go
@@ -263,7 +263,7 @@ func DiagnosticInfoParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func DiagnosticInfoParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DiagnosticInfo, error) {
-	v, err := NewDiagnosticInfo().parse(ctx, readBuffer)
+	v, err := (&_DiagnosticInfo{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/DurationString.go b/plc4go/protocols/opcua/readwrite/model/DurationString.go
index 6578b96f54..91e65e0141 100644
--- a/plc4go/protocols/opcua/readwrite/model/DurationString.go
+++ b/plc4go/protocols/opcua/readwrite/model/DurationString.go
@@ -92,7 +92,7 @@ func DurationStringParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func DurationStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DurationString, error) {
-	v, err := NewDurationString().parse(ctx, readBuffer)
+	v, err := (&_DurationString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/EccEncryptedSecret.go b/plc4go/protocols/opcua/readwrite/model/EccEncryptedSecret.go
index f520aa80dd..7588af941d 100644
--- a/plc4go/protocols/opcua/readwrite/model/EccEncryptedSecret.go
+++ b/plc4go/protocols/opcua/readwrite/model/EccEncryptedSecret.go
@@ -92,7 +92,7 @@ func EccEncryptedSecretParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func EccEncryptedSecretParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (EccEncryptedSecret, error) {
-	v, err := NewEccEncryptedSecret().parse(ctx, readBuffer)
+	v, err := (&_EccEncryptedSecret{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/EncodedTicket.go b/plc4go/protocols/opcua/readwrite/model/EncodedTicket.go
index 0faaac5594..022a44b7d0 100644
--- a/plc4go/protocols/opcua/readwrite/model/EncodedTicket.go
+++ b/plc4go/protocols/opcua/readwrite/model/EncodedTicket.go
@@ -92,7 +92,7 @@ func EncodedTicketParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func EncodedTicketParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (EncodedTicket, error) {
-	v, err := NewEncodedTicket().parse(ctx, readBuffer)
+	v, err := (&_EncodedTicket{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ExpandedNodeId.go b/plc4go/protocols/opcua/readwrite/model/ExpandedNodeId.go
index 9612e1928e..bf48a7d0ca 100644
--- a/plc4go/protocols/opcua/readwrite/model/ExpandedNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/ExpandedNodeId.go
@@ -181,7 +181,7 @@ func ExpandedNodeIdParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func ExpandedNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ExpandedNodeId, error) {
-	v, err := NewExpandedNodeId().parse(ctx, readBuffer)
+	v, err := (&_ExpandedNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ExtensionHeader.go b/plc4go/protocols/opcua/readwrite/model/ExtensionHeader.go
index 42bc6be557..a00669192f 100644
--- a/plc4go/protocols/opcua/readwrite/model/ExtensionHeader.go
+++ b/plc4go/protocols/opcua/readwrite/model/ExtensionHeader.go
@@ -129,7 +129,7 @@ func ExtensionHeaderParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func ExtensionHeaderParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ExtensionHeader, error) {
-	v, err := NewExtensionHeader().parse(ctx, readBuffer)
+	v, err := (&_ExtensionHeader{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ExtensionObject.go b/plc4go/protocols/opcua/readwrite/model/ExtensionObject.go
index e85627a903..5037d56b5f 100644
--- a/plc4go/protocols/opcua/readwrite/model/ExtensionObject.go
+++ b/plc4go/protocols/opcua/readwrite/model/ExtensionObject.go
@@ -160,7 +160,7 @@ func ExtensionObjectParseWithBufferProducer(includeEncodingMask bool) func(ctx c
 }
 
 func ExtensionObjectParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, includeEncodingMask bool) (ExtensionObject, error) {
-	v, err := NewExtensionObject(includeEncodingMask).parse(ctx, readBuffer, includeEncodingMask)
+	v, err := (&_ExtensionObject{IncludeEncodingMask: includeEncodingMask}).parse(ctx, readBuffer, includeEncodingMask)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ExtensionObjectDefinition.go b/plc4go/protocols/opcua/readwrite/model/ExtensionObjectDefinition.go
index 1ddabb542c..fedb0c63ae 100644
--- a/plc4go/protocols/opcua/readwrite/model/ExtensionObjectDefinition.go
+++ b/plc4go/protocols/opcua/readwrite/model/ExtensionObjectDefinition.go
@@ -121,7 +121,7 @@ func ExtensionObjectDefinitionParseWithBufferProducer[T ExtensionObjectDefinitio
 }
 
 func ExtensionObjectDefinitionParseWithBuffer[T ExtensionObjectDefinition](ctx context.Context, readBuffer utils.ReadBuffer, identifier string) (T, error) {
-	v, err := NewExtensionObjectDefinition().parse(ctx, readBuffer, identifier)
+	v, err := (&_ExtensionObjectDefinition{}).parse(ctx, readBuffer, identifier)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/ExtensionObjectEncodingMask.go b/plc4go/protocols/opcua/readwrite/model/ExtensionObjectEncodingMask.go
index eab48fe153..5009ba07e4 100644
--- a/plc4go/protocols/opcua/readwrite/model/ExtensionObjectEncodingMask.go
+++ b/plc4go/protocols/opcua/readwrite/model/ExtensionObjectEncodingMask.go
@@ -139,7 +139,7 @@ func ExtensionObjectEncodingMaskParseWithBufferProducer() func(ctx context.Conte
 }
 
 func ExtensionObjectEncodingMaskParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ExtensionObjectEncodingMask, error) {
-	v, err := NewExtensionObjectEncodingMask().parse(ctx, readBuffer)
+	v, err := (&_ExtensionObjectEncodingMask{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/FourByteNodeId.go b/plc4go/protocols/opcua/readwrite/model/FourByteNodeId.go
index bac865c9ca..dad3b3a5d7 100644
--- a/plc4go/protocols/opcua/readwrite/model/FourByteNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/FourByteNodeId.go
@@ -124,7 +124,7 @@ func FourByteNodeIdParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func FourByteNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (FourByteNodeId, error) {
-	v, err := NewFourByteNodeId().parse(ctx, readBuffer)
+	v, err := (&_FourByteNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/GuidNodeId.go b/plc4go/protocols/opcua/readwrite/model/GuidNodeId.go
index ea539e6d75..a3b46d84b1 100644
--- a/plc4go/protocols/opcua/readwrite/model/GuidNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/GuidNodeId.go
@@ -124,7 +124,7 @@ func GuidNodeIdParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func GuidNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GuidNodeId, error) {
-	v, err := NewGuidNodeId().parse(ctx, readBuffer)
+	v, err := (&_GuidNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/GuidValue.go b/plc4go/protocols/opcua/readwrite/model/GuidValue.go
index f38fd0757b..008445cb00 100644
--- a/plc4go/protocols/opcua/readwrite/model/GuidValue.go
+++ b/plc4go/protocols/opcua/readwrite/model/GuidValue.go
@@ -158,7 +158,7 @@ func GuidValueParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func GuidValueParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (GuidValue, error) {
-	v, err := NewGuidValue().parse(ctx, readBuffer)
+	v, err := (&_GuidValue{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/Handle.go b/plc4go/protocols/opcua/readwrite/model/Handle.go
index 4026d3c51d..f62b8b54d0 100644
--- a/plc4go/protocols/opcua/readwrite/model/Handle.go
+++ b/plc4go/protocols/opcua/readwrite/model/Handle.go
@@ -92,7 +92,7 @@ func HandleParseWithBufferProducer() func(ctx context.Context, readBuffer utils.
 }
 
 func HandleParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Handle, error) {
-	v, err := NewHandle().parse(ctx, readBuffer)
+	v, err := (&_Handle{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ImageBMP.go b/plc4go/protocols/opcua/readwrite/model/ImageBMP.go
index 519af9d074..8247cb60af 100644
--- a/plc4go/protocols/opcua/readwrite/model/ImageBMP.go
+++ b/plc4go/protocols/opcua/readwrite/model/ImageBMP.go
@@ -92,7 +92,7 @@ func ImageBMPParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func ImageBMPParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ImageBMP, error) {
-	v, err := NewImageBMP().parse(ctx, readBuffer)
+	v, err := (&_ImageBMP{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ImageGIF.go b/plc4go/protocols/opcua/readwrite/model/ImageGIF.go
index dc55756173..bbc0f1313f 100644
--- a/plc4go/protocols/opcua/readwrite/model/ImageGIF.go
+++ b/plc4go/protocols/opcua/readwrite/model/ImageGIF.go
@@ -92,7 +92,7 @@ func ImageGIFParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func ImageGIFParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ImageGIF, error) {
-	v, err := NewImageGIF().parse(ctx, readBuffer)
+	v, err := (&_ImageGIF{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ImageJPG.go b/plc4go/protocols/opcua/readwrite/model/ImageJPG.go
index c268e07e56..65297fda8f 100644
--- a/plc4go/protocols/opcua/readwrite/model/ImageJPG.go
+++ b/plc4go/protocols/opcua/readwrite/model/ImageJPG.go
@@ -92,7 +92,7 @@ func ImageJPGParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func ImageJPGParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ImageJPG, error) {
-	v, err := NewImageJPG().parse(ctx, readBuffer)
+	v, err := (&_ImageJPG{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/ImagePNG.go b/plc4go/protocols/opcua/readwrite/model/ImagePNG.go
index 8f7f5cca75..4d24a82a23 100644
--- a/plc4go/protocols/opcua/readwrite/model/ImagePNG.go
+++ b/plc4go/protocols/opcua/readwrite/model/ImagePNG.go
@@ -92,7 +92,7 @@ func ImagePNGParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func ImagePNGParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (ImagePNG, error) {
-	v, err := NewImagePNG().parse(ctx, readBuffer)
+	v, err := (&_ImagePNG{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/Index.go b/plc4go/protocols/opcua/readwrite/model/Index.go
index 68f3a7b63d..6b683fd894 100644
--- a/plc4go/protocols/opcua/readwrite/model/Index.go
+++ b/plc4go/protocols/opcua/readwrite/model/Index.go
@@ -92,7 +92,7 @@ func IndexParseWithBufferProducer() func(ctx context.Context, readBuffer utils.R
 }
 
 func IndexParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Index, error) {
-	v, err := NewIndex().parse(ctx, readBuffer)
+	v, err := (&_Index{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/IntegerId.go b/plc4go/protocols/opcua/readwrite/model/IntegerId.go
index b2a34bcc5e..d54aa8932d 100644
--- a/plc4go/protocols/opcua/readwrite/model/IntegerId.go
+++ b/plc4go/protocols/opcua/readwrite/model/IntegerId.go
@@ -92,7 +92,7 @@ func IntegerIdParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func IntegerIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (IntegerId, error) {
-	v, err := NewIntegerId().parse(ctx, readBuffer)
+	v, err := (&_IntegerId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/LocaleId.go b/plc4go/protocols/opcua/readwrite/model/LocaleId.go
index 8ff16fa61b..5abe9b186b 100644
--- a/plc4go/protocols/opcua/readwrite/model/LocaleId.go
+++ b/plc4go/protocols/opcua/readwrite/model/LocaleId.go
@@ -92,7 +92,7 @@ func LocaleIdParseWithBufferProducer() func(ctx context.Context, readBuffer util
 }
 
 func LocaleIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (LocaleId, error) {
-	v, err := NewLocaleId().parse(ctx, readBuffer)
+	v, err := (&_LocaleId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/LocalizedText.go b/plc4go/protocols/opcua/readwrite/model/LocalizedText.go
index 22461164b6..d75953ca05 100644
--- a/plc4go/protocols/opcua/readwrite/model/LocalizedText.go
+++ b/plc4go/protocols/opcua/readwrite/model/LocalizedText.go
@@ -153,7 +153,7 @@ func LocalizedTextParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func LocalizedTextParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (LocalizedText, error) {
-	v, err := NewLocalizedText().parse(ctx, readBuffer)
+	v, err := (&_LocalizedText{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/MessagePDU.go b/plc4go/protocols/opcua/readwrite/model/MessagePDU.go
index 2b02603223..ede9985559 100644
--- a/plc4go/protocols/opcua/readwrite/model/MessagePDU.go
+++ b/plc4go/protocols/opcua/readwrite/model/MessagePDU.go
@@ -150,7 +150,7 @@ func MessagePDUParseWithBufferProducer[T MessagePDU](response bool) func(ctx con
 }
 
 func MessagePDUParseWithBuffer[T MessagePDU](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewMessagePDU().parse(ctx, readBuffer, response)
+	v, err := (&_MessagePDU{}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/NodeId.go b/plc4go/protocols/opcua/readwrite/model/NodeId.go
index db4ed62a70..ac5e0dea3a 100644
--- a/plc4go/protocols/opcua/readwrite/model/NodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/NodeId.go
@@ -138,7 +138,7 @@ func NodeIdParseWithBufferProducer() func(ctx context.Context, readBuffer utils.
 }
 
 func NodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NodeId, error) {
-	v, err := NewNodeId().parse(ctx, readBuffer)
+	v, err := (&_NodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/NodeIdTypeDefinition.go b/plc4go/protocols/opcua/readwrite/model/NodeIdTypeDefinition.go
index 771502778a..b71727c06c 100644
--- a/plc4go/protocols/opcua/readwrite/model/NodeIdTypeDefinition.go
+++ b/plc4go/protocols/opcua/readwrite/model/NodeIdTypeDefinition.go
@@ -143,7 +143,7 @@ func NodeIdTypeDefinitionParseWithBufferProducer[T NodeIdTypeDefinition]() func(
 }
 
 func NodeIdTypeDefinitionParseWithBuffer[T NodeIdTypeDefinition](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewNodeIdTypeDefinition().parse(ctx, readBuffer)
+	v, err := (&_NodeIdTypeDefinition{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/NormalizedString.go b/plc4go/protocols/opcua/readwrite/model/NormalizedString.go
index 4f587a14f5..03320bc5dd 100644
--- a/plc4go/protocols/opcua/readwrite/model/NormalizedString.go
+++ b/plc4go/protocols/opcua/readwrite/model/NormalizedString.go
@@ -92,7 +92,7 @@ func NormalizedStringParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func NormalizedStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NormalizedString, error) {
-	v, err := NewNormalizedString().parse(ctx, readBuffer)
+	v, err := (&_NormalizedString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/NumericNodeId.go b/plc4go/protocols/opcua/readwrite/model/NumericNodeId.go
index d378b2dd6b..d27f3db359 100644
--- a/plc4go/protocols/opcua/readwrite/model/NumericNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/NumericNodeId.go
@@ -124,7 +124,7 @@ func NumericNodeIdParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func NumericNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NumericNodeId, error) {
-	v, err := NewNumericNodeId().parse(ctx, readBuffer)
+	v, err := (&_NumericNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/NumericRange.go b/plc4go/protocols/opcua/readwrite/model/NumericRange.go
index 1dcb785baf..2524594fe3 100644
--- a/plc4go/protocols/opcua/readwrite/model/NumericRange.go
+++ b/plc4go/protocols/opcua/readwrite/model/NumericRange.go
@@ -92,7 +92,7 @@ func NumericRangeParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func NumericRangeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (NumericRange, error) {
-	v, err := NewNumericRange().parse(ctx, readBuffer)
+	v, err := (&_NumericRange{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/OpcuaAPU.go b/plc4go/protocols/opcua/readwrite/model/OpcuaAPU.go
index 7a7b71a846..c0250e7e44 100644
--- a/plc4go/protocols/opcua/readwrite/model/OpcuaAPU.go
+++ b/plc4go/protocols/opcua/readwrite/model/OpcuaAPU.go
@@ -119,7 +119,7 @@ func OpcuaAPUParseWithBufferProducer(response bool) func(ctx context.Context, re
 }
 
 func OpcuaAPUParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer, response bool) (OpcuaAPU, error) {
-	v, err := NewOpcuaAPU(response).parse(ctx, readBuffer, response)
+	v, err := (&_OpcuaAPU{Response: response}).parse(ctx, readBuffer, response)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/OpcuaConstants.go b/plc4go/protocols/opcua/readwrite/model/OpcuaConstants.go
index fc5deb75a8..7ed8767aba 100644
--- a/plc4go/protocols/opcua/readwrite/model/OpcuaConstants.go
+++ b/plc4go/protocols/opcua/readwrite/model/OpcuaConstants.go
@@ -114,7 +114,7 @@ func OpcuaConstantsParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func OpcuaConstantsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (OpcuaConstants, error) {
-	v, err := NewOpcuaConstants().parse(ctx, readBuffer)
+	v, err := (&_OpcuaConstants{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/OpcuaProtocolLimits.go b/plc4go/protocols/opcua/readwrite/model/OpcuaProtocolLimits.go
index 7e8afabc7d..e6a794211c 100644
--- a/plc4go/protocols/opcua/readwrite/model/OpcuaProtocolLimits.go
+++ b/plc4go/protocols/opcua/readwrite/model/OpcuaProtocolLimits.go
@@ -144,7 +144,7 @@ func OpcuaProtocolLimitsParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func OpcuaProtocolLimitsParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (OpcuaProtocolLimits, error) {
-	v, err := NewOpcuaProtocolLimits().parse(ctx, readBuffer)
+	v, err := (&_OpcuaProtocolLimits{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/OpenChannelMessage.go b/plc4go/protocols/opcua/readwrite/model/OpenChannelMessage.go
index f715fbf03c..a395f880ea 100644
--- a/plc4go/protocols/opcua/readwrite/model/OpenChannelMessage.go
+++ b/plc4go/protocols/opcua/readwrite/model/OpenChannelMessage.go
@@ -121,7 +121,7 @@ func OpenChannelMessageParseWithBufferProducer[T OpenChannelMessage](response bo
 }
 
 func OpenChannelMessageParseWithBuffer[T OpenChannelMessage](ctx context.Context, readBuffer utils.ReadBuffer, response bool) (T, error) {
-	v, err := NewOpenChannelMessage().parse(ctx, readBuffer, response)
+	v, err := (&_OpenChannelMessage{}).parse(ctx, readBuffer, response)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/PascalByteString.go b/plc4go/protocols/opcua/readwrite/model/PascalByteString.go
index ef7ec6e1d3..623086a52e 100644
--- a/plc4go/protocols/opcua/readwrite/model/PascalByteString.go
+++ b/plc4go/protocols/opcua/readwrite/model/PascalByteString.go
@@ -126,7 +126,7 @@ func PascalByteStringParseWithBufferProducer() func(ctx context.Context, readBuf
 }
 
 func PascalByteStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (PascalByteString, error) {
-	v, err := NewPascalByteString().parse(ctx, readBuffer)
+	v, err := (&_PascalByteString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/PascalString.go b/plc4go/protocols/opcua/readwrite/model/PascalString.go
index 5fcdce1309..997bbc19c3 100644
--- a/plc4go/protocols/opcua/readwrite/model/PascalString.go
+++ b/plc4go/protocols/opcua/readwrite/model/PascalString.go
@@ -136,7 +136,7 @@ func PascalStringParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func PascalStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (PascalString, error) {
-	v, err := NewPascalString().parse(ctx, readBuffer)
+	v, err := (&_PascalString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/Payload.go b/plc4go/protocols/opcua/readwrite/model/Payload.go
index c100f34c9b..63b79bbe54 100644
--- a/plc4go/protocols/opcua/readwrite/model/Payload.go
+++ b/plc4go/protocols/opcua/readwrite/model/Payload.go
@@ -148,7 +148,7 @@ func PayloadParseWithBufferProducer[T Payload](extensible bool, byteCount uint32
 }
 
 func PayloadParseWithBuffer[T Payload](ctx context.Context, readBuffer utils.ReadBuffer, extensible bool, byteCount uint32) (T, error) {
-	v, err := NewPayload(byteCount).parse(ctx, readBuffer, extensible, byteCount)
+	v, err := (&_Payload{ByteCount: byteCount}).parse(ctx, readBuffer, extensible, byteCount)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/QualifiedName.go b/plc4go/protocols/opcua/readwrite/model/QualifiedName.go
index 1d26b978bf..30afdccefb 100644
--- a/plc4go/protocols/opcua/readwrite/model/QualifiedName.go
+++ b/plc4go/protocols/opcua/readwrite/model/QualifiedName.go
@@ -124,7 +124,7 @@ func QualifiedNameParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func QualifiedNameParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (QualifiedName, error) {
-	v, err := NewQualifiedName().parse(ctx, readBuffer)
+	v, err := (&_QualifiedName{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/RsaEncryptedSecret.go b/plc4go/protocols/opcua/readwrite/model/RsaEncryptedSecret.go
index 14a6be7244..111f09c17b 100644
--- a/plc4go/protocols/opcua/readwrite/model/RsaEncryptedSecret.go
+++ b/plc4go/protocols/opcua/readwrite/model/RsaEncryptedSecret.go
@@ -92,7 +92,7 @@ func RsaEncryptedSecretParseWithBufferProducer() func(ctx context.Context, readB
 }
 
 func RsaEncryptedSecretParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (RsaEncryptedSecret, error) {
-	v, err := NewRsaEncryptedSecret().parse(ctx, readBuffer)
+	v, err := (&_RsaEncryptedSecret{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/SecurityHeader.go b/plc4go/protocols/opcua/readwrite/model/SecurityHeader.go
index 74018ed752..f801310da6 100644
--- a/plc4go/protocols/opcua/readwrite/model/SecurityHeader.go
+++ b/plc4go/protocols/opcua/readwrite/model/SecurityHeader.go
@@ -124,7 +124,7 @@ func SecurityHeaderParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func SecurityHeaderParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SecurityHeader, error) {
-	v, err := NewSecurityHeader().parse(ctx, readBuffer)
+	v, err := (&_SecurityHeader{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/SemanticVersionString.go b/plc4go/protocols/opcua/readwrite/model/SemanticVersionString.go
index 6329e78e29..d87c850a6c 100644
--- a/plc4go/protocols/opcua/readwrite/model/SemanticVersionString.go
+++ b/plc4go/protocols/opcua/readwrite/model/SemanticVersionString.go
@@ -92,7 +92,7 @@ func SemanticVersionStringParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func SemanticVersionStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SemanticVersionString, error) {
-	v, err := NewSemanticVersionString().parse(ctx, readBuffer)
+	v, err := (&_SemanticVersionString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/SequenceHeader.go b/plc4go/protocols/opcua/readwrite/model/SequenceHeader.go
index 26a75fed58..b48bd3f41e 100644
--- a/plc4go/protocols/opcua/readwrite/model/SequenceHeader.go
+++ b/plc4go/protocols/opcua/readwrite/model/SequenceHeader.go
@@ -124,7 +124,7 @@ func SequenceHeaderParseWithBufferProducer() func(ctx context.Context, readBuffe
 }
 
 func SequenceHeaderParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SequenceHeader, error) {
-	v, err := NewSequenceHeader().parse(ctx, readBuffer)
+	v, err := (&_SequenceHeader{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/SessionAuthenticationToken.go b/plc4go/protocols/opcua/readwrite/model/SessionAuthenticationToken.go
index d5a1f283c8..095165d52e 100644
--- a/plc4go/protocols/opcua/readwrite/model/SessionAuthenticationToken.go
+++ b/plc4go/protocols/opcua/readwrite/model/SessionAuthenticationToken.go
@@ -92,7 +92,7 @@ func SessionAuthenticationTokenParseWithBufferProducer() func(ctx context.Contex
 }
 
 func SessionAuthenticationTokenParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SessionAuthenticationToken, error) {
-	v, err := NewSessionAuthenticationToken().parse(ctx, readBuffer)
+	v, err := (&_SessionAuthenticationToken{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/StatusCode.go b/plc4go/protocols/opcua/readwrite/model/StatusCode.go
index 6b467c1046..2195d115e5 100644
--- a/plc4go/protocols/opcua/readwrite/model/StatusCode.go
+++ b/plc4go/protocols/opcua/readwrite/model/StatusCode.go
@@ -114,7 +114,7 @@ func StatusCodeParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func StatusCodeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (StatusCode, error) {
-	v, err := NewStatusCode().parse(ctx, readBuffer)
+	v, err := (&_StatusCode{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/StringNodeId.go b/plc4go/protocols/opcua/readwrite/model/StringNodeId.go
index 4b554fd185..d034d28741 100644
--- a/plc4go/protocols/opcua/readwrite/model/StringNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/StringNodeId.go
@@ -124,7 +124,7 @@ func StringNodeIdParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func StringNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (StringNodeId, error) {
-	v, err := NewStringNodeId().parse(ctx, readBuffer)
+	v, err := (&_StringNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/Structure.go b/plc4go/protocols/opcua/readwrite/model/Structure.go
index b33d4bb332..8acad331dd 100644
--- a/plc4go/protocols/opcua/readwrite/model/Structure.go
+++ b/plc4go/protocols/opcua/readwrite/model/Structure.go
@@ -92,7 +92,7 @@ func StructureParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func StructureParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Structure, error) {
-	v, err := NewStructure().parse(ctx, readBuffer)
+	v, err := (&_Structure{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/TimeString.go b/plc4go/protocols/opcua/readwrite/model/TimeString.go
index 92eb8cbc00..14f796bc1a 100644
--- a/plc4go/protocols/opcua/readwrite/model/TimeString.go
+++ b/plc4go/protocols/opcua/readwrite/model/TimeString.go
@@ -92,7 +92,7 @@ func TimeStringParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func TimeStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TimeString, error) {
-	v, err := NewTimeString().parse(ctx, readBuffer)
+	v, err := (&_TimeString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/TrimmedString.go b/plc4go/protocols/opcua/readwrite/model/TrimmedString.go
index e98ad820e8..f805f48293 100644
--- a/plc4go/protocols/opcua/readwrite/model/TrimmedString.go
+++ b/plc4go/protocols/opcua/readwrite/model/TrimmedString.go
@@ -92,7 +92,7 @@ func TrimmedStringParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func TrimmedStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TrimmedString, error) {
-	v, err := NewTrimmedString().parse(ctx, readBuffer)
+	v, err := (&_TrimmedString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/TwoByteNodeId.go b/plc4go/protocols/opcua/readwrite/model/TwoByteNodeId.go
index 8055321818..e123ee14e6 100644
--- a/plc4go/protocols/opcua/readwrite/model/TwoByteNodeId.go
+++ b/plc4go/protocols/opcua/readwrite/model/TwoByteNodeId.go
@@ -114,7 +114,7 @@ func TwoByteNodeIdParseWithBufferProducer() func(ctx context.Context, readBuffer
 }
 
 func TwoByteNodeIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TwoByteNodeId, error) {
-	v, err := NewTwoByteNodeId().parse(ctx, readBuffer)
+	v, err := (&_TwoByteNodeId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/UriString.go b/plc4go/protocols/opcua/readwrite/model/UriString.go
index 4c0a7a8b54..8f7acb709f 100644
--- a/plc4go/protocols/opcua/readwrite/model/UriString.go
+++ b/plc4go/protocols/opcua/readwrite/model/UriString.go
@@ -92,7 +92,7 @@ func UriStringParseWithBufferProducer() func(ctx context.Context, readBuffer uti
 }
 
 func UriStringParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (UriString, error) {
-	v, err := NewUriString().parse(ctx, readBuffer)
+	v, err := (&_UriString{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/UserIdentityTokenDefinition.go b/plc4go/protocols/opcua/readwrite/model/UserIdentityTokenDefinition.go
index ee6d814c9d..25b02ce7cd 100644
--- a/plc4go/protocols/opcua/readwrite/model/UserIdentityTokenDefinition.go
+++ b/plc4go/protocols/opcua/readwrite/model/UserIdentityTokenDefinition.go
@@ -121,7 +121,7 @@ func UserIdentityTokenDefinitionParseWithBufferProducer[T UserIdentityTokenDefin
 }
 
 func UserIdentityTokenDefinitionParseWithBuffer[T UserIdentityTokenDefinition](ctx context.Context, readBuffer utils.ReadBuffer, identifier string) (T, error) {
-	v, err := NewUserIdentityTokenDefinition().parse(ctx, readBuffer, identifier)
+	v, err := (&_UserIdentityTokenDefinition{}).parse(ctx, readBuffer, identifier)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/UtcTime.go b/plc4go/protocols/opcua/readwrite/model/UtcTime.go
index 4ad14956f7..30b1e1e177 100644
--- a/plc4go/protocols/opcua/readwrite/model/UtcTime.go
+++ b/plc4go/protocols/opcua/readwrite/model/UtcTime.go
@@ -92,7 +92,7 @@ func UtcTimeParseWithBufferProducer() func(ctx context.Context, readBuffer utils
 }
 
 func UtcTimeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (UtcTime, error) {
-	v, err := NewUtcTime().parse(ctx, readBuffer)
+	v, err := (&_UtcTime{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/Variant.go b/plc4go/protocols/opcua/readwrite/model/Variant.go
index c22d4c11f9..f4833d39a1 100644
--- a/plc4go/protocols/opcua/readwrite/model/Variant.go
+++ b/plc4go/protocols/opcua/readwrite/model/Variant.go
@@ -181,7 +181,7 @@ func VariantParseWithBufferProducer[T Variant]() func(ctx context.Context, readB
 }
 
 func VariantParseWithBuffer[T Variant](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewVariant().parse(ctx, readBuffer)
+	v, err := (&_Variant{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/opcua/readwrite/model/VersionTime.go b/plc4go/protocols/opcua/readwrite/model/VersionTime.go
index 1af2724c8d..1a829641b2 100644
--- a/plc4go/protocols/opcua/readwrite/model/VersionTime.go
+++ b/plc4go/protocols/opcua/readwrite/model/VersionTime.go
@@ -92,7 +92,7 @@ func VersionTimeParseWithBufferProducer() func(ctx context.Context, readBuffer u
 }
 
 func VersionTimeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (VersionTime, error) {
-	v, err := NewVersionTime().parse(ctx, readBuffer)
+	v, err := (&_VersionTime{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/opcua/readwrite/model/XmlElement.go b/plc4go/protocols/opcua/readwrite/model/XmlElement.go
index e1762e0baa..2704deec3f 100644
--- a/plc4go/protocols/opcua/readwrite/model/XmlElement.go
+++ b/plc4go/protocols/opcua/readwrite/model/XmlElement.go
@@ -126,7 +126,7 @@ func XmlElementParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func XmlElementParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (XmlElement, error) {
-	v, err := NewXmlElement().parse(ctx, readBuffer)
+	v, err := (&_XmlElement{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/Alarm8MessageQueryType.go b/plc4go/protocols/s7/readwrite/model/Alarm8MessageQueryType.go
index daefa17165..7dc69ffc0a 100644
--- a/plc4go/protocols/s7/readwrite/model/Alarm8MessageQueryType.go
+++ b/plc4go/protocols/s7/readwrite/model/Alarm8MessageQueryType.go
@@ -171,7 +171,7 @@ func Alarm8MessageQueryTypeParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func Alarm8MessageQueryTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Alarm8MessageQueryType, error) {
-	v, err := NewAlarm8MessageQueryType().parse(ctx, readBuffer)
+	v, err := (&_Alarm8MessageQueryType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckObjectPushType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckObjectPushType.go
index d4de8a16c8..926f0d7f7a 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckObjectPushType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckObjectPushType.go
@@ -183,7 +183,7 @@ func AlarmMessageAckObjectPushTypeParseWithBufferProducer() func(ctx context.Con
 }
 
 func AlarmMessageAckObjectPushTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageAckObjectPushType, error) {
-	v, err := NewAlarmMessageAckObjectPushType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageAckObjectPushType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckPushType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckPushType.go
index 298ea1d68d..4450959f88 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckPushType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckPushType.go
@@ -151,7 +151,7 @@ func AlarmMessageAckPushTypeParseWithBufferProducer() func(ctx context.Context,
 }
 
 func AlarmMessageAckPushTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageAckPushType, error) {
-	v, err := NewAlarmMessageAckPushType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageAckPushType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckResponseType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckResponseType.go
index dd117ee337..22cf9d797d 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckResponseType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckResponseType.go
@@ -136,7 +136,7 @@ func AlarmMessageAckResponseTypeParseWithBufferProducer() func(ctx context.Conte
 }
 
 func AlarmMessageAckResponseTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageAckResponseType, error) {
-	v, err := NewAlarmMessageAckResponseType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageAckResponseType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckType.go
index 3bbb30f3e7..d3032d3ee2 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageAckType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageAckType.go
@@ -141,7 +141,7 @@ func AlarmMessageAckTypeParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func AlarmMessageAckTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageAckType, error) {
-	v, err := NewAlarmMessageAckType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageAckType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectAckType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectAckType.go
index db26593b2d..cba3423ab5 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectAckType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectAckType.go
@@ -181,7 +181,7 @@ func AlarmMessageObjectAckTypeParseWithBufferProducer() func(ctx context.Context
 }
 
 func AlarmMessageObjectAckTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageObjectAckType, error) {
-	v, err := NewAlarmMessageObjectAckType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageObjectAckType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectPushType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectPushType.go
index a965e8e14b..07ef5cbc90 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectPushType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectPushType.go
@@ -220,7 +220,7 @@ func AlarmMessageObjectPushTypeParseWithBufferProducer() func(ctx context.Contex
 }
 
 func AlarmMessageObjectPushTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageObjectPushType, error) {
-	v, err := NewAlarmMessageObjectPushType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageObjectPushType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectQueryType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectQueryType.go
index e4e28ea5a2..d0085f1db7 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectQueryType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageObjectQueryType.go
@@ -208,7 +208,7 @@ func AlarmMessageObjectQueryTypeParseWithBufferProducer() func(ctx context.Conte
 }
 
 func AlarmMessageObjectQueryTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageObjectQueryType, error) {
-	v, err := NewAlarmMessageObjectQueryType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageObjectQueryType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessagePushType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessagePushType.go
index ee0a25474c..7016c41b8a 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessagePushType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessagePushType.go
@@ -151,7 +151,7 @@ func AlarmMessagePushTypeParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func AlarmMessagePushTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessagePushType, error) {
-	v, err := NewAlarmMessagePushType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessagePushType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AlarmMessageQueryType.go b/plc4go/protocols/s7/readwrite/model/AlarmMessageQueryType.go
index d8539e2e09..0c75757bae 100644
--- a/plc4go/protocols/s7/readwrite/model/AlarmMessageQueryType.go
+++ b/plc4go/protocols/s7/readwrite/model/AlarmMessageQueryType.go
@@ -180,7 +180,7 @@ func AlarmMessageQueryTypeParseWithBufferProducer() func(ctx context.Context, re
 }
 
 func AlarmMessageQueryTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AlarmMessageQueryType, error) {
-	v, err := NewAlarmMessageQueryType().parse(ctx, readBuffer)
+	v, err := (&_AlarmMessageQueryType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AssociatedQueryValueType.go b/plc4go/protocols/s7/readwrite/model/AssociatedQueryValueType.go
index cce7ea6760..bd13322428 100644
--- a/plc4go/protocols/s7/readwrite/model/AssociatedQueryValueType.go
+++ b/plc4go/protocols/s7/readwrite/model/AssociatedQueryValueType.go
@@ -146,7 +146,7 @@ func AssociatedQueryValueTypeParseWithBufferProducer() func(ctx context.Context,
 }
 
 func AssociatedQueryValueTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AssociatedQueryValueType, error) {
-	v, err := NewAssociatedQueryValueType().parse(ctx, readBuffer)
+	v, err := (&_AssociatedQueryValueType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/AssociatedValueType.go b/plc4go/protocols/s7/readwrite/model/AssociatedValueType.go
index 43d891aed4..62dffd6148 100644
--- a/plc4go/protocols/s7/readwrite/model/AssociatedValueType.go
+++ b/plc4go/protocols/s7/readwrite/model/AssociatedValueType.go
@@ -146,7 +146,7 @@ func AssociatedValueTypeParseWithBufferProducer() func(ctx context.Context, read
 }
 
 func AssociatedValueTypeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (AssociatedValueType, error) {
-	v, err := NewAssociatedValueType().parse(ctx, readBuffer)
+	v, err := (&_AssociatedValueType{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/COTPPacket.go b/plc4go/protocols/s7/readwrite/model/COTPPacket.go
index 26f05341d5..3ad4e8f336 100644
--- a/plc4go/protocols/s7/readwrite/model/COTPPacket.go
+++ b/plc4go/protocols/s7/readwrite/model/COTPPacket.go
@@ -169,7 +169,7 @@ func COTPPacketParseWithBufferProducer[T COTPPacket](cotpLen uint16) func(ctx co
 }
 
 func COTPPacketParseWithBuffer[T COTPPacket](ctx context.Context, readBuffer utils.ReadBuffer, cotpLen uint16) (T, error) {
-	v, err := NewCOTPPacket(cotpLen).parse(ctx, readBuffer, cotpLen)
+	v, err := (&_COTPPacket{CotpLen: cotpLen}).parse(ctx, readBuffer, cotpLen)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/COTPParameter.go b/plc4go/protocols/s7/readwrite/model/COTPParameter.go
index bd2a3cce1d..eccf410e32 100644
--- a/plc4go/protocols/s7/readwrite/model/COTPParameter.go
+++ b/plc4go/protocols/s7/readwrite/model/COTPParameter.go
@@ -133,7 +133,7 @@ func COTPParameterParseWithBufferProducer[T COTPParameter](rest uint8) func(ctx
 }
 
 func COTPParameterParseWithBuffer[T COTPParameter](ctx context.Context, readBuffer utils.ReadBuffer, rest uint8) (T, error) {
-	v, err := NewCOTPParameter(rest).parse(ctx, readBuffer, rest)
+	v, err := (&_COTPParameter{Rest: rest}).parse(ctx, readBuffer, rest)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/CycServiceItemType.go b/plc4go/protocols/s7/readwrite/model/CycServiceItemType.go
index 8ac2aa0396..ef37c8a4c3 100644
--- a/plc4go/protocols/s7/readwrite/model/CycServiceItemType.go
+++ b/plc4go/protocols/s7/readwrite/model/CycServiceItemType.go
@@ -172,7 +172,7 @@ func CycServiceItemTypeParseWithBufferProducer[T CycServiceItemType]() func(ctx
 }
 
 func CycServiceItemTypeParseWithBuffer[T CycServiceItemType](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewCycServiceItemType().parse(ctx, readBuffer)
+	v, err := (&_CycServiceItemType{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/DateAndTime.go b/plc4go/protocols/s7/readwrite/model/DateAndTime.go
index 47353cb7e9..fc447cca5e 100644
--- a/plc4go/protocols/s7/readwrite/model/DateAndTime.go
+++ b/plc4go/protocols/s7/readwrite/model/DateAndTime.go
@@ -185,7 +185,7 @@ func DateAndTimeParseWithBufferProducer() func(ctx context.Context, readBuffer u
 }
 
 func DateAndTimeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (DateAndTime, error) {
-	v, err := NewDateAndTime().parse(ctx, readBuffer)
+	v, err := (&_DateAndTime{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/S7Address.go b/plc4go/protocols/s7/readwrite/model/S7Address.go
index 6dd7e1114c..e642664853 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Address.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Address.go
@@ -125,7 +125,7 @@ func S7AddressParseWithBufferProducer[T S7Address]() func(ctx context.Context, r
 }
 
 func S7AddressParseWithBuffer[T S7Address](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewS7Address().parse(ctx, readBuffer)
+	v, err := (&_S7Address{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go b/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go
index c46f2a1721..b9456bf862 100644
--- a/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go
+++ b/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go
@@ -151,7 +151,7 @@ func S7DataAlarmMessageParseWithBufferProducer[T S7DataAlarmMessage](cpuFunction
 }
 
 func S7DataAlarmMessageParseWithBuffer[T S7DataAlarmMessage](ctx context.Context, readBuffer utils.ReadBuffer, cpuFunctionType uint8) (T, error) {
-	v, err := NewS7DataAlarmMessage().parse(ctx, readBuffer, cpuFunctionType)
+	v, err := (&_S7DataAlarmMessage{}).parse(ctx, readBuffer, cpuFunctionType)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7Message.go b/plc4go/protocols/s7/readwrite/model/S7Message.go
index 6d7aae656e..ddf1d80770 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Message.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Message.go
@@ -199,7 +199,7 @@ func S7MessageParseWithBufferProducer[T S7Message]() func(ctx context.Context, r
 }
 
 func S7MessageParseWithBuffer[T S7Message](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewS7Message().parse(ctx, readBuffer)
+	v, err := (&_S7Message{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7Parameter.go b/plc4go/protocols/s7/readwrite/model/S7Parameter.go
index c628fb0606..5ef6add620 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Parameter.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Parameter.go
@@ -127,7 +127,7 @@ func S7ParameterParseWithBufferProducer[T S7Parameter](messageType uint8) func(c
 }
 
 func S7ParameterParseWithBuffer[T S7Parameter](ctx context.Context, readBuffer utils.ReadBuffer, messageType uint8) (T, error) {
-	v, err := NewS7Parameter().parse(ctx, readBuffer, messageType)
+	v, err := (&_S7Parameter{}).parse(ctx, readBuffer, messageType)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go b/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go
index 7d8796370f..6947367f79 100644
--- a/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go
@@ -125,7 +125,7 @@ func S7ParameterUserDataItemParseWithBufferProducer[T S7ParameterUserDataItem]()
 }
 
 func S7ParameterUserDataItemParseWithBuffer[T S7ParameterUserDataItem](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewS7ParameterUserDataItem().parse(ctx, readBuffer)
+	v, err := (&_S7ParameterUserDataItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7Payload.go b/plc4go/protocols/s7/readwrite/model/S7Payload.go
index e57ab77392..5a46ceb9f8 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Payload.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Payload.go
@@ -128,7 +128,7 @@ func S7PayloadParseWithBufferProducer[T S7Payload](messageType uint8, parameter
 }
 
 func S7PayloadParseWithBuffer[T S7Payload](ctx context.Context, readBuffer utils.ReadBuffer, messageType uint8, parameter S7Parameter) (T, error) {
-	v, err := NewS7Payload(parameter).parse(ctx, readBuffer, messageType, parameter)
+	v, err := (&_S7Payload{Parameter: parameter}).parse(ctx, readBuffer, messageType, parameter)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go b/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go
index 10221615c9..262d3aaa8c 100644
--- a/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go
@@ -169,7 +169,7 @@ func S7PayloadUserDataItemParseWithBufferProducer[T S7PayloadUserDataItem](cpuFu
 }
 
 func S7PayloadUserDataItemParseWithBuffer[T S7PayloadUserDataItem](ctx context.Context, readBuffer utils.ReadBuffer, cpuFunctionGroup uint8, cpuFunctionType uint8, cpuSubfunction uint8) (T, error) {
-	v, err := NewS7PayloadUserDataItem().parse(ctx, readBuffer, cpuFunctionGroup, cpuFunctionType, cpuSubfunction)
+	v, err := (&_S7PayloadUserDataItem{}).parse(ctx, readBuffer, cpuFunctionGroup, cpuFunctionType, cpuSubfunction)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/S7VarPayloadDataItem.go b/plc4go/protocols/s7/readwrite/model/S7VarPayloadDataItem.go
index 950368c641..7f2e5a8449 100644
--- a/plc4go/protocols/s7/readwrite/model/S7VarPayloadDataItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7VarPayloadDataItem.go
@@ -146,7 +146,7 @@ func S7VarPayloadDataItemParseWithBufferProducer() func(ctx context.Context, rea
 }
 
 func S7VarPayloadDataItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (S7VarPayloadDataItem, error) {
-	v, err := NewS7VarPayloadDataItem().parse(ctx, readBuffer)
+	v, err := (&_S7VarPayloadDataItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/S7VarPayloadStatusItem.go b/plc4go/protocols/s7/readwrite/model/S7VarPayloadStatusItem.go
index 17ab4966c2..dbbd20e26b 100644
--- a/plc4go/protocols/s7/readwrite/model/S7VarPayloadStatusItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7VarPayloadStatusItem.go
@@ -114,7 +114,7 @@ func S7VarPayloadStatusItemParseWithBufferProducer() func(ctx context.Context, r
 }
 
 func S7VarPayloadStatusItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (S7VarPayloadStatusItem, error) {
-	v, err := NewS7VarPayloadStatusItem().parse(ctx, readBuffer)
+	v, err := (&_S7VarPayloadStatusItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go b/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go
index 6b790e0faf..e3fe16d075 100644
--- a/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go
@@ -125,7 +125,7 @@ func S7VarRequestParameterItemParseWithBufferProducer[T S7VarRequestParameterIte
 }
 
 func S7VarRequestParameterItemParseWithBuffer[T S7VarRequestParameterItem](ctx context.Context, readBuffer utils.ReadBuffer) (T, error) {
-	v, err := NewS7VarRequestParameterItem().parse(ctx, readBuffer)
+	v, err := (&_S7VarRequestParameterItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		var zero T
 		return zero, err
diff --git a/plc4go/protocols/s7/readwrite/model/State.go b/plc4go/protocols/s7/readwrite/model/State.go
index 947dfe5e7a..3dfd2e1c01 100644
--- a/plc4go/protocols/s7/readwrite/model/State.go
+++ b/plc4go/protocols/s7/readwrite/model/State.go
@@ -184,7 +184,7 @@ func StateParseWithBufferProducer() func(ctx context.Context, readBuffer utils.R
 }
 
 func StateParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (State, error) {
-	v, err := NewState().parse(ctx, readBuffer)
+	v, err := (&_State{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/SubItem.go b/plc4go/protocols/s7/readwrite/model/SubItem.go
index 2675907df2..b01675b965 100644
--- a/plc4go/protocols/s7/readwrite/model/SubItem.go
+++ b/plc4go/protocols/s7/readwrite/model/SubItem.go
@@ -134,7 +134,7 @@ func SubItemParseWithBufferProducer() func(ctx context.Context, readBuffer utils
 }
 
 func SubItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SubItem, error) {
-	v, err := NewSubItem().parse(ctx, readBuffer)
+	v, err := (&_SubItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/SzlDataTreeItem.go b/plc4go/protocols/s7/readwrite/model/SzlDataTreeItem.go
index 9bba882777..e088814e6a 100644
--- a/plc4go/protocols/s7/readwrite/model/SzlDataTreeItem.go
+++ b/plc4go/protocols/s7/readwrite/model/SzlDataTreeItem.go
@@ -156,7 +156,7 @@ func SzlDataTreeItemParseWithBufferProducer() func(ctx context.Context, readBuff
 }
 
 func SzlDataTreeItemParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SzlDataTreeItem, error) {
-	v, err := NewSzlDataTreeItem().parse(ctx, readBuffer)
+	v, err := (&_SzlDataTreeItem{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/SzlId.go b/plc4go/protocols/s7/readwrite/model/SzlId.go
index 964610b956..de34ee152f 100644
--- a/plc4go/protocols/s7/readwrite/model/SzlId.go
+++ b/plc4go/protocols/s7/readwrite/model/SzlId.go
@@ -134,7 +134,7 @@ func SzlIdParseWithBufferProducer() func(ctx context.Context, readBuffer utils.R
 }
 
 func SzlIdParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (SzlId, error) {
-	v, err := NewSzlId().parse(ctx, readBuffer)
+	v, err := (&_SzlId{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/s7/readwrite/model/TPKTPacket.go b/plc4go/protocols/s7/readwrite/model/TPKTPacket.go
index 6a28c60277..19b6bbdacf 100644
--- a/plc4go/protocols/s7/readwrite/model/TPKTPacket.go
+++ b/plc4go/protocols/s7/readwrite/model/TPKTPacket.go
@@ -143,7 +143,7 @@ func TPKTPacketParseWithBufferProducer() func(ctx context.Context, readBuffer ut
 }
 
 func TPKTPacketParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TPKTPacket, error) {
-	v, err := NewTPKTPacket().parse(ctx, readBuffer)
+	v, err := (&_TPKTPacket{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/simulated/readwrite/model/Dummy.go b/plc4go/protocols/simulated/readwrite/model/Dummy.go
index 948df0ea08..5d32ce4ed2 100644
--- a/plc4go/protocols/simulated/readwrite/model/Dummy.go
+++ b/plc4go/protocols/simulated/readwrite/model/Dummy.go
@@ -116,7 +116,7 @@ func DummyParseWithBufferProducer() func(ctx context.Context, readBuffer utils.R
 }
 
 func DummyParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (Dummy, error) {
-	v, err := NewDummy().parse(ctx, readBuffer)
+	v, err := (&_Dummy{}).parse(ctx, readBuffer)
 	if err != nil {
 		return nil, err
 	}