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 2021/10/03 13:43:30 UTC

[plc4x] branch feature/mspec-ng updated: fix(codegen/plc4go): fix issue with broken optional fields

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

sruehl pushed a commit to branch feature/mspec-ng
in repository https://gitbox.apache.org/repos/asf/plc4x.git


The following commit(s) were added to refs/heads/feature/mspec-ng by this push:
     new a3755c5  fix(codegen/plc4go): fix issue with broken optional fields
a3755c5 is described below

commit a3755c527a0edfdeb5509604e81254ac9060748a
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Sun Oct 3 15:42:59 2021 +0200

    fix(codegen/plc4go): fix issue with broken optional fields
---
 .../resources/templates/go/model-template.go.ftlh  |   6 +-
 .../plc4go/abeth/readwrite/XmlParserHelper.go      |  36 +-
 .../model/CIPEncapsulationConnectionRequest.go     |   9 +-
 .../model/CIPEncapsulationConnectionResponse.go    |   9 +-
 .../readwrite/model/CIPEncapsulationPacket.go      |  49 +-
 .../readwrite/model/CIPEncapsulationReadRequest.go |  39 +-
 .../model/CIPEncapsulationReadResponse.go          |  39 +-
 .../readwrite/model/DF1CommandRequestMessage.go    |  39 +-
 ...mandResponseMessageProtectedTypedLogicalRead.go |  43 +-
 .../abeth/readwrite/model/DF1RequestCommand.go     |  17 +-
 .../abeth/readwrite/model/DF1RequestMessage.go     |  41 +-
 .../model/DF1RequestProtectedTypedLogicalRead.go   | 119 ++--
 .../abeth/readwrite/model/DF1ResponseMessage.go    |  41 +-
 .../plc4go/ads/readwrite/XmlParserHelper.go        |  68 +-
 .../model/AdsAddDeviceNotificationRequest.go       | 157 +++--
 .../model/AdsAddDeviceNotificationResponse.go      |  63 +-
 .../internal/plc4go/ads/readwrite/model/AdsData.go |  89 ++-
 .../plc4go/ads/readwrite/model/AdsDataType.go      | 654 ++++++++++--------
 .../model/AdsDeleteDeviceNotificationRequest.go    |  33 +-
 .../model/AdsDeleteDeviceNotificationResponse.go   |  35 +-
 .../model/AdsDeviceNotificationRequest.go          |  89 ++-
 .../model/AdsDeviceNotificationResponse.go         |  11 +-
 .../ads/readwrite/model/AdsInvalidRequest.go       |  11 +-
 .../ads/readwrite/model/AdsInvalidResponse.go      |  11 +-
 .../ads/readwrite/model/AdsMultiRequestItem.go     |  21 +-
 .../ads/readwrite/model/AdsMultiRequestItemRead.go |  77 +--
 .../model/AdsMultiRequestItemReadWrite.go          |  93 ++-
 .../readwrite/model/AdsMultiRequestItemWrite.go    |  71 +-
 .../ads/readwrite/model/AdsNotificationSample.go   |  22 +-
 .../readwrite/model/AdsReadDeviceInfoRequest.go    |  11 +-
 .../readwrite/model/AdsReadDeviceInfoResponse.go   | 133 ++--
 .../plc4go/ads/readwrite/model/AdsReadRequest.go   |  77 +--
 .../plc4go/ads/readwrite/model/AdsReadResponse.go  |  79 +--
 .../ads/readwrite/model/AdsReadStateRequest.go     |  11 +-
 .../ads/readwrite/model/AdsReadStateResponse.go    |  85 ++-
 .../ads/readwrite/model/AdsReadWriteRequest.go     | 163 +++--
 .../ads/readwrite/model/AdsReadWriteResponse.go    |  79 +--
 .../plc4go/ads/readwrite/model/AdsStampHeader.go   |  24 +-
 .../ads/readwrite/model/AdsWriteControlRequest.go  |  99 ++-
 .../ads/readwrite/model/AdsWriteControlResponse.go |  35 +-
 .../plc4go/ads/readwrite/model/AdsWriteRequest.go  |  99 ++-
 .../plc4go/ads/readwrite/model/AdsWriteResponse.go |  35 +-
 .../plc4go/ads/readwrite/model/AmsNetId.go         |  34 +-
 .../plc4go/ads/readwrite/model/AmsPacket.go        |  50 +-
 .../readwrite/model/AmsSerialAcknowledgeFrame.go   |  44 +-
 .../plc4go/ads/readwrite/model/AmsSerialFrame.go   |  48 +-
 .../ads/readwrite/model/AmsSerialResetFrame.go     |  44 +-
 .../plc4go/ads/readwrite/model/AmsTCPPacket.go     |  14 +-
 .../plc4go/ads/readwrite/model/CommandId.go        |  63 +-
 .../plc4go/ads/readwrite/model/DataItem.go         | 681 ++++++++++---------
 .../ads/readwrite/model/ReservedIndexGroups.go     | 183 +++--
 .../plc4go/ads/readwrite/model/ReturnCode.go       | 735 ++++++++++-----------
 .../internal/plc4go/ads/readwrite/model/State.go   |  64 +-
 .../readwrite/model/BACnetComplexTagOctetString.go |   2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoHas.go |  84 ++-
 .../knxnetip/readwrite/model/KnxDatapoint.go       |  10 +-
 .../internal/plc4go/s7/readwrite/model/DataItem.go |  16 +-
 ...ayloadUserDataItemCpuFunctionMsgSubscription.go |   2 +-
 .../plc4go/simulated/readwrite/model/DataItem.go   |   4 +-
 .../resources/protocols/bacnetip/bacnetip.mspec    |  12 +-
 60 files changed, 2392 insertions(+), 2620 deletions(-)

diff --git a/code-generation/language-go/src/main/resources/templates/go/model-template.go.ftlh b/code-generation/language-go/src/main/resources/templates/go/model-template.go.ftlh
index 7022424..f37ca35 100644
--- a/code-generation/language-go/src/main/resources/templates/go/model-template.go.ftlh
+++ b/code-generation/language-go/src/main/resources/templates/go/model-template.go.ftlh
@@ -838,9 +838,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	curPos = readBuffer.GetPos() - startPos
 				</#if>
 	var ${optionalField.name} *${helper.getLanguageTypeNameForField(field)} = nil
-	<#if optionalField.conditionExpression.present>
-	if ${helper.toBooleanParseExpression(optionalField.conditionExpression.get(), parserArguments)} {
-    </#if>
+	<#if optionalField.conditionExpression.present>if ${helper.toBooleanParseExpression(optionalField.conditionExpression.get(), parserArguments)} </#if>{
 			<#if helper.isSimpleTypeReference(optionalField.type)>
 		_val, _err := ${helper.getReadBufferReadMethodCall(optionalField.name, optionalField.type.asSimpleTypeReference().orElseThrow())}
 		if _err != nil {
@@ -891,9 +889,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 		}
 		${optionalField.name} = Cast${helper.getLanguageTypeNameForField(field)}(_val)
 			</#if>
-	<#if optionalField.conditionExpression.present>
 	}
-	</#if>
 			<#break>
 			<#case "assert">
 				<#assign assertField = field.asAssertField().orElseThrow()>
diff --git a/plc4go/internal/plc4go/abeth/readwrite/XmlParserHelper.go b/plc4go/internal/plc4go/abeth/readwrite/XmlParserHelper.go
index cd8a8eb..7e51b7b 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/XmlParserHelper.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/XmlParserHelper.go
@@ -23,8 +23,8 @@ import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/abeth/readwrite/model"
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
-    "strings"
-    "strconv"
+	"strconv"
+	"strings"
 )
 
 // Code generated by code-generation. DO NOT EDIT.
@@ -41,20 +41,20 @@ func init() {
 }
 
 func (m AbethXmlParserHelper) Parse(typeName string, xmlString string, parserArguments ...string) (interface{}, error) {
-    switch typeName {
-        case "DF1RequestCommand":
-			return model.DF1RequestCommandParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "DF1RequestMessage":
-			return model.DF1RequestMessageParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "DF1ResponseMessage":
-			parsedUint0, err := strconv.ParseUint(parserArguments[0], 10, 16)
-			if err!=nil {
-				return nil, err
-			}
-			payloadLength := uint16(parsedUint0)
-            return model.DF1ResponseMessageParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), payloadLength  )
-        case "CIPEncapsulationPacket":
-			return model.CIPEncapsulationPacketParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-    }
-    return nil, errors.Errorf("Unsupported type %s", typeName)
+	switch typeName {
+	case "DF1RequestCommand":
+		return model.DF1RequestCommandParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "DF1RequestMessage":
+		return model.DF1RequestMessageParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "DF1ResponseMessage":
+		parsedUint0, err := strconv.ParseUint(parserArguments[0], 10, 16)
+		if err != nil {
+			return nil, err
+		}
+		payloadLength := uint16(parsedUint0)
+		return model.DF1ResponseMessageParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), payloadLength)
+	case "CIPEncapsulationPacket":
+		return model.CIPEncapsulationPacketParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	}
+	return nil, errors.Errorf("Unsupported type %s", typeName)
 }
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go
index 4980903..6c8c64e 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type CIPEncapsulationConnectionRequest struct {
@@ -46,7 +44,6 @@ func (m *CIPEncapsulationConnectionRequest) CommandType() uint16 {
 	return 0x0101
 }
 
-
 func (m *CIPEncapsulationConnectionRequest) InitializeParent(parent *CIPEncapsulationPacket, sessionHandle uint32, status uint32, senderContext []uint8, options uint32) {
 	m.Parent.SessionHandle = sessionHandle
 	m.Parent.Status = status
@@ -95,7 +92,6 @@ func (m *CIPEncapsulationConnectionRequest) LengthInBitsConditional(lastItem boo
 	return lengthInBits
 }
 
-
 func (m *CIPEncapsulationConnectionRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -139,6 +135,3 @@ func (m *CIPEncapsulationConnectionRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go
index 77e7c4e..e4b8546 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type CIPEncapsulationConnectionResponse struct {
@@ -46,7 +44,6 @@ func (m *CIPEncapsulationConnectionResponse) CommandType() uint16 {
 	return 0x0201
 }
 
-
 func (m *CIPEncapsulationConnectionResponse) InitializeParent(parent *CIPEncapsulationPacket, sessionHandle uint32, status uint32, senderContext []uint8, options uint32) {
 	m.Parent.SessionHandle = sessionHandle
 	m.Parent.Status = status
@@ -95,7 +92,6 @@ func (m *CIPEncapsulationConnectionResponse) LengthInBitsConditional(lastItem bo
 	return lengthInBits
 }
 
-
 func (m *CIPEncapsulationConnectionResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -139,6 +135,3 @@ func (m *CIPEncapsulationConnectionResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationPacket.go b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationPacket.go
index 97fc214..1111635 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationPacket.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationPacket.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type CIPEncapsulationPacket struct {
 	SessionHandle uint32
-	Status uint32
+	Status        uint32
 	SenderContext []uint8
-	Options uint32
-	Child ICIPEncapsulationPacketChild
+	Options       uint32
+	Child         ICIPEncapsulationPacketChild
 }
 
 // The corresponding interface
@@ -90,24 +88,24 @@ func (m *CIPEncapsulationPacket) LengthInBitsConditional(lastItem bool) uint16 {
 func (m *CIPEncapsulationPacket) ParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 	// Discriminator Field (commandType)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Implicit Field (len)
 	lengthInBits += 16
 
 	// Simple field (sessionHandle)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (status)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Array field
 	if len(m.SenderContext) > 0 {
 		lengthInBits += 8 * uint16(len(m.SenderContext))
-				}
+	}
 
 	// Simple field (options)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Reserved Field (reserved)
 	lengthInBits += 32
@@ -127,7 +125,7 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (*CIPEncapsulation
 	// Discriminator Field (commandType) (Used as input to a switch field)
 	commandType, _commandTypeErr := readBuffer.ReadUint16("commandType", 16)
 	if _commandTypeErr != nil {
-	return nil, errors.Wrap(_commandTypeErr, "Error parsing 'commandType' field")
+		return nil, errors.Wrap(_commandTypeErr, "Error parsing 'commandType' field")
 	}
 
 	// Implicit Field (len) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
@@ -138,13 +136,13 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (*CIPEncapsulation
 	}
 
 	// Simple Field (sessionHandle)
-sessionHandle, _sessionHandleErr := readBuffer.ReadUint32("sessionHandle", 32)
+	sessionHandle, _sessionHandleErr := readBuffer.ReadUint32("sessionHandle", 32)
 	if _sessionHandleErr != nil {
 		return nil, errors.Wrap(_sessionHandleErr, "Error parsing 'sessionHandle' field")
 	}
 
 	// Simple Field (status)
-status, _statusErr := readBuffer.ReadUint32("status", 32)
+	status, _statusErr := readBuffer.ReadUint32("status", 32)
 	if _statusErr != nil {
 		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field")
 	}
@@ -167,7 +165,7 @@ status, _statusErr := readBuffer.ReadUint32("status", 32)
 	}
 
 	// Simple Field (options)
-options, _optionsErr := readBuffer.ReadUint32("options", 32)
+	options, _optionsErr := readBuffer.ReadUint32("options", 32)
 	if _optionsErr != nil {
 		return nil, errors.Wrap(_optionsErr, "Error parsing 'options' field")
 	}
@@ -181,7 +179,7 @@ options, _optionsErr := readBuffer.ReadUint32("options", 32)
 		if reserved != uint32(0x00000000) {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": uint32(0x00000000),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
@@ -190,13 +188,13 @@ options, _optionsErr := readBuffer.ReadUint32("options", 32)
 	var _parent *CIPEncapsulationPacket
 	var typeSwitchError error
 	switch {
-case commandType == 0x0101 : // CIPEncapsulationConnectionRequest
-		_parent, typeSwitchError = CIPEncapsulationConnectionRequestParse(readBuffer, )
-case commandType == 0x0201 : // CIPEncapsulationConnectionResponse
-		_parent, typeSwitchError = CIPEncapsulationConnectionResponseParse(readBuffer, )
-case commandType == 0x0107 : // CIPEncapsulationReadRequest
-		_parent, typeSwitchError = CIPEncapsulationReadRequestParse(readBuffer, )
-case commandType == 0x0207 : // CIPEncapsulationReadResponse
+	case commandType == 0x0101: // CIPEncapsulationConnectionRequest
+		_parent, typeSwitchError = CIPEncapsulationConnectionRequestParse(readBuffer)
+	case commandType == 0x0201: // CIPEncapsulationConnectionResponse
+		_parent, typeSwitchError = CIPEncapsulationConnectionResponseParse(readBuffer)
+	case commandType == 0x0107: // CIPEncapsulationReadRequest
+		_parent, typeSwitchError = CIPEncapsulationReadRequestParse(readBuffer)
+	case commandType == 0x0207: // CIPEncapsulationReadResponse
 		_parent, typeSwitchError = CIPEncapsulationReadResponseParse(readBuffer, len)
 	default:
 		// TODO: return actual type
@@ -220,7 +218,7 @@ func (m *CIPEncapsulationPacket) Serialize(writeBuffer utils.WriteBuffer) error
 }
 
 func (m *CIPEncapsulationPacket) SerializeParent(writeBuffer utils.WriteBuffer, child ICIPEncapsulationPacket, serializeChildFunction func() error) error {
-	if pushErr :=writeBuffer.PushContext("CIPEncapsulationPacket"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("CIPEncapsulationPacket"); pushErr != nil {
 		return pushErr
 	}
 
@@ -304,6 +302,3 @@ func (m *CIPEncapsulationPacket) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadRequest.go b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadRequest.go
index 99e95cd..afa9253 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadRequest.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadRequest.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type CIPEncapsulationReadRequest struct {
 	Request *DF1RequestMessage
-	Parent *CIPEncapsulationPacket
+	Parent  *CIPEncapsulationPacket
 }
 
 // The corresponding interface
@@ -48,7 +46,6 @@ func (m *CIPEncapsulationReadRequest) CommandType() uint16 {
 	return 0x0107
 }
 
-
 func (m *CIPEncapsulationReadRequest) InitializeParent(parent *CIPEncapsulationPacket, sessionHandle uint32, status uint32, senderContext []uint8, options uint32) {
 	m.Parent.SessionHandle = sessionHandle
 	m.Parent.Status = status
@@ -59,7 +56,7 @@ func (m *CIPEncapsulationReadRequest) InitializeParent(parent *CIPEncapsulationP
 func NewCIPEncapsulationReadRequest(request *DF1RequestMessage, sessionHandle uint32, status uint32, senderContext []uint8, options uint32) *CIPEncapsulationPacket {
 	child := &CIPEncapsulationReadRequest{
 		Request: request,
-		Parent: NewCIPEncapsulationPacket(sessionHandle, status, senderContext, options),
+		Parent:  NewCIPEncapsulationPacket(sessionHandle, status, senderContext, options),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -101,7 +98,6 @@ func (m *CIPEncapsulationReadRequest) LengthInBitsConditional(lastItem bool) uin
 	return lengthInBits
 }
 
-
 func (m *CIPEncapsulationReadRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -115,7 +111,7 @@ func CIPEncapsulationReadRequestParse(readBuffer utils.ReadBuffer) (*CIPEncapsul
 	if pullErr := readBuffer.PullContext("request"); pullErr != nil {
 		return nil, pullErr
 	}
-request, _requestErr := DF1RequestMessageParse(readBuffer)
+	request, _requestErr := DF1RequestMessageParse(readBuffer)
 	if _requestErr != nil {
 		return nil, errors.Wrap(_requestErr, "Error parsing 'request' field")
 	}
@@ -130,7 +126,7 @@ request, _requestErr := DF1RequestMessageParse(readBuffer)
 	// Create a partially initialized instance
 	_child := &CIPEncapsulationReadRequest{
 		Request: CastDF1RequestMessage(request),
-		Parent: &CIPEncapsulationPacket{},
+		Parent:  &CIPEncapsulationPacket{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -142,17 +138,17 @@ func (m *CIPEncapsulationReadRequest) Serialize(writeBuffer utils.WriteBuffer) e
 			return pushErr
 		}
 
-	// Simple Field (request)
-	if pushErr := writeBuffer.PushContext("request"); pushErr != nil {
-		return pushErr
-	}
-	_requestErr := m.Request.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("request"); popErr != nil {
-		return popErr
-	}
-	if _requestErr != nil {
-		return errors.Wrap(_requestErr, "Error serializing 'request' field")
-	}
+		// Simple Field (request)
+		if pushErr := writeBuffer.PushContext("request"); pushErr != nil {
+			return pushErr
+		}
+		_requestErr := m.Request.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("request"); popErr != nil {
+			return popErr
+		}
+		if _requestErr != nil {
+			return errors.Wrap(_requestErr, "Error serializing 'request' field")
+		}
 
 		if popErr := writeBuffer.PopContext("CIPEncapsulationReadRequest"); popErr != nil {
 			return popErr
@@ -170,6 +166,3 @@ func (m *CIPEncapsulationReadRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadResponse.go b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadResponse.go
index 820c44f..a95ec22 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadResponse.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/CIPEncapsulationReadResponse.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type CIPEncapsulationReadResponse struct {
 	Response *DF1ResponseMessage
-	Parent *CIPEncapsulationPacket
+	Parent   *CIPEncapsulationPacket
 }
 
 // The corresponding interface
@@ -48,7 +46,6 @@ func (m *CIPEncapsulationReadResponse) CommandType() uint16 {
 	return 0x0207
 }
 
-
 func (m *CIPEncapsulationReadResponse) InitializeParent(parent *CIPEncapsulationPacket, sessionHandle uint32, status uint32, senderContext []uint8, options uint32) {
 	m.Parent.SessionHandle = sessionHandle
 	m.Parent.Status = status
@@ -59,7 +56,7 @@ func (m *CIPEncapsulationReadResponse) InitializeParent(parent *CIPEncapsulation
 func NewCIPEncapsulationReadResponse(response *DF1ResponseMessage, sessionHandle uint32, status uint32, senderContext []uint8, options uint32) *CIPEncapsulationPacket {
 	child := &CIPEncapsulationReadResponse{
 		Response: response,
-		Parent: NewCIPEncapsulationPacket(sessionHandle, status, senderContext, options),
+		Parent:   NewCIPEncapsulationPacket(sessionHandle, status, senderContext, options),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -101,7 +98,6 @@ func (m *CIPEncapsulationReadResponse) LengthInBitsConditional(lastItem bool) ui
 	return lengthInBits
 }
 
-
 func (m *CIPEncapsulationReadResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -115,7 +111,7 @@ func CIPEncapsulationReadResponseParse(readBuffer utils.ReadBuffer, len uint16)
 	if pullErr := readBuffer.PullContext("response"); pullErr != nil {
 		return nil, pullErr
 	}
-response, _responseErr := DF1ResponseMessageParse(readBuffer , len )
+	response, _responseErr := DF1ResponseMessageParse(readBuffer, len)
 	if _responseErr != nil {
 		return nil, errors.Wrap(_responseErr, "Error parsing 'response' field")
 	}
@@ -130,7 +126,7 @@ response, _responseErr := DF1ResponseMessageParse(readBuffer , len )
 	// Create a partially initialized instance
 	_child := &CIPEncapsulationReadResponse{
 		Response: CastDF1ResponseMessage(response),
-		Parent: &CIPEncapsulationPacket{},
+		Parent:   &CIPEncapsulationPacket{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -142,17 +138,17 @@ func (m *CIPEncapsulationReadResponse) Serialize(writeBuffer utils.WriteBuffer)
 			return pushErr
 		}
 
-	// Simple Field (response)
-	if pushErr := writeBuffer.PushContext("response"); pushErr != nil {
-		return pushErr
-	}
-	_responseErr := m.Response.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("response"); popErr != nil {
-		return popErr
-	}
-	if _responseErr != nil {
-		return errors.Wrap(_responseErr, "Error serializing 'response' field")
-	}
+		// Simple Field (response)
+		if pushErr := writeBuffer.PushContext("response"); pushErr != nil {
+			return pushErr
+		}
+		_responseErr := m.Response.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("response"); popErr != nil {
+			return popErr
+		}
+		if _responseErr != nil {
+			return errors.Wrap(_responseErr, "Error serializing 'response' field")
+		}
 
 		if popErr := writeBuffer.PopContext("CIPEncapsulationReadResponse"); popErr != nil {
 			return popErr
@@ -170,6 +166,3 @@ func (m *CIPEncapsulationReadResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandRequestMessage.go b/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandRequestMessage.go
index 38b1368..b00ee3c 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandRequestMessage.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandRequestMessage.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type DF1CommandRequestMessage struct {
 	Command *DF1RequestCommand
-	Parent *DF1RequestMessage
+	Parent  *DF1RequestMessage
 }
 
 // The corresponding interface
@@ -48,7 +46,6 @@ func (m *DF1CommandRequestMessage) CommandCode() uint8 {
 	return 0x0F
 }
 
-
 func (m *DF1CommandRequestMessage) InitializeParent(parent *DF1RequestMessage, destinationAddress uint8, sourceAddress uint8, status uint8, transactionCounter uint16) {
 	m.Parent.DestinationAddress = destinationAddress
 	m.Parent.SourceAddress = sourceAddress
@@ -59,7 +56,7 @@ func (m *DF1CommandRequestMessage) InitializeParent(parent *DF1RequestMessage, d
 func NewDF1CommandRequestMessage(command *DF1RequestCommand, destinationAddress uint8, sourceAddress uint8, status uint8, transactionCounter uint16) *DF1RequestMessage {
 	child := &DF1CommandRequestMessage{
 		Command: command,
-		Parent: NewDF1RequestMessage(destinationAddress, sourceAddress, status, transactionCounter),
+		Parent:  NewDF1RequestMessage(destinationAddress, sourceAddress, status, transactionCounter),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -101,7 +98,6 @@ func (m *DF1CommandRequestMessage) LengthInBitsConditional(lastItem bool) uint16
 	return lengthInBits
 }
 
-
 func (m *DF1CommandRequestMessage) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -115,7 +111,7 @@ func DF1CommandRequestMessageParse(readBuffer utils.ReadBuffer) (*DF1RequestMess
 	if pullErr := readBuffer.PullContext("command"); pullErr != nil {
 		return nil, pullErr
 	}
-command, _commandErr := DF1RequestCommandParse(readBuffer)
+	command, _commandErr := DF1RequestCommandParse(readBuffer)
 	if _commandErr != nil {
 		return nil, errors.Wrap(_commandErr, "Error parsing 'command' field")
 	}
@@ -130,7 +126,7 @@ command, _commandErr := DF1RequestCommandParse(readBuffer)
 	// Create a partially initialized instance
 	_child := &DF1CommandRequestMessage{
 		Command: CastDF1RequestCommand(command),
-		Parent: &DF1RequestMessage{},
+		Parent:  &DF1RequestMessage{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -142,17 +138,17 @@ func (m *DF1CommandRequestMessage) Serialize(writeBuffer utils.WriteBuffer) erro
 			return pushErr
 		}
 
-	// Simple Field (command)
-	if pushErr := writeBuffer.PushContext("command"); pushErr != nil {
-		return pushErr
-	}
-	_commandErr := m.Command.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("command"); popErr != nil {
-		return popErr
-	}
-	if _commandErr != nil {
-		return errors.Wrap(_commandErr, "Error serializing 'command' field")
-	}
+		// Simple Field (command)
+		if pushErr := writeBuffer.PushContext("command"); pushErr != nil {
+			return pushErr
+		}
+		_commandErr := m.Command.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("command"); popErr != nil {
+			return popErr
+		}
+		if _commandErr != nil {
+			return errors.Wrap(_commandErr, "Error serializing 'command' field")
+		}
 
 		if popErr := writeBuffer.PopContext("DF1CommandRequestMessage"); popErr != nil {
 			return popErr
@@ -170,6 +166,3 @@ func (m *DF1CommandRequestMessage) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go b/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
index 840504b..a56801a 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
@@ -19,18 +19,16 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type DF1CommandResponseMessageProtectedTypedLogicalRead struct {
-	Data []uint8
+	Data   []uint8
 	Parent *DF1ResponseMessage
 }
 
@@ -48,7 +46,6 @@ func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) CommandCode() uint8
 	return 0x4F
 }
 
-
 func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) InitializeParent(parent *DF1ResponseMessage, destinationAddress uint8, sourceAddress uint8, status uint8, transactionCounter uint16) {
 	m.Parent.DestinationAddress = destinationAddress
 	m.Parent.SourceAddress = sourceAddress
@@ -58,7 +55,7 @@ func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) InitializeParent(pa
 
 func NewDF1CommandResponseMessageProtectedTypedLogicalRead(data []uint8, destinationAddress uint8, sourceAddress uint8, status uint8, transactionCounter uint16) *DF1ResponseMessage {
 	child := &DF1CommandResponseMessageProtectedTypedLogicalRead{
-		Data: data,
+		Data:   data,
 		Parent: NewDF1ResponseMessage(destinationAddress, sourceAddress, status, transactionCounter),
 	}
 	child.Parent.Child = child
@@ -103,7 +100,6 @@ func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) LengthInBitsConditi
 	return lengthInBits
 }
 
-
 func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -121,7 +117,7 @@ func DF1CommandResponseMessageProtectedTypedLogicalReadParse(readBuffer utils.Re
 	data := make([]uint8, 0)
 	_dataLength := uint16(payloadLength) - uint16(uint16(8))
 	_dataEndPos := readBuffer.GetPos() + uint16(_dataLength)
-	for ;readBuffer.GetPos() < _dataEndPos; {
+	for readBuffer.GetPos() < _dataEndPos {
 		_item, _err := readBuffer.ReadUint8("", 8)
 		if _err != nil {
 			return nil, errors.Wrap(_err, "Error parsing 'data' field")
@@ -138,7 +134,7 @@ func DF1CommandResponseMessageProtectedTypedLogicalReadParse(readBuffer utils.Re
 
 	// Create a partially initialized instance
 	_child := &DF1CommandResponseMessageProtectedTypedLogicalRead{
-		Data: data,
+		Data:   data,
 		Parent: &DF1ResponseMessage{},
 	}
 	_child.Parent.Child = _child
@@ -151,21 +147,21 @@ func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) Serialize(writeBuff
 			return pushErr
 		}
 
-	// Array Field (data)
-	if m.Data != nil {
-		if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
-		}
-		for _, _element := range m.Data {
-			_elementErr := writeBuffer.WriteUint8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'data' field")
+		// Array Field (data)
+		if m.Data != nil {
+			if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Data {
+				_elementErr := writeBuffer.WriteUint8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'data' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
 		if popErr := writeBuffer.PopContext("DF1CommandResponseMessageProtectedTypedLogicalRead"); popErr != nil {
 			return popErr
@@ -183,6 +179,3 @@ func (m *DF1CommandResponseMessageProtectedTypedLogicalRead) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestCommand.go b/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestCommand.go
index 37822c8..29ef3b3 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestCommand.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestCommand.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type DF1RequestCommand struct {
@@ -85,7 +83,7 @@ func (m *DF1RequestCommand) LengthInBitsConditional(lastItem bool) uint16 {
 func (m *DF1RequestCommand) ParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 	// Discriminator Field (functionCode)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	return lengthInBits
 }
@@ -102,15 +100,15 @@ func DF1RequestCommandParse(readBuffer utils.ReadBuffer) (*DF1RequestCommand, er
 	// Discriminator Field (functionCode) (Used as input to a switch field)
 	functionCode, _functionCodeErr := readBuffer.ReadUint8("functionCode", 8)
 	if _functionCodeErr != nil {
-	return nil, errors.Wrap(_functionCodeErr, "Error parsing 'functionCode' field")
+		return nil, errors.Wrap(_functionCodeErr, "Error parsing 'functionCode' field")
 	}
 
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	var _parent *DF1RequestCommand
 	var typeSwitchError error
 	switch {
-case functionCode == 0xA2 : // DF1RequestProtectedTypedLogicalRead
-		_parent, typeSwitchError = DF1RequestProtectedTypedLogicalReadParse(readBuffer, )
+	case functionCode == 0xA2: // DF1RequestProtectedTypedLogicalRead
+		_parent, typeSwitchError = DF1RequestProtectedTypedLogicalReadParse(readBuffer)
 	default:
 		// TODO: return actual type
 		typeSwitchError = errors.New("Unmapped type")
@@ -133,7 +131,7 @@ func (m *DF1RequestCommand) Serialize(writeBuffer utils.WriteBuffer) error {
 }
 
 func (m *DF1RequestCommand) SerializeParent(writeBuffer utils.WriteBuffer, child IDF1RequestCommand, serializeChildFunction func() error) error {
-	if pushErr :=writeBuffer.PushContext("DF1RequestCommand"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("DF1RequestCommand"); pushErr != nil {
 		return pushErr
 	}
 
@@ -165,6 +163,3 @@ func (m *DF1RequestCommand) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestMessage.go b/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestMessage.go
index 078f79e..3200b90 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestMessage.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestMessage.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type DF1RequestMessage struct {
 	DestinationAddress uint8
-	SourceAddress uint8
-	Status uint8
+	SourceAddress      uint8
+	Status             uint8
 	TransactionCounter uint16
-	Child IDF1RequestMessageChild
+	Child              IDF1RequestMessageChild
 }
 
 // The corresponding interface
@@ -91,21 +89,21 @@ func (m *DF1RequestMessage) ParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (destinationAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (sourceAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Reserved Field (reserved)
 	lengthInBits += 16
 	// Discriminator Field (commandCode)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (status)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (transactionCounter)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	return lengthInBits
 }
@@ -120,13 +118,13 @@ func DF1RequestMessageParse(readBuffer utils.ReadBuffer) (*DF1RequestMessage, er
 	}
 
 	// Simple Field (destinationAddress)
-destinationAddress, _destinationAddressErr := readBuffer.ReadUint8("destinationAddress", 8)
+	destinationAddress, _destinationAddressErr := readBuffer.ReadUint8("destinationAddress", 8)
 	if _destinationAddressErr != nil {
 		return nil, errors.Wrap(_destinationAddressErr, "Error parsing 'destinationAddress' field")
 	}
 
 	// Simple Field (sourceAddress)
-sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
+	sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 	if _sourceAddressErr != nil {
 		return nil, errors.Wrap(_sourceAddressErr, "Error parsing 'sourceAddress' field")
 	}
@@ -140,7 +138,7 @@ sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 		if reserved != uint16(0x0000) {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": uint16(0x0000),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
@@ -148,17 +146,17 @@ sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 	// Discriminator Field (commandCode) (Used as input to a switch field)
 	commandCode, _commandCodeErr := readBuffer.ReadUint8("commandCode", 8)
 	if _commandCodeErr != nil {
-	return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field")
+		return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field")
 	}
 
 	// Simple Field (status)
-status, _statusErr := readBuffer.ReadUint8("status", 8)
+	status, _statusErr := readBuffer.ReadUint8("status", 8)
 	if _statusErr != nil {
 		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field")
 	}
 
 	// Simple Field (transactionCounter)
-transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transactionCounter", 16)
+	transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transactionCounter", 16)
 	if _transactionCounterErr != nil {
 		return nil, errors.Wrap(_transactionCounterErr, "Error parsing 'transactionCounter' field")
 	}
@@ -167,8 +165,8 @@ transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transaction
 	var _parent *DF1RequestMessage
 	var typeSwitchError error
 	switch {
-case commandCode == 0x0F : // DF1CommandRequestMessage
-		_parent, typeSwitchError = DF1CommandRequestMessageParse(readBuffer, )
+	case commandCode == 0x0F: // DF1CommandRequestMessage
+		_parent, typeSwitchError = DF1CommandRequestMessageParse(readBuffer)
 	default:
 		// TODO: return actual type
 		typeSwitchError = errors.New("Unmapped type")
@@ -191,7 +189,7 @@ func (m *DF1RequestMessage) Serialize(writeBuffer utils.WriteBuffer) error {
 }
 
 func (m *DF1RequestMessage) SerializeParent(writeBuffer utils.WriteBuffer, child IDF1RequestMessage, serializeChildFunction func() error) error {
-	if pushErr :=writeBuffer.PushContext("DF1RequestMessage"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("DF1RequestMessage"); pushErr != nil {
 		return pushErr
 	}
 
@@ -259,6 +257,3 @@ func (m *DF1RequestMessage) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go b/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
index 1faa63a..0f4f142 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type DF1RequestProtectedTypedLogicalRead struct {
-	ByteSize uint8
-	FileNumber uint8
-	FileType uint8
-	ElementNumber uint8
+	ByteSize         uint8
+	FileNumber       uint8
+	FileType         uint8
+	ElementNumber    uint8
 	SubElementNumber uint8
-	Parent *DF1RequestCommand
+	Parent           *DF1RequestCommand
 }
 
 // The corresponding interface
@@ -52,18 +50,17 @@ func (m *DF1RequestProtectedTypedLogicalRead) FunctionCode() uint8 {
 	return 0xA2
 }
 
-
 func (m *DF1RequestProtectedTypedLogicalRead) InitializeParent(parent *DF1RequestCommand) {
 }
 
 func NewDF1RequestProtectedTypedLogicalRead(byteSize uint8, fileNumber uint8, fileType uint8, elementNumber uint8, subElementNumber uint8) *DF1RequestCommand {
 	child := &DF1RequestProtectedTypedLogicalRead{
-		ByteSize: byteSize,
-		FileNumber: fileNumber,
-		FileType: fileType,
-		ElementNumber: elementNumber,
+		ByteSize:         byteSize,
+		FileNumber:       fileNumber,
+		FileType:         fileType,
+		ElementNumber:    elementNumber,
 		SubElementNumber: subElementNumber,
-		Parent: NewDF1RequestCommand(),
+		Parent:           NewDF1RequestCommand(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -100,24 +97,23 @@ func (m *DF1RequestProtectedTypedLogicalRead) LengthInBitsConditional(lastItem b
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (byteSize)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (fileNumber)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (fileType)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (elementNumber)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (subElementNumber)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	return lengthInBits
 }
 
-
 func (m *DF1RequestProtectedTypedLogicalRead) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -128,31 +124,31 @@ func DF1RequestProtectedTypedLogicalReadParse(readBuffer utils.ReadBuffer) (*DF1
 	}
 
 	// Simple Field (byteSize)
-byteSize, _byteSizeErr := readBuffer.ReadUint8("byteSize", 8)
+	byteSize, _byteSizeErr := readBuffer.ReadUint8("byteSize", 8)
 	if _byteSizeErr != nil {
 		return nil, errors.Wrap(_byteSizeErr, "Error parsing 'byteSize' field")
 	}
 
 	// Simple Field (fileNumber)
-fileNumber, _fileNumberErr := readBuffer.ReadUint8("fileNumber", 8)
+	fileNumber, _fileNumberErr := readBuffer.ReadUint8("fileNumber", 8)
 	if _fileNumberErr != nil {
 		return nil, errors.Wrap(_fileNumberErr, "Error parsing 'fileNumber' field")
 	}
 
 	// Simple Field (fileType)
-fileType, _fileTypeErr := readBuffer.ReadUint8("fileType", 8)
+	fileType, _fileTypeErr := readBuffer.ReadUint8("fileType", 8)
 	if _fileTypeErr != nil {
 		return nil, errors.Wrap(_fileTypeErr, "Error parsing 'fileType' field")
 	}
 
 	// Simple Field (elementNumber)
-elementNumber, _elementNumberErr := readBuffer.ReadUint8("elementNumber", 8)
+	elementNumber, _elementNumberErr := readBuffer.ReadUint8("elementNumber", 8)
 	if _elementNumberErr != nil {
 		return nil, errors.Wrap(_elementNumberErr, "Error parsing 'elementNumber' field")
 	}
 
 	// Simple Field (subElementNumber)
-subElementNumber, _subElementNumberErr := readBuffer.ReadUint8("subElementNumber", 8)
+	subElementNumber, _subElementNumberErr := readBuffer.ReadUint8("subElementNumber", 8)
 	if _subElementNumberErr != nil {
 		return nil, errors.Wrap(_subElementNumberErr, "Error parsing 'subElementNumber' field")
 	}
@@ -163,12 +159,12 @@ subElementNumber, _subElementNumberErr := readBuffer.ReadUint8("subElementNumber
 
 	// Create a partially initialized instance
 	_child := &DF1RequestProtectedTypedLogicalRead{
-		ByteSize: byteSize,
-		FileNumber: fileNumber,
-		FileType: fileType,
-		ElementNumber: elementNumber,
+		ByteSize:         byteSize,
+		FileNumber:       fileNumber,
+		FileType:         fileType,
+		ElementNumber:    elementNumber,
 		SubElementNumber: subElementNumber,
-		Parent: &DF1RequestCommand{},
+		Parent:           &DF1RequestCommand{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -180,40 +176,40 @@ func (m *DF1RequestProtectedTypedLogicalRead) Serialize(writeBuffer utils.WriteB
 			return pushErr
 		}
 
-	// Simple Field (byteSize)
-	byteSize := uint8(m.ByteSize)
-	_byteSizeErr := writeBuffer.WriteUint8("byteSize", 8, (byteSize))
-	if _byteSizeErr != nil {
-		return errors.Wrap(_byteSizeErr, "Error serializing 'byteSize' field")
-	}
+		// Simple Field (byteSize)
+		byteSize := uint8(m.ByteSize)
+		_byteSizeErr := writeBuffer.WriteUint8("byteSize", 8, (byteSize))
+		if _byteSizeErr != nil {
+			return errors.Wrap(_byteSizeErr, "Error serializing 'byteSize' field")
+		}
 
-	// Simple Field (fileNumber)
-	fileNumber := uint8(m.FileNumber)
-	_fileNumberErr := writeBuffer.WriteUint8("fileNumber", 8, (fileNumber))
-	if _fileNumberErr != nil {
-		return errors.Wrap(_fileNumberErr, "Error serializing 'fileNumber' field")
-	}
+		// Simple Field (fileNumber)
+		fileNumber := uint8(m.FileNumber)
+		_fileNumberErr := writeBuffer.WriteUint8("fileNumber", 8, (fileNumber))
+		if _fileNumberErr != nil {
+			return errors.Wrap(_fileNumberErr, "Error serializing 'fileNumber' field")
+		}
 
-	// Simple Field (fileType)
-	fileType := uint8(m.FileType)
-	_fileTypeErr := writeBuffer.WriteUint8("fileType", 8, (fileType))
-	if _fileTypeErr != nil {
-		return errors.Wrap(_fileTypeErr, "Error serializing 'fileType' field")
-	}
+		// Simple Field (fileType)
+		fileType := uint8(m.FileType)
+		_fileTypeErr := writeBuffer.WriteUint8("fileType", 8, (fileType))
+		if _fileTypeErr != nil {
+			return errors.Wrap(_fileTypeErr, "Error serializing 'fileType' field")
+		}
 
-	// Simple Field (elementNumber)
-	elementNumber := uint8(m.ElementNumber)
-	_elementNumberErr := writeBuffer.WriteUint8("elementNumber", 8, (elementNumber))
-	if _elementNumberErr != nil {
-		return errors.Wrap(_elementNumberErr, "Error serializing 'elementNumber' field")
-	}
+		// Simple Field (elementNumber)
+		elementNumber := uint8(m.ElementNumber)
+		_elementNumberErr := writeBuffer.WriteUint8("elementNumber", 8, (elementNumber))
+		if _elementNumberErr != nil {
+			return errors.Wrap(_elementNumberErr, "Error serializing 'elementNumber' field")
+		}
 
-	// Simple Field (subElementNumber)
-	subElementNumber := uint8(m.SubElementNumber)
-	_subElementNumberErr := writeBuffer.WriteUint8("subElementNumber", 8, (subElementNumber))
-	if _subElementNumberErr != nil {
-		return errors.Wrap(_subElementNumberErr, "Error serializing 'subElementNumber' field")
-	}
+		// Simple Field (subElementNumber)
+		subElementNumber := uint8(m.SubElementNumber)
+		_subElementNumberErr := writeBuffer.WriteUint8("subElementNumber", 8, (subElementNumber))
+		if _subElementNumberErr != nil {
+			return errors.Wrap(_subElementNumberErr, "Error serializing 'subElementNumber' field")
+		}
 
 		if popErr := writeBuffer.PopContext("DF1RequestProtectedTypedLogicalRead"); popErr != nil {
 			return popErr
@@ -231,6 +227,3 @@ func (m *DF1RequestProtectedTypedLogicalRead) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/abeth/readwrite/model/DF1ResponseMessage.go b/plc4go/internal/plc4go/abeth/readwrite/model/DF1ResponseMessage.go
index 6217916..2c4913a 100644
--- a/plc4go/internal/plc4go/abeth/readwrite/model/DF1ResponseMessage.go
+++ b/plc4go/internal/plc4go/abeth/readwrite/model/DF1ResponseMessage.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type DF1ResponseMessage struct {
 	DestinationAddress uint8
-	SourceAddress uint8
-	Status uint8
+	SourceAddress      uint8
+	Status             uint8
 	TransactionCounter uint16
-	Child IDF1ResponseMessageChild
+	Child              IDF1ResponseMessageChild
 }
 
 // The corresponding interface
@@ -94,21 +92,21 @@ func (m *DF1ResponseMessage) ParentLengthInBits() uint16 {
 	lengthInBits += 8
 
 	// Simple field (destinationAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (sourceAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Reserved Field (reserved)
 	lengthInBits += 8
 	// Discriminator Field (commandCode)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (status)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (transactionCounter)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	return lengthInBits
 }
@@ -131,19 +129,19 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": uint8(0x00),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
 
 	// Simple Field (destinationAddress)
-destinationAddress, _destinationAddressErr := readBuffer.ReadUint8("destinationAddress", 8)
+	destinationAddress, _destinationAddressErr := readBuffer.ReadUint8("destinationAddress", 8)
 	if _destinationAddressErr != nil {
 		return nil, errors.Wrap(_destinationAddressErr, "Error parsing 'destinationAddress' field")
 	}
 
 	// Simple Field (sourceAddress)
-sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
+	sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 	if _sourceAddressErr != nil {
 		return nil, errors.Wrap(_sourceAddressErr, "Error parsing 'sourceAddress' field")
 	}
@@ -157,7 +155,7 @@ sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": uint8(0x00),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
@@ -165,17 +163,17 @@ sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 	// Discriminator Field (commandCode) (Used as input to a switch field)
 	commandCode, _commandCodeErr := readBuffer.ReadUint8("commandCode", 8)
 	if _commandCodeErr != nil {
-	return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field")
+		return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field")
 	}
 
 	// Simple Field (status)
-status, _statusErr := readBuffer.ReadUint8("status", 8)
+	status, _statusErr := readBuffer.ReadUint8("status", 8)
 	if _statusErr != nil {
 		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field")
 	}
 
 	// Simple Field (transactionCounter)
-transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transactionCounter", 16)
+	transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transactionCounter", 16)
 	if _transactionCounterErr != nil {
 		return nil, errors.Wrap(_transactionCounterErr, "Error parsing 'transactionCounter' field")
 	}
@@ -184,7 +182,7 @@ transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transaction
 	var _parent *DF1ResponseMessage
 	var typeSwitchError error
 	switch {
-case commandCode == 0x4F : // DF1CommandResponseMessageProtectedTypedLogicalRead
+	case commandCode == 0x4F: // DF1CommandResponseMessageProtectedTypedLogicalRead
 		_parent, typeSwitchError = DF1CommandResponseMessageProtectedTypedLogicalReadParse(readBuffer, payloadLength, status)
 	default:
 		// TODO: return actual type
@@ -208,7 +206,7 @@ func (m *DF1ResponseMessage) Serialize(writeBuffer utils.WriteBuffer) error {
 }
 
 func (m *DF1ResponseMessage) SerializeParent(writeBuffer utils.WriteBuffer, child IDF1ResponseMessage, serializeChildFunction func() error) error {
-	if pushErr :=writeBuffer.PushContext("DF1ResponseMessage"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("DF1ResponseMessage"); pushErr != nil {
 		return pushErr
 	}
 
@@ -284,6 +282,3 @@ func (m *DF1ResponseMessage) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/XmlParserHelper.go b/plc4go/internal/plc4go/ads/readwrite/XmlParserHelper.go
index c8cd0b7..616c149 100644
--- a/plc4go/internal/plc4go/ads/readwrite/XmlParserHelper.go
+++ b/plc4go/internal/plc4go/ads/readwrite/XmlParserHelper.go
@@ -23,8 +23,8 @@ import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/ads/readwrite/model"
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
-    "strings"
-    "strconv"
+	"strconv"
+	"strings"
 )
 
 // Code generated by code-generation. DO NOT EDIT.
@@ -41,36 +41,36 @@ func init() {
 }
 
 func (m AdsXmlParserHelper) Parse(typeName string, xmlString string, parserArguments ...string) (interface{}, error) {
-    switch typeName {
-        case "AdsMultiRequestItem":
-			parsedUint0, err := strconv.ParseUint(parserArguments[0], 10, 32)
-			if err!=nil {
-				return nil, err
-			}
-			indexGroup := uint32(parsedUint0)
-            return model.AdsMultiRequestItemParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), indexGroup  )
-        case "AmsTCPPacket":
-			return model.AmsTCPPacketParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "State":
-			return model.StateParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AmsPacket":
-			return model.AmsPacketParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AmsSerialFrame":
-			return model.AmsSerialFrameParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AmsSerialAcknowledgeFrame":
-			return model.AmsSerialAcknowledgeFrameParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AdsData":
-            commandId := model.CommandIdByName(parserArguments[0])
-            response := parserArguments[1] == "true"
-            return model.AdsDataParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), commandId,  response  )
-        case "AmsNetId":
-			return model.AmsNetIdParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AdsStampHeader":
-			return model.AdsStampHeaderParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AmsSerialResetFrame":
-			return model.AmsSerialResetFrameParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-        case "AdsNotificationSample":
-			return model.AdsNotificationSampleParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
-    }
-    return nil, errors.Errorf("Unsupported type %s", typeName)
+	switch typeName {
+	case "AdsMultiRequestItem":
+		parsedUint0, err := strconv.ParseUint(parserArguments[0], 10, 32)
+		if err != nil {
+			return nil, err
+		}
+		indexGroup := uint32(parsedUint0)
+		return model.AdsMultiRequestItemParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), indexGroup)
+	case "AmsTCPPacket":
+		return model.AmsTCPPacketParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "State":
+		return model.StateParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AmsPacket":
+		return model.AmsPacketParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AmsSerialFrame":
+		return model.AmsSerialFrameParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AmsSerialAcknowledgeFrame":
+		return model.AmsSerialAcknowledgeFrameParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AdsData":
+		commandId := model.CommandIdByName(parserArguments[0])
+		response := parserArguments[1] == "true"
+		return model.AdsDataParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), commandId, response)
+	case "AmsNetId":
+		return model.AmsNetIdParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AdsStampHeader":
+		return model.AdsStampHeaderParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AmsSerialResetFrame":
+		return model.AmsSerialResetFrameParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "AdsNotificationSample":
+		return model.AdsNotificationSampleParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	}
+	return nil, errors.Errorf("Unsupported type %s", typeName)
 }
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
index 84ace91..222528a 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
@@ -19,7 +19,6 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
@@ -27,18 +26,17 @@ import (
 	"math/big"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsAddDeviceNotificationRequest struct {
-	IndexGroup uint32
-	IndexOffset uint32
-	Length uint32
+	IndexGroup       uint32
+	IndexOffset      uint32
+	Length           uint32
 	TransmissionMode uint32
-	MaxDelay uint32
-	CycleTime uint32
-	Parent *AdsData
+	MaxDelay         uint32
+	CycleTime        uint32
+	Parent           *AdsData
 }
 
 // The corresponding interface
@@ -59,19 +57,18 @@ func (m *AdsAddDeviceNotificationRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsAddDeviceNotificationRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsAddDeviceNotificationRequest(indexGroup uint32, indexOffset uint32, length uint32, transmissionMode uint32, maxDelay uint32, cycleTime uint32) *AdsData {
 	child := &AdsAddDeviceNotificationRequest{
-		IndexGroup: indexGroup,
-		IndexOffset: indexOffset,
-		Length: length,
+		IndexGroup:       indexGroup,
+		IndexOffset:      indexOffset,
+		Length:           length,
 		TransmissionMode: transmissionMode,
-		MaxDelay: maxDelay,
-		CycleTime: cycleTime,
-		Parent: NewAdsData(),
+		MaxDelay:         maxDelay,
+		CycleTime:        cycleTime,
+		Parent:           NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -108,22 +105,22 @@ func (m *AdsAddDeviceNotificationRequest) LengthInBitsConditional(lastItem bool)
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (indexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (indexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (length)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (transmissionMode)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (maxDelay)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (cycleTime)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Reserved Field (reserved)
 	lengthInBits += 128
@@ -131,48 +128,47 @@ func (m *AdsAddDeviceNotificationRequest) LengthInBitsConditional(lastItem bool)
 	return lengthInBits
 }
 
-
 func (m *AdsAddDeviceNotificationRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsAddDeviceNotificationRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (indexGroup)
-indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
+	indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
 		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
 	}
 
 	// Simple Field (indexOffset)
-indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
+	indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
 		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
 	}
 
 	// Simple Field (length)
-length, _lengthErr := readBuffer.ReadUint32("length", 32)
+	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	if _lengthErr != nil {
 		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
 	}
 
 	// Simple Field (transmissionMode)
-transmissionMode, _transmissionModeErr := readBuffer.ReadUint32("transmissionMode", 32)
+	transmissionMode, _transmissionModeErr := readBuffer.ReadUint32("transmissionMode", 32)
 	if _transmissionModeErr != nil {
 		return nil, errors.Wrap(_transmissionModeErr, "Error parsing 'transmissionMode' field")
 	}
 
 	// Simple Field (maxDelay)
-maxDelay, _maxDelayErr := readBuffer.ReadUint32("maxDelay", 32)
+	maxDelay, _maxDelayErr := readBuffer.ReadUint32("maxDelay", 32)
 	if _maxDelayErr != nil {
 		return nil, errors.Wrap(_maxDelayErr, "Error parsing 'maxDelay' field")
 	}
 
 	// Simple Field (cycleTime)
-cycleTime, _cycleTimeErr := readBuffer.ReadUint32("cycleTime", 32)
+	cycleTime, _cycleTimeErr := readBuffer.ReadUint32("cycleTime", 32)
 	if _cycleTimeErr != nil {
 		return nil, errors.Wrap(_cycleTimeErr, "Error parsing 'cycleTime' field")
 	}
@@ -186,7 +182,7 @@ cycleTime, _cycleTimeErr := readBuffer.ReadUint32("cycleTime", 32)
 		if reserved.Cmp(big.NewInt(0x0000)) != 0 {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": big.NewInt(0x0000),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
@@ -197,13 +193,13 @@ cycleTime, _cycleTimeErr := readBuffer.ReadUint32("cycleTime", 32)
 
 	// Create a partially initialized instance
 	_child := &AdsAddDeviceNotificationRequest{
-		IndexGroup: indexGroup,
-		IndexOffset: indexOffset,
-		Length: length,
+		IndexGroup:       indexGroup,
+		IndexOffset:      indexOffset,
+		Length:           length,
 		TransmissionMode: transmissionMode,
-		MaxDelay: maxDelay,
-		CycleTime: cycleTime,
-		Parent: &AdsData{},
+		MaxDelay:         maxDelay,
+		CycleTime:        cycleTime,
+		Parent:           &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -215,55 +211,55 @@ func (m *AdsAddDeviceNotificationRequest) Serialize(writeBuffer utils.WriteBuffe
 			return pushErr
 		}
 
-	// Simple Field (indexGroup)
-	indexGroup := uint32(m.IndexGroup)
-	_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
-	if _indexGroupErr != nil {
-		return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
-	}
+		// Simple Field (indexGroup)
+		indexGroup := uint32(m.IndexGroup)
+		_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
+		if _indexGroupErr != nil {
+			return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
+		}
 
-	// Simple Field (indexOffset)
-	indexOffset := uint32(m.IndexOffset)
-	_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
-	if _indexOffsetErr != nil {
-		return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
-	}
+		// Simple Field (indexOffset)
+		indexOffset := uint32(m.IndexOffset)
+		_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
+		if _indexOffsetErr != nil {
+			return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
+		}
 
-	// Simple Field (length)
-	length := uint32(m.Length)
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
+		// Simple Field (length)
+		length := uint32(m.Length)
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
+		}
 
-	// Simple Field (transmissionMode)
-	transmissionMode := uint32(m.TransmissionMode)
-	_transmissionModeErr := writeBuffer.WriteUint32("transmissionMode", 32, (transmissionMode))
-	if _transmissionModeErr != nil {
-		return errors.Wrap(_transmissionModeErr, "Error serializing 'transmissionMode' field")
-	}
+		// Simple Field (transmissionMode)
+		transmissionMode := uint32(m.TransmissionMode)
+		_transmissionModeErr := writeBuffer.WriteUint32("transmissionMode", 32, (transmissionMode))
+		if _transmissionModeErr != nil {
+			return errors.Wrap(_transmissionModeErr, "Error serializing 'transmissionMode' field")
+		}
 
-	// Simple Field (maxDelay)
-	maxDelay := uint32(m.MaxDelay)
-	_maxDelayErr := writeBuffer.WriteUint32("maxDelay", 32, (maxDelay))
-	if _maxDelayErr != nil {
-		return errors.Wrap(_maxDelayErr, "Error serializing 'maxDelay' field")
-	}
+		// Simple Field (maxDelay)
+		maxDelay := uint32(m.MaxDelay)
+		_maxDelayErr := writeBuffer.WriteUint32("maxDelay", 32, (maxDelay))
+		if _maxDelayErr != nil {
+			return errors.Wrap(_maxDelayErr, "Error serializing 'maxDelay' field")
+		}
 
-	// Simple Field (cycleTime)
-	cycleTime := uint32(m.CycleTime)
-	_cycleTimeErr := writeBuffer.WriteUint32("cycleTime", 32, (cycleTime))
-	if _cycleTimeErr != nil {
-		return errors.Wrap(_cycleTimeErr, "Error serializing 'cycleTime' field")
-	}
+		// Simple Field (cycleTime)
+		cycleTime := uint32(m.CycleTime)
+		_cycleTimeErr := writeBuffer.WriteUint32("cycleTime", 32, (cycleTime))
+		if _cycleTimeErr != nil {
+			return errors.Wrap(_cycleTimeErr, "Error serializing 'cycleTime' field")
+		}
 
-	// Reserved Field (reserved)
-	{
-		_err := writeBuffer.WriteBigInt("reserved", 128, big.NewInt(0x0000))
-		if _err != nil {
-			return errors.Wrap(_err, "Error serializing 'reserved' field")
+		// Reserved Field (reserved)
+		{
+			_err := writeBuffer.WriteBigInt("reserved", 128, big.NewInt(0x0000))
+			if _err != nil {
+				return errors.Wrap(_err, "Error serializing 'reserved' field")
+			}
 		}
-	}
 
 		if popErr := writeBuffer.PopContext("AdsAddDeviceNotificationRequest"); popErr != nil {
 			return popErr
@@ -281,6 +277,3 @@ func (m *AdsAddDeviceNotificationRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
index a23e1c5..c60af8d 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
@@ -19,20 +19,18 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsAddDeviceNotificationResponse struct {
-	Result ReturnCode
+	Result             ReturnCode
 	NotificationHandle uint32
-	Parent *AdsData
+	Parent             *AdsData
 }
 
 // The corresponding interface
@@ -53,15 +51,14 @@ func (m *AdsAddDeviceNotificationResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsAddDeviceNotificationResponse) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsAddDeviceNotificationResponse(result ReturnCode, notificationHandle uint32) *AdsData {
 	child := &AdsAddDeviceNotificationResponse{
-		Result: result,
+		Result:             result,
 		NotificationHandle: notificationHandle,
-		Parent: NewAdsData(),
+		Parent:             NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -101,17 +98,16 @@ func (m *AdsAddDeviceNotificationResponse) LengthInBitsConditional(lastItem bool
 	lengthInBits += 32
 
 	// Simple field (notificationHandle)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	return lengthInBits
 }
 
-
 func (m *AdsAddDeviceNotificationResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsAddDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsAddDeviceNotificationResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsAddDeviceNotificationResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -120,7 +116,7 @@ func AdsAddDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, ) (*AdsD
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -129,7 +125,7 @@ result, _resultErr := ReturnCodeParse(readBuffer)
 	}
 
 	// Simple Field (notificationHandle)
-notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
+	notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
 	if _notificationHandleErr != nil {
 		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field")
 	}
@@ -140,9 +136,9 @@ notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificatio
 
 	// Create a partially initialized instance
 	_child := &AdsAddDeviceNotificationResponse{
-		Result: result,
+		Result:             result,
 		NotificationHandle: notificationHandle,
-		Parent: &AdsData{},
+		Parent:             &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -154,24 +150,24 @@ func (m *AdsAddDeviceNotificationResponse) Serialize(writeBuffer utils.WriteBuff
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
+			return pushErr
+		}
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
+			return popErr
+		}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
 
-	// Simple Field (notificationHandle)
-	notificationHandle := uint32(m.NotificationHandle)
-	_notificationHandleErr := writeBuffer.WriteUint32("notificationHandle", 32, (notificationHandle))
-	if _notificationHandleErr != nil {
-		return errors.Wrap(_notificationHandleErr, "Error serializing 'notificationHandle' field")
-	}
+		// Simple Field (notificationHandle)
+		notificationHandle := uint32(m.NotificationHandle)
+		_notificationHandleErr := writeBuffer.WriteUint32("notificationHandle", 32, (notificationHandle))
+		if _notificationHandleErr != nil {
+			return errors.Wrap(_notificationHandleErr, "Error serializing 'notificationHandle' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsAddDeviceNotificationResponse"); popErr != nil {
 			return popErr
@@ -189,6 +185,3 @@ func (m *AdsAddDeviceNotificationResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsData.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsData.go
index 892c136..a6b631a 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsData.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsData.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsData struct {
@@ -102,46 +100,46 @@ func AdsDataParse(readBuffer utils.ReadBuffer, commandId CommandId, response boo
 	var _parent *AdsData
 	var typeSwitchError error
 	switch {
-case commandId == CommandId_INVALID && response == false : // AdsInvalidRequest
-		_parent, typeSwitchError = AdsInvalidRequestParse(readBuffer, )
-case commandId == CommandId_INVALID && response == true : // AdsInvalidResponse
-		_parent, typeSwitchError = AdsInvalidResponseParse(readBuffer, )
-case commandId == CommandId_ADS_READ_DEVICE_INFO && response == false : // AdsReadDeviceInfoRequest
-		_parent, typeSwitchError = AdsReadDeviceInfoRequestParse(readBuffer, )
-case commandId == CommandId_ADS_READ_DEVICE_INFO && response == true : // AdsReadDeviceInfoResponse
-		_parent, typeSwitchError = AdsReadDeviceInfoResponseParse(readBuffer, )
-case commandId == CommandId_ADS_READ && response == false : // AdsReadRequest
-		_parent, typeSwitchError = AdsReadRequestParse(readBuffer, )
-case commandId == CommandId_ADS_READ && response == true : // AdsReadResponse
-		_parent, typeSwitchError = AdsReadResponseParse(readBuffer, )
-case commandId == CommandId_ADS_WRITE && response == false : // AdsWriteRequest
-		_parent, typeSwitchError = AdsWriteRequestParse(readBuffer, )
-case commandId == CommandId_ADS_WRITE && response == true : // AdsWriteResponse
-		_parent, typeSwitchError = AdsWriteResponseParse(readBuffer, )
-case commandId == CommandId_ADS_READ_STATE && response == false : // AdsReadStateRequest
-		_parent, typeSwitchError = AdsReadStateRequestParse(readBuffer, )
-case commandId == CommandId_ADS_READ_STATE && response == true : // AdsReadStateResponse
-		_parent, typeSwitchError = AdsReadStateResponseParse(readBuffer, )
-case commandId == CommandId_ADS_WRITE_CONTROL && response == false : // AdsWriteControlRequest
-		_parent, typeSwitchError = AdsWriteControlRequestParse(readBuffer, )
-case commandId == CommandId_ADS_WRITE_CONTROL && response == true : // AdsWriteControlResponse
-		_parent, typeSwitchError = AdsWriteControlResponseParse(readBuffer, )
-case commandId == CommandId_ADS_ADD_DEVICE_NOTIFICATION && response == false : // AdsAddDeviceNotificationRequest
-		_parent, typeSwitchError = AdsAddDeviceNotificationRequestParse(readBuffer, )
-case commandId == CommandId_ADS_ADD_DEVICE_NOTIFICATION && response == true : // AdsAddDeviceNotificationResponse
-		_parent, typeSwitchError = AdsAddDeviceNotificationResponseParse(readBuffer, )
-case commandId == CommandId_ADS_DELETE_DEVICE_NOTIFICATION && response == false : // AdsDeleteDeviceNotificationRequest
-		_parent, typeSwitchError = AdsDeleteDeviceNotificationRequestParse(readBuffer, )
-case commandId == CommandId_ADS_DELETE_DEVICE_NOTIFICATION && response == true : // AdsDeleteDeviceNotificationResponse
-		_parent, typeSwitchError = AdsDeleteDeviceNotificationResponseParse(readBuffer, )
-case commandId == CommandId_ADS_DEVICE_NOTIFICATION && response == false : // AdsDeviceNotificationRequest
-		_parent, typeSwitchError = AdsDeviceNotificationRequestParse(readBuffer, )
-case commandId == CommandId_ADS_DEVICE_NOTIFICATION && response == true : // AdsDeviceNotificationResponse
-		_parent, typeSwitchError = AdsDeviceNotificationResponseParse(readBuffer, )
-case commandId == CommandId_ADS_READ_WRITE && response == false : // AdsReadWriteRequest
-		_parent, typeSwitchError = AdsReadWriteRequestParse(readBuffer, )
-case commandId == CommandId_ADS_READ_WRITE && response == true : // AdsReadWriteResponse
-		_parent, typeSwitchError = AdsReadWriteResponseParse(readBuffer, )
+	case commandId == CommandId_INVALID && response == false: // AdsInvalidRequest
+		_parent, typeSwitchError = AdsInvalidRequestParse(readBuffer)
+	case commandId == CommandId_INVALID && response == true: // AdsInvalidResponse
+		_parent, typeSwitchError = AdsInvalidResponseParse(readBuffer)
+	case commandId == CommandId_ADS_READ_DEVICE_INFO && response == false: // AdsReadDeviceInfoRequest
+		_parent, typeSwitchError = AdsReadDeviceInfoRequestParse(readBuffer)
+	case commandId == CommandId_ADS_READ_DEVICE_INFO && response == true: // AdsReadDeviceInfoResponse
+		_parent, typeSwitchError = AdsReadDeviceInfoResponseParse(readBuffer)
+	case commandId == CommandId_ADS_READ && response == false: // AdsReadRequest
+		_parent, typeSwitchError = AdsReadRequestParse(readBuffer)
+	case commandId == CommandId_ADS_READ && response == true: // AdsReadResponse
+		_parent, typeSwitchError = AdsReadResponseParse(readBuffer)
+	case commandId == CommandId_ADS_WRITE && response == false: // AdsWriteRequest
+		_parent, typeSwitchError = AdsWriteRequestParse(readBuffer)
+	case commandId == CommandId_ADS_WRITE && response == true: // AdsWriteResponse
+		_parent, typeSwitchError = AdsWriteResponseParse(readBuffer)
+	case commandId == CommandId_ADS_READ_STATE && response == false: // AdsReadStateRequest
+		_parent, typeSwitchError = AdsReadStateRequestParse(readBuffer)
+	case commandId == CommandId_ADS_READ_STATE && response == true: // AdsReadStateResponse
+		_parent, typeSwitchError = AdsReadStateResponseParse(readBuffer)
+	case commandId == CommandId_ADS_WRITE_CONTROL && response == false: // AdsWriteControlRequest
+		_parent, typeSwitchError = AdsWriteControlRequestParse(readBuffer)
+	case commandId == CommandId_ADS_WRITE_CONTROL && response == true: // AdsWriteControlResponse
+		_parent, typeSwitchError = AdsWriteControlResponseParse(readBuffer)
+	case commandId == CommandId_ADS_ADD_DEVICE_NOTIFICATION && response == false: // AdsAddDeviceNotificationRequest
+		_parent, typeSwitchError = AdsAddDeviceNotificationRequestParse(readBuffer)
+	case commandId == CommandId_ADS_ADD_DEVICE_NOTIFICATION && response == true: // AdsAddDeviceNotificationResponse
+		_parent, typeSwitchError = AdsAddDeviceNotificationResponseParse(readBuffer)
+	case commandId == CommandId_ADS_DELETE_DEVICE_NOTIFICATION && response == false: // AdsDeleteDeviceNotificationRequest
+		_parent, typeSwitchError = AdsDeleteDeviceNotificationRequestParse(readBuffer)
+	case commandId == CommandId_ADS_DELETE_DEVICE_NOTIFICATION && response == true: // AdsDeleteDeviceNotificationResponse
+		_parent, typeSwitchError = AdsDeleteDeviceNotificationResponseParse(readBuffer)
+	case commandId == CommandId_ADS_DEVICE_NOTIFICATION && response == false: // AdsDeviceNotificationRequest
+		_parent, typeSwitchError = AdsDeviceNotificationRequestParse(readBuffer)
+	case commandId == CommandId_ADS_DEVICE_NOTIFICATION && response == true: // AdsDeviceNotificationResponse
+		_parent, typeSwitchError = AdsDeviceNotificationResponseParse(readBuffer)
+	case commandId == CommandId_ADS_READ_WRITE && response == false: // AdsReadWriteRequest
+		_parent, typeSwitchError = AdsReadWriteRequestParse(readBuffer)
+	case commandId == CommandId_ADS_READ_WRITE && response == true: // AdsReadWriteResponse
+		_parent, typeSwitchError = AdsReadWriteResponseParse(readBuffer)
 	default:
 		// TODO: return actual type
 		typeSwitchError = errors.New("Unmapped type")
@@ -164,7 +162,7 @@ func (m *AdsData) Serialize(writeBuffer utils.WriteBuffer) error {
 }
 
 func (m *AdsData) SerializeParent(writeBuffer utils.WriteBuffer, child IAdsData, serializeChildFunction func() error) error {
-	if pushErr :=writeBuffer.PushContext("AdsData"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AdsData"); pushErr != nil {
 		return pushErr
 	}
 
@@ -188,6 +186,3 @@ func (m *AdsData) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsDataType.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsDataType.go
index b8ded20..ba9169a 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsDataType.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsDataType.go
@@ -34,54 +34,54 @@ type IAdsDataType interface {
 	Serialize(writeBuffer utils.WriteBuffer) error
 }
 
-const(
-	AdsDataType_BOOL AdsDataType = 0x01
-	AdsDataType_BIT AdsDataType = 0x02
-	AdsDataType_BIT8 AdsDataType = 0x03
-	AdsDataType_BYTE AdsDataType = 0x04
-	AdsDataType_BITARR8 AdsDataType = 0x05
-	AdsDataType_WORD AdsDataType = 0x06
-	AdsDataType_BITARR16 AdsDataType = 0x07
-	AdsDataType_DWORD AdsDataType = 0x08
-	AdsDataType_BITARR32 AdsDataType = 0x09
-	AdsDataType_SINT AdsDataType = 0x0A
-	AdsDataType_INT8 AdsDataType = 0x0B
-	AdsDataType_USINT AdsDataType = 0x0C
-	AdsDataType_UINT8 AdsDataType = 0x0D
-	AdsDataType_INT AdsDataType = 0x0E
-	AdsDataType_INT16 AdsDataType = 0x0F
-	AdsDataType_UINT AdsDataType = 0x10
-	AdsDataType_UINT16 AdsDataType = 0x11
-	AdsDataType_DINT AdsDataType = 0x12
-	AdsDataType_INT32 AdsDataType = 0x13
-	AdsDataType_UDINT AdsDataType = 0x14
-	AdsDataType_UINT32 AdsDataType = 0x15
-	AdsDataType_LINT AdsDataType = 0x16
-	AdsDataType_INT64 AdsDataType = 0x17
-	AdsDataType_ULINT AdsDataType = 0x18
-	AdsDataType_UINT64 AdsDataType = 0x19
-	AdsDataType_REAL AdsDataType = 0x1A
-	AdsDataType_FLOAT AdsDataType = 0x1B
-	AdsDataType_LREAL AdsDataType = 0x1C
-	AdsDataType_DOUBLE AdsDataType = 0x1D
-	AdsDataType_CHAR AdsDataType = 0x1E
-	AdsDataType_WCHAR AdsDataType = 0x1F
-	AdsDataType_STRING AdsDataType = 0x20
-	AdsDataType_WSTRING AdsDataType = 0x21
-	AdsDataType_TIME AdsDataType = 0x22
-	AdsDataType_LTIME AdsDataType = 0x23
-	AdsDataType_DATE AdsDataType = 0x24
-	AdsDataType_TIME_OF_DAY AdsDataType = 0x25
-	AdsDataType_TOD AdsDataType = 0x26
+const (
+	AdsDataType_BOOL          AdsDataType = 0x01
+	AdsDataType_BIT           AdsDataType = 0x02
+	AdsDataType_BIT8          AdsDataType = 0x03
+	AdsDataType_BYTE          AdsDataType = 0x04
+	AdsDataType_BITARR8       AdsDataType = 0x05
+	AdsDataType_WORD          AdsDataType = 0x06
+	AdsDataType_BITARR16      AdsDataType = 0x07
+	AdsDataType_DWORD         AdsDataType = 0x08
+	AdsDataType_BITARR32      AdsDataType = 0x09
+	AdsDataType_SINT          AdsDataType = 0x0A
+	AdsDataType_INT8          AdsDataType = 0x0B
+	AdsDataType_USINT         AdsDataType = 0x0C
+	AdsDataType_UINT8         AdsDataType = 0x0D
+	AdsDataType_INT           AdsDataType = 0x0E
+	AdsDataType_INT16         AdsDataType = 0x0F
+	AdsDataType_UINT          AdsDataType = 0x10
+	AdsDataType_UINT16        AdsDataType = 0x11
+	AdsDataType_DINT          AdsDataType = 0x12
+	AdsDataType_INT32         AdsDataType = 0x13
+	AdsDataType_UDINT         AdsDataType = 0x14
+	AdsDataType_UINT32        AdsDataType = 0x15
+	AdsDataType_LINT          AdsDataType = 0x16
+	AdsDataType_INT64         AdsDataType = 0x17
+	AdsDataType_ULINT         AdsDataType = 0x18
+	AdsDataType_UINT64        AdsDataType = 0x19
+	AdsDataType_REAL          AdsDataType = 0x1A
+	AdsDataType_FLOAT         AdsDataType = 0x1B
+	AdsDataType_LREAL         AdsDataType = 0x1C
+	AdsDataType_DOUBLE        AdsDataType = 0x1D
+	AdsDataType_CHAR          AdsDataType = 0x1E
+	AdsDataType_WCHAR         AdsDataType = 0x1F
+	AdsDataType_STRING        AdsDataType = 0x20
+	AdsDataType_WSTRING       AdsDataType = 0x21
+	AdsDataType_TIME          AdsDataType = 0x22
+	AdsDataType_LTIME         AdsDataType = 0x23
+	AdsDataType_DATE          AdsDataType = 0x24
+	AdsDataType_TIME_OF_DAY   AdsDataType = 0x25
+	AdsDataType_TOD           AdsDataType = 0x26
 	AdsDataType_DATE_AND_TIME AdsDataType = 0x27
-	AdsDataType_DT AdsDataType = 0x28
+	AdsDataType_DT            AdsDataType = 0x28
 )
 
 var AdsDataTypeValues []AdsDataType
 
 func init() {
 	_ = errors.New
-	AdsDataTypeValues = []AdsDataType {
+	AdsDataTypeValues = []AdsDataType{
 		AdsDataType_BOOL,
 		AdsDataType_BIT,
 		AdsDataType_BIT8,
@@ -125,130 +125,170 @@ func init() {
 	}
 }
 
-
 func (e AdsDataType) NumBytes() uint16 {
-	switch e  {
-		case 0x01: { /* '0x01' */
-            return 1
+	switch e {
+	case 0x01:
+		{ /* '0x01' */
+			return 1
 		}
-		case 0x02: { /* '0x02' */
-            return 1
+	case 0x02:
+		{ /* '0x02' */
+			return 1
 		}
-		case 0x03: { /* '0x03' */
-            return 1
+	case 0x03:
+		{ /* '0x03' */
+			return 1
 		}
-		case 0x04: { /* '0x04' */
-            return 1
+	case 0x04:
+		{ /* '0x04' */
+			return 1
 		}
-		case 0x05: { /* '0x05' */
-            return 1
+	case 0x05:
+		{ /* '0x05' */
+			return 1
 		}
-		case 0x06: { /* '0x06' */
-            return 2
+	case 0x06:
+		{ /* '0x06' */
+			return 2
 		}
-		case 0x07: { /* '0x07' */
-            return 2
+	case 0x07:
+		{ /* '0x07' */
+			return 2
 		}
-		case 0x08: { /* '0x08' */
-            return 4
+	case 0x08:
+		{ /* '0x08' */
+			return 4
 		}
-		case 0x09: { /* '0x09' */
-            return 4
+	case 0x09:
+		{ /* '0x09' */
+			return 4
 		}
-		case 0x0A: { /* '0x0A' */
-            return 1
+	case 0x0A:
+		{ /* '0x0A' */
+			return 1
 		}
-		case 0x0B: { /* '0x0B' */
-            return 1
+	case 0x0B:
+		{ /* '0x0B' */
+			return 1
 		}
-		case 0x0C: { /* '0x0C' */
-            return 1
+	case 0x0C:
+		{ /* '0x0C' */
+			return 1
 		}
-		case 0x0D: { /* '0x0D' */
-            return 1
+	case 0x0D:
+		{ /* '0x0D' */
+			return 1
 		}
-		case 0x0E: { /* '0x0E' */
-            return 2
+	case 0x0E:
+		{ /* '0x0E' */
+			return 2
 		}
-		case 0x0F: { /* '0x0F' */
-            return 2
+	case 0x0F:
+		{ /* '0x0F' */
+			return 2
 		}
-		case 0x10: { /* '0x10' */
-            return 2
+	case 0x10:
+		{ /* '0x10' */
+			return 2
 		}
-		case 0x11: { /* '0x11' */
-            return 2
+	case 0x11:
+		{ /* '0x11' */
+			return 2
 		}
-		case 0x12: { /* '0x12' */
-            return 4
+	case 0x12:
+		{ /* '0x12' */
+			return 4
 		}
-		case 0x13: { /* '0x13' */
-            return 4
+	case 0x13:
+		{ /* '0x13' */
+			return 4
 		}
-		case 0x14: { /* '0x14' */
-            return 4
+	case 0x14:
+		{ /* '0x14' */
+			return 4
 		}
-		case 0x15: { /* '0x15' */
-            return 4
+	case 0x15:
+		{ /* '0x15' */
+			return 4
 		}
-		case 0x16: { /* '0x16' */
-            return 8
+	case 0x16:
+		{ /* '0x16' */
+			return 8
 		}
-		case 0x17: { /* '0x17' */
-            return 8
+	case 0x17:
+		{ /* '0x17' */
+			return 8
 		}
-		case 0x18: { /* '0x18' */
-            return 8
+	case 0x18:
+		{ /* '0x18' */
+			return 8
 		}
-		case 0x19: { /* '0x19' */
-            return 8
+	case 0x19:
+		{ /* '0x19' */
+			return 8
 		}
-		case 0x1A: { /* '0x1A' */
-            return 4
+	case 0x1A:
+		{ /* '0x1A' */
+			return 4
 		}
-		case 0x1B: { /* '0x1B' */
-            return 4
+	case 0x1B:
+		{ /* '0x1B' */
+			return 4
 		}
-		case 0x1C: { /* '0x1C' */
-            return 8
+	case 0x1C:
+		{ /* '0x1C' */
+			return 8
 		}
-		case 0x1D: { /* '0x1D' */
-            return 8
+	case 0x1D:
+		{ /* '0x1D' */
+			return 8
 		}
-		case 0x1E: { /* '0x1E' */
-            return 1
+	case 0x1E:
+		{ /* '0x1E' */
+			return 1
 		}
-		case 0x1F: { /* '0x1F' */
-            return 2
+	case 0x1F:
+		{ /* '0x1F' */
+			return 2
 		}
-		case 0x20: { /* '0x20' */
-            return 256
+	case 0x20:
+		{ /* '0x20' */
+			return 256
 		}
-		case 0x21: { /* '0x21' */
-            return 512
+	case 0x21:
+		{ /* '0x21' */
+			return 512
 		}
-		case 0x22: { /* '0x22' */
-            return 4
+	case 0x22:
+		{ /* '0x22' */
+			return 4
 		}
-		case 0x23: { /* '0x23' */
-            return 8
+	case 0x23:
+		{ /* '0x23' */
+			return 8
 		}
-		case 0x24: { /* '0x24' */
-            return 4
+	case 0x24:
+		{ /* '0x24' */
+			return 4
 		}
-		case 0x25: { /* '0x25' */
-            return 4
+	case 0x25:
+		{ /* '0x25' */
+			return 4
 		}
-		case 0x26: { /* '0x26' */
-            return 4
+	case 0x26:
+		{ /* '0x26' */
+			return 4
 		}
-		case 0x27: { /* '0x27' */
-            return 4
+	case 0x27:
+		{ /* '0x27' */
+			return 4
 		}
-		case 0x28: { /* '0x28' */
-            return 4
+	case 0x28:
+		{ /* '0x28' */
+			return 4
 		}
-		default: {
+	default:
+		{
 			return 0
 		}
 	}
@@ -264,128 +304,169 @@ func AdsDataTypeFirstEnumForFieldNumBytes(value uint16) (AdsDataType, error) {
 }
 
 func (e AdsDataType) DataFormatName() string {
-	switch e  {
-		case 0x01: { /* '0x01' */
-            return "IEC61131_BOOL"
+	switch e {
+	case 0x01:
+		{ /* '0x01' */
+			return "IEC61131_BOOL"
 		}
-		case 0x02: { /* '0x02' */
-            return "IEC61131_BOOL"
+	case 0x02:
+		{ /* '0x02' */
+			return "IEC61131_BOOL"
 		}
-		case 0x03: { /* '0x03' */
-            return "IEC61131_BOOL"
+	case 0x03:
+		{ /* '0x03' */
+			return "IEC61131_BOOL"
 		}
-		case 0x04: { /* '0x04' */
-            return "IEC61131_BYTE"
+	case 0x04:
+		{ /* '0x04' */
+			return "IEC61131_BYTE"
 		}
-		case 0x05: { /* '0x05' */
-            return "IEC61131_BYTE"
+	case 0x05:
+		{ /* '0x05' */
+			return "IEC61131_BYTE"
 		}
-		case 0x06: { /* '0x06' */
-            return "IEC61131_WORD"
+	case 0x06:
+		{ /* '0x06' */
+			return "IEC61131_WORD"
 		}
-		case 0x07: { /* '0x07' */
-            return "IEC61131_WORD"
+	case 0x07:
+		{ /* '0x07' */
+			return "IEC61131_WORD"
 		}
-		case 0x08: { /* '0x08' */
-            return "IEC61131_DWORD"
+	case 0x08:
+		{ /* '0x08' */
+			return "IEC61131_DWORD"
 		}
-		case 0x09: { /* '0x09' */
-            return "IEC61131_DWORD"
+	case 0x09:
+		{ /* '0x09' */
+			return "IEC61131_DWORD"
 		}
-		case 0x0A: { /* '0x0A' */
-            return "IEC61131_SINT"
+	case 0x0A:
+		{ /* '0x0A' */
+			return "IEC61131_SINT"
 		}
-		case 0x0B: { /* '0x0B' */
-            return "IEC61131_SINT"
+	case 0x0B:
+		{ /* '0x0B' */
+			return "IEC61131_SINT"
 		}
-		case 0x0C: { /* '0x0C' */
-            return "IEC61131_USINT"
+	case 0x0C:
+		{ /* '0x0C' */
+			return "IEC61131_USINT"
 		}
-		case 0x0D: { /* '0x0D' */
-            return "IEC61131_USINT"
+	case 0x0D:
+		{ /* '0x0D' */
+			return "IEC61131_USINT"
 		}
-		case 0x0E: { /* '0x0E' */
-            return "IEC61131_INT"
+	case 0x0E:
+		{ /* '0x0E' */
+			return "IEC61131_INT"
 		}
-		case 0x0F: { /* '0x0F' */
-            return "IEC61131_INT"
+	case 0x0F:
+		{ /* '0x0F' */
+			return "IEC61131_INT"
 		}
-		case 0x10: { /* '0x10' */
-            return "IEC61131_UINT"
+	case 0x10:
+		{ /* '0x10' */
+			return "IEC61131_UINT"
 		}
-		case 0x11: { /* '0x11' */
-            return "IEC61131_UINT"
+	case 0x11:
+		{ /* '0x11' */
+			return "IEC61131_UINT"
 		}
-		case 0x12: { /* '0x12' */
-            return "IEC61131_DINT"
+	case 0x12:
+		{ /* '0x12' */
+			return "IEC61131_DINT"
 		}
-		case 0x13: { /* '0x13' */
-            return "IEC61131_DINT"
+	case 0x13:
+		{ /* '0x13' */
+			return "IEC61131_DINT"
 		}
-		case 0x14: { /* '0x14' */
-            return "IEC61131_UDINT"
+	case 0x14:
+		{ /* '0x14' */
+			return "IEC61131_UDINT"
 		}
-		case 0x15: { /* '0x15' */
-            return "IEC61131_UDINT"
+	case 0x15:
+		{ /* '0x15' */
+			return "IEC61131_UDINT"
 		}
-		case 0x16: { /* '0x16' */
-            return "IEC61131_LINT"
+	case 0x16:
+		{ /* '0x16' */
+			return "IEC61131_LINT"
 		}
-		case 0x17: { /* '0x17' */
-            return "IEC61131_LINT"
+	case 0x17:
+		{ /* '0x17' */
+			return "IEC61131_LINT"
 		}
-		case 0x18: { /* '0x18' */
-            return "IEC61131_ULINT"
+	case 0x18:
+		{ /* '0x18' */
+			return "IEC61131_ULINT"
 		}
-		case 0x19: { /* '0x19' */
-            return "IEC61131_ULINT"
+	case 0x19:
+		{ /* '0x19' */
+			return "IEC61131_ULINT"
 		}
-		case 0x1A: { /* '0x1A' */
-            return "IEC61131_REAL"
+	case 0x1A:
+		{ /* '0x1A' */
+			return "IEC61131_REAL"
 		}
-		case 0x1B: { /* '0x1B' */
-            return "IEC61131_REAL"
+	case 0x1B:
+		{ /* '0x1B' */
+			return "IEC61131_REAL"
 		}
-		case 0x1C: { /* '0x1C' */
-            return "IEC61131_LREAL"
+	case 0x1C:
+		{ /* '0x1C' */
+			return "IEC61131_LREAL"
 		}
-		case 0x1D: { /* '0x1D' */
-            return "IEC61131_LREAL"
+	case 0x1D:
+		{ /* '0x1D' */
+			return "IEC61131_LREAL"
 		}
-		case 0x1E: { /* '0x1E' */
-            return "IEC61131_CHAR"
+	case 0x1E:
+		{ /* '0x1E' */
+			return "IEC61131_CHAR"
 		}
-		case 0x1F: { /* '0x1F' */
-            return "IEC61131_WCHAR"
+	case 0x1F:
+		{ /* '0x1F' */
+			return "IEC61131_WCHAR"
 		}
-		case 0x20: { /* '0x20' */
-            return "IEC61131_STRING"
+	case 0x20:
+		{ /* '0x20' */
+			return "IEC61131_STRING"
 		}
-		case 0x21: { /* '0x21' */
-            return "IEC61131_WSTRING"
+	case 0x21:
+		{ /* '0x21' */
+			return "IEC61131_WSTRING"
 		}
-		case 0x22: { /* '0x22' */
-            return "IEC61131_TIME"
+	case 0x22:
+		{ /* '0x22' */
+			return "IEC61131_TIME"
 		}
-		case 0x23: { /* '0x23' */
-            return "IEC61131_LTIME"
+	case 0x23:
+		{ /* '0x23' */
+			return "IEC61131_LTIME"
 		}
-		case 0x24: { /* '0x24' */
-            return "IEC61131_DATE"
+	case 0x24:
+		{ /* '0x24' */
+			return "IEC61131_DATE"
 		}
-		case 0x25: { /* '0x25' */
-            return "IEC61131_TIME_OF_DAY"
+	case 0x25:
+		{ /* '0x25' */
+			return "IEC61131_TIME_OF_DAY"
 		}
-		case 0x26: { /* '0x26' */
-            return "IEC61131_TIME_OF_DAY"
+	case 0x26:
+		{ /* '0x26' */
+			return "IEC61131_TIME_OF_DAY"
 		}
-		case 0x27: { /* '0x27' */
-            return "IEC61131_DATE_AND_TIME"
+	case 0x27:
+		{ /* '0x27' */
+			return "IEC61131_DATE_AND_TIME"
 		}
-		case 0x28: { /* '0x28' */
-            return "IEC61131_DATE_AND_TIME"
+	case 0x28:
+		{ /* '0x28' */
+			return "IEC61131_DATE_AND_TIME"
 		}
-		default: {
+	default:
+		{
 			return ""
 		}
 	}
@@ -401,86 +482,86 @@ func AdsDataTypeFirstEnumForFieldDataFormatName(value string) (AdsDataType, erro
 }
 func AdsDataTypeByValue(value int8) AdsDataType {
 	switch value {
-		case 0x01:
-			return AdsDataType_BOOL
-		case 0x02:
-			return AdsDataType_BIT
-		case 0x03:
-			return AdsDataType_BIT8
-		case 0x04:
-			return AdsDataType_BYTE
-		case 0x05:
-			return AdsDataType_BITARR8
-		case 0x06:
-			return AdsDataType_WORD
-		case 0x07:
-			return AdsDataType_BITARR16
-		case 0x08:
-			return AdsDataType_DWORD
-		case 0x09:
-			return AdsDataType_BITARR32
-		case 0x0A:
-			return AdsDataType_SINT
-		case 0x0B:
-			return AdsDataType_INT8
-		case 0x0C:
-			return AdsDataType_USINT
-		case 0x0D:
-			return AdsDataType_UINT8
-		case 0x0E:
-			return AdsDataType_INT
-		case 0x0F:
-			return AdsDataType_INT16
-		case 0x10:
-			return AdsDataType_UINT
-		case 0x11:
-			return AdsDataType_UINT16
-		case 0x12:
-			return AdsDataType_DINT
-		case 0x13:
-			return AdsDataType_INT32
-		case 0x14:
-			return AdsDataType_UDINT
-		case 0x15:
-			return AdsDataType_UINT32
-		case 0x16:
-			return AdsDataType_LINT
-		case 0x17:
-			return AdsDataType_INT64
-		case 0x18:
-			return AdsDataType_ULINT
-		case 0x19:
-			return AdsDataType_UINT64
-		case 0x1A:
-			return AdsDataType_REAL
-		case 0x1B:
-			return AdsDataType_FLOAT
-		case 0x1C:
-			return AdsDataType_LREAL
-		case 0x1D:
-			return AdsDataType_DOUBLE
-		case 0x1E:
-			return AdsDataType_CHAR
-		case 0x1F:
-			return AdsDataType_WCHAR
-		case 0x20:
-			return AdsDataType_STRING
-		case 0x21:
-			return AdsDataType_WSTRING
-		case 0x22:
-			return AdsDataType_TIME
-		case 0x23:
-			return AdsDataType_LTIME
-		case 0x24:
-			return AdsDataType_DATE
-		case 0x25:
-			return AdsDataType_TIME_OF_DAY
-		case 0x26:
-			return AdsDataType_TOD
-		case 0x27:
-			return AdsDataType_DATE_AND_TIME
-		case 0x28:
-			return AdsDataType_DT
+	case 0x01:
+		return AdsDataType_BOOL
+	case 0x02:
+		return AdsDataType_BIT
+	case 0x03:
+		return AdsDataType_BIT8
+	case 0x04:
+		return AdsDataType_BYTE
+	case 0x05:
+		return AdsDataType_BITARR8
+	case 0x06:
+		return AdsDataType_WORD
+	case 0x07:
+		return AdsDataType_BITARR16
+	case 0x08:
+		return AdsDataType_DWORD
+	case 0x09:
+		return AdsDataType_BITARR32
+	case 0x0A:
+		return AdsDataType_SINT
+	case 0x0B:
+		return AdsDataType_INT8
+	case 0x0C:
+		return AdsDataType_USINT
+	case 0x0D:
+		return AdsDataType_UINT8
+	case 0x0E:
+		return AdsDataType_INT
+	case 0x0F:
+		return AdsDataType_INT16
+	case 0x10:
+		return AdsDataType_UINT
+	case 0x11:
+		return AdsDataType_UINT16
+	case 0x12:
+		return AdsDataType_DINT
+	case 0x13:
+		return AdsDataType_INT32
+	case 0x14:
+		return AdsDataType_UDINT
+	case 0x15:
+		return AdsDataType_UINT32
+	case 0x16:
+		return AdsDataType_LINT
+	case 0x17:
+		return AdsDataType_INT64
+	case 0x18:
+		return AdsDataType_ULINT
+	case 0x19:
+		return AdsDataType_UINT64
+	case 0x1A:
+		return AdsDataType_REAL
+	case 0x1B:
+		return AdsDataType_FLOAT
+	case 0x1C:
+		return AdsDataType_LREAL
+	case 0x1D:
+		return AdsDataType_DOUBLE
+	case 0x1E:
+		return AdsDataType_CHAR
+	case 0x1F:
+		return AdsDataType_WCHAR
+	case 0x20:
+		return AdsDataType_STRING
+	case 0x21:
+		return AdsDataType_WSTRING
+	case 0x22:
+		return AdsDataType_TIME
+	case 0x23:
+		return AdsDataType_LTIME
+	case 0x24:
+		return AdsDataType_DATE
+	case 0x25:
+		return AdsDataType_TIME_OF_DAY
+	case 0x26:
+		return AdsDataType_TOD
+	case 0x27:
+		return AdsDataType_DATE_AND_TIME
+	case 0x28:
+		return AdsDataType_DT
 	}
 	return 0
 }
@@ -690,4 +771,3 @@ func (e AdsDataType) name() string {
 func (e AdsDataType) String() string {
 	return e.name()
 }
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
index 7209c83..f7c3348 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsDeleteDeviceNotificationRequest struct {
 	NotificationHandle uint32
-	Parent *AdsData
+	Parent             *AdsData
 }
 
 // The corresponding interface
@@ -52,14 +50,13 @@ func (m *AdsDeleteDeviceNotificationRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsDeleteDeviceNotificationRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsDeleteDeviceNotificationRequest(notificationHandle uint32) *AdsData {
 	child := &AdsDeleteDeviceNotificationRequest{
 		NotificationHandle: notificationHandle,
-		Parent: NewAdsData(),
+		Parent:             NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -96,23 +93,22 @@ func (m *AdsDeleteDeviceNotificationRequest) LengthInBitsConditional(lastItem bo
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (notificationHandle)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	return lengthInBits
 }
 
-
 func (m *AdsDeleteDeviceNotificationRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsDeleteDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsDeleteDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsDeleteDeviceNotificationRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (notificationHandle)
-notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
+	notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
 	if _notificationHandleErr != nil {
 		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field")
 	}
@@ -124,7 +120,7 @@ notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificatio
 	// Create a partially initialized instance
 	_child := &AdsDeleteDeviceNotificationRequest{
 		NotificationHandle: notificationHandle,
-		Parent: &AdsData{},
+		Parent:             &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -136,12 +132,12 @@ func (m *AdsDeleteDeviceNotificationRequest) Serialize(writeBuffer utils.WriteBu
 			return pushErr
 		}
 
-	// Simple Field (notificationHandle)
-	notificationHandle := uint32(m.NotificationHandle)
-	_notificationHandleErr := writeBuffer.WriteUint32("notificationHandle", 32, (notificationHandle))
-	if _notificationHandleErr != nil {
-		return errors.Wrap(_notificationHandleErr, "Error serializing 'notificationHandle' field")
-	}
+		// Simple Field (notificationHandle)
+		notificationHandle := uint32(m.NotificationHandle)
+		_notificationHandleErr := writeBuffer.WriteUint32("notificationHandle", 32, (notificationHandle))
+		if _notificationHandleErr != nil {
+			return errors.Wrap(_notificationHandleErr, "Error serializing 'notificationHandle' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsDeleteDeviceNotificationRequest"); popErr != nil {
 			return popErr
@@ -159,6 +155,3 @@ func (m *AdsDeleteDeviceNotificationRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
index fe93f42..3286eda 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsDeleteDeviceNotificationResponse struct {
@@ -52,7 +50,6 @@ func (m *AdsDeleteDeviceNotificationResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsDeleteDeviceNotificationResponse) InitializeParent(parent *AdsData) {
 }
 
@@ -101,12 +98,11 @@ func (m *AdsDeleteDeviceNotificationResponse) LengthInBitsConditional(lastItem b
 	return lengthInBits
 }
 
-
 func (m *AdsDeleteDeviceNotificationResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsDeleteDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsDeleteDeviceNotificationResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsDeleteDeviceNotificationResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -115,7 +111,7 @@ func AdsDeleteDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, ) (*A
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -142,17 +138,17 @@ func (m *AdsDeleteDeviceNotificationResponse) Serialize(writeBuffer utils.WriteB
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
+			return pushErr
+		}
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
+			return popErr
+		}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsDeleteDeviceNotificationResponse"); popErr != nil {
 			return popErr
@@ -170,6 +166,3 @@ func (m *AdsDeleteDeviceNotificationResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go
index f52fd59..c778f43 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationRequest.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsDeviceNotificationRequest struct {
-	Length uint32
-	Stamps uint32
+	Length          uint32
+	Stamps          uint32
 	AdsStampHeaders []*AdsStampHeader
-	Parent *AdsData
+	Parent          *AdsData
 }
 
 // The corresponding interface
@@ -54,16 +52,15 @@ func (m *AdsDeviceNotificationRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsDeviceNotificationRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsDeviceNotificationRequest(length uint32, stamps uint32, adsStampHeaders []*AdsStampHeader) *AdsData {
 	child := &AdsDeviceNotificationRequest{
-		Length: length,
-		Stamps: stamps,
+		Length:          length,
+		Stamps:          stamps,
 		AdsStampHeaders: adsStampHeaders,
-		Parent: NewAdsData(),
+		Parent:          NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -100,15 +97,15 @@ func (m *AdsDeviceNotificationRequest) LengthInBitsConditional(lastItem bool) ui
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (length)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (stamps)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Array field
 	if len(m.AdsStampHeaders) > 0 {
 		for i, element := range m.AdsStampHeaders {
-			last := i == len(m.AdsStampHeaders) -1
+			last := i == len(m.AdsStampHeaders)-1
 			lengthInBits += element.LengthInBitsConditional(last)
 		}
 	}
@@ -116,24 +113,23 @@ func (m *AdsDeviceNotificationRequest) LengthInBitsConditional(lastItem bool) ui
 	return lengthInBits
 }
 
-
 func (m *AdsDeviceNotificationRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsDeviceNotificationRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (length)
-length, _lengthErr := readBuffer.ReadUint32("length", 32)
+	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	if _lengthErr != nil {
 		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
 	}
 
 	// Simple Field (stamps)
-stamps, _stampsErr := readBuffer.ReadUint32("stamps", 32)
+	stamps, _stampsErr := readBuffer.ReadUint32("stamps", 32)
 	if _stampsErr != nil {
 		return nil, errors.Wrap(_stampsErr, "Error parsing 'stamps' field")
 	}
@@ -161,10 +157,10 @@ stamps, _stampsErr := readBuffer.ReadUint32("stamps", 32)
 
 	// Create a partially initialized instance
 	_child := &AdsDeviceNotificationRequest{
-		Length: length,
-		Stamps: stamps,
+		Length:          length,
+		Stamps:          stamps,
 		AdsStampHeaders: adsStampHeaders,
-		Parent: &AdsData{},
+		Parent:          &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -176,35 +172,35 @@ func (m *AdsDeviceNotificationRequest) Serialize(writeBuffer utils.WriteBuffer)
 			return pushErr
 		}
 
-	// Simple Field (length)
-	length := uint32(m.Length)
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
-
-	// Simple Field (stamps)
-	stamps := uint32(m.Stamps)
-	_stampsErr := writeBuffer.WriteUint32("stamps", 32, (stamps))
-	if _stampsErr != nil {
-		return errors.Wrap(_stampsErr, "Error serializing 'stamps' field")
-	}
+		// Simple Field (length)
+		length := uint32(m.Length)
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
+		}
 
-	// Array Field (adsStampHeaders)
-	if m.AdsStampHeaders != nil {
-		if pushErr := writeBuffer.PushContext("adsStampHeaders", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
+		// Simple Field (stamps)
+		stamps := uint32(m.Stamps)
+		_stampsErr := writeBuffer.WriteUint32("stamps", 32, (stamps))
+		if _stampsErr != nil {
+			return errors.Wrap(_stampsErr, "Error serializing 'stamps' field")
 		}
-		for _, _element := range m.AdsStampHeaders {
-			_elementErr := _element.Serialize(writeBuffer)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'adsStampHeaders' field")
+
+		// Array Field (adsStampHeaders)
+		if m.AdsStampHeaders != nil {
+			if pushErr := writeBuffer.PushContext("adsStampHeaders", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.AdsStampHeaders {
+				_elementErr := _element.Serialize(writeBuffer)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'adsStampHeaders' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("adsStampHeaders", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("adsStampHeaders", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
 		if popErr := writeBuffer.PopContext("AdsDeviceNotificationRequest"); popErr != nil {
 			return popErr
@@ -222,6 +218,3 @@ func (m *AdsDeviceNotificationRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationResponse.go
index c201237..e39a126 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsDeviceNotificationResponse.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsDeviceNotificationResponse struct {
@@ -50,7 +48,6 @@ func (m *AdsDeviceNotificationResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsDeviceNotificationResponse) InitializeParent(parent *AdsData) {
 }
 
@@ -95,12 +92,11 @@ func (m *AdsDeviceNotificationResponse) LengthInBitsConditional(lastItem bool) u
 	return lengthInBits
 }
 
-
 func (m *AdsDeviceNotificationResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsDeviceNotificationResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsDeviceNotificationResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -139,6 +135,3 @@ func (m *AdsDeviceNotificationResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidRequest.go
index 2c9604f..8af6fab 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidRequest.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsInvalidRequest struct {
@@ -50,7 +48,6 @@ func (m *AdsInvalidRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsInvalidRequest) InitializeParent(parent *AdsData) {
 }
 
@@ -95,12 +92,11 @@ func (m *AdsInvalidRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsInvalidRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsInvalidRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsInvalidRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsInvalidRequest"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -139,6 +135,3 @@ func (m *AdsInvalidRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidResponse.go
index 49899be..b440038 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsInvalidResponse.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsInvalidResponse struct {
@@ -50,7 +48,6 @@ func (m *AdsInvalidResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsInvalidResponse) InitializeParent(parent *AdsData) {
 }
 
@@ -95,12 +92,11 @@ func (m *AdsInvalidResponse) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsInvalidResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsInvalidResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsInvalidResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsInvalidResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -139,6 +135,3 @@ func (m *AdsInvalidResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItem.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItem.go
index dbbacce..ea9b085 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItem.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItem.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsMultiRequestItem struct {
@@ -101,12 +99,12 @@ func AdsMultiRequestItemParse(readBuffer utils.ReadBuffer, indexGroup uint32) (*
 	var _parent *AdsMultiRequestItem
 	var typeSwitchError error
 	switch {
-case indexGroup == 61568 : // AdsMultiRequestItemRead
-		_parent, typeSwitchError = AdsMultiRequestItemReadParse(readBuffer, )
-case indexGroup == 61569 : // AdsMultiRequestItemWrite
-		_parent, typeSwitchError = AdsMultiRequestItemWriteParse(readBuffer, )
-case indexGroup == 61570 : // AdsMultiRequestItemReadWrite
-		_parent, typeSwitchError = AdsMultiRequestItemReadWriteParse(readBuffer, )
+	case indexGroup == 61568: // AdsMultiRequestItemRead
+		_parent, typeSwitchError = AdsMultiRequestItemReadParse(readBuffer)
+	case indexGroup == 61569: // AdsMultiRequestItemWrite
+		_parent, typeSwitchError = AdsMultiRequestItemWriteParse(readBuffer)
+	case indexGroup == 61570: // AdsMultiRequestItemReadWrite
+		_parent, typeSwitchError = AdsMultiRequestItemReadWriteParse(readBuffer)
 	default:
 		// TODO: return actual type
 		typeSwitchError = errors.New("Unmapped type")
@@ -129,7 +127,7 @@ func (m *AdsMultiRequestItem) Serialize(writeBuffer utils.WriteBuffer) error {
 }
 
 func (m *AdsMultiRequestItem) SerializeParent(writeBuffer utils.WriteBuffer, child IAdsMultiRequestItem, serializeChildFunction func() error) error {
-	if pushErr :=writeBuffer.PushContext("AdsMultiRequestItem"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AdsMultiRequestItem"); pushErr != nil {
 		return pushErr
 	}
 
@@ -153,6 +151,3 @@ func (m *AdsMultiRequestItem) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemRead.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemRead.go
index 09a0467..4bb70d0 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemRead.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemRead.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsMultiRequestItemRead struct {
-	ItemIndexGroup uint32
+	ItemIndexGroup  uint32
 	ItemIndexOffset uint32
-	ItemReadLength uint32
-	Parent *AdsMultiRequestItem
+	ItemReadLength  uint32
+	Parent          *AdsMultiRequestItem
 }
 
 // The corresponding interface
@@ -50,16 +48,15 @@ func (m *AdsMultiRequestItemRead) IndexGroup() uint32 {
 	return 61568
 }
 
-
 func (m *AdsMultiRequestItemRead) InitializeParent(parent *AdsMultiRequestItem) {
 }
 
 func NewAdsMultiRequestItemRead(itemIndexGroup uint32, itemIndexOffset uint32, itemReadLength uint32) *AdsMultiRequestItem {
 	child := &AdsMultiRequestItemRead{
-		ItemIndexGroup: itemIndexGroup,
+		ItemIndexGroup:  itemIndexGroup,
 		ItemIndexOffset: itemIndexOffset,
-		ItemReadLength: itemReadLength,
-		Parent: NewAdsMultiRequestItem(),
+		ItemReadLength:  itemReadLength,
+		Parent:          NewAdsMultiRequestItem(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -96,41 +93,40 @@ func (m *AdsMultiRequestItemRead) LengthInBitsConditional(lastItem bool) uint16
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (itemIndexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemIndexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemReadLength)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	return lengthInBits
 }
 
-
 func (m *AdsMultiRequestItemRead) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsMultiRequestItemReadParse(readBuffer utils.ReadBuffer, ) (*AdsMultiRequestItem, error) {
+func AdsMultiRequestItemReadParse(readBuffer utils.ReadBuffer) (*AdsMultiRequestItem, error) {
 	if pullErr := readBuffer.PullContext("AdsMultiRequestItemRead"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (itemIndexGroup)
-itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
+	itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
 	if _itemIndexGroupErr != nil {
 		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field")
 	}
 
 	// Simple Field (itemIndexOffset)
-itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
+	itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
 	if _itemIndexOffsetErr != nil {
 		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field")
 	}
 
 	// Simple Field (itemReadLength)
-itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32)
+	itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32)
 	if _itemReadLengthErr != nil {
 		return nil, errors.Wrap(_itemReadLengthErr, "Error parsing 'itemReadLength' field")
 	}
@@ -141,10 +137,10 @@ itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32
 
 	// Create a partially initialized instance
 	_child := &AdsMultiRequestItemRead{
-		ItemIndexGroup: itemIndexGroup,
+		ItemIndexGroup:  itemIndexGroup,
 		ItemIndexOffset: itemIndexOffset,
-		ItemReadLength: itemReadLength,
-		Parent: &AdsMultiRequestItem{},
+		ItemReadLength:  itemReadLength,
+		Parent:          &AdsMultiRequestItem{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -156,26 +152,26 @@ func (m *AdsMultiRequestItemRead) Serialize(writeBuffer utils.WriteBuffer) error
 			return pushErr
 		}
 
-	// Simple Field (itemIndexGroup)
-	itemIndexGroup := uint32(m.ItemIndexGroup)
-	_itemIndexGroupErr := writeBuffer.WriteUint32("itemIndexGroup", 32, (itemIndexGroup))
-	if _itemIndexGroupErr != nil {
-		return errors.Wrap(_itemIndexGroupErr, "Error serializing 'itemIndexGroup' field")
-	}
+		// Simple Field (itemIndexGroup)
+		itemIndexGroup := uint32(m.ItemIndexGroup)
+		_itemIndexGroupErr := writeBuffer.WriteUint32("itemIndexGroup", 32, (itemIndexGroup))
+		if _itemIndexGroupErr != nil {
+			return errors.Wrap(_itemIndexGroupErr, "Error serializing 'itemIndexGroup' field")
+		}
 
-	// Simple Field (itemIndexOffset)
-	itemIndexOffset := uint32(m.ItemIndexOffset)
-	_itemIndexOffsetErr := writeBuffer.WriteUint32("itemIndexOffset", 32, (itemIndexOffset))
-	if _itemIndexOffsetErr != nil {
-		return errors.Wrap(_itemIndexOffsetErr, "Error serializing 'itemIndexOffset' field")
-	}
+		// Simple Field (itemIndexOffset)
+		itemIndexOffset := uint32(m.ItemIndexOffset)
+		_itemIndexOffsetErr := writeBuffer.WriteUint32("itemIndexOffset", 32, (itemIndexOffset))
+		if _itemIndexOffsetErr != nil {
+			return errors.Wrap(_itemIndexOffsetErr, "Error serializing 'itemIndexOffset' field")
+		}
 
-	// Simple Field (itemReadLength)
-	itemReadLength := uint32(m.ItemReadLength)
-	_itemReadLengthErr := writeBuffer.WriteUint32("itemReadLength", 32, (itemReadLength))
-	if _itemReadLengthErr != nil {
-		return errors.Wrap(_itemReadLengthErr, "Error serializing 'itemReadLength' field")
-	}
+		// Simple Field (itemReadLength)
+		itemReadLength := uint32(m.ItemReadLength)
+		_itemReadLengthErr := writeBuffer.WriteUint32("itemReadLength", 32, (itemReadLength))
+		if _itemReadLengthErr != nil {
+			return errors.Wrap(_itemReadLengthErr, "Error serializing 'itemReadLength' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsMultiRequestItemRead"); popErr != nil {
 			return popErr
@@ -193,6 +189,3 @@ func (m *AdsMultiRequestItemRead) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemReadWrite.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
index a8679cd..8777f31 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
@@ -19,22 +19,20 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsMultiRequestItemReadWrite struct {
-	ItemIndexGroup uint32
+	ItemIndexGroup  uint32
 	ItemIndexOffset uint32
-	ItemReadLength uint32
+	ItemReadLength  uint32
 	ItemWriteLength uint32
-	Parent *AdsMultiRequestItem
+	Parent          *AdsMultiRequestItem
 }
 
 // The corresponding interface
@@ -51,17 +49,16 @@ func (m *AdsMultiRequestItemReadWrite) IndexGroup() uint32 {
 	return 61570
 }
 
-
 func (m *AdsMultiRequestItemReadWrite) InitializeParent(parent *AdsMultiRequestItem) {
 }
 
 func NewAdsMultiRequestItemReadWrite(itemIndexGroup uint32, itemIndexOffset uint32, itemReadLength uint32, itemWriteLength uint32) *AdsMultiRequestItem {
 	child := &AdsMultiRequestItemReadWrite{
-		ItemIndexGroup: itemIndexGroup,
+		ItemIndexGroup:  itemIndexGroup,
 		ItemIndexOffset: itemIndexOffset,
-		ItemReadLength: itemReadLength,
+		ItemReadLength:  itemReadLength,
 		ItemWriteLength: itemWriteLength,
-		Parent: NewAdsMultiRequestItem(),
+		Parent:          NewAdsMultiRequestItem(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -98,50 +95,49 @@ func (m *AdsMultiRequestItemReadWrite) LengthInBitsConditional(lastItem bool) ui
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (itemIndexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemIndexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemReadLength)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemWriteLength)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	return lengthInBits
 }
 
-
 func (m *AdsMultiRequestItemReadWrite) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsMultiRequestItemReadWriteParse(readBuffer utils.ReadBuffer, ) (*AdsMultiRequestItem, error) {
+func AdsMultiRequestItemReadWriteParse(readBuffer utils.ReadBuffer) (*AdsMultiRequestItem, error) {
 	if pullErr := readBuffer.PullContext("AdsMultiRequestItemReadWrite"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (itemIndexGroup)
-itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
+	itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
 	if _itemIndexGroupErr != nil {
 		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field")
 	}
 
 	// Simple Field (itemIndexOffset)
-itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
+	itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
 	if _itemIndexOffsetErr != nil {
 		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field")
 	}
 
 	// Simple Field (itemReadLength)
-itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32)
+	itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32)
 	if _itemReadLengthErr != nil {
 		return nil, errors.Wrap(_itemReadLengthErr, "Error parsing 'itemReadLength' field")
 	}
 
 	// Simple Field (itemWriteLength)
-itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength", 32)
+	itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength", 32)
 	if _itemWriteLengthErr != nil {
 		return nil, errors.Wrap(_itemWriteLengthErr, "Error parsing 'itemWriteLength' field")
 	}
@@ -152,11 +148,11 @@ itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength",
 
 	// Create a partially initialized instance
 	_child := &AdsMultiRequestItemReadWrite{
-		ItemIndexGroup: itemIndexGroup,
+		ItemIndexGroup:  itemIndexGroup,
 		ItemIndexOffset: itemIndexOffset,
-		ItemReadLength: itemReadLength,
+		ItemReadLength:  itemReadLength,
 		ItemWriteLength: itemWriteLength,
-		Parent: &AdsMultiRequestItem{},
+		Parent:          &AdsMultiRequestItem{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -168,33 +164,33 @@ func (m *AdsMultiRequestItemReadWrite) Serialize(writeBuffer utils.WriteBuffer)
 			return pushErr
 		}
 
-	// Simple Field (itemIndexGroup)
-	itemIndexGroup := uint32(m.ItemIndexGroup)
-	_itemIndexGroupErr := writeBuffer.WriteUint32("itemIndexGroup", 32, (itemIndexGroup))
-	if _itemIndexGroupErr != nil {
-		return errors.Wrap(_itemIndexGroupErr, "Error serializing 'itemIndexGroup' field")
-	}
+		// Simple Field (itemIndexGroup)
+		itemIndexGroup := uint32(m.ItemIndexGroup)
+		_itemIndexGroupErr := writeBuffer.WriteUint32("itemIndexGroup", 32, (itemIndexGroup))
+		if _itemIndexGroupErr != nil {
+			return errors.Wrap(_itemIndexGroupErr, "Error serializing 'itemIndexGroup' field")
+		}
 
-	// Simple Field (itemIndexOffset)
-	itemIndexOffset := uint32(m.ItemIndexOffset)
-	_itemIndexOffsetErr := writeBuffer.WriteUint32("itemIndexOffset", 32, (itemIndexOffset))
-	if _itemIndexOffsetErr != nil {
-		return errors.Wrap(_itemIndexOffsetErr, "Error serializing 'itemIndexOffset' field")
-	}
+		// Simple Field (itemIndexOffset)
+		itemIndexOffset := uint32(m.ItemIndexOffset)
+		_itemIndexOffsetErr := writeBuffer.WriteUint32("itemIndexOffset", 32, (itemIndexOffset))
+		if _itemIndexOffsetErr != nil {
+			return errors.Wrap(_itemIndexOffsetErr, "Error serializing 'itemIndexOffset' field")
+		}
 
-	// Simple Field (itemReadLength)
-	itemReadLength := uint32(m.ItemReadLength)
-	_itemReadLengthErr := writeBuffer.WriteUint32("itemReadLength", 32, (itemReadLength))
-	if _itemReadLengthErr != nil {
-		return errors.Wrap(_itemReadLengthErr, "Error serializing 'itemReadLength' field")
-	}
+		// Simple Field (itemReadLength)
+		itemReadLength := uint32(m.ItemReadLength)
+		_itemReadLengthErr := writeBuffer.WriteUint32("itemReadLength", 32, (itemReadLength))
+		if _itemReadLengthErr != nil {
+			return errors.Wrap(_itemReadLengthErr, "Error serializing 'itemReadLength' field")
+		}
 
-	// Simple Field (itemWriteLength)
-	itemWriteLength := uint32(m.ItemWriteLength)
-	_itemWriteLengthErr := writeBuffer.WriteUint32("itemWriteLength", 32, (itemWriteLength))
-	if _itemWriteLengthErr != nil {
-		return errors.Wrap(_itemWriteLengthErr, "Error serializing 'itemWriteLength' field")
-	}
+		// Simple Field (itemWriteLength)
+		itemWriteLength := uint32(m.ItemWriteLength)
+		_itemWriteLengthErr := writeBuffer.WriteUint32("itemWriteLength", 32, (itemWriteLength))
+		if _itemWriteLengthErr != nil {
+			return errors.Wrap(_itemWriteLengthErr, "Error serializing 'itemWriteLength' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsMultiRequestItemReadWrite"); popErr != nil {
 			return popErr
@@ -212,6 +208,3 @@ func (m *AdsMultiRequestItemReadWrite) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemWrite.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemWrite.go
index 71bfcbb..eb745be 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemWrite.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsMultiRequestItemWrite.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsMultiRequestItemWrite struct {
-	ItemIndexGroup uint32
+	ItemIndexGroup  uint32
 	ItemIndexOffset uint32
 	ItemWriteLength uint32
-	Parent *AdsMultiRequestItem
+	Parent          *AdsMultiRequestItem
 }
 
 // The corresponding interface
@@ -50,16 +48,15 @@ func (m *AdsMultiRequestItemWrite) IndexGroup() uint32 {
 	return 61569
 }
 
-
 func (m *AdsMultiRequestItemWrite) InitializeParent(parent *AdsMultiRequestItem) {
 }
 
 func NewAdsMultiRequestItemWrite(itemIndexGroup uint32, itemIndexOffset uint32, itemWriteLength uint32) *AdsMultiRequestItem {
 	child := &AdsMultiRequestItemWrite{
-		ItemIndexGroup: itemIndexGroup,
+		ItemIndexGroup:  itemIndexGroup,
 		ItemIndexOffset: itemIndexOffset,
 		ItemWriteLength: itemWriteLength,
-		Parent: NewAdsMultiRequestItem(),
+		Parent:          NewAdsMultiRequestItem(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -96,41 +93,40 @@ func (m *AdsMultiRequestItemWrite) LengthInBitsConditional(lastItem bool) uint16
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (itemIndexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemIndexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (itemWriteLength)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	return lengthInBits
 }
 
-
 func (m *AdsMultiRequestItemWrite) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsMultiRequestItemWriteParse(readBuffer utils.ReadBuffer, ) (*AdsMultiRequestItem, error) {
+func AdsMultiRequestItemWriteParse(readBuffer utils.ReadBuffer) (*AdsMultiRequestItem, error) {
 	if pullErr := readBuffer.PullContext("AdsMultiRequestItemWrite"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (itemIndexGroup)
-itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
+	itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
 	if _itemIndexGroupErr != nil {
 		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field")
 	}
 
 	// Simple Field (itemIndexOffset)
-itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
+	itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
 	if _itemIndexOffsetErr != nil {
 		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field")
 	}
 
 	// Simple Field (itemWriteLength)
-itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength", 32)
+	itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength", 32)
 	if _itemWriteLengthErr != nil {
 		return nil, errors.Wrap(_itemWriteLengthErr, "Error parsing 'itemWriteLength' field")
 	}
@@ -141,10 +137,10 @@ itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength",
 
 	// Create a partially initialized instance
 	_child := &AdsMultiRequestItemWrite{
-		ItemIndexGroup: itemIndexGroup,
+		ItemIndexGroup:  itemIndexGroup,
 		ItemIndexOffset: itemIndexOffset,
 		ItemWriteLength: itemWriteLength,
-		Parent: &AdsMultiRequestItem{},
+		Parent:          &AdsMultiRequestItem{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -156,26 +152,26 @@ func (m *AdsMultiRequestItemWrite) Serialize(writeBuffer utils.WriteBuffer) erro
 			return pushErr
 		}
 
-	// Simple Field (itemIndexGroup)
-	itemIndexGroup := uint32(m.ItemIndexGroup)
-	_itemIndexGroupErr := writeBuffer.WriteUint32("itemIndexGroup", 32, (itemIndexGroup))
-	if _itemIndexGroupErr != nil {
-		return errors.Wrap(_itemIndexGroupErr, "Error serializing 'itemIndexGroup' field")
-	}
+		// Simple Field (itemIndexGroup)
+		itemIndexGroup := uint32(m.ItemIndexGroup)
+		_itemIndexGroupErr := writeBuffer.WriteUint32("itemIndexGroup", 32, (itemIndexGroup))
+		if _itemIndexGroupErr != nil {
+			return errors.Wrap(_itemIndexGroupErr, "Error serializing 'itemIndexGroup' field")
+		}
 
-	// Simple Field (itemIndexOffset)
-	itemIndexOffset := uint32(m.ItemIndexOffset)
-	_itemIndexOffsetErr := writeBuffer.WriteUint32("itemIndexOffset", 32, (itemIndexOffset))
-	if _itemIndexOffsetErr != nil {
-		return errors.Wrap(_itemIndexOffsetErr, "Error serializing 'itemIndexOffset' field")
-	}
+		// Simple Field (itemIndexOffset)
+		itemIndexOffset := uint32(m.ItemIndexOffset)
+		_itemIndexOffsetErr := writeBuffer.WriteUint32("itemIndexOffset", 32, (itemIndexOffset))
+		if _itemIndexOffsetErr != nil {
+			return errors.Wrap(_itemIndexOffsetErr, "Error serializing 'itemIndexOffset' field")
+		}
 
-	// Simple Field (itemWriteLength)
-	itemWriteLength := uint32(m.ItemWriteLength)
-	_itemWriteLengthErr := writeBuffer.WriteUint32("itemWriteLength", 32, (itemWriteLength))
-	if _itemWriteLengthErr != nil {
-		return errors.Wrap(_itemWriteLengthErr, "Error serializing 'itemWriteLength' field")
-	}
+		// Simple Field (itemWriteLength)
+		itemWriteLength := uint32(m.ItemWriteLength)
+		_itemWriteLengthErr := writeBuffer.WriteUint32("itemWriteLength", 32, (itemWriteLength))
+		if _itemWriteLengthErr != nil {
+			return errors.Wrap(_itemWriteLengthErr, "Error serializing 'itemWriteLength' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsMultiRequestItemWrite"); popErr != nil {
 			return popErr
@@ -193,6 +189,3 @@ func (m *AdsMultiRequestItemWrite) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go
index 2cb24aa..66d724e 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsNotificationSample.go
@@ -19,20 +19,18 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsNotificationSample struct {
 	NotificationHandle uint32
-	SampleSize uint32
-	Data []int8
+	SampleSize         uint32
+	Data               []int8
 }
 
 // The corresponding interface
@@ -71,10 +69,10 @@ func (m *AdsNotificationSample) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (notificationHandle)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (sampleSize)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Array field
 	if len(m.Data) > 0 {
@@ -84,7 +82,6 @@ func (m *AdsNotificationSample) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsNotificationSample) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -95,13 +92,13 @@ func AdsNotificationSampleParse(readBuffer utils.ReadBuffer) (*AdsNotificationSa
 	}
 
 	// Simple Field (notificationHandle)
-notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
+	notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
 	if _notificationHandleErr != nil {
 		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field")
 	}
 
 	// Simple Field (sampleSize)
-sampleSize, _sampleSizeErr := readBuffer.ReadUint32("sampleSize", 32)
+	sampleSize, _sampleSizeErr := readBuffer.ReadUint32("sampleSize", 32)
 	if _sampleSizeErr != nil {
 		return nil, errors.Wrap(_sampleSizeErr, "Error parsing 'sampleSize' field")
 	}
@@ -132,7 +129,7 @@ sampleSize, _sampleSizeErr := readBuffer.ReadUint32("sampleSize", 32)
 }
 
 func (m *AdsNotificationSample) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AdsNotificationSample"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AdsNotificationSample"); pushErr != nil {
 		return pushErr
 	}
 
@@ -180,6 +177,3 @@ func (m *AdsNotificationSample) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoRequest.go
index dccde2c..219d2e8 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoRequest.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadDeviceInfoRequest struct {
@@ -50,7 +48,6 @@ func (m *AdsReadDeviceInfoRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsReadDeviceInfoRequest) InitializeParent(parent *AdsData) {
 }
 
@@ -95,12 +92,11 @@ func (m *AdsReadDeviceInfoRequest) LengthInBitsConditional(lastItem bool) uint16
 	return lengthInBits
 }
 
-
 func (m *AdsReadDeviceInfoRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadDeviceInfoRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadDeviceInfoRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadDeviceInfoRequest"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -139,6 +135,3 @@ func (m *AdsReadDeviceInfoRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go
index e2b5684..0981bb1 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadDeviceInfoResponse.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadDeviceInfoResponse struct {
-	Result ReturnCode
+	Result       ReturnCode
 	MajorVersion uint8
 	MinorVersion uint8
-	Version uint16
-	Device []int8
-	Parent *AdsData
+	Version      uint16
+	Device       []int8
+	Parent       *AdsData
 }
 
 // The corresponding interface
@@ -56,18 +54,17 @@ func (m *AdsReadDeviceInfoResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsReadDeviceInfoResponse) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsReadDeviceInfoResponse(result ReturnCode, majorVersion uint8, minorVersion uint8, version uint16, device []int8) *AdsData {
 	child := &AdsReadDeviceInfoResponse{
-		Result: result,
+		Result:       result,
 		MajorVersion: majorVersion,
 		MinorVersion: minorVersion,
-		Version: version,
-		Device: device,
-		Parent: NewAdsData(),
+		Version:      version,
+		Device:       device,
+		Parent:       NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -107,13 +104,13 @@ func (m *AdsReadDeviceInfoResponse) LengthInBitsConditional(lastItem bool) uint1
 	lengthInBits += 32
 
 	// Simple field (majorVersion)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (minorVersion)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (version)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Array field
 	if len(m.Device) > 0 {
@@ -123,12 +120,11 @@ func (m *AdsReadDeviceInfoResponse) LengthInBitsConditional(lastItem bool) uint1
 	return lengthInBits
 }
 
-
 func (m *AdsReadDeviceInfoResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadDeviceInfoResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadDeviceInfoResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadDeviceInfoResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -137,7 +133,7 @@ func AdsReadDeviceInfoResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, er
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -146,19 +142,19 @@ result, _resultErr := ReturnCodeParse(readBuffer)
 	}
 
 	// Simple Field (majorVersion)
-majorVersion, _majorVersionErr := readBuffer.ReadUint8("majorVersion", 8)
+	majorVersion, _majorVersionErr := readBuffer.ReadUint8("majorVersion", 8)
 	if _majorVersionErr != nil {
 		return nil, errors.Wrap(_majorVersionErr, "Error parsing 'majorVersion' field")
 	}
 
 	// Simple Field (minorVersion)
-minorVersion, _minorVersionErr := readBuffer.ReadUint8("minorVersion", 8)
+	minorVersion, _minorVersionErr := readBuffer.ReadUint8("minorVersion", 8)
 	if _minorVersionErr != nil {
 		return nil, errors.Wrap(_minorVersionErr, "Error parsing 'minorVersion' field")
 	}
 
 	// Simple Field (version)
-version, _versionErr := readBuffer.ReadUint16("version", 16)
+	version, _versionErr := readBuffer.ReadUint16("version", 16)
 	if _versionErr != nil {
 		return nil, errors.Wrap(_versionErr, "Error parsing 'version' field")
 	}
@@ -186,12 +182,12 @@ version, _versionErr := readBuffer.ReadUint16("version", 16)
 
 	// Create a partially initialized instance
 	_child := &AdsReadDeviceInfoResponse{
-		Result: result,
+		Result:       result,
 		MajorVersion: majorVersion,
 		MinorVersion: minorVersion,
-		Version: version,
-		Device: device,
-		Parent: &AdsData{},
+		Version:      version,
+		Device:       device,
+		Parent:       &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -203,54 +199,54 @@ func (m *AdsReadDeviceInfoResponse) Serialize(writeBuffer utils.WriteBuffer) err
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
-
-	// Simple Field (majorVersion)
-	majorVersion := uint8(m.MajorVersion)
-	_majorVersionErr := writeBuffer.WriteUint8("majorVersion", 8, (majorVersion))
-	if _majorVersionErr != nil {
-		return errors.Wrap(_majorVersionErr, "Error serializing 'majorVersion' field")
-	}
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
+			return pushErr
+		}
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
+			return popErr
+		}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
 
-	// Simple Field (minorVersion)
-	minorVersion := uint8(m.MinorVersion)
-	_minorVersionErr := writeBuffer.WriteUint8("minorVersion", 8, (minorVersion))
-	if _minorVersionErr != nil {
-		return errors.Wrap(_minorVersionErr, "Error serializing 'minorVersion' field")
-	}
+		// Simple Field (majorVersion)
+		majorVersion := uint8(m.MajorVersion)
+		_majorVersionErr := writeBuffer.WriteUint8("majorVersion", 8, (majorVersion))
+		if _majorVersionErr != nil {
+			return errors.Wrap(_majorVersionErr, "Error serializing 'majorVersion' field")
+		}
 
-	// Simple Field (version)
-	version := uint16(m.Version)
-	_versionErr := writeBuffer.WriteUint16("version", 16, (version))
-	if _versionErr != nil {
-		return errors.Wrap(_versionErr, "Error serializing 'version' field")
-	}
+		// Simple Field (minorVersion)
+		minorVersion := uint8(m.MinorVersion)
+		_minorVersionErr := writeBuffer.WriteUint8("minorVersion", 8, (minorVersion))
+		if _minorVersionErr != nil {
+			return errors.Wrap(_minorVersionErr, "Error serializing 'minorVersion' field")
+		}
 
-	// Array Field (device)
-	if m.Device != nil {
-		if pushErr := writeBuffer.PushContext("device", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
+		// Simple Field (version)
+		version := uint16(m.Version)
+		_versionErr := writeBuffer.WriteUint16("version", 16, (version))
+		if _versionErr != nil {
+			return errors.Wrap(_versionErr, "Error serializing 'version' field")
 		}
-		for _, _element := range m.Device {
-			_elementErr := writeBuffer.WriteInt8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'device' field")
+
+		// Array Field (device)
+		if m.Device != nil {
+			if pushErr := writeBuffer.PushContext("device", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Device {
+				_elementErr := writeBuffer.WriteInt8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'device' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("device", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("device", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
 		if popErr := writeBuffer.PopContext("AdsReadDeviceInfoResponse"); popErr != nil {
 			return popErr
@@ -268,6 +264,3 @@ func (m *AdsReadDeviceInfoResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadRequest.go
index 1adf5768..cade5a9 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadRequest.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadRequest struct {
-	IndexGroup uint32
+	IndexGroup  uint32
 	IndexOffset uint32
-	Length uint32
-	Parent *AdsData
+	Length      uint32
+	Parent      *AdsData
 }
 
 // The corresponding interface
@@ -54,16 +52,15 @@ func (m *AdsReadRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsReadRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsReadRequest(indexGroup uint32, indexOffset uint32, length uint32) *AdsData {
 	child := &AdsReadRequest{
-		IndexGroup: indexGroup,
+		IndexGroup:  indexGroup,
 		IndexOffset: indexOffset,
-		Length: length,
-		Parent: NewAdsData(),
+		Length:      length,
+		Parent:      NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -100,41 +97,40 @@ func (m *AdsReadRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (indexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (indexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (length)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	return lengthInBits
 }
 
-
 func (m *AdsReadRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (indexGroup)
-indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
+	indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
 		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
 	}
 
 	// Simple Field (indexOffset)
-indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
+	indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
 		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
 	}
 
 	// Simple Field (length)
-length, _lengthErr := readBuffer.ReadUint32("length", 32)
+	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	if _lengthErr != nil {
 		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
 	}
@@ -145,10 +141,10 @@ length, _lengthErr := readBuffer.ReadUint32("length", 32)
 
 	// Create a partially initialized instance
 	_child := &AdsReadRequest{
-		IndexGroup: indexGroup,
+		IndexGroup:  indexGroup,
 		IndexOffset: indexOffset,
-		Length: length,
-		Parent: &AdsData{},
+		Length:      length,
+		Parent:      &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -160,26 +156,26 @@ func (m *AdsReadRequest) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (indexGroup)
-	indexGroup := uint32(m.IndexGroup)
-	_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
-	if _indexGroupErr != nil {
-		return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
-	}
+		// Simple Field (indexGroup)
+		indexGroup := uint32(m.IndexGroup)
+		_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
+		if _indexGroupErr != nil {
+			return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
+		}
 
-	// Simple Field (indexOffset)
-	indexOffset := uint32(m.IndexOffset)
-	_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
-	if _indexOffsetErr != nil {
-		return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
-	}
+		// Simple Field (indexOffset)
+		indexOffset := uint32(m.IndexOffset)
+		_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
+		if _indexOffsetErr != nil {
+			return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
+		}
 
-	// Simple Field (length)
-	length := uint32(m.Length)
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
+		// Simple Field (length)
+		length := uint32(m.Length)
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsReadRequest"); popErr != nil {
 			return popErr
@@ -197,6 +193,3 @@ func (m *AdsReadRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go
index 8626463..9eb97e3 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadResponse.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadResponse struct {
 	Result ReturnCode
-	Data []int8
+	Data   []int8
 	Parent *AdsData
 }
 
@@ -53,14 +51,13 @@ func (m *AdsReadResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsReadResponse) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsReadResponse(result ReturnCode, data []int8) *AdsData {
 	child := &AdsReadResponse{
 		Result: result,
-		Data: data,
+		Data:   data,
 		Parent: NewAdsData(),
 	}
 	child.Parent.Child = child
@@ -111,12 +108,11 @@ func (m *AdsReadResponse) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsReadResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -125,7 +121,7 @@ func AdsReadResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -164,7 +160,7 @@ result, _resultErr := ReturnCodeParse(readBuffer)
 	// Create a partially initialized instance
 	_child := &AdsReadResponse{
 		Result: result,
-		Data: data,
+		Data:   data,
 		Parent: &AdsData{},
 	}
 	_child.Parent.Child = _child
@@ -177,40 +173,40 @@ func (m *AdsReadResponse) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
-
-	// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
-	length := uint32(uint32(len(m.Data)))
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
-
-	// Array Field (data)
-	if m.Data != nil {
-		if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
 			return pushErr
 		}
-		for _, _element := range m.Data {
-			_elementErr := writeBuffer.WriteInt8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'data' field")
-			}
-		}
-		if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
 			return popErr
 		}
-	}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
+
+		// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
+		length := uint32(uint32(len(m.Data)))
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
+		}
+
+		// Array Field (data)
+		if m.Data != nil {
+			if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Data {
+				_elementErr := writeBuffer.WriteInt8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'data' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
+			}
+		}
 
 		if popErr := writeBuffer.PopContext("AdsReadResponse"); popErr != nil {
 			return popErr
@@ -228,6 +224,3 @@ func (m *AdsReadResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateRequest.go
index 3d05929..44adbc8 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateRequest.go
@@ -19,13 +19,11 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadStateRequest struct {
@@ -50,7 +48,6 @@ func (m *AdsReadStateRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsReadStateRequest) InitializeParent(parent *AdsData) {
 }
 
@@ -95,12 +92,11 @@ func (m *AdsReadStateRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsReadStateRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadStateRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadStateRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadStateRequest"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -139,6 +135,3 @@ func (m *AdsReadStateRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateResponse.go
index a02300d..70191d1 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadStateResponse.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadStateResponse struct {
-	Result ReturnCode
-	AdsState uint16
+	Result      ReturnCode
+	AdsState    uint16
 	DeviceState uint16
-	Parent *AdsData
+	Parent      *AdsData
 }
 
 // The corresponding interface
@@ -54,16 +52,15 @@ func (m *AdsReadStateResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsReadStateResponse) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsReadStateResponse(result ReturnCode, adsState uint16, deviceState uint16) *AdsData {
 	child := &AdsReadStateResponse{
-		Result: result,
-		AdsState: adsState,
+		Result:      result,
+		AdsState:    adsState,
 		DeviceState: deviceState,
-		Parent: NewAdsData(),
+		Parent:      NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -103,20 +100,19 @@ func (m *AdsReadStateResponse) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits += 32
 
 	// Simple field (adsState)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (deviceState)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	return lengthInBits
 }
 
-
 func (m *AdsReadStateResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadStateResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadStateResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadStateResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -125,7 +121,7 @@ func AdsReadStateResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error)
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -134,13 +130,13 @@ result, _resultErr := ReturnCodeParse(readBuffer)
 	}
 
 	// Simple Field (adsState)
-adsState, _adsStateErr := readBuffer.ReadUint16("adsState", 16)
+	adsState, _adsStateErr := readBuffer.ReadUint16("adsState", 16)
 	if _adsStateErr != nil {
 		return nil, errors.Wrap(_adsStateErr, "Error parsing 'adsState' field")
 	}
 
 	// Simple Field (deviceState)
-deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
+	deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
 	if _deviceStateErr != nil {
 		return nil, errors.Wrap(_deviceStateErr, "Error parsing 'deviceState' field")
 	}
@@ -151,10 +147,10 @@ deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
 
 	// Create a partially initialized instance
 	_child := &AdsReadStateResponse{
-		Result: result,
-		AdsState: adsState,
+		Result:      result,
+		AdsState:    adsState,
 		DeviceState: deviceState,
-		Parent: &AdsData{},
+		Parent:      &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -166,31 +162,31 @@ func (m *AdsReadStateResponse) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
+			return pushErr
+		}
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
+			return popErr
+		}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
 
-	// Simple Field (adsState)
-	adsState := uint16(m.AdsState)
-	_adsStateErr := writeBuffer.WriteUint16("adsState", 16, (adsState))
-	if _adsStateErr != nil {
-		return errors.Wrap(_adsStateErr, "Error serializing 'adsState' field")
-	}
+		// Simple Field (adsState)
+		adsState := uint16(m.AdsState)
+		_adsStateErr := writeBuffer.WriteUint16("adsState", 16, (adsState))
+		if _adsStateErr != nil {
+			return errors.Wrap(_adsStateErr, "Error serializing 'adsState' field")
+		}
 
-	// Simple Field (deviceState)
-	deviceState := uint16(m.DeviceState)
-	_deviceStateErr := writeBuffer.WriteUint16("deviceState", 16, (deviceState))
-	if _deviceStateErr != nil {
-		return errors.Wrap(_deviceStateErr, "Error serializing 'deviceState' field")
-	}
+		// Simple Field (deviceState)
+		deviceState := uint16(m.DeviceState)
+		_deviceStateErr := writeBuffer.WriteUint16("deviceState", 16, (deviceState))
+		if _deviceStateErr != nil {
+			return errors.Wrap(_deviceStateErr, "Error serializing 'deviceState' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsReadStateResponse"); popErr != nil {
 			return popErr
@@ -208,6 +204,3 @@ func (m *AdsReadStateResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go
index 4c2b688..df5b4ea 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteRequest.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadWriteRequest struct {
-	IndexGroup uint32
+	IndexGroup  uint32
 	IndexOffset uint32
-	ReadLength uint32
-	Items []*AdsMultiRequestItem
-	Data []int8
-	Parent *AdsData
+	ReadLength  uint32
+	Items       []*AdsMultiRequestItem
+	Data        []int8
+	Parent      *AdsData
 }
 
 // The corresponding interface
@@ -56,18 +54,17 @@ func (m *AdsReadWriteRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsReadWriteRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsReadWriteRequest(indexGroup uint32, indexOffset uint32, readLength uint32, items []*AdsMultiRequestItem, data []int8) *AdsData {
 	child := &AdsReadWriteRequest{
-		IndexGroup: indexGroup,
+		IndexGroup:  indexGroup,
 		IndexOffset: indexOffset,
-		ReadLength: readLength,
-		Items: items,
-		Data: data,
-		Parent: NewAdsData(),
+		ReadLength:  readLength,
+		Items:       items,
+		Data:        data,
+		Parent:      NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -104,13 +101,13 @@ func (m *AdsReadWriteRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (indexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (indexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (readLength)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Implicit Field (writeLength)
 	lengthInBits += 32
@@ -118,7 +115,7 @@ func (m *AdsReadWriteRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	// Array field
 	if len(m.Items) > 0 {
 		for i, element := range m.Items {
-			last := i == len(m.Items) -1
+			last := i == len(m.Items)-1
 			lengthInBits += element.LengthInBitsConditional(last)
 		}
 	}
@@ -131,30 +128,29 @@ func (m *AdsReadWriteRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsReadWriteRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadWriteRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (indexGroup)
-indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
+	indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
 		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
 	}
 
 	// Simple Field (indexOffset)
-indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
+	indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
 		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
 	}
 
 	// Simple Field (readLength)
-readLength, _readLengthErr := readBuffer.ReadUint32("readLength", 32)
+	readLength, _readLengthErr := readBuffer.ReadUint32("readLength", 32)
 	if _readLengthErr != nil {
 		return nil, errors.Wrap(_readLengthErr, "Error parsing 'readLength' field")
 	}
@@ -171,8 +167,8 @@ readLength, _readLengthErr := readBuffer.ReadUint32("readLength", 32)
 		return nil, pullErr
 	}
 	// Count array
-	items := make([]*AdsMultiRequestItem, utils.InlineIf(bool(bool(bool(bool(bool((indexGroup) == ((61568))))) || bool(bool(bool((indexGroup) == ((61569)))))) || bool(bool(bool((indexGroup) == ((61570)))))), func() interface{} {return uint16(indexOffset)}, func() interface{} {return uint16(uint16(0))}).(uint16))
-	for curItem := uint16(0); curItem < uint16(utils.InlineIf(bool(bool(bool(bool(bool((indexGroup) == ((61568))))) || bool(bool(bool((indexGroup) == ((61569)))))) || bool(bool(bool((indexGroup) == ((61570)))))), func() interface{} {return uint16(indexOffset)}, func() interface{} {return uint16(uint16(0))}).(uint16)); curItem++ {
+	items := make([]*AdsMultiRequestItem, utils.InlineIf(bool(bool(bool(bool(bool((indexGroup) == (61568)))) || bool(bool(bool((indexGroup) == (61569))))) || bool(bool(bool((indexGroup) == (61570))))), func() interface{} { return uint16(indexOffset) }, func() interface{} { return uint16(uint16(0)) }).(uint16))
+	for curItem := uint16(0); curItem < uint16(utils.InlineIf(bool(bool(bool(bool(bool((indexGroup) == (61568)))) || bool(bool(bool((indexGroup) == (61569))))) || bool(bool(bool((indexGroup) == (61570))))), func() interface{} { return uint16(indexOffset) }, func() interface{} { return uint16(uint16(0)) }).(uint16)); curItem++ {
 		_item, _err := AdsMultiRequestItemParse(readBuffer, indexGroup)
 		if _err != nil {
 			return nil, errors.Wrap(_err, "Error parsing 'items' field")
@@ -188,8 +184,8 @@ readLength, _readLengthErr := readBuffer.ReadUint32("readLength", 32)
 		return nil, pullErr
 	}
 	// Count array
-	data := make([]int8, uint16(writeLength) - uint16(uint16(uint16(uint16(len(items))) * uint16(uint16(12)))))
-	for curItem := uint16(0); curItem < uint16(uint16(writeLength) - uint16(uint16(uint16(uint16(len(items))) * uint16(uint16(12))))); curItem++ {
+	data := make([]int8, uint16(writeLength)-uint16(uint16(uint16(uint16(len(items)))*uint16(uint16(12)))))
+	for curItem := uint16(0); curItem < uint16(uint16(writeLength)-uint16(uint16(uint16(uint16(len(items)))*uint16(uint16(12))))); curItem++ {
 		_item, _err := readBuffer.ReadInt8("", 8)
 		if _err != nil {
 			return nil, errors.Wrap(_err, "Error parsing 'data' field")
@@ -206,12 +202,12 @@ readLength, _readLengthErr := readBuffer.ReadUint32("readLength", 32)
 
 	// Create a partially initialized instance
 	_child := &AdsReadWriteRequest{
-		IndexGroup: indexGroup,
+		IndexGroup:  indexGroup,
 		IndexOffset: indexOffset,
-		ReadLength: readLength,
-		Items: items,
-		Data: data,
-		Parent: &AdsData{},
+		ReadLength:  readLength,
+		Items:       items,
+		Data:        data,
+		Parent:      &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -223,65 +219,65 @@ func (m *AdsReadWriteRequest) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (indexGroup)
-	indexGroup := uint32(m.IndexGroup)
-	_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
-	if _indexGroupErr != nil {
-		return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
-	}
-
-	// Simple Field (indexOffset)
-	indexOffset := uint32(m.IndexOffset)
-	_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
-	if _indexOffsetErr != nil {
-		return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
-	}
+		// Simple Field (indexGroup)
+		indexGroup := uint32(m.IndexGroup)
+		_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
+		if _indexGroupErr != nil {
+			return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
+		}
 
-	// Simple Field (readLength)
-	readLength := uint32(m.ReadLength)
-	_readLengthErr := writeBuffer.WriteUint32("readLength", 32, (readLength))
-	if _readLengthErr != nil {
-		return errors.Wrap(_readLengthErr, "Error serializing 'readLength' field")
-	}
+		// Simple Field (indexOffset)
+		indexOffset := uint32(m.IndexOffset)
+		_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
+		if _indexOffsetErr != nil {
+			return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
+		}
 
-	// Implicit Field (writeLength) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
-	writeLength := uint32(uint32(uint32(uint32(uint32(len(m.Items))) * uint32(uint32(utils.InlineIf(bool(bool((m.IndexGroup) == ((61570)))), func() interface{} {return uint32(uint32(16))}, func() interface{} {return uint32(uint32(12))}).(uint32))))) + uint32(uint32(len(m.Data))))
-	_writeLengthErr := writeBuffer.WriteUint32("writeLength", 32, (writeLength))
-	if _writeLengthErr != nil {
-		return errors.Wrap(_writeLengthErr, "Error serializing 'writeLength' field")
-	}
+		// Simple Field (readLength)
+		readLength := uint32(m.ReadLength)
+		_readLengthErr := writeBuffer.WriteUint32("readLength", 32, (readLength))
+		if _readLengthErr != nil {
+			return errors.Wrap(_readLengthErr, "Error serializing 'readLength' field")
+		}
 
-	// Array Field (items)
-	if m.Items != nil {
-		if pushErr := writeBuffer.PushContext("items", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
+		// Implicit Field (writeLength) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
+		writeLength := uint32(uint32(uint32(uint32(uint32(len(m.Items)))*uint32(uint32(utils.InlineIf(bool(bool((m.IndexGroup) == (61570))), func() interface{} { return uint32(uint32(16)) }, func() interface{} { return uint32(uint32(12)) }).(uint32))))) + uint32(uint32(len(m.Data))))
+		_writeLengthErr := writeBuffer.WriteUint32("writeLength", 32, (writeLength))
+		if _writeLengthErr != nil {
+			return errors.Wrap(_writeLengthErr, "Error serializing 'writeLength' field")
 		}
-		for _, _element := range m.Items {
-			_elementErr := _element.Serialize(writeBuffer)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'items' field")
+
+		// Array Field (items)
+		if m.Items != nil {
+			if pushErr := writeBuffer.PushContext("items", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Items {
+				_elementErr := _element.Serialize(writeBuffer)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'items' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("items", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("items", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
-	// Array Field (data)
-	if m.Data != nil {
-		if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
-		}
-		for _, _element := range m.Data {
-			_elementErr := writeBuffer.WriteInt8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'data' field")
+		// Array Field (data)
+		if m.Data != nil {
+			if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Data {
+				_elementErr := writeBuffer.WriteInt8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'data' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
 		if popErr := writeBuffer.PopContext("AdsReadWriteRequest"); popErr != nil {
 			return popErr
@@ -299,6 +295,3 @@ func (m *AdsReadWriteRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go
index b3f1a94..2d620bb 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsReadWriteResponse.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsReadWriteResponse struct {
 	Result ReturnCode
-	Data []int8
+	Data   []int8
 	Parent *AdsData
 }
 
@@ -53,14 +51,13 @@ func (m *AdsReadWriteResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsReadWriteResponse) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsReadWriteResponse(result ReturnCode, data []int8) *AdsData {
 	child := &AdsReadWriteResponse{
 		Result: result,
-		Data: data,
+		Data:   data,
 		Parent: NewAdsData(),
 	}
 	child.Parent.Child = child
@@ -111,12 +108,11 @@ func (m *AdsReadWriteResponse) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsReadWriteResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsReadWriteResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsReadWriteResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsReadWriteResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -125,7 +121,7 @@ func AdsReadWriteResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error)
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -164,7 +160,7 @@ result, _resultErr := ReturnCodeParse(readBuffer)
 	// Create a partially initialized instance
 	_child := &AdsReadWriteResponse{
 		Result: result,
-		Data: data,
+		Data:   data,
 		Parent: &AdsData{},
 	}
 	_child.Parent.Child = _child
@@ -177,40 +173,40 @@ func (m *AdsReadWriteResponse) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
-
-	// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
-	length := uint32(uint32(len(m.Data)))
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
-
-	// Array Field (data)
-	if m.Data != nil {
-		if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
 			return pushErr
 		}
-		for _, _element := range m.Data {
-			_elementErr := writeBuffer.WriteInt8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'data' field")
-			}
-		}
-		if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
 			return popErr
 		}
-	}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
+
+		// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
+		length := uint32(uint32(len(m.Data)))
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
+		}
+
+		// Array Field (data)
+		if m.Data != nil {
+			if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Data {
+				_elementErr := writeBuffer.WriteInt8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'data' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
+			}
+		}
 
 		if popErr := writeBuffer.PopContext("AdsReadWriteResponse"); popErr != nil {
 			return popErr
@@ -228,6 +224,3 @@ func (m *AdsReadWriteResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go
index ac4ce82..b81f997 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsStampHeader.go
@@ -19,19 +19,17 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsStampHeader struct {
-	Timestamp uint64
-	Samples uint32
+	Timestamp              uint64
+	Samples                uint32
 	AdsNotificationSamples []*AdsNotificationSample
 }
 
@@ -71,15 +69,15 @@ func (m *AdsStampHeader) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (timestamp)
-	lengthInBits += 64;
+	lengthInBits += 64
 
 	// Simple field (samples)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Array field
 	if len(m.AdsNotificationSamples) > 0 {
 		for i, element := range m.AdsNotificationSamples {
-			last := i == len(m.AdsNotificationSamples) -1
+			last := i == len(m.AdsNotificationSamples)-1
 			lengthInBits += element.LengthInBitsConditional(last)
 		}
 	}
@@ -87,7 +85,6 @@ func (m *AdsStampHeader) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsStampHeader) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -98,13 +95,13 @@ func AdsStampHeaderParse(readBuffer utils.ReadBuffer) (*AdsStampHeader, error) {
 	}
 
 	// Simple Field (timestamp)
-timestamp, _timestampErr := readBuffer.ReadUint64("timestamp", 64)
+	timestamp, _timestampErr := readBuffer.ReadUint64("timestamp", 64)
 	if _timestampErr != nil {
 		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field")
 	}
 
 	// Simple Field (samples)
-samples, _samplesErr := readBuffer.ReadUint32("samples", 32)
+	samples, _samplesErr := readBuffer.ReadUint32("samples", 32)
 	if _samplesErr != nil {
 		return nil, errors.Wrap(_samplesErr, "Error parsing 'samples' field")
 	}
@@ -135,7 +132,7 @@ samples, _samplesErr := readBuffer.ReadUint32("samples", 32)
 }
 
 func (m *AdsStampHeader) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AdsStampHeader"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AdsStampHeader"); pushErr != nil {
 		return pushErr
 	}
 
@@ -183,6 +180,3 @@ func (m *AdsStampHeader) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go
index fa2a805..a871f38 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlRequest.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsWriteControlRequest struct {
-	AdsState uint16
+	AdsState    uint16
 	DeviceState uint16
-	Data []int8
-	Parent *AdsData
+	Data        []int8
+	Parent      *AdsData
 }
 
 // The corresponding interface
@@ -54,16 +52,15 @@ func (m *AdsWriteControlRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsWriteControlRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsWriteControlRequest(adsState uint16, deviceState uint16, data []int8) *AdsData {
 	child := &AdsWriteControlRequest{
-		AdsState: adsState,
+		AdsState:    adsState,
 		DeviceState: deviceState,
-		Data: data,
-		Parent: NewAdsData(),
+		Data:        data,
+		Parent:      NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -100,10 +97,10 @@ func (m *AdsWriteControlRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (adsState)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (deviceState)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Implicit Field (length)
 	lengthInBits += 32
@@ -116,24 +113,23 @@ func (m *AdsWriteControlRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsWriteControlRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsWriteControlRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsWriteControlRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsWriteControlRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (adsState)
-adsState, _adsStateErr := readBuffer.ReadUint16("adsState", 16)
+	adsState, _adsStateErr := readBuffer.ReadUint16("adsState", 16)
 	if _adsStateErr != nil {
 		return nil, errors.Wrap(_adsStateErr, "Error parsing 'adsState' field")
 	}
 
 	// Simple Field (deviceState)
-deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
+	deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
 	if _deviceStateErr != nil {
 		return nil, errors.Wrap(_deviceStateErr, "Error parsing 'deviceState' field")
 	}
@@ -168,10 +164,10 @@ deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
 
 	// Create a partially initialized instance
 	_child := &AdsWriteControlRequest{
-		AdsState: adsState,
+		AdsState:    adsState,
 		DeviceState: deviceState,
-		Data: data,
-		Parent: &AdsData{},
+		Data:        data,
+		Parent:      &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -183,42 +179,42 @@ func (m *AdsWriteControlRequest) Serialize(writeBuffer utils.WriteBuffer) error
 			return pushErr
 		}
 
-	// Simple Field (adsState)
-	adsState := uint16(m.AdsState)
-	_adsStateErr := writeBuffer.WriteUint16("adsState", 16, (adsState))
-	if _adsStateErr != nil {
-		return errors.Wrap(_adsStateErr, "Error serializing 'adsState' field")
-	}
-
-	// Simple Field (deviceState)
-	deviceState := uint16(m.DeviceState)
-	_deviceStateErr := writeBuffer.WriteUint16("deviceState", 16, (deviceState))
-	if _deviceStateErr != nil {
-		return errors.Wrap(_deviceStateErr, "Error serializing 'deviceState' field")
-	}
+		// Simple Field (adsState)
+		adsState := uint16(m.AdsState)
+		_adsStateErr := writeBuffer.WriteUint16("adsState", 16, (adsState))
+		if _adsStateErr != nil {
+			return errors.Wrap(_adsStateErr, "Error serializing 'adsState' field")
+		}
 
-	// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
-	length := uint32(uint32(len(m.Data)))
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
+		// Simple Field (deviceState)
+		deviceState := uint16(m.DeviceState)
+		_deviceStateErr := writeBuffer.WriteUint16("deviceState", 16, (deviceState))
+		if _deviceStateErr != nil {
+			return errors.Wrap(_deviceStateErr, "Error serializing 'deviceState' field")
+		}
 
-	// Array Field (data)
-	if m.Data != nil {
-		if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
+		// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
+		length := uint32(uint32(len(m.Data)))
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
 		}
-		for _, _element := range m.Data {
-			_elementErr := writeBuffer.WriteInt8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'data' field")
+
+		// Array Field (data)
+		if m.Data != nil {
+			if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Data {
+				_elementErr := writeBuffer.WriteInt8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'data' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
 		if popErr := writeBuffer.PopContext("AdsWriteControlRequest"); popErr != nil {
 			return popErr
@@ -236,6 +232,3 @@ func (m *AdsWriteControlRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlResponse.go
index 7ea5c46..f5b4972 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteControlResponse.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsWriteControlResponse struct {
@@ -52,7 +50,6 @@ func (m *AdsWriteControlResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsWriteControlResponse) InitializeParent(parent *AdsData) {
 }
 
@@ -101,12 +98,11 @@ func (m *AdsWriteControlResponse) LengthInBitsConditional(lastItem bool) uint16
 	return lengthInBits
 }
 
-
 func (m *AdsWriteControlResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsWriteControlResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsWriteControlResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsWriteControlResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -115,7 +111,7 @@ func AdsWriteControlResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, erro
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -142,17 +138,17 @@ func (m *AdsWriteControlResponse) Serialize(writeBuffer utils.WriteBuffer) error
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
+			return pushErr
+		}
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
+			return popErr
+		}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsWriteControlResponse"); popErr != nil {
 			return popErr
@@ -170,6 +166,3 @@ func (m *AdsWriteControlResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go
index 0269c2c..3273b5b 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteRequest.go
@@ -19,21 +19,19 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsWriteRequest struct {
-	IndexGroup uint32
+	IndexGroup  uint32
 	IndexOffset uint32
-	Data []int8
-	Parent *AdsData
+	Data        []int8
+	Parent      *AdsData
 }
 
 // The corresponding interface
@@ -54,16 +52,15 @@ func (m *AdsWriteRequest) Response() bool {
 	return false
 }
 
-
 func (m *AdsWriteRequest) InitializeParent(parent *AdsData) {
 }
 
 func NewAdsWriteRequest(indexGroup uint32, indexOffset uint32, data []int8) *AdsData {
 	child := &AdsWriteRequest{
-		IndexGroup: indexGroup,
+		IndexGroup:  indexGroup,
 		IndexOffset: indexOffset,
-		Data: data,
-		Parent: NewAdsData(),
+		Data:        data,
+		Parent:      NewAdsData(),
 	}
 	child.Parent.Child = child
 	return child.Parent
@@ -100,10 +97,10 @@ func (m *AdsWriteRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
 	// Simple field (indexGroup)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (indexOffset)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Implicit Field (length)
 	lengthInBits += 32
@@ -116,24 +113,23 @@ func (m *AdsWriteRequest) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsWriteRequest) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsWriteRequestParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsWriteRequestParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsWriteRequest"); pullErr != nil {
 		return nil, pullErr
 	}
 
 	// Simple Field (indexGroup)
-indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
+	indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
 		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
 	}
 
 	// Simple Field (indexOffset)
-indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
+	indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
 		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
 	}
@@ -168,10 +164,10 @@ indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 
 	// Create a partially initialized instance
 	_child := &AdsWriteRequest{
-		IndexGroup: indexGroup,
+		IndexGroup:  indexGroup,
 		IndexOffset: indexOffset,
-		Data: data,
-		Parent: &AdsData{},
+		Data:        data,
+		Parent:      &AdsData{},
 	}
 	_child.Parent.Child = _child
 	return _child.Parent, nil
@@ -183,42 +179,42 @@ func (m *AdsWriteRequest) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (indexGroup)
-	indexGroup := uint32(m.IndexGroup)
-	_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
-	if _indexGroupErr != nil {
-		return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
-	}
-
-	// Simple Field (indexOffset)
-	indexOffset := uint32(m.IndexOffset)
-	_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
-	if _indexOffsetErr != nil {
-		return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
-	}
+		// Simple Field (indexGroup)
+		indexGroup := uint32(m.IndexGroup)
+		_indexGroupErr := writeBuffer.WriteUint32("indexGroup", 32, (indexGroup))
+		if _indexGroupErr != nil {
+			return errors.Wrap(_indexGroupErr, "Error serializing 'indexGroup' field")
+		}
 
-	// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
-	length := uint32(uint32(len(m.Data)))
-	_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
-	if _lengthErr != nil {
-		return errors.Wrap(_lengthErr, "Error serializing 'length' field")
-	}
+		// Simple Field (indexOffset)
+		indexOffset := uint32(m.IndexOffset)
+		_indexOffsetErr := writeBuffer.WriteUint32("indexOffset", 32, (indexOffset))
+		if _indexOffsetErr != nil {
+			return errors.Wrap(_indexOffsetErr, "Error serializing 'indexOffset' field")
+		}
 
-	// Array Field (data)
-	if m.Data != nil {
-		if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
-			return pushErr
+		// Implicit Field (length) (Used for parsing, but it's value is not stored as it's implicitly given by the objects content)
+		length := uint32(uint32(len(m.Data)))
+		_lengthErr := writeBuffer.WriteUint32("length", 32, (length))
+		if _lengthErr != nil {
+			return errors.Wrap(_lengthErr, "Error serializing 'length' field")
 		}
-		for _, _element := range m.Data {
-			_elementErr := writeBuffer.WriteInt8("", 8, _element)
-			if _elementErr != nil {
-				return errors.Wrap(_elementErr, "Error serializing 'data' field")
+
+		// Array Field (data)
+		if m.Data != nil {
+			if pushErr := writeBuffer.PushContext("data", utils.WithRenderAsList(true)); pushErr != nil {
+				return pushErr
+			}
+			for _, _element := range m.Data {
+				_elementErr := writeBuffer.WriteInt8("", 8, _element)
+				if _elementErr != nil {
+					return errors.Wrap(_elementErr, "Error serializing 'data' field")
+				}
+			}
+			if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
+				return popErr
 			}
 		}
-		if popErr := writeBuffer.PopContext("data", utils.WithRenderAsList(true)); popErr != nil {
-			return popErr
-		}
-	}
 
 		if popErr := writeBuffer.PopContext("AdsWriteRequest"); popErr != nil {
 			return popErr
@@ -236,6 +232,3 @@ func (m *AdsWriteRequest) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteResponse.go b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteResponse.go
index 8d84e7d..d6b7894 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteResponse.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AdsWriteResponse.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AdsWriteResponse struct {
@@ -52,7 +50,6 @@ func (m *AdsWriteResponse) Response() bool {
 	return true
 }
 
-
 func (m *AdsWriteResponse) InitializeParent(parent *AdsData) {
 }
 
@@ -101,12 +98,11 @@ func (m *AdsWriteResponse) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AdsWriteResponse) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
 
-func AdsWriteResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
+func AdsWriteResponseParse(readBuffer utils.ReadBuffer) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("AdsWriteResponse"); pullErr != nil {
 		return nil, pullErr
 	}
@@ -115,7 +111,7 @@ func AdsWriteResponseParse(readBuffer utils.ReadBuffer, ) (*AdsData, error) {
 	if pullErr := readBuffer.PullContext("result"); pullErr != nil {
 		return nil, pullErr
 	}
-result, _resultErr := ReturnCodeParse(readBuffer)
+	result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
 		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
 	}
@@ -142,17 +138,17 @@ func (m *AdsWriteResponse) Serialize(writeBuffer utils.WriteBuffer) error {
 			return pushErr
 		}
 
-	// Simple Field (result)
-	if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
-		return pushErr
-	}
-	_resultErr := m.Result.Serialize(writeBuffer)
-	if popErr := writeBuffer.PopContext("result"); popErr != nil {
-		return popErr
-	}
-	if _resultErr != nil {
-		return errors.Wrap(_resultErr, "Error serializing 'result' field")
-	}
+		// Simple Field (result)
+		if pushErr := writeBuffer.PushContext("result"); pushErr != nil {
+			return pushErr
+		}
+		_resultErr := m.Result.Serialize(writeBuffer)
+		if popErr := writeBuffer.PopContext("result"); popErr != nil {
+			return popErr
+		}
+		if _resultErr != nil {
+			return errors.Wrap(_resultErr, "Error serializing 'result' field")
+		}
 
 		if popErr := writeBuffer.PopContext("AdsWriteResponse"); popErr != nil {
 			return popErr
@@ -170,6 +166,3 @@ func (m *AdsWriteResponse) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AmsNetId.go b/plc4go/internal/plc4go/ads/readwrite/model/AmsNetId.go
index dfd0cfc..28d0a0b 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AmsNetId.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AmsNetId.go
@@ -19,14 +19,12 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AmsNetId struct {
@@ -74,27 +72,26 @@ func (m *AmsNetId) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (octet1)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (octet2)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (octet3)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (octet4)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (octet5)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (octet6)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	return lengthInBits
 }
 
-
 func (m *AmsNetId) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -105,37 +102,37 @@ func AmsNetIdParse(readBuffer utils.ReadBuffer) (*AmsNetId, error) {
 	}
 
 	// Simple Field (octet1)
-octet1, _octet1Err := readBuffer.ReadUint8("octet1", 8)
+	octet1, _octet1Err := readBuffer.ReadUint8("octet1", 8)
 	if _octet1Err != nil {
 		return nil, errors.Wrap(_octet1Err, "Error parsing 'octet1' field")
 	}
 
 	// Simple Field (octet2)
-octet2, _octet2Err := readBuffer.ReadUint8("octet2", 8)
+	octet2, _octet2Err := readBuffer.ReadUint8("octet2", 8)
 	if _octet2Err != nil {
 		return nil, errors.Wrap(_octet2Err, "Error parsing 'octet2' field")
 	}
 
 	// Simple Field (octet3)
-octet3, _octet3Err := readBuffer.ReadUint8("octet3", 8)
+	octet3, _octet3Err := readBuffer.ReadUint8("octet3", 8)
 	if _octet3Err != nil {
 		return nil, errors.Wrap(_octet3Err, "Error parsing 'octet3' field")
 	}
 
 	// Simple Field (octet4)
-octet4, _octet4Err := readBuffer.ReadUint8("octet4", 8)
+	octet4, _octet4Err := readBuffer.ReadUint8("octet4", 8)
 	if _octet4Err != nil {
 		return nil, errors.Wrap(_octet4Err, "Error parsing 'octet4' field")
 	}
 
 	// Simple Field (octet5)
-octet5, _octet5Err := readBuffer.ReadUint8("octet5", 8)
+	octet5, _octet5Err := readBuffer.ReadUint8("octet5", 8)
 	if _octet5Err != nil {
 		return nil, errors.Wrap(_octet5Err, "Error parsing 'octet5' field")
 	}
 
 	// Simple Field (octet6)
-octet6, _octet6Err := readBuffer.ReadUint8("octet6", 8)
+	octet6, _octet6Err := readBuffer.ReadUint8("octet6", 8)
 	if _octet6Err != nil {
 		return nil, errors.Wrap(_octet6Err, "Error parsing 'octet6' field")
 	}
@@ -149,7 +146,7 @@ octet6, _octet6Err := readBuffer.ReadUint8("octet6", 8)
 }
 
 func (m *AmsNetId) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AmsNetId"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AmsNetId"); pushErr != nil {
 		return pushErr
 	}
 
@@ -209,6 +206,3 @@ func (m *AmsNetId) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AmsPacket.go b/plc4go/internal/plc4go/ads/readwrite/model/AmsPacket.go
index 0b2d624..5f26363 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AmsPacket.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AmsPacket.go
@@ -19,26 +19,24 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AmsPacket struct {
 	TargetAmsNetId *AmsNetId
-	TargetAmsPort uint16
+	TargetAmsPort  uint16
 	SourceAmsNetId *AmsNetId
-	SourceAmsPort uint16
-	CommandId CommandId
-	State *State
-	ErrorCode uint32
-	InvokeId uint32
-	Data *AdsData
+	SourceAmsPort  uint16
+	CommandId      CommandId
+	State          *State
+	ErrorCode      uint32
+	InvokeId       uint32
+	Data           *AdsData
 }
 
 // The corresponding interface
@@ -80,13 +78,13 @@ func (m *AmsPacket) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits += m.TargetAmsNetId.LengthInBits()
 
 	// Simple field (targetAmsPort)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (sourceAmsNetId)
 	lengthInBits += m.SourceAmsNetId.LengthInBits()
 
 	// Simple field (sourceAmsPort)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (commandId)
 	lengthInBits += 16
@@ -98,10 +96,10 @@ func (m *AmsPacket) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits += 32
 
 	// Simple field (errorCode)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (invokeId)
-	lengthInBits += 32;
+	lengthInBits += 32
 
 	// Simple field (data)
 	lengthInBits += m.Data.LengthInBits()
@@ -109,7 +107,6 @@ func (m *AmsPacket) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AmsPacket) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -123,7 +120,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (*AmsPacket, error) {
 	if pullErr := readBuffer.PullContext("targetAmsNetId"); pullErr != nil {
 		return nil, pullErr
 	}
-targetAmsNetId, _targetAmsNetIdErr := AmsNetIdParse(readBuffer)
+	targetAmsNetId, _targetAmsNetIdErr := AmsNetIdParse(readBuffer)
 	if _targetAmsNetIdErr != nil {
 		return nil, errors.Wrap(_targetAmsNetIdErr, "Error parsing 'targetAmsNetId' field")
 	}
@@ -132,7 +129,7 @@ targetAmsNetId, _targetAmsNetIdErr := AmsNetIdParse(readBuffer)
 	}
 
 	// Simple Field (targetAmsPort)
-targetAmsPort, _targetAmsPortErr := readBuffer.ReadUint16("targetAmsPort", 16)
+	targetAmsPort, _targetAmsPortErr := readBuffer.ReadUint16("targetAmsPort", 16)
 	if _targetAmsPortErr != nil {
 		return nil, errors.Wrap(_targetAmsPortErr, "Error parsing 'targetAmsPort' field")
 	}
@@ -141,7 +138,7 @@ targetAmsPort, _targetAmsPortErr := readBuffer.ReadUint16("targetAmsPort", 16)
 	if pullErr := readBuffer.PullContext("sourceAmsNetId"); pullErr != nil {
 		return nil, pullErr
 	}
-sourceAmsNetId, _sourceAmsNetIdErr := AmsNetIdParse(readBuffer)
+	sourceAmsNetId, _sourceAmsNetIdErr := AmsNetIdParse(readBuffer)
 	if _sourceAmsNetIdErr != nil {
 		return nil, errors.Wrap(_sourceAmsNetIdErr, "Error parsing 'sourceAmsNetId' field")
 	}
@@ -150,7 +147,7 @@ sourceAmsNetId, _sourceAmsNetIdErr := AmsNetIdParse(readBuffer)
 	}
 
 	// Simple Field (sourceAmsPort)
-sourceAmsPort, _sourceAmsPortErr := readBuffer.ReadUint16("sourceAmsPort", 16)
+	sourceAmsPort, _sourceAmsPortErr := readBuffer.ReadUint16("sourceAmsPort", 16)
 	if _sourceAmsPortErr != nil {
 		return nil, errors.Wrap(_sourceAmsPortErr, "Error parsing 'sourceAmsPort' field")
 	}
@@ -159,7 +156,7 @@ sourceAmsPort, _sourceAmsPortErr := readBuffer.ReadUint16("sourceAmsPort", 16)
 	if pullErr := readBuffer.PullContext("commandId"); pullErr != nil {
 		return nil, pullErr
 	}
-commandId, _commandIdErr := CommandIdParse(readBuffer)
+	commandId, _commandIdErr := CommandIdParse(readBuffer)
 	if _commandIdErr != nil {
 		return nil, errors.Wrap(_commandIdErr, "Error parsing 'commandId' field")
 	}
@@ -171,7 +168,7 @@ commandId, _commandIdErr := CommandIdParse(readBuffer)
 	if pullErr := readBuffer.PullContext("state"); pullErr != nil {
 		return nil, pullErr
 	}
-state, _stateErr := StateParse(readBuffer)
+	state, _stateErr := StateParse(readBuffer)
 	if _stateErr != nil {
 		return nil, errors.Wrap(_stateErr, "Error parsing 'state' field")
 	}
@@ -187,13 +184,13 @@ state, _stateErr := StateParse(readBuffer)
 	}
 
 	// Simple Field (errorCode)
-errorCode, _errorCodeErr := readBuffer.ReadUint32("errorCode", 32)
+	errorCode, _errorCodeErr := readBuffer.ReadUint32("errorCode", 32)
 	if _errorCodeErr != nil {
 		return nil, errors.Wrap(_errorCodeErr, "Error parsing 'errorCode' field")
 	}
 
 	// Simple Field (invokeId)
-invokeId, _invokeIdErr := readBuffer.ReadUint32("invokeId", 32)
+	invokeId, _invokeIdErr := readBuffer.ReadUint32("invokeId", 32)
 	if _invokeIdErr != nil {
 		return nil, errors.Wrap(_invokeIdErr, "Error parsing 'invokeId' field")
 	}
@@ -202,7 +199,7 @@ invokeId, _invokeIdErr := readBuffer.ReadUint32("invokeId", 32)
 	if pullErr := readBuffer.PullContext("data"); pullErr != nil {
 		return nil, pullErr
 	}
-data, _dataErr := AdsDataParse(readBuffer , commandId , state.Response )
+	data, _dataErr := AdsDataParse(readBuffer, commandId, state.Response)
 	if _dataErr != nil {
 		return nil, errors.Wrap(_dataErr, "Error parsing 'data' field")
 	}
@@ -219,7 +216,7 @@ data, _dataErr := AdsDataParse(readBuffer , commandId , state.Response )
 }
 
 func (m *AmsPacket) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AmsPacket"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AmsPacket"); pushErr != nil {
 		return pushErr
 	}
 
@@ -332,6 +329,3 @@ func (m *AmsPacket) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialAcknowledgeFrame.go b/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
index dc603a3..956c48d 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AmsSerialAcknowledgeFrame struct {
-	MagicCookie uint16
+	MagicCookie        uint16
 	TransmitterAddress int8
-	ReceiverAddress int8
-	FragmentNumber int8
-	Length int8
-	Crc uint16
+	ReceiverAddress    int8
+	FragmentNumber     int8
+	Length             int8
+	Crc                uint16
 }
 
 // The corresponding interface
@@ -74,27 +72,26 @@ func (m *AmsSerialAcknowledgeFrame) LengthInBitsConditional(lastItem bool) uint1
 	lengthInBits := uint16(0)
 
 	// Simple field (magicCookie)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (transmitterAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (receiverAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (fragmentNumber)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (length)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (crc)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	return lengthInBits
 }
 
-
 func (m *AmsSerialAcknowledgeFrame) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -105,37 +102,37 @@ func AmsSerialAcknowledgeFrameParse(readBuffer utils.ReadBuffer) (*AmsSerialAckn
 	}
 
 	// Simple Field (magicCookie)
-magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
+	magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
 	if _magicCookieErr != nil {
 		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field")
 	}
 
 	// Simple Field (transmitterAddress)
-transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
+	transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
 	if _transmitterAddressErr != nil {
 		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field")
 	}
 
 	// Simple Field (receiverAddress)
-receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
+	receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
 	if _receiverAddressErr != nil {
 		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field")
 	}
 
 	// Simple Field (fragmentNumber)
-fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
+	fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
 	if _fragmentNumberErr != nil {
 		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field")
 	}
 
 	// Simple Field (length)
-length, _lengthErr := readBuffer.ReadInt8("length", 8)
+	length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if _lengthErr != nil {
 		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
 	}
 
 	// Simple Field (crc)
-crc, _crcErr := readBuffer.ReadUint16("crc", 16)
+	crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 	if _crcErr != nil {
 		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field")
 	}
@@ -149,7 +146,7 @@ crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 }
 
 func (m *AmsSerialAcknowledgeFrame) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AmsSerialAcknowledgeFrame"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AmsSerialAcknowledgeFrame"); pushErr != nil {
 		return pushErr
 	}
 
@@ -209,6 +206,3 @@ func (m *AmsSerialAcknowledgeFrame) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialFrame.go b/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialFrame.go
index d898a32..64715c7 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialFrame.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialFrame.go
@@ -19,24 +19,22 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AmsSerialFrame struct {
-	MagicCookie uint16
+	MagicCookie        uint16
 	TransmitterAddress int8
-	ReceiverAddress int8
-	FragmentNumber int8
-	Length int8
-	Userdata *AmsPacket
-	Crc uint16
+	ReceiverAddress    int8
+	FragmentNumber     int8
+	Length             int8
+	Userdata           *AmsPacket
+	Crc                uint16
 }
 
 // The corresponding interface
@@ -75,30 +73,29 @@ func (m *AmsSerialFrame) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (magicCookie)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (transmitterAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (receiverAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (fragmentNumber)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (length)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (userdata)
 	lengthInBits += m.Userdata.LengthInBits()
 
 	// Simple field (crc)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	return lengthInBits
 }
 
-
 func (m *AmsSerialFrame) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -109,31 +106,31 @@ func AmsSerialFrameParse(readBuffer utils.ReadBuffer) (*AmsSerialFrame, error) {
 	}
 
 	// Simple Field (magicCookie)
-magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
+	magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
 	if _magicCookieErr != nil {
 		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field")
 	}
 
 	// Simple Field (transmitterAddress)
-transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
+	transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
 	if _transmitterAddressErr != nil {
 		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field")
 	}
 
 	// Simple Field (receiverAddress)
-receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
+	receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
 	if _receiverAddressErr != nil {
 		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field")
 	}
 
 	// Simple Field (fragmentNumber)
-fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
+	fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
 	if _fragmentNumberErr != nil {
 		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field")
 	}
 
 	// Simple Field (length)
-length, _lengthErr := readBuffer.ReadInt8("length", 8)
+	length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if _lengthErr != nil {
 		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
 	}
@@ -142,7 +139,7 @@ length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if pullErr := readBuffer.PullContext("userdata"); pullErr != nil {
 		return nil, pullErr
 	}
-userdata, _userdataErr := AmsPacketParse(readBuffer)
+	userdata, _userdataErr := AmsPacketParse(readBuffer)
 	if _userdataErr != nil {
 		return nil, errors.Wrap(_userdataErr, "Error parsing 'userdata' field")
 	}
@@ -151,7 +148,7 @@ userdata, _userdataErr := AmsPacketParse(readBuffer)
 	}
 
 	// Simple Field (crc)
-crc, _crcErr := readBuffer.ReadUint16("crc", 16)
+	crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 	if _crcErr != nil {
 		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field")
 	}
@@ -165,7 +162,7 @@ crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 }
 
 func (m *AmsSerialFrame) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AmsSerialFrame"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AmsSerialFrame"); pushErr != nil {
 		return pushErr
 	}
 
@@ -237,6 +234,3 @@ func (m *AmsSerialFrame) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialResetFrame.go b/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialResetFrame.go
index 48a0ada..c3966b5 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialResetFrame.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AmsSerialResetFrame.go
@@ -19,23 +19,21 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AmsSerialResetFrame struct {
-	MagicCookie uint16
+	MagicCookie        uint16
 	TransmitterAddress int8
-	ReceiverAddress int8
-	FragmentNumber int8
-	Length int8
-	Crc uint16
+	ReceiverAddress    int8
+	FragmentNumber     int8
+	Length             int8
+	Crc                uint16
 }
 
 // The corresponding interface
@@ -74,27 +72,26 @@ func (m *AmsSerialResetFrame) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (magicCookie)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	// Simple field (transmitterAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (receiverAddress)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (fragmentNumber)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (length)
-	lengthInBits += 8;
+	lengthInBits += 8
 
 	// Simple field (crc)
-	lengthInBits += 16;
+	lengthInBits += 16
 
 	return lengthInBits
 }
 
-
 func (m *AmsSerialResetFrame) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -105,37 +102,37 @@ func AmsSerialResetFrameParse(readBuffer utils.ReadBuffer) (*AmsSerialResetFrame
 	}
 
 	// Simple Field (magicCookie)
-magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
+	magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
 	if _magicCookieErr != nil {
 		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field")
 	}
 
 	// Simple Field (transmitterAddress)
-transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
+	transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
 	if _transmitterAddressErr != nil {
 		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field")
 	}
 
 	// Simple Field (receiverAddress)
-receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
+	receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
 	if _receiverAddressErr != nil {
 		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field")
 	}
 
 	// Simple Field (fragmentNumber)
-fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
+	fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
 	if _fragmentNumberErr != nil {
 		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field")
 	}
 
 	// Simple Field (length)
-length, _lengthErr := readBuffer.ReadInt8("length", 8)
+	length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if _lengthErr != nil {
 		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
 	}
 
 	// Simple Field (crc)
-crc, _crcErr := readBuffer.ReadUint16("crc", 16)
+	crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 	if _crcErr != nil {
 		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field")
 	}
@@ -149,7 +146,7 @@ crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 }
 
 func (m *AmsSerialResetFrame) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AmsSerialResetFrame"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AmsSerialResetFrame"); pushErr != nil {
 		return pushErr
 	}
 
@@ -209,6 +206,3 @@ func (m *AmsSerialResetFrame) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/AmsTCPPacket.go b/plc4go/internal/plc4go/ads/readwrite/model/AmsTCPPacket.go
index f3d4a6a..c9accc0 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/AmsTCPPacket.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/AmsTCPPacket.go
@@ -19,15 +19,13 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type AmsTCPPacket struct {
@@ -81,7 +79,6 @@ func (m *AmsTCPPacket) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *AmsTCPPacket) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -100,7 +97,7 @@ func AmsTCPPacketParse(readBuffer utils.ReadBuffer) (*AmsTCPPacket, error) {
 		if reserved != uint16(0x0000) {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": uint16(0x0000),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
@@ -116,7 +113,7 @@ func AmsTCPPacketParse(readBuffer utils.ReadBuffer) (*AmsTCPPacket, error) {
 	if pullErr := readBuffer.PullContext("userdata"); pullErr != nil {
 		return nil, pullErr
 	}
-userdata, _userdataErr := AmsPacketParse(readBuffer)
+	userdata, _userdataErr := AmsPacketParse(readBuffer)
 	if _userdataErr != nil {
 		return nil, errors.Wrap(_userdataErr, "Error parsing 'userdata' field")
 	}
@@ -133,7 +130,7 @@ userdata, _userdataErr := AmsPacketParse(readBuffer)
 }
 
 func (m *AmsTCPPacket) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("AmsTCPPacket"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("AmsTCPPacket"); pushErr != nil {
 		return pushErr
 	}
 
@@ -178,6 +175,3 @@ func (m *AmsTCPPacket) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/CommandId.go b/plc4go/internal/plc4go/ads/readwrite/model/CommandId.go
index 151d9b4..d662ca1 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/CommandId.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/CommandId.go
@@ -32,24 +32,24 @@ type ICommandId interface {
 	Serialize(writeBuffer utils.WriteBuffer) error
 }
 
-const(
-	CommandId_INVALID CommandId = 0x0000
-	CommandId_ADS_READ_DEVICE_INFO CommandId = 0x0001
-	CommandId_ADS_READ CommandId = 0x0002
-	CommandId_ADS_WRITE CommandId = 0x0003
-	CommandId_ADS_READ_STATE CommandId = 0x0004
-	CommandId_ADS_WRITE_CONTROL CommandId = 0x0005
-	CommandId_ADS_ADD_DEVICE_NOTIFICATION CommandId = 0x0006
+const (
+	CommandId_INVALID                        CommandId = 0x0000
+	CommandId_ADS_READ_DEVICE_INFO           CommandId = 0x0001
+	CommandId_ADS_READ                       CommandId = 0x0002
+	CommandId_ADS_WRITE                      CommandId = 0x0003
+	CommandId_ADS_READ_STATE                 CommandId = 0x0004
+	CommandId_ADS_WRITE_CONTROL              CommandId = 0x0005
+	CommandId_ADS_ADD_DEVICE_NOTIFICATION    CommandId = 0x0006
 	CommandId_ADS_DELETE_DEVICE_NOTIFICATION CommandId = 0x0007
-	CommandId_ADS_DEVICE_NOTIFICATION CommandId = 0x0008
-	CommandId_ADS_READ_WRITE CommandId = 0x0009
+	CommandId_ADS_DEVICE_NOTIFICATION        CommandId = 0x0008
+	CommandId_ADS_READ_WRITE                 CommandId = 0x0009
 )
 
 var CommandIdValues []CommandId
 
 func init() {
 	_ = errors.New
-	CommandIdValues = []CommandId {
+	CommandIdValues = []CommandId{
 		CommandId_INVALID,
 		CommandId_ADS_READ_DEVICE_INFO,
 		CommandId_ADS_READ,
@@ -65,26 +65,26 @@ func init() {
 
 func CommandIdByValue(value uint16) CommandId {
 	switch value {
-		case 0x0000:
-			return CommandId_INVALID
-		case 0x0001:
-			return CommandId_ADS_READ_DEVICE_INFO
-		case 0x0002:
-			return CommandId_ADS_READ
-		case 0x0003:
-			return CommandId_ADS_WRITE
-		case 0x0004:
-			return CommandId_ADS_READ_STATE
-		case 0x0005:
-			return CommandId_ADS_WRITE_CONTROL
-		case 0x0006:
-			return CommandId_ADS_ADD_DEVICE_NOTIFICATION
-		case 0x0007:
-			return CommandId_ADS_DELETE_DEVICE_NOTIFICATION
-		case 0x0008:
-			return CommandId_ADS_DEVICE_NOTIFICATION
-		case 0x0009:
-			return CommandId_ADS_READ_WRITE
+	case 0x0000:
+		return CommandId_INVALID
+	case 0x0001:
+		return CommandId_ADS_READ_DEVICE_INFO
+	case 0x0002:
+		return CommandId_ADS_READ
+	case 0x0003:
+		return CommandId_ADS_WRITE
+	case 0x0004:
+		return CommandId_ADS_READ_STATE
+	case 0x0005:
+		return CommandId_ADS_WRITE_CONTROL
+	case 0x0006:
+		return CommandId_ADS_ADD_DEVICE_NOTIFICATION
+	case 0x0007:
+		return CommandId_ADS_DELETE_DEVICE_NOTIFICATION
+	case 0x0008:
+		return CommandId_ADS_DEVICE_NOTIFICATION
+	case 0x0009:
+		return CommandId_ADS_READ_WRITE
 	}
 	return 0
 }
@@ -174,4 +174,3 @@ func (e CommandId) name() string {
 func (e CommandId) String() string {
 	return e.name()
 }
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/DataItem.go b/plc4go/internal/plc4go/ads/readwrite/model/DataItem.go
index 3b83da5..6943796 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/DataItem.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/DataItem.go
@@ -19,366 +19,363 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/values"
+	api "github.com/apache/plc4x/plc4go/pkg/plc4go/values"
 	"github.com/pkg/errors"
 	"time"
-	api "github.com/apache/plc4x/plc4go/pkg/plc4go/values"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-	
+// Code generated by code-generation. DO NOT EDIT.
+
 func DataItemParse(readBuffer utils.ReadBuffer, dataFormatName string, stringLength int32) (api.PlcValue, error) {
 	readBuffer.PullContext("DataItem")
 	switch {
-        case dataFormatName == "IEC61131_BOOL" : // BOOL
-
-			// Reserved Field (Just skip the bytes)
-			if _, _err := readBuffer.ReadUint8("reserved", 7); _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing reserved field")
-			}
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadBit("value")
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcBOOL(value), nil
-        case dataFormatName == "IEC61131_BYTE" : // BitString
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint8("value", 8)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcBitString(value), nil
-        case dataFormatName == "IEC61131_WORD" : // BitString
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint16("value", 16)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcBitString(value), nil
-        case dataFormatName == "IEC61131_DWORD" : // BitString
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint32("value", 32)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcBitString(value), nil
-        case dataFormatName == "IEC61131_SINT" : // SINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadInt8("value", 8)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcSINT(value), nil
-        case dataFormatName == "IEC61131_USINT" : // USINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint8("value", 8)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcUSINT(value), nil
-        case dataFormatName == "IEC61131_INT" : // INT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadInt16("value", 16)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcINT(value), nil
-        case dataFormatName == "IEC61131_UINT" : // UINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint16("value", 16)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcUINT(value), nil
-        case dataFormatName == "IEC61131_DINT" : // DINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadInt32("value", 32)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcDINT(value), nil
-        case dataFormatName == "IEC61131_UDINT" : // UDINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint32("value", 32)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcUDINT(value), nil
-        case dataFormatName == "IEC61131_LINT" : // LINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadInt64("value", 64)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcLINT(value), nil
-        case dataFormatName == "IEC61131_ULINT" : // ULINT
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint64("value", 64)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcULINT(value), nil
-        case dataFormatName == "IEC61131_REAL" : // REAL
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadFloat32("value", true, 8, 23)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcREAL(value), nil
-        case dataFormatName == "IEC61131_LREAL" : // LREAL
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadFloat64("value", true, 11, 52)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcLREAL(value), nil
-        case dataFormatName == "IEC61131_CHAR" : // STRING
-        case dataFormatName == "IEC61131_WCHAR" : // STRING
-        case dataFormatName == "IEC61131_STRING" : // STRING
-
-			// Manual Field (value)
-			value, _valueErr := StaticHelperParseAmsString(readBuffer, stringLength, "TF-")
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcSTRING(value), nil
-        case dataFormatName == "IEC61131_WSTRING" : // STRING
-
-			// Manual Field (value)
-			value, _valueErr := StaticHelperParseAmsString(readBuffer, stringLength, "TF-")
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcSTRING(value), nil
-        case dataFormatName == "IEC61131_TIME" : // TIME
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint32("value", 32)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcTIME(value), nil
-        case dataFormatName == "IEC61131_LTIME" : // LTIME
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint64("value", 64)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcLTIME(value), nil
-        case dataFormatName == "IEC61131_DATE" : // DATE
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint32("value", 32)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcDATE(value), nil
-        case dataFormatName == "IEC61131_TIME_OF_DAY" : // TIME_OF_DAY
-
-			// Simple Field (value)
-			value, _valueErr := readBuffer.ReadUint32("value", 32)
-			if _valueErr != nil {
-				return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
-			}
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcTIME_OF_DAY(value), nil
-        case dataFormatName == "IEC61131_DATE_AND_TIME" : // DATE_AND_TIME
-
-			// Simple Field (secondsSinceEpoch)
-			secondsSinceEpoch, _secondsSinceEpochErr := readBuffer.ReadUint32("secondsSinceEpoch", 32)
-			if _secondsSinceEpochErr != nil {
-				return nil, errors.Wrap(_secondsSinceEpochErr, "Error parsing 'secondsSinceEpoch' field")
-			}
-            value := time.Unix(int64(secondsSinceEpoch), 0)
-			readBuffer.CloseContext("DataItem")
-			return values.NewPlcDATE_AND_TIME(value), nil
+	case dataFormatName == "IEC61131_BOOL": // BOOL
+
+		// Reserved Field (Just skip the bytes)
+		if _, _err := readBuffer.ReadUint8("reserved", 7); _err != nil {
+			return nil, errors.Wrap(_err, "Error parsing reserved field")
+		}
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadBit("value")
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcBOOL(value), nil
+	case dataFormatName == "IEC61131_BYTE": // BitString
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint8("value", 8)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcBitString(value), nil
+	case dataFormatName == "IEC61131_WORD": // BitString
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint16("value", 16)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcBitString(value), nil
+	case dataFormatName == "IEC61131_DWORD": // BitString
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint32("value", 32)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcBitString(value), nil
+	case dataFormatName == "IEC61131_SINT": // SINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadInt8("value", 8)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcSINT(value), nil
+	case dataFormatName == "IEC61131_USINT": // USINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint8("value", 8)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcUSINT(value), nil
+	case dataFormatName == "IEC61131_INT": // INT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadInt16("value", 16)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcINT(value), nil
+	case dataFormatName == "IEC61131_UINT": // UINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint16("value", 16)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcUINT(value), nil
+	case dataFormatName == "IEC61131_DINT": // DINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadInt32("value", 32)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcDINT(value), nil
+	case dataFormatName == "IEC61131_UDINT": // UDINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint32("value", 32)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcUDINT(value), nil
+	case dataFormatName == "IEC61131_LINT": // LINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadInt64("value", 64)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcLINT(value), nil
+	case dataFormatName == "IEC61131_ULINT": // ULINT
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint64("value", 64)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcULINT(value), nil
+	case dataFormatName == "IEC61131_REAL": // REAL
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadFloat32("value", true, 8, 23)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcREAL(value), nil
+	case dataFormatName == "IEC61131_LREAL": // LREAL
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadFloat64("value", true, 11, 52)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcLREAL(value), nil
+	case dataFormatName == "IEC61131_CHAR": // STRING
+	case dataFormatName == "IEC61131_WCHAR": // STRING
+	case dataFormatName == "IEC61131_STRING": // STRING
+
+		// Manual Field (value)
+		value, _valueErr := StaticHelperParseAmsString(readBuffer, stringLength, "TF-")
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcSTRING(value), nil
+	case dataFormatName == "IEC61131_WSTRING": // STRING
+
+		// Manual Field (value)
+		value, _valueErr := StaticHelperParseAmsString(readBuffer, stringLength, "TF-")
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcSTRING(value), nil
+	case dataFormatName == "IEC61131_TIME": // TIME
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint32("value", 32)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcTIME(value), nil
+	case dataFormatName == "IEC61131_LTIME": // LTIME
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint64("value", 64)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcLTIME(value), nil
+	case dataFormatName == "IEC61131_DATE": // DATE
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint32("value", 32)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcDATE(value), nil
+	case dataFormatName == "IEC61131_TIME_OF_DAY": // TIME_OF_DAY
+
+		// Simple Field (value)
+		value, _valueErr := readBuffer.ReadUint32("value", 32)
+		if _valueErr != nil {
+			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		}
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcTIME_OF_DAY(value), nil
+	case dataFormatName == "IEC61131_DATE_AND_TIME": // DATE_AND_TIME
+
+		// Simple Field (secondsSinceEpoch)
+		secondsSinceEpoch, _secondsSinceEpochErr := readBuffer.ReadUint32("secondsSinceEpoch", 32)
+		if _secondsSinceEpochErr != nil {
+			return nil, errors.Wrap(_secondsSinceEpochErr, "Error parsing 'secondsSinceEpoch' field")
+		}
+		value := time.Unix(int64(secondsSinceEpoch), 0)
+		readBuffer.CloseContext("DataItem")
+		return values.NewPlcDATE_AND_TIME(value), nil
 	}
-    // TODO: add more info which type it is actually
+	// TODO: add more info which type it is actually
 	return nil, errors.New("unsupported type")
 }
 
 func DataItemSerialize(writeBuffer utils.WriteBuffer, value api.PlcValue, dataFormatName string, stringLength int32) error {
 	writeBuffer.PushContext("DataItem")
 	switch {
-        case dataFormatName == "IEC61131_BOOL" : // BOOL
-
-			// Reserved Field (Just skip the bytes)
-			if _err := writeBuffer.WriteUint8("reserved", 7, uint8(0x00)); _err != nil {
-				return errors.Wrap(_err, "Error serializing reserved field")
-			}
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteBit("value", value.GetBool()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_BYTE" : // BitString
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint8("value", 8, value.GetUint8()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_WORD" : // BitString
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint16("value", 16, value.GetUint16()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_DWORD" : // BitString
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_SINT" : // SINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteInt8("value", 8, value.GetInt8()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_USINT" : // USINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint8("value", 8, value.GetUint8()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_INT" : // INT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteInt16("value", 16, value.GetInt16()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_UINT" : // UINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint16("value", 16, value.GetUint16()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_DINT" : // DINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteInt32("value", 32, value.GetInt32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_UDINT" : // UDINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_LINT" : // LINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteInt64("value", 64, value.GetInt64()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_ULINT" : // ULINT
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint64("value", 64, value.GetUint64()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_REAL" : // REAL
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteFloat32("value", 32, value.GetFloat32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_LREAL" : // LREAL
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteFloat64("value", 64, value.GetFloat64()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_CHAR" : // STRING
-        case dataFormatName == "IEC61131_WCHAR" : // STRING
-        case dataFormatName == "IEC61131_STRING" : // STRING
-
-			// Manual Field (value)
-			_valueErr := StaticHelperSerializeAmsString(writeBuffer, value, stringLength, "TF-")
-			if _valueErr != nil {
-				return errors.Wrap(_valueErr, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_WSTRING" : // STRING
-
-			// Manual Field (value)
-			_valueErr := StaticHelperSerializeAmsString(writeBuffer, value, stringLength, "TF-")
-			if _valueErr != nil {
-				return errors.Wrap(_valueErr, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_TIME" : // TIME
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_LTIME" : // LTIME
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint64("value", 64, value.GetUint64()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_DATE" : // DATE
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_TIME_OF_DAY" : // TIME_OF_DAY
-
-			// Simple Field (value)
-			if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'value' field")
-			}
-        case dataFormatName == "IEC61131_DATE_AND_TIME" : // DATE_AND_TIME
-
-			// Simple Field (secondsSinceEpoch)
-			if _err := writeBuffer.WriteUint32("secondsSinceEpoch", 32, value.GetUint32()); _err != nil {
-				return errors.Wrap(_err, "Error serializing 'secondsSinceEpoch' field")
-			}
-		default:
-            // TODO: add more info which type it is actually
-			return errors.New("unsupported type")
+	case dataFormatName == "IEC61131_BOOL": // BOOL
+
+		// Reserved Field (Just skip the bytes)
+		if _err := writeBuffer.WriteUint8("reserved", 7, uint8(0x00)); _err != nil {
+			return errors.Wrap(_err, "Error serializing reserved field")
+		}
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteBit("value", value.GetBool()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_BYTE": // BitString
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint8("value", 8, value.GetUint8()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_WORD": // BitString
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint16("value", 16, value.GetUint16()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_DWORD": // BitString
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_SINT": // SINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteInt8("value", 8, value.GetInt8()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_USINT": // USINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint8("value", 8, value.GetUint8()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_INT": // INT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteInt16("value", 16, value.GetInt16()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_UINT": // UINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint16("value", 16, value.GetUint16()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_DINT": // DINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteInt32("value", 32, value.GetInt32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_UDINT": // UDINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_LINT": // LINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteInt64("value", 64, value.GetInt64()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_ULINT": // ULINT
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint64("value", 64, value.GetUint64()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_REAL": // REAL
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteFloat32("value", 32, value.GetFloat32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_LREAL": // LREAL
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteFloat64("value", 64, value.GetFloat64()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_CHAR": // STRING
+	case dataFormatName == "IEC61131_WCHAR": // STRING
+	case dataFormatName == "IEC61131_STRING": // STRING
+
+		// Manual Field (value)
+		_valueErr := StaticHelperSerializeAmsString(writeBuffer, value, stringLength, "TF-")
+		if _valueErr != nil {
+			return errors.Wrap(_valueErr, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_WSTRING": // STRING
+
+		// Manual Field (value)
+		_valueErr := StaticHelperSerializeAmsString(writeBuffer, value, stringLength, "TF-")
+		if _valueErr != nil {
+			return errors.Wrap(_valueErr, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_TIME": // TIME
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_LTIME": // LTIME
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint64("value", 64, value.GetUint64()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_DATE": // DATE
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_TIME_OF_DAY": // TIME_OF_DAY
+
+		// Simple Field (value)
+		if _err := writeBuffer.WriteUint32("value", 32, value.GetUint32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'value' field")
+		}
+	case dataFormatName == "IEC61131_DATE_AND_TIME": // DATE_AND_TIME
+
+		// Simple Field (secondsSinceEpoch)
+		if _err := writeBuffer.WriteUint32("secondsSinceEpoch", 32, value.GetUint32()); _err != nil {
+			return errors.Wrap(_err, "Error serializing 'secondsSinceEpoch' field")
+		}
+	default:
+		// TODO: add more info which type it is actually
+		return errors.New("unsupported type")
 	}
 	writeBuffer.PopContext("DataItem")
 	return nil
 }
-
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/ReservedIndexGroups.go b/plc4go/internal/plc4go/ads/readwrite/model/ReservedIndexGroups.go
index aa8b9e2..fe14e4b 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/ReservedIndexGroups.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/ReservedIndexGroups.go
@@ -32,44 +32,44 @@ type IReservedIndexGroups interface {
 	Serialize(writeBuffer utils.WriteBuffer) error
 }
 
-const(
-	ReservedIndexGroups_ADSIGRP_SYMTAB ReservedIndexGroups = 0x0000F000
-	ReservedIndexGroups_ADSIGRP_SYMNAME ReservedIndexGroups = 0x0000F001
-	ReservedIndexGroups_ADSIGRP_SYMVAL ReservedIndexGroups = 0x0000F002
-	ReservedIndexGroups_ADSIGRP_SYM_HNDBYNAME ReservedIndexGroups = 0x0000F003
-	ReservedIndexGroups_ADSIGRP_SYM_VALBYNAME ReservedIndexGroups = 0x0000F004
-	ReservedIndexGroups_ADSIGRP_SYM_VALBYHND ReservedIndexGroups = 0x0000F005
-	ReservedIndexGroups_ADSIGRP_SYM_RELEASEHND ReservedIndexGroups = 0x0000F006
-	ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAME ReservedIndexGroups = 0x0000F007
-	ReservedIndexGroups_ADSIGRP_SYM_VERSION ReservedIndexGroups = 0x0000F008
-	ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAMEEX ReservedIndexGroups = 0x0000F009
-	ReservedIndexGroups_ADSIGRP_SYM_DOWNLOAD ReservedIndexGroups = 0x0000F00A
-	ReservedIndexGroups_ADSIGRP_SYM_UPLOAD ReservedIndexGroups = 0x0000F00B
-	ReservedIndexGroups_ADSIGRP_SYM_UPLOADINFO ReservedIndexGroups = 0x0000F00C
-	ReservedIndexGroups_ADSIGRP_SYMNOTE ReservedIndexGroups = 0x0000F010
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIB ReservedIndexGroups = 0x0000F020
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIX ReservedIndexGroups = 0x0000F021
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RISIZE ReservedIndexGroups = 0x0000F025
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOB ReservedIndexGroups = 0x0000F030
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOX ReservedIndexGroups = 0x0000F031
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOSIZE ReservedIndexGroups = 0x0000F035
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARI ReservedIndexGroups = 0x0000F040
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARO ReservedIndexGroups = 0x0000F050
-	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIOB ReservedIndexGroups = 0x0000F060
-	ReservedIndexGroups_ADSIGRP_MULTIPLE_READ ReservedIndexGroups = 0x0000F080
-	ReservedIndexGroups_ADSIGRP_MULTIPLE_WRITE ReservedIndexGroups = 0x0000F081
-	ReservedIndexGroups_ADSIGRP_MULTIPLE_READ_WRITE ReservedIndexGroups = 0x0000F082
+const (
+	ReservedIndexGroups_ADSIGRP_SYMTAB                  ReservedIndexGroups = 0x0000F000
+	ReservedIndexGroups_ADSIGRP_SYMNAME                 ReservedIndexGroups = 0x0000F001
+	ReservedIndexGroups_ADSIGRP_SYMVAL                  ReservedIndexGroups = 0x0000F002
+	ReservedIndexGroups_ADSIGRP_SYM_HNDBYNAME           ReservedIndexGroups = 0x0000F003
+	ReservedIndexGroups_ADSIGRP_SYM_VALBYNAME           ReservedIndexGroups = 0x0000F004
+	ReservedIndexGroups_ADSIGRP_SYM_VALBYHND            ReservedIndexGroups = 0x0000F005
+	ReservedIndexGroups_ADSIGRP_SYM_RELEASEHND          ReservedIndexGroups = 0x0000F006
+	ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAME          ReservedIndexGroups = 0x0000F007
+	ReservedIndexGroups_ADSIGRP_SYM_VERSION             ReservedIndexGroups = 0x0000F008
+	ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAMEEX        ReservedIndexGroups = 0x0000F009
+	ReservedIndexGroups_ADSIGRP_SYM_DOWNLOAD            ReservedIndexGroups = 0x0000F00A
+	ReservedIndexGroups_ADSIGRP_SYM_UPLOAD              ReservedIndexGroups = 0x0000F00B
+	ReservedIndexGroups_ADSIGRP_SYM_UPLOADINFO          ReservedIndexGroups = 0x0000F00C
+	ReservedIndexGroups_ADSIGRP_SYMNOTE                 ReservedIndexGroups = 0x0000F010
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIB            ReservedIndexGroups = 0x0000F020
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIX            ReservedIndexGroups = 0x0000F021
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RISIZE          ReservedIndexGroups = 0x0000F025
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOB            ReservedIndexGroups = 0x0000F030
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOX            ReservedIndexGroups = 0x0000F031
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOSIZE         ReservedIndexGroups = 0x0000F035
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARI          ReservedIndexGroups = 0x0000F040
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARO          ReservedIndexGroups = 0x0000F050
+	ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIOB           ReservedIndexGroups = 0x0000F060
+	ReservedIndexGroups_ADSIGRP_MULTIPLE_READ           ReservedIndexGroups = 0x0000F080
+	ReservedIndexGroups_ADSIGRP_MULTIPLE_WRITE          ReservedIndexGroups = 0x0000F081
+	ReservedIndexGroups_ADSIGRP_MULTIPLE_READ_WRITE     ReservedIndexGroups = 0x0000F082
 	ReservedIndexGroups_ADSIGRP_MULTIPLE_RELEASE_HANDLE ReservedIndexGroups = 0x0000F083
-	ReservedIndexGroups_ADSIGRP_DEVICE_DATA ReservedIndexGroups = 0x0000F100
-	ReservedIndexGroups_ADSIOFFS_DEVDATA_ADSSTATE ReservedIndexGroups = 0x00000000
-	ReservedIndexGroups_ADSIOFFS_DEVDATA_DEVSTATE ReservedIndexGroups = 0x00000002
+	ReservedIndexGroups_ADSIGRP_DEVICE_DATA             ReservedIndexGroups = 0x0000F100
+	ReservedIndexGroups_ADSIOFFS_DEVDATA_ADSSTATE       ReservedIndexGroups = 0x00000000
+	ReservedIndexGroups_ADSIOFFS_DEVDATA_DEVSTATE       ReservedIndexGroups = 0x00000002
 )
 
 var ReservedIndexGroupsValues []ReservedIndexGroups
 
 func init() {
 	_ = errors.New
-	ReservedIndexGroupsValues = []ReservedIndexGroups {
+	ReservedIndexGroupsValues = []ReservedIndexGroups{
 		ReservedIndexGroups_ADSIGRP_SYMTAB,
 		ReservedIndexGroups_ADSIGRP_SYMNAME,
 		ReservedIndexGroups_ADSIGRP_SYMVAL,
@@ -105,66 +105,66 @@ func init() {
 
 func ReservedIndexGroupsByValue(value uint32) ReservedIndexGroups {
 	switch value {
-		case 0x00000000:
-			return ReservedIndexGroups_ADSIOFFS_DEVDATA_ADSSTATE
-		case 0x00000002:
-			return ReservedIndexGroups_ADSIOFFS_DEVDATA_DEVSTATE
-		case 0x0000F000:
-			return ReservedIndexGroups_ADSIGRP_SYMTAB
-		case 0x0000F001:
-			return ReservedIndexGroups_ADSIGRP_SYMNAME
-		case 0x0000F002:
-			return ReservedIndexGroups_ADSIGRP_SYMVAL
-		case 0x0000F003:
-			return ReservedIndexGroups_ADSIGRP_SYM_HNDBYNAME
-		case 0x0000F004:
-			return ReservedIndexGroups_ADSIGRP_SYM_VALBYNAME
-		case 0x0000F005:
-			return ReservedIndexGroups_ADSIGRP_SYM_VALBYHND
-		case 0x0000F006:
-			return ReservedIndexGroups_ADSIGRP_SYM_RELEASEHND
-		case 0x0000F007:
-			return ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAME
-		case 0x0000F008:
-			return ReservedIndexGroups_ADSIGRP_SYM_VERSION
-		case 0x0000F009:
-			return ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAMEEX
-		case 0x0000F00A:
-			return ReservedIndexGroups_ADSIGRP_SYM_DOWNLOAD
-		case 0x0000F00B:
-			return ReservedIndexGroups_ADSIGRP_SYM_UPLOAD
-		case 0x0000F00C:
-			return ReservedIndexGroups_ADSIGRP_SYM_UPLOADINFO
-		case 0x0000F010:
-			return ReservedIndexGroups_ADSIGRP_SYMNOTE
-		case 0x0000F020:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIB
-		case 0x0000F021:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIX
-		case 0x0000F025:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RISIZE
-		case 0x0000F030:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOB
-		case 0x0000F031:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOX
-		case 0x0000F035:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOSIZE
-		case 0x0000F040:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARI
-		case 0x0000F050:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARO
-		case 0x0000F060:
-			return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIOB
-		case 0x0000F080:
-			return ReservedIndexGroups_ADSIGRP_MULTIPLE_READ
-		case 0x0000F081:
-			return ReservedIndexGroups_ADSIGRP_MULTIPLE_WRITE
-		case 0x0000F082:
-			return ReservedIndexGroups_ADSIGRP_MULTIPLE_READ_WRITE
-		case 0x0000F083:
-			return ReservedIndexGroups_ADSIGRP_MULTIPLE_RELEASE_HANDLE
-		case 0x0000F100:
-			return ReservedIndexGroups_ADSIGRP_DEVICE_DATA
+	case 0x00000000:
+		return ReservedIndexGroups_ADSIOFFS_DEVDATA_ADSSTATE
+	case 0x00000002:
+		return ReservedIndexGroups_ADSIOFFS_DEVDATA_DEVSTATE
+	case 0x0000F000:
+		return ReservedIndexGroups_ADSIGRP_SYMTAB
+	case 0x0000F001:
+		return ReservedIndexGroups_ADSIGRP_SYMNAME
+	case 0x0000F002:
+		return ReservedIndexGroups_ADSIGRP_SYMVAL
+	case 0x0000F003:
+		return ReservedIndexGroups_ADSIGRP_SYM_HNDBYNAME
+	case 0x0000F004:
+		return ReservedIndexGroups_ADSIGRP_SYM_VALBYNAME
+	case 0x0000F005:
+		return ReservedIndexGroups_ADSIGRP_SYM_VALBYHND
+	case 0x0000F006:
+		return ReservedIndexGroups_ADSIGRP_SYM_RELEASEHND
+	case 0x0000F007:
+		return ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAME
+	case 0x0000F008:
+		return ReservedIndexGroups_ADSIGRP_SYM_VERSION
+	case 0x0000F009:
+		return ReservedIndexGroups_ADSIGRP_SYM_INFOBYNAMEEX
+	case 0x0000F00A:
+		return ReservedIndexGroups_ADSIGRP_SYM_DOWNLOAD
+	case 0x0000F00B:
+		return ReservedIndexGroups_ADSIGRP_SYM_UPLOAD
+	case 0x0000F00C:
+		return ReservedIndexGroups_ADSIGRP_SYM_UPLOADINFO
+	case 0x0000F010:
+		return ReservedIndexGroups_ADSIGRP_SYMNOTE
+	case 0x0000F020:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIB
+	case 0x0000F021:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIX
+	case 0x0000F025:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RISIZE
+	case 0x0000F030:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOB
+	case 0x0000F031:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOX
+	case 0x0000F035:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWOSIZE
+	case 0x0000F040:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARI
+	case 0x0000F050:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_CLEARO
+	case 0x0000F060:
+		return ReservedIndexGroups_ADSIGRP_IOIMAGE_RWIOB
+	case 0x0000F080:
+		return ReservedIndexGroups_ADSIGRP_MULTIPLE_READ
+	case 0x0000F081:
+		return ReservedIndexGroups_ADSIGRP_MULTIPLE_WRITE
+	case 0x0000F082:
+		return ReservedIndexGroups_ADSIGRP_MULTIPLE_READ_WRITE
+	case 0x0000F083:
+		return ReservedIndexGroups_ADSIGRP_MULTIPLE_RELEASE_HANDLE
+	case 0x0000F100:
+		return ReservedIndexGroups_ADSIGRP_DEVICE_DATA
 	}
 	return 0
 }
@@ -334,4 +334,3 @@ func (e ReservedIndexGroups) name() string {
 func (e ReservedIndexGroups) String() string {
 	return e.name()
 }
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/ReturnCode.go b/plc4go/internal/plc4go/ads/readwrite/model/ReturnCode.go
index a034def..8015bab 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/ReturnCode.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/ReturnCode.go
@@ -32,136 +32,136 @@ type IReturnCode interface {
 	Serialize(writeBuffer utils.WriteBuffer) error
 }
 
-const(
-	ReturnCode_OK ReturnCode = 0x00
-	ReturnCode_INTERNAL_ERROR ReturnCode = 0x01
-	ReturnCode_NO_REALTIME ReturnCode = 0x02
-	ReturnCode_SAVE_ERROR ReturnCode = 0x03
-	ReturnCode_MAILBOX_FULL ReturnCode = 0x04
-	ReturnCode_WRONG_HMSG ReturnCode = 0x05
-	ReturnCode_TARGET_PORT_NOT_FOUND ReturnCode = 0x06
-	ReturnCode_TARGET_HOST_NOT_FOUND ReturnCode = 0x07
-	ReturnCode_UNKNOWN_COMMAND_ID ReturnCode = 0x08
-	ReturnCode_UNKNOWN_TASK_ID ReturnCode = 0x09
-	ReturnCode_NO_IO ReturnCode = 0x0A
-	ReturnCode_UNKNOWN_ADS_COMMAND ReturnCode = 0x0B
-	ReturnCode_WIN32_ERROR ReturnCode = 0x0C
-	ReturnCode_PORT_NOT_CONNECTED ReturnCode = 0x0D
-	ReturnCode_INVALID_ADS_LENGTH ReturnCode = 0x0E
-	ReturnCode_INVALID_AMS_NET_ID ReturnCode = 0x0F
-	ReturnCode_LOW_INSTALLATION_LEVEL ReturnCode = 0x10
-	ReturnCode_NO_DEBUGGING_AVAILABLE ReturnCode = 0x11
-	ReturnCode_PORT_DEACTIVATED ReturnCode = 0x12
-	ReturnCode_PORT_ALREADY_CONNECTED ReturnCode = 0x13
-	ReturnCode_ADS_SYNC_WIN32_ERROR ReturnCode = 0x14
-	ReturnCode_ADS_SYNC_TIMEOUT ReturnCode = 0x15
-	ReturnCode_ADS_SYNC_AMS_ERROR ReturnCode = 0x16
-	ReturnCode_NO_INDEX_MAP_FOR_ADS_AVAILABLE ReturnCode = 0x17
-	ReturnCode_INVALID_ADS_PORT ReturnCode = 0x18
-	ReturnCode_NO_MEMORY ReturnCode = 0x19
-	ReturnCode_TCP_SENDING_ERROR ReturnCode = 0x1A
-	ReturnCode_HOST_NOT_REACHABLE ReturnCode = 0x1B
-	ReturnCode_INVALID_AMS_FRAGMENT ReturnCode = 0x1C
-	ReturnCode_ROUTERERR_NOLOCKEDMEMORY ReturnCode = 0x500
-	ReturnCode_ROUTERERR_RESIZEMEMORY ReturnCode = 0x501
-	ReturnCode_ROUTERERR_MAILBOXFULL ReturnCode = 0x502
-	ReturnCode_ROUTERERR_DEBUGBOXFULL ReturnCode = 0x503
-	ReturnCode_ROUTERERR_UNKNOWNPORTTYPE ReturnCode = 0x504
-	ReturnCode_ROUTERERR_NOTINITIALIZED ReturnCode = 0x505
-	ReturnCode_ROUTERERR_PORTALREADYINUSE ReturnCode = 0x506
-	ReturnCode_ROUTERERR_NOTREGISTERED ReturnCode = 0x507
-	ReturnCode_ROUTERERR_NOMOREQUEUES ReturnCode = 0x508
-	ReturnCode_ROUTERERR_INVALIDPORT ReturnCode = 0x509
-	ReturnCode_ROUTERERR_NOTACTIVATED ReturnCode = 0x50A
-	ReturnCode_ADSERR_DEVICE_ERROR ReturnCode = 0x700
-	ReturnCode_ADSERR_DEVICE_SRVNOTSUPP ReturnCode = 0x701
-	ReturnCode_ADSERR_DEVICE_INVALIDGRP ReturnCode = 0x702
-	ReturnCode_ADSERR_DEVICE_INVALIDOFFSET ReturnCode = 0x703
-	ReturnCode_ADSERR_DEVICE_INVALIDACCESS ReturnCode = 0x704
-	ReturnCode_ADSERR_DEVICE_INVALIDSIZE ReturnCode = 0x705
-	ReturnCode_ADSERR_DEVICE_INVALIDDATA ReturnCode = 0x706
-	ReturnCode_ADSERR_DEVICE_NOTREADY ReturnCode = 0x707
-	ReturnCode_ADSERR_DEVICE_BUSY ReturnCode = 0x708
-	ReturnCode_ADSERR_DEVICE_INVALIDCONTEXT ReturnCode = 0x709
-	ReturnCode_ADSERR_DEVICE_NOMEMORY ReturnCode = 0x70A
-	ReturnCode_ADSERR_DEVICE_INVALIDPARM ReturnCode = 0x70B
-	ReturnCode_ADSERR_DEVICE_NOTFOUND ReturnCode = 0x70C
-	ReturnCode_ADSERR_DEVICE_SYNTAX ReturnCode = 0x70D
-	ReturnCode_ADSERR_DEVICE_INCOMPATIBLE ReturnCode = 0x70E
-	ReturnCode_ADSERR_DEVICE_EXISTS ReturnCode = 0x70F
-	ReturnCode_ADSERR_DEVICE_SYMBOLNOTFOUND ReturnCode = 0x710
+const (
+	ReturnCode_OK                                 ReturnCode = 0x00
+	ReturnCode_INTERNAL_ERROR                     ReturnCode = 0x01
+	ReturnCode_NO_REALTIME                        ReturnCode = 0x02
+	ReturnCode_SAVE_ERROR                         ReturnCode = 0x03
+	ReturnCode_MAILBOX_FULL                       ReturnCode = 0x04
+	ReturnCode_WRONG_HMSG                         ReturnCode = 0x05
+	ReturnCode_TARGET_PORT_NOT_FOUND              ReturnCode = 0x06
+	ReturnCode_TARGET_HOST_NOT_FOUND              ReturnCode = 0x07
+	ReturnCode_UNKNOWN_COMMAND_ID                 ReturnCode = 0x08
+	ReturnCode_UNKNOWN_TASK_ID                    ReturnCode = 0x09
+	ReturnCode_NO_IO                              ReturnCode = 0x0A
+	ReturnCode_UNKNOWN_ADS_COMMAND                ReturnCode = 0x0B
+	ReturnCode_WIN32_ERROR                        ReturnCode = 0x0C
+	ReturnCode_PORT_NOT_CONNECTED                 ReturnCode = 0x0D
+	ReturnCode_INVALID_ADS_LENGTH                 ReturnCode = 0x0E
+	ReturnCode_INVALID_AMS_NET_ID                 ReturnCode = 0x0F
+	ReturnCode_LOW_INSTALLATION_LEVEL             ReturnCode = 0x10
+	ReturnCode_NO_DEBUGGING_AVAILABLE             ReturnCode = 0x11
+	ReturnCode_PORT_DEACTIVATED                   ReturnCode = 0x12
+	ReturnCode_PORT_ALREADY_CONNECTED             ReturnCode = 0x13
+	ReturnCode_ADS_SYNC_WIN32_ERROR               ReturnCode = 0x14
+	ReturnCode_ADS_SYNC_TIMEOUT                   ReturnCode = 0x15
+	ReturnCode_ADS_SYNC_AMS_ERROR                 ReturnCode = 0x16
+	ReturnCode_NO_INDEX_MAP_FOR_ADS_AVAILABLE     ReturnCode = 0x17
+	ReturnCode_INVALID_ADS_PORT                   ReturnCode = 0x18
+	ReturnCode_NO_MEMORY                          ReturnCode = 0x19
+	ReturnCode_TCP_SENDING_ERROR                  ReturnCode = 0x1A
+	ReturnCode_HOST_NOT_REACHABLE                 ReturnCode = 0x1B
+	ReturnCode_INVALID_AMS_FRAGMENT               ReturnCode = 0x1C
+	ReturnCode_ROUTERERR_NOLOCKEDMEMORY           ReturnCode = 0x500
+	ReturnCode_ROUTERERR_RESIZEMEMORY             ReturnCode = 0x501
+	ReturnCode_ROUTERERR_MAILBOXFULL              ReturnCode = 0x502
+	ReturnCode_ROUTERERR_DEBUGBOXFULL             ReturnCode = 0x503
+	ReturnCode_ROUTERERR_UNKNOWNPORTTYPE          ReturnCode = 0x504
+	ReturnCode_ROUTERERR_NOTINITIALIZED           ReturnCode = 0x505
+	ReturnCode_ROUTERERR_PORTALREADYINUSE         ReturnCode = 0x506
+	ReturnCode_ROUTERERR_NOTREGISTERED            ReturnCode = 0x507
+	ReturnCode_ROUTERERR_NOMOREQUEUES             ReturnCode = 0x508
+	ReturnCode_ROUTERERR_INVALIDPORT              ReturnCode = 0x509
+	ReturnCode_ROUTERERR_NOTACTIVATED             ReturnCode = 0x50A
+	ReturnCode_ADSERR_DEVICE_ERROR                ReturnCode = 0x700
+	ReturnCode_ADSERR_DEVICE_SRVNOTSUPP           ReturnCode = 0x701
+	ReturnCode_ADSERR_DEVICE_INVALIDGRP           ReturnCode = 0x702
+	ReturnCode_ADSERR_DEVICE_INVALIDOFFSET        ReturnCode = 0x703
+	ReturnCode_ADSERR_DEVICE_INVALIDACCESS        ReturnCode = 0x704
+	ReturnCode_ADSERR_DEVICE_INVALIDSIZE          ReturnCode = 0x705
+	ReturnCode_ADSERR_DEVICE_INVALIDDATA          ReturnCode = 0x706
+	ReturnCode_ADSERR_DEVICE_NOTREADY             ReturnCode = 0x707
+	ReturnCode_ADSERR_DEVICE_BUSY                 ReturnCode = 0x708
+	ReturnCode_ADSERR_DEVICE_INVALIDCONTEXT       ReturnCode = 0x709
+	ReturnCode_ADSERR_DEVICE_NOMEMORY             ReturnCode = 0x70A
+	ReturnCode_ADSERR_DEVICE_INVALIDPARM          ReturnCode = 0x70B
+	ReturnCode_ADSERR_DEVICE_NOTFOUND             ReturnCode = 0x70C
+	ReturnCode_ADSERR_DEVICE_SYNTAX               ReturnCode = 0x70D
+	ReturnCode_ADSERR_DEVICE_INCOMPATIBLE         ReturnCode = 0x70E
+	ReturnCode_ADSERR_DEVICE_EXISTS               ReturnCode = 0x70F
+	ReturnCode_ADSERR_DEVICE_SYMBOLNOTFOUND       ReturnCode = 0x710
 	ReturnCode_ADSERR_DEVICE_SYMBOLVERSIONINVALID ReturnCode = 0x711
-	ReturnCode_ADSERR_DEVICE_INVALIDSTATE ReturnCode = 0x712
-	ReturnCode_ADSERR_DEVICE_TRANSMODENOTSUPP ReturnCode = 0x713
-	ReturnCode_ADSERR_DEVICE_NOTIFYHNDINVALID ReturnCode = 0x714
-	ReturnCode_ADSERR_DEVICE_CLIENTUNKNOWN ReturnCode = 0x715
-	ReturnCode_ADSERR_DEVICE_NOMOREHDLS ReturnCode = 0x716
-	ReturnCode_ADSERR_DEVICE_INVALIDWATCHSIZE ReturnCode = 0x717
-	ReturnCode_ADSERR_DEVICE_NOTINIT ReturnCode = 0x718
-	ReturnCode_ADSERR_DEVICE_TIMEOUT ReturnCode = 0x719
-	ReturnCode_ADSERR_DEVICE_NOINTERFACE ReturnCode = 0x71A
-	ReturnCode_ADSERR_DEVICE_INVALIDINTERFACE ReturnCode = 0x71B
-	ReturnCode_ADSERR_DEVICE_INVALIDCLSID ReturnCode = 0x71C
-	ReturnCode_ADSERR_DEVICE_INVALIDOBJID ReturnCode = 0x71D
-	ReturnCode_ADSERR_DEVICE_PENDING ReturnCode = 0x71E
-	ReturnCode_ADSERR_DEVICE_ABORTED ReturnCode = 0x71F
-	ReturnCode_ADSERR_DEVICE_WARNING ReturnCode = 0x720
-	ReturnCode_ADSERR_DEVICE_INVALIDARRAYIDX ReturnCode = 0x721
-	ReturnCode_ADSERR_DEVICE_SYMBOLNOTACTIVE ReturnCode = 0x722
-	ReturnCode_ADSERR_DEVICE_ACCESSDENIED ReturnCode = 0x723
-	ReturnCode_ADSERR_DEVICE_LICENSENOTFOUND ReturnCode = 0x724
-	ReturnCode_ADSERR_DEVICE_LICENSEEXPIRED ReturnCode = 0x725
-	ReturnCode_ADSERR_DEVICE_LICENSEEXCEEDED ReturnCode = 0x726
-	ReturnCode_ADSERR_DEVICE_LICENSEINVALID ReturnCode = 0x727
-	ReturnCode_ADSERR_DEVICE_LICENSESYSTEMID ReturnCode = 0x728
-	ReturnCode_ADSERR_DEVICE_LICENSENOTIMELIMIT ReturnCode = 0x729
-	ReturnCode_ADSERR_DEVICE_LICENSEFUTUREISSUE ReturnCode = 0x72A
-	ReturnCode_ADSERR_DEVICE_LICENSETIMETOLONG ReturnCode = 0x72B
-	ReturnCode_ADSERR_DEVICE_EXCEPTION ReturnCode = 0x72c
-	ReturnCode_ADSERR_DEVICE_LICENSEDUPLICATED ReturnCode = 0x72D
-	ReturnCode_ADSERR_DEVICE_SIGNATUREINVALID ReturnCode = 0x72E
-	ReturnCode_ADSERR_DEVICE_CERTIFICATEINVALID ReturnCode = 0x72F
-	ReturnCode_ADSERR_CLIENT_ERROR ReturnCode = 0x740
-	ReturnCode_ADSERR_CLIENT_INVALIDPARM ReturnCode = 0x741
-	ReturnCode_ADSERR_CLIENT_LISTEMPTY ReturnCode = 0x742
-	ReturnCode_ADSERR_CLIENT_VARUSED ReturnCode = 0x743
-	ReturnCode_ADSERR_CLIENT_DUPLINVOKEID ReturnCode = 0x744
-	ReturnCode_ADSERR_CLIENT_SYNCTIMEOUT ReturnCode = 0x745
-	ReturnCode_ADSERR_CLIENT_W32ERROR ReturnCode = 0x746
-	ReturnCode_ADSERR_CLIENT_TIMEOUTINVALID ReturnCode = 0x747
-	ReturnCode_ADSERR_CLIENT_PORTNOTOPEN ReturnCode = 0x748
-	ReturnCode_ADSERR_CLIENT_NOAMSADDR ReturnCode = 0x750
-	ReturnCode_ADSERR_CLIENT_SYNCINTERNAL ReturnCode = 0x751
-	ReturnCode_ADSERR_CLIENT_ADDHASH ReturnCode = 0x752
-	ReturnCode_ADSERR_CLIENT_REMOVEHASH ReturnCode = 0x753
-	ReturnCode_ADSERR_CLIENT_NOMORESYM ReturnCode = 0x754
-	ReturnCode_ADSERR_CLIENT_SYNCRESINVALID ReturnCode = 0x755
-	ReturnCode_RTERR_INTERNAL ReturnCode = 0x1000
-	ReturnCode_RTERR_BADTIMERPERIODS ReturnCode = 0x1001
-	ReturnCode_RTERR_INVALIDTASKPTR ReturnCode = 0x1002
-	ReturnCode_RTERR_INVALIDSTACKPTR ReturnCode = 0x1003
-	ReturnCode_RTERR_PRIOEXISTS ReturnCode = 0x1004
-	ReturnCode_RTERR_NOMORETCB ReturnCode = 0x1005
-	ReturnCode_RTERR_NOMORESEMAS ReturnCode = 0x1006
-	ReturnCode_RTERR_NOMOREQUEUES ReturnCode = 0x1007
-	ReturnCode_RTERR_EXTIRQALREADYDEF ReturnCode = 0x100D
-	ReturnCode_RTERR_EXTIRQNOTDEF ReturnCode = 0x100E
-	ReturnCode_RTERR_EXTIRQINSTALLFAILED ReturnCode = 0x100F
-	ReturnCode_RTERR_IRQLNOTLESSOREQUAL ReturnCode = 0x1010
-	ReturnCode_RTERR_VMXNOTSUPPORTED ReturnCode = 0x1017
-	ReturnCode_RTERR_VMXDISABLED ReturnCode = 0x1018
-	ReturnCode_RTERR_VMXCONTROLSMISSING ReturnCode = 0x1019
-	ReturnCode_RTERR_VMXENABLEFAILS ReturnCode = 0x101A
-	ReturnCode_WSAETIMEDOUT ReturnCode = 0x274C
-	ReturnCode_WSAECONNREFUSED ReturnCode = 0x274D
-	ReturnCode_WSAEHOSTUNREACH ReturnCode = 0x2751
+	ReturnCode_ADSERR_DEVICE_INVALIDSTATE         ReturnCode = 0x712
+	ReturnCode_ADSERR_DEVICE_TRANSMODENOTSUPP     ReturnCode = 0x713
+	ReturnCode_ADSERR_DEVICE_NOTIFYHNDINVALID     ReturnCode = 0x714
+	ReturnCode_ADSERR_DEVICE_CLIENTUNKNOWN        ReturnCode = 0x715
+	ReturnCode_ADSERR_DEVICE_NOMOREHDLS           ReturnCode = 0x716
+	ReturnCode_ADSERR_DEVICE_INVALIDWATCHSIZE     ReturnCode = 0x717
+	ReturnCode_ADSERR_DEVICE_NOTINIT              ReturnCode = 0x718
+	ReturnCode_ADSERR_DEVICE_TIMEOUT              ReturnCode = 0x719
+	ReturnCode_ADSERR_DEVICE_NOINTERFACE          ReturnCode = 0x71A
+	ReturnCode_ADSERR_DEVICE_INVALIDINTERFACE     ReturnCode = 0x71B
+	ReturnCode_ADSERR_DEVICE_INVALIDCLSID         ReturnCode = 0x71C
+	ReturnCode_ADSERR_DEVICE_INVALIDOBJID         ReturnCode = 0x71D
+	ReturnCode_ADSERR_DEVICE_PENDING              ReturnCode = 0x71E
+	ReturnCode_ADSERR_DEVICE_ABORTED              ReturnCode = 0x71F
+	ReturnCode_ADSERR_DEVICE_WARNING              ReturnCode = 0x720
+	ReturnCode_ADSERR_DEVICE_INVALIDARRAYIDX      ReturnCode = 0x721
+	ReturnCode_ADSERR_DEVICE_SYMBOLNOTACTIVE      ReturnCode = 0x722
+	ReturnCode_ADSERR_DEVICE_ACCESSDENIED         ReturnCode = 0x723
+	ReturnCode_ADSERR_DEVICE_LICENSENOTFOUND      ReturnCode = 0x724
+	ReturnCode_ADSERR_DEVICE_LICENSEEXPIRED       ReturnCode = 0x725
+	ReturnCode_ADSERR_DEVICE_LICENSEEXCEEDED      ReturnCode = 0x726
+	ReturnCode_ADSERR_DEVICE_LICENSEINVALID       ReturnCode = 0x727
+	ReturnCode_ADSERR_DEVICE_LICENSESYSTEMID      ReturnCode = 0x728
+	ReturnCode_ADSERR_DEVICE_LICENSENOTIMELIMIT   ReturnCode = 0x729
+	ReturnCode_ADSERR_DEVICE_LICENSEFUTUREISSUE   ReturnCode = 0x72A
+	ReturnCode_ADSERR_DEVICE_LICENSETIMETOLONG    ReturnCode = 0x72B
+	ReturnCode_ADSERR_DEVICE_EXCEPTION            ReturnCode = 0x72c
+	ReturnCode_ADSERR_DEVICE_LICENSEDUPLICATED    ReturnCode = 0x72D
+	ReturnCode_ADSERR_DEVICE_SIGNATUREINVALID     ReturnCode = 0x72E
+	ReturnCode_ADSERR_DEVICE_CERTIFICATEINVALID   ReturnCode = 0x72F
+	ReturnCode_ADSERR_CLIENT_ERROR                ReturnCode = 0x740
+	ReturnCode_ADSERR_CLIENT_INVALIDPARM          ReturnCode = 0x741
+	ReturnCode_ADSERR_CLIENT_LISTEMPTY            ReturnCode = 0x742
+	ReturnCode_ADSERR_CLIENT_VARUSED              ReturnCode = 0x743
+	ReturnCode_ADSERR_CLIENT_DUPLINVOKEID         ReturnCode = 0x744
+	ReturnCode_ADSERR_CLIENT_SYNCTIMEOUT          ReturnCode = 0x745
+	ReturnCode_ADSERR_CLIENT_W32ERROR             ReturnCode = 0x746
+	ReturnCode_ADSERR_CLIENT_TIMEOUTINVALID       ReturnCode = 0x747
+	ReturnCode_ADSERR_CLIENT_PORTNOTOPEN          ReturnCode = 0x748
+	ReturnCode_ADSERR_CLIENT_NOAMSADDR            ReturnCode = 0x750
+	ReturnCode_ADSERR_CLIENT_SYNCINTERNAL         ReturnCode = 0x751
+	ReturnCode_ADSERR_CLIENT_ADDHASH              ReturnCode = 0x752
+	ReturnCode_ADSERR_CLIENT_REMOVEHASH           ReturnCode = 0x753
+	ReturnCode_ADSERR_CLIENT_NOMORESYM            ReturnCode = 0x754
+	ReturnCode_ADSERR_CLIENT_SYNCRESINVALID       ReturnCode = 0x755
+	ReturnCode_RTERR_INTERNAL                     ReturnCode = 0x1000
+	ReturnCode_RTERR_BADTIMERPERIODS              ReturnCode = 0x1001
+	ReturnCode_RTERR_INVALIDTASKPTR               ReturnCode = 0x1002
+	ReturnCode_RTERR_INVALIDSTACKPTR              ReturnCode = 0x1003
+	ReturnCode_RTERR_PRIOEXISTS                   ReturnCode = 0x1004
+	ReturnCode_RTERR_NOMORETCB                    ReturnCode = 0x1005
+	ReturnCode_RTERR_NOMORESEMAS                  ReturnCode = 0x1006
+	ReturnCode_RTERR_NOMOREQUEUES                 ReturnCode = 0x1007
+	ReturnCode_RTERR_EXTIRQALREADYDEF             ReturnCode = 0x100D
+	ReturnCode_RTERR_EXTIRQNOTDEF                 ReturnCode = 0x100E
+	ReturnCode_RTERR_EXTIRQINSTALLFAILED          ReturnCode = 0x100F
+	ReturnCode_RTERR_IRQLNOTLESSOREQUAL           ReturnCode = 0x1010
+	ReturnCode_RTERR_VMXNOTSUPPORTED              ReturnCode = 0x1017
+	ReturnCode_RTERR_VMXDISABLED                  ReturnCode = 0x1018
+	ReturnCode_RTERR_VMXCONTROLSMISSING           ReturnCode = 0x1019
+	ReturnCode_RTERR_VMXENABLEFAILS               ReturnCode = 0x101A
+	ReturnCode_WSAETIMEDOUT                       ReturnCode = 0x274C
+	ReturnCode_WSAECONNREFUSED                    ReturnCode = 0x274D
+	ReturnCode_WSAEHOSTUNREACH                    ReturnCode = 0x2751
 )
 
 var ReturnCodeValues []ReturnCode
 
 func init() {
 	_ = errors.New
-	ReturnCodeValues = []ReturnCode {
+	ReturnCodeValues = []ReturnCode{
 		ReturnCode_OK,
 		ReturnCode_INTERNAL_ERROR,
 		ReturnCode_NO_REALTIME,
@@ -289,250 +289,250 @@ func init() {
 
 func ReturnCodeByValue(value uint32) ReturnCode {
 	switch value {
-		case 0x00:
-			return ReturnCode_OK
-		case 0x01:
-			return ReturnCode_INTERNAL_ERROR
-		case 0x02:
-			return ReturnCode_NO_REALTIME
-		case 0x03:
-			return ReturnCode_SAVE_ERROR
-		case 0x04:
-			return ReturnCode_MAILBOX_FULL
-		case 0x05:
-			return ReturnCode_WRONG_HMSG
-		case 0x06:
-			return ReturnCode_TARGET_PORT_NOT_FOUND
-		case 0x07:
-			return ReturnCode_TARGET_HOST_NOT_FOUND
-		case 0x08:
-			return ReturnCode_UNKNOWN_COMMAND_ID
-		case 0x09:
-			return ReturnCode_UNKNOWN_TASK_ID
-		case 0x0A:
-			return ReturnCode_NO_IO
-		case 0x0B:
-			return ReturnCode_UNKNOWN_ADS_COMMAND
-		case 0x0C:
-			return ReturnCode_WIN32_ERROR
-		case 0x0D:
-			return ReturnCode_PORT_NOT_CONNECTED
-		case 0x0E:
-			return ReturnCode_INVALID_ADS_LENGTH
-		case 0x0F:
-			return ReturnCode_INVALID_AMS_NET_ID
-		case 0x10:
-			return ReturnCode_LOW_INSTALLATION_LEVEL
-		case 0x1000:
-			return ReturnCode_RTERR_INTERNAL
-		case 0x1001:
-			return ReturnCode_RTERR_BADTIMERPERIODS
-		case 0x1002:
-			return ReturnCode_RTERR_INVALIDTASKPTR
-		case 0x1003:
-			return ReturnCode_RTERR_INVALIDSTACKPTR
-		case 0x1004:
-			return ReturnCode_RTERR_PRIOEXISTS
-		case 0x1005:
-			return ReturnCode_RTERR_NOMORETCB
-		case 0x1006:
-			return ReturnCode_RTERR_NOMORESEMAS
-		case 0x1007:
-			return ReturnCode_RTERR_NOMOREQUEUES
-		case 0x100D:
-			return ReturnCode_RTERR_EXTIRQALREADYDEF
-		case 0x100E:
-			return ReturnCode_RTERR_EXTIRQNOTDEF
-		case 0x100F:
-			return ReturnCode_RTERR_EXTIRQINSTALLFAILED
-		case 0x1010:
-			return ReturnCode_RTERR_IRQLNOTLESSOREQUAL
-		case 0x1017:
-			return ReturnCode_RTERR_VMXNOTSUPPORTED
-		case 0x1018:
-			return ReturnCode_RTERR_VMXDISABLED
-		case 0x1019:
-			return ReturnCode_RTERR_VMXCONTROLSMISSING
-		case 0x101A:
-			return ReturnCode_RTERR_VMXENABLEFAILS
-		case 0x11:
-			return ReturnCode_NO_DEBUGGING_AVAILABLE
-		case 0x12:
-			return ReturnCode_PORT_DEACTIVATED
-		case 0x13:
-			return ReturnCode_PORT_ALREADY_CONNECTED
-		case 0x14:
-			return ReturnCode_ADS_SYNC_WIN32_ERROR
-		case 0x15:
-			return ReturnCode_ADS_SYNC_TIMEOUT
-		case 0x16:
-			return ReturnCode_ADS_SYNC_AMS_ERROR
-		case 0x17:
-			return ReturnCode_NO_INDEX_MAP_FOR_ADS_AVAILABLE
-		case 0x18:
-			return ReturnCode_INVALID_ADS_PORT
-		case 0x19:
-			return ReturnCode_NO_MEMORY
-		case 0x1A:
-			return ReturnCode_TCP_SENDING_ERROR
-		case 0x1B:
-			return ReturnCode_HOST_NOT_REACHABLE
-		case 0x1C:
-			return ReturnCode_INVALID_AMS_FRAGMENT
-		case 0x274C:
-			return ReturnCode_WSAETIMEDOUT
-		case 0x274D:
-			return ReturnCode_WSAECONNREFUSED
-		case 0x2751:
-			return ReturnCode_WSAEHOSTUNREACH
-		case 0x500:
-			return ReturnCode_ROUTERERR_NOLOCKEDMEMORY
-		case 0x501:
-			return ReturnCode_ROUTERERR_RESIZEMEMORY
-		case 0x502:
-			return ReturnCode_ROUTERERR_MAILBOXFULL
-		case 0x503:
-			return ReturnCode_ROUTERERR_DEBUGBOXFULL
-		case 0x504:
-			return ReturnCode_ROUTERERR_UNKNOWNPORTTYPE
-		case 0x505:
-			return ReturnCode_ROUTERERR_NOTINITIALIZED
-		case 0x506:
-			return ReturnCode_ROUTERERR_PORTALREADYINUSE
-		case 0x507:
-			return ReturnCode_ROUTERERR_NOTREGISTERED
-		case 0x508:
-			return ReturnCode_ROUTERERR_NOMOREQUEUES
-		case 0x509:
-			return ReturnCode_ROUTERERR_INVALIDPORT
-		case 0x50A:
-			return ReturnCode_ROUTERERR_NOTACTIVATED
-		case 0x700:
-			return ReturnCode_ADSERR_DEVICE_ERROR
-		case 0x701:
-			return ReturnCode_ADSERR_DEVICE_SRVNOTSUPP
-		case 0x702:
-			return ReturnCode_ADSERR_DEVICE_INVALIDGRP
-		case 0x703:
-			return ReturnCode_ADSERR_DEVICE_INVALIDOFFSET
-		case 0x704:
-			return ReturnCode_ADSERR_DEVICE_INVALIDACCESS
-		case 0x705:
-			return ReturnCode_ADSERR_DEVICE_INVALIDSIZE
-		case 0x706:
-			return ReturnCode_ADSERR_DEVICE_INVALIDDATA
-		case 0x707:
-			return ReturnCode_ADSERR_DEVICE_NOTREADY
-		case 0x708:
-			return ReturnCode_ADSERR_DEVICE_BUSY
-		case 0x709:
-			return ReturnCode_ADSERR_DEVICE_INVALIDCONTEXT
-		case 0x70A:
-			return ReturnCode_ADSERR_DEVICE_NOMEMORY
-		case 0x70B:
-			return ReturnCode_ADSERR_DEVICE_INVALIDPARM
-		case 0x70C:
-			return ReturnCode_ADSERR_DEVICE_NOTFOUND
-		case 0x70D:
-			return ReturnCode_ADSERR_DEVICE_SYNTAX
-		case 0x70E:
-			return ReturnCode_ADSERR_DEVICE_INCOMPATIBLE
-		case 0x70F:
-			return ReturnCode_ADSERR_DEVICE_EXISTS
-		case 0x710:
-			return ReturnCode_ADSERR_DEVICE_SYMBOLNOTFOUND
-		case 0x711:
-			return ReturnCode_ADSERR_DEVICE_SYMBOLVERSIONINVALID
-		case 0x712:
-			return ReturnCode_ADSERR_DEVICE_INVALIDSTATE
-		case 0x713:
-			return ReturnCode_ADSERR_DEVICE_TRANSMODENOTSUPP
-		case 0x714:
-			return ReturnCode_ADSERR_DEVICE_NOTIFYHNDINVALID
-		case 0x715:
-			return ReturnCode_ADSERR_DEVICE_CLIENTUNKNOWN
-		case 0x716:
-			return ReturnCode_ADSERR_DEVICE_NOMOREHDLS
-		case 0x717:
-			return ReturnCode_ADSERR_DEVICE_INVALIDWATCHSIZE
-		case 0x718:
-			return ReturnCode_ADSERR_DEVICE_NOTINIT
-		case 0x719:
-			return ReturnCode_ADSERR_DEVICE_TIMEOUT
-		case 0x71A:
-			return ReturnCode_ADSERR_DEVICE_NOINTERFACE
-		case 0x71B:
-			return ReturnCode_ADSERR_DEVICE_INVALIDINTERFACE
-		case 0x71C:
-			return ReturnCode_ADSERR_DEVICE_INVALIDCLSID
-		case 0x71D:
-			return ReturnCode_ADSERR_DEVICE_INVALIDOBJID
-		case 0x71E:
-			return ReturnCode_ADSERR_DEVICE_PENDING
-		case 0x71F:
-			return ReturnCode_ADSERR_DEVICE_ABORTED
-		case 0x720:
-			return ReturnCode_ADSERR_DEVICE_WARNING
-		case 0x721:
-			return ReturnCode_ADSERR_DEVICE_INVALIDARRAYIDX
-		case 0x722:
-			return ReturnCode_ADSERR_DEVICE_SYMBOLNOTACTIVE
-		case 0x723:
-			return ReturnCode_ADSERR_DEVICE_ACCESSDENIED
-		case 0x724:
-			return ReturnCode_ADSERR_DEVICE_LICENSENOTFOUND
-		case 0x725:
-			return ReturnCode_ADSERR_DEVICE_LICENSEEXPIRED
-		case 0x726:
-			return ReturnCode_ADSERR_DEVICE_LICENSEEXCEEDED
-		case 0x727:
-			return ReturnCode_ADSERR_DEVICE_LICENSEINVALID
-		case 0x728:
-			return ReturnCode_ADSERR_DEVICE_LICENSESYSTEMID
-		case 0x729:
-			return ReturnCode_ADSERR_DEVICE_LICENSENOTIMELIMIT
-		case 0x72A:
-			return ReturnCode_ADSERR_DEVICE_LICENSEFUTUREISSUE
-		case 0x72B:
-			return ReturnCode_ADSERR_DEVICE_LICENSETIMETOLONG
-		case 0x72D:
-			return ReturnCode_ADSERR_DEVICE_LICENSEDUPLICATED
-		case 0x72E:
-			return ReturnCode_ADSERR_DEVICE_SIGNATUREINVALID
-		case 0x72F:
-			return ReturnCode_ADSERR_DEVICE_CERTIFICATEINVALID
-		case 0x72c:
-			return ReturnCode_ADSERR_DEVICE_EXCEPTION
-		case 0x740:
-			return ReturnCode_ADSERR_CLIENT_ERROR
-		case 0x741:
-			return ReturnCode_ADSERR_CLIENT_INVALIDPARM
-		case 0x742:
-			return ReturnCode_ADSERR_CLIENT_LISTEMPTY
-		case 0x743:
-			return ReturnCode_ADSERR_CLIENT_VARUSED
-		case 0x744:
-			return ReturnCode_ADSERR_CLIENT_DUPLINVOKEID
-		case 0x745:
-			return ReturnCode_ADSERR_CLIENT_SYNCTIMEOUT
-		case 0x746:
-			return ReturnCode_ADSERR_CLIENT_W32ERROR
-		case 0x747:
-			return ReturnCode_ADSERR_CLIENT_TIMEOUTINVALID
-		case 0x748:
-			return ReturnCode_ADSERR_CLIENT_PORTNOTOPEN
-		case 0x750:
-			return ReturnCode_ADSERR_CLIENT_NOAMSADDR
-		case 0x751:
-			return ReturnCode_ADSERR_CLIENT_SYNCINTERNAL
-		case 0x752:
-			return ReturnCode_ADSERR_CLIENT_ADDHASH
-		case 0x753:
-			return ReturnCode_ADSERR_CLIENT_REMOVEHASH
-		case 0x754:
-			return ReturnCode_ADSERR_CLIENT_NOMORESYM
-		case 0x755:
-			return ReturnCode_ADSERR_CLIENT_SYNCRESINVALID
+	case 0x00:
+		return ReturnCode_OK
+	case 0x01:
+		return ReturnCode_INTERNAL_ERROR
+	case 0x02:
+		return ReturnCode_NO_REALTIME
+	case 0x03:
+		return ReturnCode_SAVE_ERROR
+	case 0x04:
+		return ReturnCode_MAILBOX_FULL
+	case 0x05:
+		return ReturnCode_WRONG_HMSG
+	case 0x06:
+		return ReturnCode_TARGET_PORT_NOT_FOUND
+	case 0x07:
+		return ReturnCode_TARGET_HOST_NOT_FOUND
+	case 0x08:
+		return ReturnCode_UNKNOWN_COMMAND_ID
+	case 0x09:
+		return ReturnCode_UNKNOWN_TASK_ID
+	case 0x0A:
+		return ReturnCode_NO_IO
+	case 0x0B:
+		return ReturnCode_UNKNOWN_ADS_COMMAND
+	case 0x0C:
+		return ReturnCode_WIN32_ERROR
+	case 0x0D:
+		return ReturnCode_PORT_NOT_CONNECTED
+	case 0x0E:
+		return ReturnCode_INVALID_ADS_LENGTH
+	case 0x0F:
+		return ReturnCode_INVALID_AMS_NET_ID
+	case 0x10:
+		return ReturnCode_LOW_INSTALLATION_LEVEL
+	case 0x1000:
+		return ReturnCode_RTERR_INTERNAL
+	case 0x1001:
+		return ReturnCode_RTERR_BADTIMERPERIODS
+	case 0x1002:
+		return ReturnCode_RTERR_INVALIDTASKPTR
+	case 0x1003:
+		return ReturnCode_RTERR_INVALIDSTACKPTR
+	case 0x1004:
+		return ReturnCode_RTERR_PRIOEXISTS
+	case 0x1005:
+		return ReturnCode_RTERR_NOMORETCB
+	case 0x1006:
+		return ReturnCode_RTERR_NOMORESEMAS
+	case 0x1007:
+		return ReturnCode_RTERR_NOMOREQUEUES
+	case 0x100D:
+		return ReturnCode_RTERR_EXTIRQALREADYDEF
+	case 0x100E:
+		return ReturnCode_RTERR_EXTIRQNOTDEF
+	case 0x100F:
+		return ReturnCode_RTERR_EXTIRQINSTALLFAILED
+	case 0x1010:
+		return ReturnCode_RTERR_IRQLNOTLESSOREQUAL
+	case 0x1017:
+		return ReturnCode_RTERR_VMXNOTSUPPORTED
+	case 0x1018:
+		return ReturnCode_RTERR_VMXDISABLED
+	case 0x1019:
+		return ReturnCode_RTERR_VMXCONTROLSMISSING
+	case 0x101A:
+		return ReturnCode_RTERR_VMXENABLEFAILS
+	case 0x11:
+		return ReturnCode_NO_DEBUGGING_AVAILABLE
+	case 0x12:
+		return ReturnCode_PORT_DEACTIVATED
+	case 0x13:
+		return ReturnCode_PORT_ALREADY_CONNECTED
+	case 0x14:
+		return ReturnCode_ADS_SYNC_WIN32_ERROR
+	case 0x15:
+		return ReturnCode_ADS_SYNC_TIMEOUT
+	case 0x16:
+		return ReturnCode_ADS_SYNC_AMS_ERROR
+	case 0x17:
+		return ReturnCode_NO_INDEX_MAP_FOR_ADS_AVAILABLE
+	case 0x18:
+		return ReturnCode_INVALID_ADS_PORT
+	case 0x19:
+		return ReturnCode_NO_MEMORY
+	case 0x1A:
+		return ReturnCode_TCP_SENDING_ERROR
+	case 0x1B:
+		return ReturnCode_HOST_NOT_REACHABLE
+	case 0x1C:
+		return ReturnCode_INVALID_AMS_FRAGMENT
+	case 0x274C:
+		return ReturnCode_WSAETIMEDOUT
+	case 0x274D:
+		return ReturnCode_WSAECONNREFUSED
+	case 0x2751:
+		return ReturnCode_WSAEHOSTUNREACH
+	case 0x500:
+		return ReturnCode_ROUTERERR_NOLOCKEDMEMORY
+	case 0x501:
+		return ReturnCode_ROUTERERR_RESIZEMEMORY
+	case 0x502:
+		return ReturnCode_ROUTERERR_MAILBOXFULL
+	case 0x503:
+		return ReturnCode_ROUTERERR_DEBUGBOXFULL
+	case 0x504:
+		return ReturnCode_ROUTERERR_UNKNOWNPORTTYPE
+	case 0x505:
+		return ReturnCode_ROUTERERR_NOTINITIALIZED
+	case 0x506:
+		return ReturnCode_ROUTERERR_PORTALREADYINUSE
+	case 0x507:
+		return ReturnCode_ROUTERERR_NOTREGISTERED
+	case 0x508:
+		return ReturnCode_ROUTERERR_NOMOREQUEUES
+	case 0x509:
+		return ReturnCode_ROUTERERR_INVALIDPORT
+	case 0x50A:
+		return ReturnCode_ROUTERERR_NOTACTIVATED
+	case 0x700:
+		return ReturnCode_ADSERR_DEVICE_ERROR
+	case 0x701:
+		return ReturnCode_ADSERR_DEVICE_SRVNOTSUPP
+	case 0x702:
+		return ReturnCode_ADSERR_DEVICE_INVALIDGRP
+	case 0x703:
+		return ReturnCode_ADSERR_DEVICE_INVALIDOFFSET
+	case 0x704:
+		return ReturnCode_ADSERR_DEVICE_INVALIDACCESS
+	case 0x705:
+		return ReturnCode_ADSERR_DEVICE_INVALIDSIZE
+	case 0x706:
+		return ReturnCode_ADSERR_DEVICE_INVALIDDATA
+	case 0x707:
+		return ReturnCode_ADSERR_DEVICE_NOTREADY
+	case 0x708:
+		return ReturnCode_ADSERR_DEVICE_BUSY
+	case 0x709:
+		return ReturnCode_ADSERR_DEVICE_INVALIDCONTEXT
+	case 0x70A:
+		return ReturnCode_ADSERR_DEVICE_NOMEMORY
+	case 0x70B:
+		return ReturnCode_ADSERR_DEVICE_INVALIDPARM
+	case 0x70C:
+		return ReturnCode_ADSERR_DEVICE_NOTFOUND
+	case 0x70D:
+		return ReturnCode_ADSERR_DEVICE_SYNTAX
+	case 0x70E:
+		return ReturnCode_ADSERR_DEVICE_INCOMPATIBLE
+	case 0x70F:
+		return ReturnCode_ADSERR_DEVICE_EXISTS
+	case 0x710:
+		return ReturnCode_ADSERR_DEVICE_SYMBOLNOTFOUND
+	case 0x711:
+		return ReturnCode_ADSERR_DEVICE_SYMBOLVERSIONINVALID
+	case 0x712:
+		return ReturnCode_ADSERR_DEVICE_INVALIDSTATE
+	case 0x713:
+		return ReturnCode_ADSERR_DEVICE_TRANSMODENOTSUPP
+	case 0x714:
+		return ReturnCode_ADSERR_DEVICE_NOTIFYHNDINVALID
+	case 0x715:
+		return ReturnCode_ADSERR_DEVICE_CLIENTUNKNOWN
+	case 0x716:
+		return ReturnCode_ADSERR_DEVICE_NOMOREHDLS
+	case 0x717:
+		return ReturnCode_ADSERR_DEVICE_INVALIDWATCHSIZE
+	case 0x718:
+		return ReturnCode_ADSERR_DEVICE_NOTINIT
+	case 0x719:
+		return ReturnCode_ADSERR_DEVICE_TIMEOUT
+	case 0x71A:
+		return ReturnCode_ADSERR_DEVICE_NOINTERFACE
+	case 0x71B:
+		return ReturnCode_ADSERR_DEVICE_INVALIDINTERFACE
+	case 0x71C:
+		return ReturnCode_ADSERR_DEVICE_INVALIDCLSID
+	case 0x71D:
+		return ReturnCode_ADSERR_DEVICE_INVALIDOBJID
+	case 0x71E:
+		return ReturnCode_ADSERR_DEVICE_PENDING
+	case 0x71F:
+		return ReturnCode_ADSERR_DEVICE_ABORTED
+	case 0x720:
+		return ReturnCode_ADSERR_DEVICE_WARNING
+	case 0x721:
+		return ReturnCode_ADSERR_DEVICE_INVALIDARRAYIDX
+	case 0x722:
+		return ReturnCode_ADSERR_DEVICE_SYMBOLNOTACTIVE
+	case 0x723:
+		return ReturnCode_ADSERR_DEVICE_ACCESSDENIED
+	case 0x724:
+		return ReturnCode_ADSERR_DEVICE_LICENSENOTFOUND
+	case 0x725:
+		return ReturnCode_ADSERR_DEVICE_LICENSEEXPIRED
+	case 0x726:
+		return ReturnCode_ADSERR_DEVICE_LICENSEEXCEEDED
+	case 0x727:
+		return ReturnCode_ADSERR_DEVICE_LICENSEINVALID
+	case 0x728:
+		return ReturnCode_ADSERR_DEVICE_LICENSESYSTEMID
+	case 0x729:
+		return ReturnCode_ADSERR_DEVICE_LICENSENOTIMELIMIT
+	case 0x72A:
+		return ReturnCode_ADSERR_DEVICE_LICENSEFUTUREISSUE
+	case 0x72B:
+		return ReturnCode_ADSERR_DEVICE_LICENSETIMETOLONG
+	case 0x72D:
+		return ReturnCode_ADSERR_DEVICE_LICENSEDUPLICATED
+	case 0x72E:
+		return ReturnCode_ADSERR_DEVICE_SIGNATUREINVALID
+	case 0x72F:
+		return ReturnCode_ADSERR_DEVICE_CERTIFICATEINVALID
+	case 0x72c:
+		return ReturnCode_ADSERR_DEVICE_EXCEPTION
+	case 0x740:
+		return ReturnCode_ADSERR_CLIENT_ERROR
+	case 0x741:
+		return ReturnCode_ADSERR_CLIENT_INVALIDPARM
+	case 0x742:
+		return ReturnCode_ADSERR_CLIENT_LISTEMPTY
+	case 0x743:
+		return ReturnCode_ADSERR_CLIENT_VARUSED
+	case 0x744:
+		return ReturnCode_ADSERR_CLIENT_DUPLINVOKEID
+	case 0x745:
+		return ReturnCode_ADSERR_CLIENT_SYNCTIMEOUT
+	case 0x746:
+		return ReturnCode_ADSERR_CLIENT_W32ERROR
+	case 0x747:
+		return ReturnCode_ADSERR_CLIENT_TIMEOUTINVALID
+	case 0x748:
+		return ReturnCode_ADSERR_CLIENT_PORTNOTOPEN
+	case 0x750:
+		return ReturnCode_ADSERR_CLIENT_NOAMSADDR
+	case 0x751:
+		return ReturnCode_ADSERR_CLIENT_SYNCINTERNAL
+	case 0x752:
+		return ReturnCode_ADSERR_CLIENT_ADDHASH
+	case 0x753:
+		return ReturnCode_ADSERR_CLIENT_REMOVEHASH
+	case 0x754:
+		return ReturnCode_ADSERR_CLIENT_NOMORESYM
+	case 0x755:
+		return ReturnCode_ADSERR_CLIENT_SYNCRESINVALID
 	}
 	return 0
 }
@@ -1070,4 +1070,3 @@ func (e ReturnCode) name() string {
 func (e ReturnCode) String() string {
 	return e.name()
 }
-
diff --git a/plc4go/internal/plc4go/ads/readwrite/model/State.go b/plc4go/internal/plc4go/ads/readwrite/model/State.go
index 4c6633d..e3ad1f8 100644
--- a/plc4go/internal/plc4go/ads/readwrite/model/State.go
+++ b/plc4go/internal/plc4go/ads/readwrite/model/State.go
@@ -19,27 +19,25 @@
 
 package model
 
-
 import (
 	"github.com/apache/plc4x/plc4go/internal/plc4go/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
 )
 
-	// Code generated by code-generation. DO NOT EDIT.
-
+// Code generated by code-generation. DO NOT EDIT.
 
 // The data-structure of this message
 type State struct {
-	InitCommand bool
-	UpdCommand bool
-	TimestampAdded bool
+	InitCommand         bool
+	UpdCommand          bool
+	TimestampAdded      bool
 	HighPriorityCommand bool
-	SystemCommand bool
-	AdsCommand bool
-	NoReturn bool
-	Response bool
-	Broadcast bool
+	SystemCommand       bool
+	AdsCommand          bool
+	NoReturn            bool
+	Response            bool
+	Broadcast           bool
 }
 
 // The corresponding interface
@@ -78,31 +76,31 @@ func (m *State) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
 	// Simple field (initCommand)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (updCommand)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (timestampAdded)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (highPriorityCommand)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (systemCommand)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (adsCommand)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (noReturn)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (response)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Simple field (broadcast)
-	lengthInBits += 1;
+	lengthInBits += 1
 
 	// Reserved Field (reserved)
 	lengthInBits += 7
@@ -110,7 +108,6 @@ func (m *State) LengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-
 func (m *State) LengthInBytes() uint16 {
 	return m.LengthInBits() / 8
 }
@@ -121,55 +118,55 @@ func StateParse(readBuffer utils.ReadBuffer) (*State, error) {
 	}
 
 	// Simple Field (initCommand)
-initCommand, _initCommandErr := readBuffer.ReadBit("initCommand")
+	initCommand, _initCommandErr := readBuffer.ReadBit("initCommand")
 	if _initCommandErr != nil {
 		return nil, errors.Wrap(_initCommandErr, "Error parsing 'initCommand' field")
 	}
 
 	// Simple Field (updCommand)
-updCommand, _updCommandErr := readBuffer.ReadBit("updCommand")
+	updCommand, _updCommandErr := readBuffer.ReadBit("updCommand")
 	if _updCommandErr != nil {
 		return nil, errors.Wrap(_updCommandErr, "Error parsing 'updCommand' field")
 	}
 
 	// Simple Field (timestampAdded)
-timestampAdded, _timestampAddedErr := readBuffer.ReadBit("timestampAdded")
+	timestampAdded, _timestampAddedErr := readBuffer.ReadBit("timestampAdded")
 	if _timestampAddedErr != nil {
 		return nil, errors.Wrap(_timestampAddedErr, "Error parsing 'timestampAdded' field")
 	}
 
 	// Simple Field (highPriorityCommand)
-highPriorityCommand, _highPriorityCommandErr := readBuffer.ReadBit("highPriorityCommand")
+	highPriorityCommand, _highPriorityCommandErr := readBuffer.ReadBit("highPriorityCommand")
 	if _highPriorityCommandErr != nil {
 		return nil, errors.Wrap(_highPriorityCommandErr, "Error parsing 'highPriorityCommand' field")
 	}
 
 	// Simple Field (systemCommand)
-systemCommand, _systemCommandErr := readBuffer.ReadBit("systemCommand")
+	systemCommand, _systemCommandErr := readBuffer.ReadBit("systemCommand")
 	if _systemCommandErr != nil {
 		return nil, errors.Wrap(_systemCommandErr, "Error parsing 'systemCommand' field")
 	}
 
 	// Simple Field (adsCommand)
-adsCommand, _adsCommandErr := readBuffer.ReadBit("adsCommand")
+	adsCommand, _adsCommandErr := readBuffer.ReadBit("adsCommand")
 	if _adsCommandErr != nil {
 		return nil, errors.Wrap(_adsCommandErr, "Error parsing 'adsCommand' field")
 	}
 
 	// Simple Field (noReturn)
-noReturn, _noReturnErr := readBuffer.ReadBit("noReturn")
+	noReturn, _noReturnErr := readBuffer.ReadBit("noReturn")
 	if _noReturnErr != nil {
 		return nil, errors.Wrap(_noReturnErr, "Error parsing 'noReturn' field")
 	}
 
 	// Simple Field (response)
-response, _responseErr := readBuffer.ReadBit("response")
+	response, _responseErr := readBuffer.ReadBit("response")
 	if _responseErr != nil {
 		return nil, errors.Wrap(_responseErr, "Error parsing 'response' field")
 	}
 
 	// Simple Field (broadcast)
-broadcast, _broadcastErr := readBuffer.ReadBit("broadcast")
+	broadcast, _broadcastErr := readBuffer.ReadBit("broadcast")
 	if _broadcastErr != nil {
 		return nil, errors.Wrap(_broadcastErr, "Error parsing 'broadcast' field")
 	}
@@ -183,7 +180,7 @@ broadcast, _broadcastErr := readBuffer.ReadBit("broadcast")
 		if reserved != int8(0x0) {
 			log.Info().Fields(map[string]interface{}{
 				"expected value": int8(0x0),
-				"got value": reserved,
+				"got value":      reserved,
 			}).Msg("Got unexpected response.")
 		}
 	}
@@ -197,7 +194,7 @@ broadcast, _broadcastErr := readBuffer.ReadBit("broadcast")
 }
 
 func (m *State) Serialize(writeBuffer utils.WriteBuffer) error {
-	if pushErr :=writeBuffer.PushContext("State"); pushErr != nil {
+	if pushErr := writeBuffer.PushContext("State"); pushErr != nil {
 		return pushErr
 	}
 
@@ -286,6 +283,3 @@ func (m *State) String() string {
 	m.Serialize(buffer)
 	return buffer.GetBox().String()
 }
-
-
-
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetComplexTagOctetString.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetComplexTagOctetString.go
index e52e012..08b0adc 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetComplexTagOctetString.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetComplexTagOctetString.go
@@ -142,7 +142,7 @@ func (m *BACnetComplexTagOctetString) Serialize(writeBuffer utils.WriteBuffer) e
 
 		// Simple Field (theString)
 		theString := string(m.TheString)
-		_theStringErr := writeBuffer.WriteString("theString", uint8(m.ActualLengthInBit), "ASCII", (theString))
+		_theStringErr := writeBuffer.WriteString("theString", uint8(m.ActualLengthInBit), "TF-", (theString))
 		if _theStringErr != nil {
 			return errors.Wrap(_theStringErr, "Error serializing 'theString' field")
 		}
diff --git a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go
index fd708f9..399210e 100644
--- a/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go
+++ b/plc4go/internal/plc4go/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHas.go
@@ -94,16 +94,20 @@ func (m *BACnetUnconfirmedServiceRequestWhoHas) LengthInBits() uint16 {
 func (m *BACnetUnconfirmedServiceRequestWhoHas) LengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.Parent.ParentLengthInBits())
 
-	// Simple field (deviceInstanceRangeLowLimit)
-	lengthInBits += m.DeviceInstanceRangeLowLimit.LengthInBits()
+	// Optional Field (deviceInstanceRangeLowLimit)
+	if m.DeviceInstanceRangeLowLimit != nil {
+		lengthInBits += (*m.DeviceInstanceRangeLowLimit).LengthInBits()
+	}
 
 	// Optional Field (deviceInstanceRangeHighLimit)
 	if m.DeviceInstanceRangeHighLimit != nil {
 		lengthInBits += (*m.DeviceInstanceRangeHighLimit).LengthInBits()
 	}
 
-	// Simple field (objectIdentifier)
-	lengthInBits += m.ObjectIdentifier.LengthInBits()
+	// Optional Field (objectIdentifier)
+	if m.ObjectIdentifier != nil {
+		lengthInBits += (*m.ObjectIdentifier).LengthInBits()
+	}
 
 	// Optional Field (objectName)
 	if m.ObjectName != nil {
@@ -122,16 +126,14 @@ func BACnetUnconfirmedServiceRequestWhoHasParse(readBuffer utils.ReadBuffer) (*B
 		return nil, pullErr
 	}
 
-	// Simple Field (deviceInstanceRangeLowLimit)
-	if pullErr := readBuffer.PullContext("deviceInstanceRangeLowLimit"); pullErr != nil {
-		return nil, pullErr
-	}
-	deviceInstanceRangeLowLimit, _deviceInstanceRangeLowLimitErr := BACnetComplexTagParse(readBuffer, (0), BACnetDataType_UNSIGNED_INTEGER)
-	if _deviceInstanceRangeLowLimitErr != nil {
-		return nil, errors.Wrap(_deviceInstanceRangeLowLimitErr, "Error parsing 'deviceInstanceRangeLowLimit' field")
-	}
-	if closeErr := readBuffer.CloseContext("deviceInstanceRangeLowLimit"); closeErr != nil {
-		return nil, closeErr
+	// Optional Field (deviceInstanceRangeLowLimit) (Can be skipped, if a given expression evaluates to false)
+	var deviceInstanceRangeLowLimit *BACnetComplexTagUnsignedInteger = nil
+	{
+		_val, _err := BACnetComplexTagParse(readBuffer, (0), BACnetDataType_UNSIGNED_INTEGER)
+		if _err != nil {
+			return nil, errors.Wrap(_err, "Error parsing 'deviceInstanceRangeLowLimit' field")
+		}
+		deviceInstanceRangeLowLimit = CastBACnetComplexTagUnsignedInteger(_val)
 	}
 
 	// Optional Field (deviceInstanceRangeHighLimit) (Can be skipped, if a given expression evaluates to false)
@@ -144,16 +146,14 @@ func BACnetUnconfirmedServiceRequestWhoHasParse(readBuffer utils.ReadBuffer) (*B
 		deviceInstanceRangeHighLimit = CastBACnetComplexTagUnsignedInteger(_val)
 	}
 
-	// Simple Field (objectIdentifier)
-	if pullErr := readBuffer.PullContext("objectIdentifier"); pullErr != nil {
-		return nil, pullErr
-	}
-	objectIdentifier, _objectIdentifierErr := BACnetComplexTagParse(readBuffer, (2), BACnetDataType_OCTET_STRING)
-	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
-	}
-	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
-		return nil, closeErr
+	// Optional Field (objectIdentifier) (Can be skipped, if a given expression evaluates to false)
+	var objectIdentifier *BACnetComplexTagOctetString = nil
+	{
+		_val, _err := BACnetComplexTagParse(readBuffer, (2), BACnetDataType_OCTET_STRING)
+		if _err != nil {
+			return nil, errors.Wrap(_err, "Error parsing 'objectIdentifier' field")
+		}
+		objectIdentifier = CastBACnetComplexTagOctetString(_val)
 	}
 
 	// Optional Field (objectName) (Can be skipped, if a given expression evaluates to false)
@@ -188,16 +188,14 @@ func (m *BACnetUnconfirmedServiceRequestWhoHas) Serialize(writeBuffer utils.Writ
 			return pushErr
 		}
 
-		// Simple Field (deviceInstanceRangeLowLimit)
-		if pushErr := writeBuffer.PushContext("deviceInstanceRangeLowLimit"); pushErr != nil {
-			return pushErr
-		}
-		_deviceInstanceRangeLowLimitErr := m.DeviceInstanceRangeLowLimit.Serialize(writeBuffer)
-		if popErr := writeBuffer.PopContext("deviceInstanceRangeLowLimit"); popErr != nil {
-			return popErr
-		}
-		if _deviceInstanceRangeLowLimitErr != nil {
-			return errors.Wrap(_deviceInstanceRangeLowLimitErr, "Error serializing 'deviceInstanceRangeLowLimit' field")
+		// Optional Field (deviceInstanceRangeLowLimit) (Can be skipped, if the value is null)
+		var deviceInstanceRangeLowLimit *BACnetComplexTagUnsignedInteger = nil
+		if m.DeviceInstanceRangeLowLimit != nil {
+			deviceInstanceRangeLowLimit = m.DeviceInstanceRangeLowLimit
+			_deviceInstanceRangeLowLimitErr := deviceInstanceRangeLowLimit.Serialize(writeBuffer)
+			if _deviceInstanceRangeLowLimitErr != nil {
+				return errors.Wrap(_deviceInstanceRangeLowLimitErr, "Error serializing 'deviceInstanceRangeLowLimit' field")
+			}
 		}
 
 		// Optional Field (deviceInstanceRangeHighLimit) (Can be skipped, if the value is null)
@@ -210,16 +208,14 @@ func (m *BACnetUnconfirmedServiceRequestWhoHas) Serialize(writeBuffer utils.Writ
 			}
 		}
 
-		// Simple Field (objectIdentifier)
-		if pushErr := writeBuffer.PushContext("objectIdentifier"); pushErr != nil {
-			return pushErr
-		}
-		_objectIdentifierErr := m.ObjectIdentifier.Serialize(writeBuffer)
-		if popErr := writeBuffer.PopContext("objectIdentifier"); popErr != nil {
-			return popErr
-		}
-		if _objectIdentifierErr != nil {
-			return errors.Wrap(_objectIdentifierErr, "Error serializing 'objectIdentifier' field")
+		// Optional Field (objectIdentifier) (Can be skipped, if the value is null)
+		var objectIdentifier *BACnetComplexTagOctetString = nil
+		if m.ObjectIdentifier != nil {
+			objectIdentifier = m.ObjectIdentifier
+			_objectIdentifierErr := objectIdentifier.Serialize(writeBuffer)
+			if _objectIdentifierErr != nil {
+				return errors.Wrap(_objectIdentifierErr, "Error serializing 'objectIdentifier' field")
+			}
 		}
 
 		// Optional Field (objectName) (Can be skipped, if the value is null)
diff --git a/plc4go/internal/plc4go/knxnetip/readwrite/model/KnxDatapoint.go b/plc4go/internal/plc4go/knxnetip/readwrite/model/KnxDatapoint.go
index 44497cc..9a25380 100644
--- a/plc4go/internal/plc4go/knxnetip/readwrite/model/KnxDatapoint.go
+++ b/plc4go/internal/plc4go/knxnetip/readwrite/model/KnxDatapoint.go
@@ -6899,13 +6899,13 @@ func KnxDatapointSerialize(writeBuffer utils.WriteBuffer, value api.PlcValue, da
 	case datapointType == KnxDatapointType_DPT_Char_ASCII: // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((8)), "ASCII", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((8)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	case datapointType == KnxDatapointType_DPT_Char_8859_1: // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((8)), "ISO-8859-1", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((8)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	case datapointType == KnxDatapointType_DPT_Scaling: // USINT
@@ -7978,13 +7978,13 @@ func KnxDatapointSerialize(writeBuffer utils.WriteBuffer, value api.PlcValue, da
 	case datapointType == KnxDatapointType_DPT_String_ASCII: // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((112)), "ASCII", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((112)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	case datapointType == KnxDatapointType_DPT_String_8859_1: // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((112)), "ISO-8859-1", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((112)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	case datapointType == KnxDatapointType_DPT_SceneNumber: // USINT
@@ -9808,7 +9808,7 @@ func KnxDatapointSerialize(writeBuffer utils.WriteBuffer, value api.PlcValue, da
 	case datapointType == KnxDatapointType_DPT_LanguageCodeAlpha2_ASCII: // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((16)), "ASCII", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((16)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	case datapointType == KnxDatapointType_DPT_Tariff_ActiveEnergy: // Struct
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/DataItem.go b/plc4go/internal/plc4go/s7/readwrite/model/DataItem.go
index fca36ac..6b6366a 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/DataItem.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/DataItem.go
@@ -191,7 +191,7 @@ func DataItemParse(readBuffer utils.ReadBuffer, dataProtocolId string, stringLen
 	case dataProtocolId == "IEC61131_CHAR": // CHAR
 
 		// Manual Field (value)
-		value, _valueErr := StaticHelperParseS7Char(readBuffer, "UTF-8")
+		value, _valueErr := StaticHelperParseS7Char(readBuffer, "TF-")
 		if _valueErr != nil {
 			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
 		}
@@ -200,7 +200,7 @@ func DataItemParse(readBuffer utils.ReadBuffer, dataProtocolId string, stringLen
 	case dataProtocolId == "IEC61131_WCHAR": // CHAR
 
 		// Manual Field (value)
-		value, _valueErr := StaticHelperParseS7Char(readBuffer, "UTF-16")
+		value, _valueErr := StaticHelperParseS7Char(readBuffer, "TF-")
 		if _valueErr != nil {
 			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
 		}
@@ -209,7 +209,7 @@ func DataItemParse(readBuffer utils.ReadBuffer, dataProtocolId string, stringLen
 	case dataProtocolId == "IEC61131_STRING": // STRING
 
 		// Manual Field (value)
-		value, _valueErr := StaticHelperParseS7String(readBuffer, stringLength, "UTF-8")
+		value, _valueErr := StaticHelperParseS7String(readBuffer, stringLength, "TF-")
 		if _valueErr != nil {
 			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
 		}
@@ -218,7 +218,7 @@ func DataItemParse(readBuffer utils.ReadBuffer, dataProtocolId string, stringLen
 	case dataProtocolId == "IEC61131_WSTRING": // STRING
 
 		// Manual Field (value)
-		value, _valueErr := StaticHelperParseS7String(readBuffer, stringLength, "UTF-16")
+		value, _valueErr := StaticHelperParseS7String(readBuffer, stringLength, "TF-")
 		if _valueErr != nil {
 			return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
 		}
@@ -430,28 +430,28 @@ func DataItemSerialize(writeBuffer utils.WriteBuffer, value api.PlcValue, dataPr
 	case dataProtocolId == "IEC61131_CHAR": // CHAR
 
 		// Manual Field (value)
-		_valueErr := StaticHelperSerializeS7Char(writeBuffer, value, "UTF-8")
+		_valueErr := StaticHelperSerializeS7Char(writeBuffer, value, "TF-")
 		if _valueErr != nil {
 			return errors.Wrap(_valueErr, "Error serializing 'value' field")
 		}
 	case dataProtocolId == "IEC61131_WCHAR": // CHAR
 
 		// Manual Field (value)
-		_valueErr := StaticHelperSerializeS7Char(writeBuffer, value, "UTF-16")
+		_valueErr := StaticHelperSerializeS7Char(writeBuffer, value, "TF-")
 		if _valueErr != nil {
 			return errors.Wrap(_valueErr, "Error serializing 'value' field")
 		}
 	case dataProtocolId == "IEC61131_STRING": // STRING
 
 		// Manual Field (value)
-		_valueErr := StaticHelperSerializeS7String(writeBuffer, value, stringLength, "UTF-8")
+		_valueErr := StaticHelperSerializeS7String(writeBuffer, value, stringLength, "TF-")
 		if _valueErr != nil {
 			return errors.Wrap(_valueErr, "Error serializing 'value' field")
 		}
 	case dataProtocolId == "IEC61131_WSTRING": // STRING
 
 		// Manual Field (value)
-		_valueErr := StaticHelperSerializeS7String(writeBuffer, value, stringLength, "UTF-16")
+		_valueErr := StaticHelperSerializeS7String(writeBuffer, value, stringLength, "TF-")
 		if _valueErr != nil {
 			return errors.Wrap(_valueErr, "Error serializing 'value' field")
 		}
diff --git a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionMsgSubscription.go b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionMsgSubscription.go
index 4776112..7321c5d 100644
--- a/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionMsgSubscription.go
+++ b/plc4go/internal/plc4go/s7/readwrite/model/S7PayloadUserDataItemCpuFunctionMsgSubscription.go
@@ -221,7 +221,7 @@ func (m *S7PayloadUserDataItemCpuFunctionMsgSubscription) Serialize(writeBuffer
 
 		// Simple Field (magicKey)
 		magicKey := string(m.MagicKey)
-		_magicKeyErr := writeBuffer.WriteString("magicKey", uint8((64)), "UTF-8", (magicKey))
+		_magicKeyErr := writeBuffer.WriteString("magicKey", uint8((64)), "TF-", (magicKey))
 		if _magicKeyErr != nil {
 			return errors.Wrap(_magicKeyErr, "Error serializing 'magicKey' field")
 		}
diff --git a/plc4go/internal/plc4go/simulated/readwrite/model/DataItem.go b/plc4go/internal/plc4go/simulated/readwrite/model/DataItem.go
index ba57758..ba5a79f 100644
--- a/plc4go/internal/plc4go/simulated/readwrite/model/DataItem.go
+++ b/plc4go/internal/plc4go/simulated/readwrite/model/DataItem.go
@@ -689,13 +689,13 @@ func DataItemSerialize(writeBuffer utils.WriteBuffer, value api.PlcValue, dataTy
 	case dataType == "STRING": // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((255)), "UTF-8", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((255)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	case dataType == "WSTRING": // STRING
 
 		// Simple Field (value)
-		if _err := writeBuffer.WriteString("value", uint8((255)), "UTF-8", value.GetString()); _err != nil {
+		if _err := writeBuffer.WriteString("value", uint8((255)), "TF-", value.GetString()); _err != nil {
 			return errors.Wrap(_err, "Error serializing 'value' field")
 		}
 	default:
diff --git a/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnetip.mspec b/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnetip.mspec
index b6131fd..d88eadc 100644
--- a/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnetip.mspec
+++ b/protocols/bacnetip/src/main/resources/protocols/bacnetip/bacnetip.mspec
@@ -302,10 +302,10 @@
         ['0x06' BACnetUnconfirmedServiceRequestTimeSynchronization
         ]
         ['0x07' BACnetUnconfirmedServiceRequestWhoHas
-            [optional BACnetComplexTagUnsignedInteger 'deviceInstanceRangeLowLimit'                                        ['0', 'BACnetDataType.UNSIGNED_INTEGER' ]]
-            [optional BACnetComplexTagUnsignedInteger 'deviceInstanceRangeHighLimit' 'deviceInstanceRangeLowLimit != null' ['1', 'BACnetDataType.UNSIGNED_INTEGER' ]]
-            [optional BACnetComplexTagOctetString     'objectIdentifier'                                                   ['2', 'BACnetDataType.OCTET_STRING'     ]]
-            [optional BACnetComplexTagOctetString     'objectName'                   'objectIdentifier == null'            ['3', 'BACnetDataType.OCTET_STRING'     ]]
+            [optional BACnetComplexTagUnsignedInteger ['0', 'BACnetDataType.UNSIGNED_INTEGER' ] 'deviceInstanceRangeLowLimit'                                         ]
+            [optional BACnetComplexTagUnsignedInteger ['1', 'BACnetDataType.UNSIGNED_INTEGER' ] 'deviceInstanceRangeHighLimit'  'deviceInstanceRangeLowLimit != null' ]
+            [optional BACnetComplexTagOctetString     ['2', 'BACnetDataType.OCTET_STRING'     ] 'objectIdentifier'                                                    ]
+            [optional BACnetComplexTagOctetString     ['3', 'BACnetDataType.OCTET_STRING'     ] 'objectName'                    'objectIdentifier == null'            ]
         ]
         ['0x08' BACnetUnconfirmedServiceRequestWhoIs
             // TODO: here we need proper bacnet tags (like a discriminator etc... see line 494 BACnetTag)
@@ -355,8 +355,8 @@
         ]
         ['OCTET_STRING' BACnetComplexTagOctetString [uint 32 'actualLength']
             // TODO: The reader expects int but uint32 get's mapped to long so even uint32 would easily overflow...
-            [virtual    uint     16                           'actualLengthInBit' 'actualLength * 8']
-            [simple     vstring 'actualLengthInBit' 'ASCII'   'theString']
+            [virtual    uint     16                  'actualLengthInBit' 'actualLength * 8']
+            [simple     vstring 'actualLengthInBit'  'theString' encoding='ASCII']
         ]
         ['CHARACTER_STRING' BACnetComplexTagCharacterString
         ]