This topic summarizes the implementation limits for the PL/I language elements and the macro facility language elements.
Table 1 summarizes the implementation limits for the PL/I language elements.
Language element | Description | Limit |
---|---|---|
Arrays | Maximum number of dimensions for an array | 15 |
Minimum lower boundNote 1 | Under CMPAT(V3), -263; otherwise, -2147483648 | |
Maximum upper boundNote 1 | Under CMPAT(V3), +263 - 1; otherwise, +2147483647 | |
Note 1: These bounds must be
used with caution. For instance, if A has the maximum
upper bound and JX has the attributes SIGNED FIXED
BIN(31), the loop DO JX = LBOUND(A) TO HBOUND(A) will
"wrap" after it hits the last element in the array. It would not "wrap"
if UPTHRU were used instead of TO.
|
||
Structures | Maximum number of levels in a structure | 15 |
Maximum level-number in a structure | 255 | |
Arithmetic precisions | Maximum precision for FIXED DECIMAL | 31Note 2 |
Maximum precision for FIXED BINARY | 63Note 3 | |
Maximum precision for FLOAT DECIMAL | 33Note 4 | |
Maximum precision for FLOAT BINARY | 109Note 5 | |
Maximum scale factor for FIXED data | 127 | |
Minimum scale factor for FIXED data | -128 | |
Note 2: This is true only if you specify the
compile-time option LIMITS(FIXEDDEC(31)); the default is 15.
Note 3: This is true only if you specify
the compile-time option LIMITS(FIXEDBIN(63)); the default is 31.
Note 4: On Intel, the maximum FLOAT
DECIMAL precision is 18. Under FLOAT(DFP), the maximum FLOAT DECIMAL
precision is 34.
Note 5: On
Intel, the maximum FLOAT BINARY precision is 64.
|
||
String and AREA variables or constants | Maximum length of CHARACTER | 32767 |
Maximum length of BIT | 32767 | |
Maximum length of GRAPHIC | 16383 | |
Maximum length of WIDECHAR | 32767 | |
Maximum size of AREA | 2147483647 | |
Note 6: These
are the default limits. Under the STRING suboption of the LIMITS compiler
option, the maximum length of the string types can be up to 128M.
|
||
Built-in functions | Maximum number of arguments to the IAND, IOR, MAX, and MIN functions | 64 |
Maximum values for the precision (p) in the ADD, BINARY, DECIMAL, DIVIDE, FIXED, FLOAT, MULTIPLY, PRECISION, and SUBTRACT functions | same as corresponding limit for arithmetic precision | |
Maximum values for the scale (q) in the ADD, BINARY, DECIMAL, DIVIDE, FIXED, MULTIPLY, PRECISION, and SUBTRACT functions | same as corresponding limit for arithmetic precisions | |
Maximum number of digits (N) in the CEIL, FLOOR, MAX, MIN, MOD, ROUND, and TRUNC functions | same as corresponding limit for arithmetic precisions | |
Program size | Maximum length of an identifier | 100 |
Maximum number of lexical units (keywords, identifiers, delimiters, etc) before a statement type can be resolved | 511 | |
Maximum number of DEFAULT-statements in a block | 31 | |
Maximum number of %PUSH statements | 63 | |
Maximum number of %INCLUDE statements | 4095 | |
Maximum nesting of %INCLUDE statements | 2046 | |
Maximum number of lines in any source file | 1048575 | |
Maximum number of statements | 16777215 | |
Maximum number of LIKE-attributes in a block | 63 | |
Maximum number of output expressions in a data-list | 60 | |
Maximum number of repetitive DO-specifications in a data-list | 50 | |
Maximum size of a data aggregate containing no unaligned bits | 2147483647 | |
Maximum size of a data aggregate containing some unaligned bits | 268435455 | |
Maximum number of arguments in a CALL or function reference | 255 | |
Maximum number of parameters for a procedure | 4095 | |
Maximum nesting of factored attributes | 15 | |
Maximum nesting of BEGIN and PROCEDURE statements | 30 | |
Maximum nesting of DO-groups | 49 | |
Maximum nesting of IF statements | 49 | |
Maximum nesting of SELECT-statements | 49 | |
Maximum nesting of expressions | 383 | |
Maximum length of %NOTE message | 32767 | |
Miscellaneous | Maximum number of picture characters in a character picture | 511 |
Maximum number of bytes in a numeric picture | 253 | |
Maximum number of numeric picture characters in a numeric picture | 31 | |
Maximum number of bytes in the external
representation of CHARACTER, X, BIT, BX, GRAPHIC, GX, WX and M string
constants. The external representation includes all quotes and string suffixes. For example, the string '01010110'B has 11 bytes in its external specification, but only 1 byte in its internal representation. Similarly, the string 'Ain''t Misbehavin''' has 21 bytes in its external specification, but only 17 in its internal representation. |
3072 | |
Maximum length for a KEYTO character string | 120 | |
Maximum length for a KEYTO graphic or widechar string | 60 | |
Maximum KEY length | 32763 | |
Maximum line size for LINESIZE | 32,759 for F-format or U-format, and 32,751 for V-format | |
Minimum line size for LINESIZE | 1 | |
Maximum page size for PAGESIZE | 32,767 | |
Minimum page size for PAGESIZE compiler option | 1 | |
Maximum size of DISPLAY character string | 126 | |
Maximum DISPLAY reply message | 72 bytes | |
Range of IEEE normalized floating-point numbers | +3.30E-4932 to +1.21E+4932, 0, -3.30E-4932 to -1.21E+4932 | |
Range of hex floating-point numbers | +10E-78 to +10E75, 0, -10E-78 to +10E+75 |
Table 2 summarizes the implementation limits for the macro facility language elements.
Language element | Description | Limit |
---|---|---|
Arrays | Maximum number of dimensions | 15 |
Minimum lower bound | -32768 | |
Maximum upper bound | +32767 | |
Arithmetic range | Min and max for a FIXED variable under FIXED(DECIMAL) option | same as FIXED DECIMAL(5) identifier |
Min and max for a FIXED variable under FIXED(BINARY) option | same as FIXED BINARY(31) identifier | |
Macro procedures | Maximum nesting level | 1 |
Keys | Maximum number of keyword parameters | 4096 |
String result | Maximum length | 512K |
dcl lower_00037 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_00037 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_00273 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424445464748'x
|| '4951525354555657'x
|| '586A708C8D8E9CC0'x
|| 'CBCDCECFD0DBDDDE'x
) );
dcl upper_00273 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626465666768'x
|| '6971727374757677'x
|| '78E080ACADAE9E4A'x
|| 'EBEDEEEF5AFBFDFE'x
) );
dcl lower_00277 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454648'x
|| '4951525354555657'x
|| '586A8C8D8EA1C0CB'x
|| 'CCCDCECFD0DBDDDE'x
) );
dcl upper_00277 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656668'x
|| '6971727374757677'x
|| '787CACADAEFC7BEB'x
|| 'ECEDEEEF5BFBFDFE'x
) );
dcl lower_00278 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424445464849'x
|| '525354555657586A'x
|| '70798C8D8E9CA1C0'x
|| 'CBCDCECFD0DBDDDE'x
) );
dcl upper_00278 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626465666869'x
|| '727374757677787C'x
|| '80E0ACADAE9EFC7B'x
|| 'EBEDEEEF5BFBFDFE'x
) );
dcl lower_00280 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424345464749'x
|| '52535556575A6A70'x
|| '798C8D8E9CA1C0CB'x
|| 'CCCECFD0DBDCDEE0'x
) );
dcl upper_00280 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626365666769'x
|| '727375767771ED80'x
|| 'FDACADAE9E7864EB'x
|| 'ECEEEF74FBFCFE68'x
) );
dcl lower_00284 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4851525354555657'x
|| '586A708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_00284 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6871727374757677'x
|| '787B80ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_00285 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_00285 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_00297 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424345464749'x
|| '5253555657586A70'x
|| '7C8C8D8E9CC0CBCC'x
|| 'CDCECFD0DBDCDEE0'x
) );
dcl upper_00297 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626365666769'x
|| '727375767778FD80'x
|| '64ACADAE9E71EBEC'x
|| 'EDEEEF74FBFCFE68'x
) );
dcl lower_00500 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_00500 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_00813 char
value( (
'6162636465666768'x
|| '696A6B6C6D6E6F70'x
|| '7172737475767778'x
|| '797ADCDDDEDFE1E2'x
|| 'E3E4E5E6E7E8E9EA'x
|| 'EBECEDEEEFF0F1F3'x
|| 'F4F5F6F7F8F9FAFB'x
|| 'FCFDFE'x
) );
dcl upper_00813 char
value( (
'4142434445464748'x
|| '494A4B4C4D4E4F50'x
|| '5152535455565758'x
|| '595AB6B8B9BAC1C2'x
|| 'C3C4C5C6C7C8C9CA'x
|| 'CBCCCDCECFD0D1D3'x
|| 'D4D5D6D7D8D9DADB'x
|| 'BCBEBF'x
) );
dcl lower_00819 char
value( (
'6162636465666768'x
|| '696A6B6C6D6E6F70'x
|| '7172737475767778'x
|| '797AE0E1E2E3E4E5'x
|| 'E6E7E8E9EAEBECED'x
|| 'EEEFF0F1F2F3F4F5'x
|| 'F6F8F9FAFBFCFDFE'x
) );
dcl upper_00819 char
value( (
'4142434445464748'x
|| '494A4B4C4D4E4F50'x
|| '5152535455565758'x
|| '595AC0C1C2C3C4C5'x
|| 'C6C7C8C9CACBCCCD'x
|| 'CECFD0D1D2D3D4D5'x
|| 'D6D8D9DADBDCDDDE'x
) );
dcl lower_00850 char
value( (
'6162636465666768'x
|| '696A6B6C6D6E6F70'x
|| '7172737475767778'x
|| '797A818283848586'x
|| '8788898A8B8C8D91'x
|| '93949596979BA0A1'x
|| 'A2A3A4C6D0E4E7EC'x
) );
dcl upper_00850 char
value( (
'4142434445464748'x
|| '494A4B4C4D4E4F50'x
|| '5152535455565758'x
|| '595A9A90B68EB78F'x
|| '80D2D3D4D8D7DE92'x
|| 'E299E3EAEB9DB5D6'x
|| 'E0E9A5C7D1E5E8ED'x
) );
dcl lower_00858 char
value( (
'6162636465666768'x
|| '696A6B6C6D6E6F70'x
|| '7172737475767778'x
|| '797A818283848586'x
|| '8788898A8B8C8D91'x
|| '93949596979BA0A1'x
|| 'A2A3A4C6D0E4E7EC'x
) );
dcl upper_00858 char
value( (
'4142434445464748'x
|| '494A4B4C4D4E4F50'x
|| '5152535455565758'x
|| '595A9A90B68EB78F'x
|| '80D2D3D4D8D7DE92'x
|| 'E299E3EAEB9DB5D6'x
|| 'E0E9A5C7D1E5E8ED'x
) );
dcl lower_00871 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '575870798DA1C0CB'x
|| 'CDCECFD0DBDCDDDE'x
) );
dcl upper_00871 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '7778807CAD5F4AEB'x
|| 'EDEEEF5AFBFCFDFE'x
) );
dcl lower_00920 char
value( (
'6162636465666768'x
|| '696A6B6C6D6E6F70'x
|| '7172737475767778'x
|| '797AE0E1E2E3E4E5'x
|| 'E6E7E8E9EAEBECED'x
|| 'EEEFF0F1F2F3F4F5'x
|| 'F6F8F9FAFBFCFE'x
) );
dcl upper_00920 char
value( (
'4142434445464748'x
|| '494A4B4C4D4E4F50'x
|| '5152535455565758'x
|| '595AC0C1C2C3C4C5'x
|| 'C6C7C8C9CACBCCCD'x
|| 'CECFD0D1D2D3D4D5'x
|| 'D6D8D9DADBDCDE'x
) );
dcl lower_01026 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4951525354555657'x
|| '586A709CA1C0CBCD'x
|| 'CECFD0DBDDDEE0'x
) );
dcl upper_01026 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6971727374757677'x
|| '787C809E7B4AEBED'x
|| 'EEEF5AFBFDFE7F'x
) );
dcl lower_01047 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_01047 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACBAAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_01140 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_01140 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_01141 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424445464748'x
|| '4951525354555657'x
|| '586A708C8D8E9CC0'x
|| 'CBCDCECFD0DBDDDE'x
) );
dcl upper_01141 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626465666768'x
|| '6971727374757677'x
|| '78E080ACADAE9E4A'x
|| 'EBEDEEEF5AFBFDFE'x
) );
dcl lower_01142 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454648'x
|| '4951525354555657'x
|| '586A8C8D8EA1C0CB'x
|| 'CCCDCECFD0DBDDDE'x
) );
dcl upper_01142 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656668'x
|| '6971727374757677'x
|| '787CACADAEFC7BEB'x
|| 'ECEDEEEF5BFBFDFE'x
) );
dcl lower_01143 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424445464849'x
|| '525354555657586A'x
|| '70798C8D8E9CA1C0'x
|| 'CBCDCECFD0DBDDDE'x
) );
dcl upper_01143 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626465666869'x
|| '727374757677787C'x
|| '80E0ACADAE9EFC7B'x
|| 'EBEDEEEF5BFBFDFE'x
) );
dcl lower_01144 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424345464749'x
|| '52535556575A6A70'x
|| '798C8D8E9CA1C0CB'x
|| 'CCCECFD0DBDCDEE0'x
) );
dcl upper_01144 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626365666769'x
|| '727375767771ED80'x
|| 'FDACADAE9E7864EB'x
|| 'ECEEEF74FBFCFE68'x
) );
dcl lower_01145 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4851525354555657'x
|| '586A708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_01145 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6871727374757677'x
|| '787B80ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_01146 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_01146 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_01147 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424345464749'x
|| '5253555657586A70'x
|| '7C8C8D8E9CC0CBCC'x
|| 'CDCECFD0DBDCDEE0'x
) );
dcl upper_01147 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626365666769'x
|| '727375767778FD80'x
|| '64ACADAE9E71EBEC'x
|| 'EDEEEF74FBFCFE68'x
) );
dcl lower_01148 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '5758708C8D8E9CCB'x
|| 'CCCDCECFDBDCDDDE'x
) );
dcl upper_01148 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '777880ACADAE9EEB'x
|| 'ECEDEEEFFBFCFDFE'x
) );
dcl lower_01149 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4849515253545556'x
|| '575870798DA1C0CB'x
|| 'CDCECFD0DBDCDDDE'x
) );
dcl upper_01149 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6869717273747576'x
|| '7778807CAD5F4AEB'x
|| 'EDEEEF5AFBFCFDFE'x
) );
dcl lower_01155 char
value( (
'8182838485868788'x
|| '8991929394959697'x
|| '9899A2A3A4A5A6A7'x
|| 'A8A9424344454647'x
|| '4951525354555657'x
|| '586A709CA1C0CBCD'x
|| 'CECFD0DBDDDEE0'x
) );
dcl upper_01155 char
value( (
'C1C2C3C4C5C6C7C8'x
|| 'C9D1D2D3D4D5D6D7'x
|| 'D8D9E2E3E4E5E6E7'x
|| 'E8E9626364656667'x
|| '6971727374757677'x
|| '787C809E7B4AEBED'x
|| 'EEEF5AFBFDFE7F'x
) );