3533 lines
58 KiB
Go
3533 lines
58 KiB
Go
package qrcode
|
|
|
|
const (
|
|
_VERSION_COUNT = 40 // (40 versions)
|
|
_VERSIONS_ITEM_COUNT = 160 // (40 versions x 4 error correction level)
|
|
)
|
|
|
|
// versions contains information about each QR Code version.
|
|
// NOTICE: item in version array MUST keep sorted according to
|
|
// QR Version sequential as the first key and Error Correction Level as the second (ASC).
|
|
var versions = []version{
|
|
{
|
|
Ver: 1,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 41,
|
|
AlphaNumeric: 25,
|
|
Byte: 17,
|
|
JP: 10,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 19,
|
|
ECBlockwordsPerBlock: 7,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 1,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 34,
|
|
AlphaNumeric: 20,
|
|
Byte: 14,
|
|
JP: 8,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 10,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 1,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 27,
|
|
AlphaNumeric: 16,
|
|
Byte: 11,
|
|
JP: 7,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 13,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 1,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 17,
|
|
AlphaNumeric: 10,
|
|
Byte: 7,
|
|
JP: 4,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 9,
|
|
ECBlockwordsPerBlock: 17,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 2,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 77,
|
|
AlphaNumeric: 47,
|
|
Byte: 32,
|
|
JP: 20,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 34,
|
|
ECBlockwordsPerBlock: 10,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 2,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 63,
|
|
AlphaNumeric: 38,
|
|
Byte: 26,
|
|
JP: 16,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 28,
|
|
ECBlockwordsPerBlock: 16,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 2,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 48,
|
|
AlphaNumeric: 29,
|
|
Byte: 20,
|
|
JP: 12,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 2,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 34,
|
|
AlphaNumeric: 20,
|
|
Byte: 14,
|
|
JP: 8,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 3,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 127,
|
|
AlphaNumeric: 77,
|
|
Byte: 53,
|
|
JP: 32,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 55,
|
|
ECBlockwordsPerBlock: 15,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 3,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 101,
|
|
AlphaNumeric: 61,
|
|
Byte: 42,
|
|
JP: 26,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 44,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 3,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 77,
|
|
AlphaNumeric: 47,
|
|
Byte: 32,
|
|
JP: 20,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 3,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 58,
|
|
AlphaNumeric: 35,
|
|
Byte: 24,
|
|
JP: 15,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 4,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 187,
|
|
AlphaNumeric: 114,
|
|
Byte: 78,
|
|
JP: 48,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 80,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 4,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 149,
|
|
AlphaNumeric: 90,
|
|
Byte: 62,
|
|
JP: 38,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 32,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 4,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 111,
|
|
AlphaNumeric: 67,
|
|
Byte: 46,
|
|
JP: 28,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 4,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 82,
|
|
AlphaNumeric: 50,
|
|
Byte: 34,
|
|
JP: 21,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 9,
|
|
ECBlockwordsPerBlock: 16,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 5,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 255,
|
|
AlphaNumeric: 154,
|
|
Byte: 106,
|
|
JP: 65,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 108,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 5,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 202,
|
|
AlphaNumeric: 122,
|
|
Byte: 84,
|
|
JP: 52,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 43,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 5,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 144,
|
|
AlphaNumeric: 87,
|
|
Byte: 60,
|
|
JP: 37,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 5,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 106,
|
|
AlphaNumeric: 64,
|
|
Byte: 44,
|
|
JP: 27,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 11,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 12,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 6,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 322,
|
|
AlphaNumeric: 195,
|
|
Byte: 134,
|
|
JP: 82,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 68,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 6,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 255,
|
|
AlphaNumeric: 154,
|
|
Byte: 106,
|
|
JP: 65,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 27,
|
|
ECBlockwordsPerBlock: 16,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 6,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 178,
|
|
AlphaNumeric: 108,
|
|
Byte: 74,
|
|
JP: 45,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 19,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 6,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 139,
|
|
AlphaNumeric: 84,
|
|
Byte: 58,
|
|
JP: 36,
|
|
},
|
|
RemainderBits: 7,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 7,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 370,
|
|
AlphaNumeric: 224,
|
|
Byte: 154,
|
|
JP: 95,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 78,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 7,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 293,
|
|
AlphaNumeric: 178,
|
|
Byte: 122,
|
|
JP: 75,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 31,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 7,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 207,
|
|
AlphaNumeric: 125,
|
|
Byte: 86,
|
|
JP: 53,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 7,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 154,
|
|
AlphaNumeric: 93,
|
|
Byte: 64,
|
|
JP: 39,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 8,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 461,
|
|
AlphaNumeric: 279,
|
|
Byte: 192,
|
|
JP: 118,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 97,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 8,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 365,
|
|
AlphaNumeric: 221,
|
|
Byte: 152,
|
|
JP: 93,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 38,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 39,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 8,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 259,
|
|
AlphaNumeric: 157,
|
|
Byte: 108,
|
|
JP: 66,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 18,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 19,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 8,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 202,
|
|
AlphaNumeric: 122,
|
|
Byte: 84,
|
|
JP: 52,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 9,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 552,
|
|
AlphaNumeric: 335,
|
|
Byte: 230,
|
|
JP: 141,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 9,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 432,
|
|
AlphaNumeric: 262,
|
|
Byte: 180,
|
|
JP: 111,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 36,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 37,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 9,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 312,
|
|
AlphaNumeric: 189,
|
|
Byte: 130,
|
|
JP: 80,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 9,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 235,
|
|
AlphaNumeric: 143,
|
|
Byte: 98,
|
|
JP: 60,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 12,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 10,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 652,
|
|
AlphaNumeric: 395,
|
|
Byte: 271,
|
|
JP: 167,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 68,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 69,
|
|
ECBlockwordsPerBlock: 18,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 10,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 513,
|
|
AlphaNumeric: 311,
|
|
Byte: 213,
|
|
JP: 131,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 43,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 44,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 10,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 364,
|
|
AlphaNumeric: 221,
|
|
Byte: 151,
|
|
JP: 93,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 19,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 20,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 10,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 288,
|
|
AlphaNumeric: 174,
|
|
Byte: 119,
|
|
JP: 74,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 11,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 772,
|
|
AlphaNumeric: 468,
|
|
Byte: 321,
|
|
JP: 198,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 81,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 11,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 604,
|
|
AlphaNumeric: 366,
|
|
Byte: 251,
|
|
JP: 155,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 50,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 51,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 11,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 427,
|
|
AlphaNumeric: 259,
|
|
Byte: 177,
|
|
JP: 109,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 11,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 331,
|
|
AlphaNumeric: 200,
|
|
Byte: 137,
|
|
JP: 85,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 12,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 12,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 883,
|
|
AlphaNumeric: 535,
|
|
Byte: 367,
|
|
JP: 226,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 92,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 93,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 12,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 691,
|
|
AlphaNumeric: 419,
|
|
Byte: 287,
|
|
JP: 177,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 36,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 37,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 12,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 489,
|
|
AlphaNumeric: 296,
|
|
Byte: 203,
|
|
JP: 125,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 20,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 21,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 12,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 374,
|
|
AlphaNumeric: 227,
|
|
Byte: 155,
|
|
JP: 96,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 13,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1022,
|
|
AlphaNumeric: 619,
|
|
Byte: 425,
|
|
JP: 262,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 107,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 13,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 796,
|
|
AlphaNumeric: 483,
|
|
Byte: 331,
|
|
JP: 204,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 37,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 38,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 13,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 580,
|
|
AlphaNumeric: 352,
|
|
Byte: 241,
|
|
JP: 149,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 20,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 21,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 13,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 427,
|
|
AlphaNumeric: 259,
|
|
Byte: 177,
|
|
JP: 109,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 12,
|
|
NumDataCodewords: 11,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 12,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 14,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1101,
|
|
AlphaNumeric: 667,
|
|
Byte: 458,
|
|
JP: 282,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 14,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 871,
|
|
AlphaNumeric: 528,
|
|
Byte: 362,
|
|
JP: 223,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 40,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 41,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 14,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 621,
|
|
AlphaNumeric: 376,
|
|
Byte: 258,
|
|
JP: 159,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 20,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 14,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 468,
|
|
AlphaNumeric: 283,
|
|
Byte: 194,
|
|
JP: 120,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 12,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 15,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1250,
|
|
AlphaNumeric: 758,
|
|
Byte: 520,
|
|
JP: 320,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 87,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 88,
|
|
ECBlockwordsPerBlock: 22,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 15,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 991,
|
|
AlphaNumeric: 600,
|
|
Byte: 412,
|
|
JP: 254,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 41,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 42,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 15,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 703,
|
|
AlphaNumeric: 426,
|
|
Byte: 292,
|
|
JP: 180,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 15,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 530,
|
|
AlphaNumeric: 321,
|
|
Byte: 220,
|
|
JP: 136,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 12,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 16,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1408,
|
|
AlphaNumeric: 854,
|
|
Byte: 586,
|
|
JP: 361,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 98,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 99,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 16,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1082,
|
|
AlphaNumeric: 656,
|
|
Byte: 450,
|
|
JP: 277,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 45,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 16,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 775,
|
|
AlphaNumeric: 470,
|
|
Byte: 322,
|
|
JP: 198,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 15,
|
|
NumDataCodewords: 19,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 20,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 16,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 602,
|
|
AlphaNumeric: 365,
|
|
Byte: 250,
|
|
JP: 154,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 17,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1548,
|
|
AlphaNumeric: 938,
|
|
Byte: 644,
|
|
JP: 397,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 107,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 108,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 17,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1212,
|
|
AlphaNumeric: 734,
|
|
Byte: 504,
|
|
JP: 310,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 17,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 876,
|
|
AlphaNumeric: 531,
|
|
Byte: 364,
|
|
JP: 224,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 15,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 17,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 674,
|
|
AlphaNumeric: 408,
|
|
Byte: 280,
|
|
JP: 173,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 18,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1725,
|
|
AlphaNumeric: 1046,
|
|
Byte: 718,
|
|
JP: 442,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 120,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 121,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 18,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1346,
|
|
AlphaNumeric: 816,
|
|
Byte: 560,
|
|
JP: 345,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 9,
|
|
NumDataCodewords: 43,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 44,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 18,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 948,
|
|
AlphaNumeric: 574,
|
|
Byte: 394,
|
|
JP: 243,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 18,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 746,
|
|
AlphaNumeric: 452,
|
|
Byte: 310,
|
|
JP: 191,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 19,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 1903,
|
|
AlphaNumeric: 1153,
|
|
Byte: 792,
|
|
JP: 488,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 113,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 114,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 19,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1500,
|
|
AlphaNumeric: 909,
|
|
Byte: 624,
|
|
JP: 384,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 44,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 45,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 19,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1063,
|
|
AlphaNumeric: 644,
|
|
Byte: 442,
|
|
JP: 272,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 21,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 19,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 813,
|
|
AlphaNumeric: 493,
|
|
Byte: 338,
|
|
JP: 208,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 9,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 16,
|
|
NumDataCodewords: 14,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 20,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 2061,
|
|
AlphaNumeric: 1249,
|
|
Byte: 858,
|
|
JP: 528,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 107,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 108,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 20,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1600,
|
|
AlphaNumeric: 970,
|
|
Byte: 666,
|
|
JP: 410,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 41,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 42,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 20,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1159,
|
|
AlphaNumeric: 702,
|
|
Byte: 482,
|
|
JP: 297,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 15,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 20,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 919,
|
|
AlphaNumeric: 557,
|
|
Byte: 382,
|
|
JP: 235,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 15,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 21,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 2232,
|
|
AlphaNumeric: 1352,
|
|
Byte: 929,
|
|
JP: 572,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 117,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 21,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1708,
|
|
AlphaNumeric: 1035,
|
|
Byte: 711,
|
|
JP: 438,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 42,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 21,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1224,
|
|
AlphaNumeric: 742,
|
|
Byte: 509,
|
|
JP: 314,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 21,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 969,
|
|
AlphaNumeric: 587,
|
|
Byte: 403,
|
|
JP: 248,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 22,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 2409,
|
|
AlphaNumeric: 1460,
|
|
Byte: 1003,
|
|
JP: 618,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 111,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 112,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 22,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 1872,
|
|
AlphaNumeric: 1134,
|
|
Byte: 779,
|
|
JP: 480,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 22,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1358,
|
|
AlphaNumeric: 823,
|
|
Byte: 565,
|
|
JP: 348,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 16,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 22,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1056,
|
|
AlphaNumeric: 640,
|
|
Byte: 439,
|
|
JP: 270,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 34,
|
|
NumDataCodewords: 13,
|
|
ECBlockwordsPerBlock: 24,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 23,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 2620,
|
|
AlphaNumeric: 1588,
|
|
Byte: 1091,
|
|
JP: 672,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 121,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 122,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 23,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 2059,
|
|
AlphaNumeric: 1248,
|
|
Byte: 857,
|
|
JP: 528,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 23,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1468,
|
|
AlphaNumeric: 890,
|
|
Byte: 611,
|
|
JP: 376,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 23,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1108,
|
|
AlphaNumeric: 672,
|
|
Byte: 461,
|
|
JP: 284,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 16,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 24,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 2812,
|
|
AlphaNumeric: 1704,
|
|
Byte: 1171,
|
|
JP: 721,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 117,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 118,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 24,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 2188,
|
|
AlphaNumeric: 1326,
|
|
Byte: 911,
|
|
JP: 561,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 45,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 24,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1588,
|
|
AlphaNumeric: 963,
|
|
Byte: 661,
|
|
JP: 407,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 16,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 24,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1228,
|
|
AlphaNumeric: 744,
|
|
Byte: 511,
|
|
JP: 315,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 30,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 25,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 3057,
|
|
AlphaNumeric: 1853,
|
|
Byte: 1273,
|
|
JP: 784,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 106,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 107,
|
|
ECBlockwordsPerBlock: 26,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 25,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 2395,
|
|
AlphaNumeric: 1451,
|
|
Byte: 997,
|
|
JP: 614,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 25,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1718,
|
|
AlphaNumeric: 1041,
|
|
Byte: 715,
|
|
JP: 440,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 22,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 25,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1286,
|
|
AlphaNumeric: 779,
|
|
Byte: 535,
|
|
JP: 330,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 22,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 26,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 3283,
|
|
AlphaNumeric: 1990,
|
|
Byte: 1367,
|
|
JP: 842,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 114,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 26,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 2544,
|
|
AlphaNumeric: 1542,
|
|
Byte: 1059,
|
|
JP: 652,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 26,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1804,
|
|
AlphaNumeric: 1094,
|
|
Byte: 751,
|
|
JP: 462,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 28,
|
|
NumDataCodewords: 22,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 26,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1425,
|
|
AlphaNumeric: 864,
|
|
Byte: 593,
|
|
JP: 365,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 33,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 27,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 3517,
|
|
AlphaNumeric: 2132,
|
|
Byte: 1465,
|
|
JP: 902,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 122,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 123,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 27,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 2701,
|
|
AlphaNumeric: 1637,
|
|
Byte: 1125,
|
|
JP: 692,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 22,
|
|
NumDataCodewords: 45,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 27,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 1933,
|
|
AlphaNumeric: 1172,
|
|
Byte: 805,
|
|
JP: 496,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 8,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 26,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 27,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1501,
|
|
AlphaNumeric: 910,
|
|
Byte: 625,
|
|
JP: 385,
|
|
},
|
|
RemainderBits: 4,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 12,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 28,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 28,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 3669,
|
|
AlphaNumeric: 2223,
|
|
Byte: 1528,
|
|
JP: 940,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 117,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 118,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 28,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 2857,
|
|
AlphaNumeric: 1732,
|
|
Byte: 1190,
|
|
JP: 732,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 45,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 23,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 28,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2085,
|
|
AlphaNumeric: 1263,
|
|
Byte: 868,
|
|
JP: 534,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 31,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 28,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1581,
|
|
AlphaNumeric: 958,
|
|
Byte: 658,
|
|
JP: 405,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 31,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 29,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 3909,
|
|
AlphaNumeric: 2369,
|
|
Byte: 1628,
|
|
JP: 1002,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 117,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 29,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 3035,
|
|
AlphaNumeric: 1839,
|
|
Byte: 1264,
|
|
JP: 778,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 21,
|
|
NumDataCodewords: 45,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 29,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2181,
|
|
AlphaNumeric: 1322,
|
|
Byte: 908,
|
|
JP: 559,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 23,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 37,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 29,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1677,
|
|
AlphaNumeric: 1016,
|
|
Byte: 698,
|
|
JP: 430,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 26,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 30,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 4158,
|
|
AlphaNumeric: 2520,
|
|
Byte: 1732,
|
|
JP: 1066,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 5,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 30,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 3289,
|
|
AlphaNumeric: 1994,
|
|
Byte: 1370,
|
|
JP: 843,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 30,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2358,
|
|
AlphaNumeric: 1429,
|
|
Byte: 982,
|
|
JP: 604,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 15,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 25,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 30,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1782,
|
|
AlphaNumeric: 1080,
|
|
Byte: 742,
|
|
JP: 457,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 23,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 25,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 31,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 4417,
|
|
AlphaNumeric: 2677,
|
|
Byte: 1840,
|
|
JP: 1132,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 3,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 31,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 3486,
|
|
AlphaNumeric: 2113,
|
|
Byte: 1452,
|
|
JP: 894,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 29,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 31,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2473,
|
|
AlphaNumeric: 1499,
|
|
Byte: 1030,
|
|
JP: 634,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 42,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 31,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 1897,
|
|
AlphaNumeric: 1150,
|
|
Byte: 790,
|
|
JP: 486,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 23,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 28,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 32,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 4686,
|
|
AlphaNumeric: 2840,
|
|
Byte: 1952,
|
|
JP: 1201,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 32,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 3693,
|
|
AlphaNumeric: 2238,
|
|
Byte: 1538,
|
|
JP: 947,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 23,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 32,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2670,
|
|
AlphaNumeric: 1618,
|
|
Byte: 1112,
|
|
JP: 684,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 35,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 32,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2022,
|
|
AlphaNumeric: 1226,
|
|
Byte: 842,
|
|
JP: 518,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 35,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 33,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 4965,
|
|
AlphaNumeric: 3009,
|
|
Byte: 2068,
|
|
JP: 1273,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 33,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 3909,
|
|
AlphaNumeric: 2369,
|
|
Byte: 1628,
|
|
JP: 1002,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 21,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 33,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2805,
|
|
AlphaNumeric: 1700,
|
|
Byte: 1168,
|
|
JP: 719,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 29,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 33,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2157,
|
|
AlphaNumeric: 1307,
|
|
Byte: 898,
|
|
JP: 553,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 11,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 46,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 34,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 5253,
|
|
AlphaNumeric: 3183,
|
|
Byte: 2188,
|
|
JP: 1347,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 115,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 116,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 34,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 4134,
|
|
AlphaNumeric: 2506,
|
|
Byte: 1722,
|
|
JP: 1060,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 23,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 34,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 2949,
|
|
AlphaNumeric: 1787,
|
|
Byte: 1228,
|
|
JP: 756,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 44,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 34,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2301,
|
|
AlphaNumeric: 1394,
|
|
Byte: 958,
|
|
JP: 590,
|
|
},
|
|
RemainderBits: 3,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 59,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 1,
|
|
NumDataCodewords: 17,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 35,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 5529,
|
|
AlphaNumeric: 3351,
|
|
Byte: 2303,
|
|
JP: 1417,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 12,
|
|
NumDataCodewords: 121,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 122,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 35,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 4343,
|
|
AlphaNumeric: 2632,
|
|
Byte: 1809,
|
|
JP: 1113,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 12,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 26,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 35,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 3081,
|
|
AlphaNumeric: 1867,
|
|
Byte: 1283,
|
|
JP: 790,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 39,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 35,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2361,
|
|
AlphaNumeric: 1431,
|
|
Byte: 983,
|
|
JP: 605,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 22,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 41,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 36,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 5836,
|
|
AlphaNumeric: 3537,
|
|
Byte: 2431,
|
|
JP: 1496,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 121,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 122,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 36,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 4588,
|
|
AlphaNumeric: 2780,
|
|
Byte: 1911,
|
|
JP: 1176,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 34,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 36,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 3244,
|
|
AlphaNumeric: 1966,
|
|
Byte: 1351,
|
|
JP: 832,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 46,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 36,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2524,
|
|
AlphaNumeric: 1530,
|
|
Byte: 1051,
|
|
JP: 647,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 2,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 64,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 37,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 6153,
|
|
AlphaNumeric: 3729,
|
|
Byte: 2563,
|
|
JP: 1577,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 17,
|
|
NumDataCodewords: 122,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 123,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 37,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 4775,
|
|
AlphaNumeric: 2894,
|
|
Byte: 1989,
|
|
JP: 1224,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 29,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 37,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 3417,
|
|
AlphaNumeric: 2071,
|
|
Byte: 1423,
|
|
JP: 876,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 49,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 37,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2625,
|
|
AlphaNumeric: 1591,
|
|
Byte: 1093,
|
|
JP: 673,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 24,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 46,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 38,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 6479,
|
|
AlphaNumeric: 3927,
|
|
Byte: 2699,
|
|
JP: 1661,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 122,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 18,
|
|
NumDataCodewords: 123,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 38,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 5039,
|
|
AlphaNumeric: 3054,
|
|
Byte: 2099,
|
|
JP: 1292,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 13,
|
|
NumDataCodewords: 46,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 32,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 38,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 3599,
|
|
AlphaNumeric: 2181,
|
|
Byte: 1499,
|
|
JP: 923,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 48,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 14,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 38,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2735,
|
|
AlphaNumeric: 1658,
|
|
Byte: 1139,
|
|
JP: 701,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 42,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 32,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 39,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 6743,
|
|
AlphaNumeric: 4087,
|
|
Byte: 2809,
|
|
JP: 1729,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 20,
|
|
NumDataCodewords: 117,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 4,
|
|
NumDataCodewords: 118,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 39,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 5313,
|
|
AlphaNumeric: 3220,
|
|
Byte: 2213,
|
|
JP: 1362,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 40,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 7,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 39,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 3791,
|
|
AlphaNumeric: 2298,
|
|
Byte: 1579,
|
|
JP: 972,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 43,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 22,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 39,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 2927,
|
|
AlphaNumeric: 1774,
|
|
Byte: 1219,
|
|
JP: 750,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 10,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 67,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 40,
|
|
ECLevel: 1,
|
|
Cap: capacity{
|
|
Numeric: 7089,
|
|
AlphaNumeric: 4296,
|
|
Byte: 2953,
|
|
JP: 1817,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 19,
|
|
NumDataCodewords: 118,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 6,
|
|
NumDataCodewords: 119,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 40,
|
|
ECLevel: 2,
|
|
Cap: capacity{
|
|
Numeric: 5596,
|
|
AlphaNumeric: 3391,
|
|
Byte: 2331,
|
|
JP: 1435,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 18,
|
|
NumDataCodewords: 47,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
{
|
|
NumBlocks: 31,
|
|
NumDataCodewords: 48,
|
|
ECBlockwordsPerBlock: 28,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 40,
|
|
ECLevel: 3,
|
|
Cap: capacity{
|
|
Numeric: 3993,
|
|
AlphaNumeric: 2420,
|
|
Byte: 1663,
|
|
JP: 1024,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 34,
|
|
NumDataCodewords: 24,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 34,
|
|
NumDataCodewords: 25,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Ver: 40,
|
|
ECLevel: 4,
|
|
Cap: capacity{
|
|
Numeric: 3057,
|
|
AlphaNumeric: 1852,
|
|
Byte: 1273,
|
|
JP: 784,
|
|
},
|
|
RemainderBits: 0,
|
|
Groups: []group{
|
|
{
|
|
NumBlocks: 20,
|
|
NumDataCodewords: 15,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
{
|
|
NumBlocks: 61,
|
|
NumDataCodewords: 16,
|
|
ECBlockwordsPerBlock: 30,
|
|
},
|
|
},
|
|
},
|
|
}
|