diff --git a/generated/dot1xconfigurationprofile.go b/generated/dot1xconfigurationprofile.go
index 57abc1d..ad53d44 100644
--- a/generated/dot1xconfigurationprofile.go
+++ b/generated/dot1xconfigurationprofile.go
@@ -27,11 +27,11 @@
 
 // Dot1XConfigurationProfileClassID is the 16-bit ID for the OMCI
 // Managed entity Dot1X configuration profile
-const Dot1XConfigurationProfileClassID ClassID = ClassID(291)
+const Dot1XConfigurationProfileClassID = ClassID(291) // 0x0123
 
 var dot1xconfigurationprofileBME *ManagedEntityDefinition
 
-// Dot1XConfigurationProfile (class ID #291)
+// Dot1XConfigurationProfile (Class ID: #291 / 0x0123)
 //	An instance of this ME represents a set of attributes that control an ONU's 802.1X operation
 //	with regard to IEEE 802 services. An instance of this ME is created by the ONU if it is capable
 //	of supporting [IEEE 802.1X] authentication of CPE.
@@ -41,48 +41,68 @@
 //
 //	Attributes
 //		Managed Entity Id
-//			Managed entity ID: This attribute provides a unique number for each instance of this ME. There
-//			is at most one instance, number 0. (R) (mandatory) (2-bytes)
+//			This attribute provides a unique number for each instance of this ME. There is at most one
+//			instance, number 0. (R) (mandatory) (2-bytes)
 //
 //		Circuit Id Prefix
-//			Circuit ID prefix: This attribute is a pointer to a large string ME whose content appears as the
-//			prefix of the NAS port ID in radius access-request messages. The remainder of the NAS port ID
-//			field is local information (for example, slot-port, appended by the ONU itself). The default
-//			value of this attribute is the null pointer 0. (R,-W) (mandatory) (2-bytes)
+//			This attribute is a pointer to a large string ME whose content appears as the prefix of the NAS
+//			port ID in radius access-request messages. The remainder of the NAS port ID field is local
+//			information (for example, slot-port, appended by the ONU itself). The default value of this
+//			attribute is the null pointer 0. (R,-W) (mandatory) (2-bytes)
 //
 //		Fallback Policy
-//			Fallback policy: When set to 1 (deny), this attribute causes IEEE-802.1X conversations to fail
-//			when no external authentication server is accessible, such that no Ethernet service is provided.
-//			The default value 0 causes IEEE-802.1X conversations to succeed when no external authentication
-//			server is accessible. (R,-W) (mandatory) (1-byte)
+//			When set to 1 (deny), this attribute causes IEEE-802.1X conversations to fail when no external
+//			authentication server is accessible, such that no Ethernet service is provided. The default
+//			value 0 causes IEEE-802.1X conversations to succeed when no external authentication server is
+//			accessible. (R,-W) (mandatory) (1-byte)
 //
 //		Auth Server 1
-//			Auth server 1: This attribute is a pointer to a large string ME that contains the URI of the
-//			first choice radius authentication server. The value 0 indicates that no radius authentication
-//			server is specified. (R,-W) (mandatory) (2-bytes)
+//			This attribute is a pointer to a large string ME that contains the URI of the first choice
+//			radius authentication server. The value 0 indicates that no radius authentication server is
+//			specified. (R,-W) (mandatory) (2-bytes)
 //
 //		Shared Secret Auth1
-//			Shared secret auth1: This attribute is the shared secret for the first radius authentication
-//			server. It is a null-terminated character string. (R,-W) (mandatory) (25-bytes)
+//			This attribute is the shared secret for the first radius authentication server. It is a null-
+//			terminated character string. (R,-W) (mandatory) (25-bytes)
+//
+//			The following two pairs of attributes are defined in the same way:
 //
 //		Auth Server 2
-//			Auth server 2:	(R,-W) (optional) (2-bytes)
+//			(R,-W) (optional) (2-bytes)
 //
 //		Shared Secret Auth2
-//			Shared secret auth2:	(R,-W) (optional) (25-bytes)
+//			(R,-W) (optional) (25-bytes)
 //
 //		Auth Server 3
-//			Auth server 3:	(R,-W) (optional) (2-bytes)
+//			(R,-W) (optional) (2-bytes)
 //
 //		Shared Secret Auth3
-//			Shared secret auth3:	(R,-W) (optional) (25-bytes)
+//			(R,-W) (optional) (25-bytes)
 //
 //		Olt Proxy Address
-//			OLT proxy address: This attribute indicates the IP address of a possible proxy at the OLT for
-//			IEEE-802.1X radius messages. The default value 0.0.0.0 indicates that no proxy is required.
-//			(R,-W) (optional) (4-bytes)
+//			This attribute indicates the IP address of a possible proxy at the OLT for IEEE-802.1X radius
+//			messages. The default value 0.0.0.0 indicates that no proxy is required. (R,-W) (optional)
+//			(4-bytes)
 //
 //		Calling Station Id Format
+//			Radius messages initiated by the ONU contain a calling-station-ID field that is specified to be
+//			the supplicant's MAC address in upper-case ASCII form, with bytes separated by a delimiter. This
+//			attribute permits specification of the delimiter. (R,-W) (optional) (2-bytes)
+//
+//			Value	Meaning
+//
+//			0	ONU's internal default
+//
+//			1	Hyphen (-) delimiter
+//
+//			2	Colon (:) delimiter
+//
+//			3	No delimiter
+//
+//			0x20 - 0x7E	Use this value as the delimiter
+//
+//			0xF0 - 0xFE	Vendor-specific use
+//
 //			Other values are reserved.
 //
 type Dot1XConfigurationProfile struct {
