0 | ||| Base64 Internals
  1 | module Data.String.Base64.Internal
  2 |
  3 | import Data.Array
  4 | import Data.Array.Core
  5 | import Data.Array.Indexed
  6 | import Data.Buffer.Core
  7 | import Data.Buffer.Indexed
  8 |
  9 | export
 10 | char62 : Char
 11 | char62 = '+'
 12 |
 13 | export
 14 | char63 : Char
 15 | char63 = '/'
 16 |
 17 | export
 18 | charpad : Char
 19 | charpad = '='
 20 |
 21 | export
 22 | e0a : Array Char
 23 | e0a =
 24 |   let e0alist : List Char
 25 |       e0alist = [ 'A',  'A',  'A',  'A',  'B',  'B',  'B',  'B',  'C',  'C',
 26 |                   'C',  'C',  'D',  'D',  'D',  'D',  'E',  'E',  'E',  'E',
 27 |                   'F',  'F',  'F',  'F',  'G',  'G',  'G',  'G',  'H',  'H',
 28 |                   'H',  'H',  'I',  'I',  'I',  'I',  'J',  'J',  'J',  'J',
 29 |                   'K',  'K',  'K',  'K',  'L',  'L',  'L',  'L',  'M',  'M',
 30 |                   'M',  'M',  'N',  'N',  'N',  'N',  'O',  'O',  'O',  'O',
 31 |                   'P',  'P',  'P',  'P',  'Q',  'Q',  'Q',  'Q',  'R',  'R',
 32 |                   'R',  'R',  'S',  'S',  'S',  'S',  'T',  'T',  'T',  'T',
 33 |                   'U',  'U',  'U',  'U',  'V',  'V',  'V',  'V',  'W',  'W',
 34 |                   'W',  'W',  'X',  'X',  'X',  'X',  'Y',  'Y',  'Y',  'Y',
 35 |                   'Z',  'Z',  'Z',  'Z',  'a',  'a',  'a',  'a',  'b',  'b',
 36 |                   'b',  'b',  'c',  'c',  'c',  'c',  'd',  'd',  'd',  'd',
 37 |                   'e',  'e',  'e',  'e',  'f',  'f',  'f',  'f',  'g',  'g',
 38 |                   'g',  'g',  'h',  'h',  'h',  'h',  'i',  'i',  'i',  'i',
 39 |                   'j',  'j',  'j',  'j',  'k',  'k',  'k',  'k',  'l',  'l',
 40 |                   'l',  'l',  'm',  'm',  'm',  'm',  'n',  'n',  'n',  'n',
 41 |                   'o',  'o',  'o',  'o',  'p',  'p',  'p',  'p',  'q',  'q',
 42 |                   'q',  'q',  'r',  'r',  'r',  'r',  's',  's',  's',  's',
 43 |                   't',  't',  't',  't',  'u',  'u',  'u',  'u',  'v',  'v',
 44 |                   'v',  'v',  'w',  'w',  'w',  'w',  'x',  'x',  'x',  'x',
 45 |                   'y',  'y',  'y',  'y',  'z',  'z',  'z',  'z',  '0',  '0',
 46 |                   '0',  '0',  '1',  '1',  '1',  '1',  '2',  '2',  '2',  '2',
 47 |                   '3',  '3',  '3',  '3',  '4',  '4',  '4',  '4',  '5',  '5',
 48 |                   '5',  '5',  '6',  '6',  '6',  '6',  '7',  '7',  '7',  '7',
 49 |                   '8',  '8',  '8',  '8',  '9',  '9',  '9',  '9',  '+',  '+',
 50 |                   '+',  '+',  '/',  '/',  '/',  '/'
 51 |                 ]
 52 |     in fromList e0alist
 53 |
 54 | export
 55 | e1a : Array Char
 56 | e1a =
 57 |   let e1alist = [ 'A',  'B',  'C',  'D',  'E',  'F',  'G',  'H',  'I',  'J',
 58 |                   'K',  'L',  'M',  'N',  'O',  'P',  'Q',  'R',  'S',  'T',
 59 |                   'U',  'V',  'W',  'X',  'Y',  'Z',  'a',  'b',  'c',  'd',
 60 |                   'e',  'f',  'g',  'h',  'i',  'j',  'k',  'l',  'm',  'n',
 61 |                   'o',  'p',  'q',  'r',  's',  't',  'u',  'v',  'w',  'x',
 62 |                   'y',  'z',  '0',  '1',  '2',  '3',  '4',  '5',  '6',  '7',
 63 |                   '8',  '9',  '+',  '/',  'A',  'B',  'C',  'D',  'E',  'F',
 64 |                   'G',  'H',  'I',  'J',  'K',  'L',  'M',  'N',  'O',  'P',
 65 |                   'Q',  'R',  'S',  'T',  'U',  'V',  'W',  'X',  'Y',  'Z',
 66 |                   'a',  'b',  'c',  'd',  'e',  'f',  'g',  'h',  'i',  'j',
 67 |                   'k',  'l',  'm',  'n',  'o',  'p',  'q',  'r',  's',  't',
 68 |                   'u',  'v',  'w',  'x',  'y',  'z',  '0',  '1',  '2',  '3',
 69 |                   '4',  '5',  '6',  '7',  '8',  '9',  '+',  '/',  'A',  'B',
 70 |                   'C',  'D',  'E',  'F',  'G',  'H',  'I',  'J',  'K',  'L',
 71 |                   'M',  'N',  'O',  'P',  'Q',  'R',  'S',  'T',  'U',  'V',
 72 |                   'W',  'X',  'Y',  'Z',  'a',  'b',  'c',  'd',  'e',  'f',
 73 |                   'g',  'h',  'i',  'j',  'k',  'l',  'm',  'n',  'o',  'p',
 74 |                   'q',  'r',  's',  't',  'u',  'v',  'w',  'x',  'y',  'z',
 75 |                   '0',  '1',  '2',  '3',  '4',  '5',  '6',  '7',  '8',  '9',
 76 |                   '+',  '/',  'A',  'B',  'C',  'D',  'E',  'F',  'G',  'H',
 77 |                   'I',  'J',  'K',  'L',  'M',  'N',  'O',  'P',  'Q',  'R',
 78 |                   'S',  'T',  'U',  'V',  'W',  'X',  'Y',  'Z',  'a',  'b',
 79 |                   'c',  'd',  'e',  'f',  'g',  'h',  'i',  'j',  'k',  'l',
 80 |                   'm',  'n',  'o',  'p',  'q',  'r',  's',  't',  'u',  'v',
 81 |                   'w',  'x',  'y',  'z',  '0',  '1',  '2',  '3',  '4',  '5',
 82 |                   '6',  '7',  '8',  '9',  '+',  '/'
 83 |                 ]
 84 |     in fromList e1alist
 85 |
 86 | export
 87 | e2a : Array Char
 88 | e2a =
 89 |   let e2alist = [ 'A',  'B',  'C',  'D',  'E',  'F',  'G',  'H',  'I',  'J',
 90 |                   'K',  'L',  'M',  'N',  'O',  'P',  'Q',  'R',  'S',  'T',
 91 |                   'U',  'V',  'W',  'X',  'Y',  'Z',  'a',  'b',  'c',  'd',
 92 |                   'e',  'f',  'g',  'h',  'i',  'j',  'k',  'l',  'm',  'n',
 93 |                   'o',  'p',  'q',  'r',  's',  't',  'u',  'v',  'w',  'x',
 94 |                   'y',  'z',  '0',  '1',  '2',  '3',  '4',  '5',  '6',  '7',
 95 |                   '8',  '9',  '+',  '/',  'A',  'B',  'C',  'D',  'E',  'F',
 96 |                   'G',  'H',  'I',  'J',  'K',  'L',  'M',  'N',  'O',  'P',
 97 |                   'Q',  'R',  'S',  'T',  'U',  'V',  'W',  'X',  'Y',  'Z',
 98 |                   'a',  'b',  'c',  'd',  'e',  'f',  'g',  'h',  'i',  'j',
 99 |                   'k',  'l',  'm',  'n',  'o',  'p',  'q',  'r',  's',  't',
100 |                   'u',  'v',  'w',  'x',  'y',  'z',  '0',  '1',  '2',  '3',
101 |                   '4',  '5',  '6',  '7',  '8',  '9',  '+',  '/',  'A',  'B',
102 |                   'C',  'D',  'E',  'F',  'G',  'H',  'I',  'J',  'K',  'L',
103 |                   'M',  'N',  'O',  'P',  'Q',  'R',  'S',  'T',  'U',  'V',
104 |                   'W',  'X',  'Y',  'Z',  'a',  'b',  'c',  'd',  'e',  'f',
105 |                   'g',  'h',  'i',  'j',  'k',  'l',  'm',  'n',  'o',  'p',
106 |                   'q',  'r',  's',  't',  'u',  'v',  'w',  'x',  'y',  'z',
107 |                   '0',  '1',  '2',  '3',  '4',  '5',  '6',  '7',  '8',  '9',
108 |                   '+',  '/',  'A',  'B',  'C',  'D',  'E',  'F',  'G',  'H',
109 |                   'I',  'J',  'K',  'L',  'M',  'N',  'O',  'P',  'Q',  'R',
110 |                   'S',  'T',  'U',  'V',  'W',  'X',  'Y',  'Z',  'a',  'b',
111 |                   'c',  'd',  'e',  'f',  'g',  'h',  'i',  'j',  'k',  'l',
112 |                   'm',  'n',  'o',  'p',  'q',  'r',  's',  't',  'u',  'v',
113 |                   'w',  'x',  'y',  'z',  '0',  '1',  '2',  '3',  '4',  '5',
114 |                   '6',  '7',  '8',  '9',  '+',  '/'
115 |                 ]
116 |     in fromList e2alist
117 |
118 | export
119 | d0a : Array Bits32
120 | d0a =
121 |   let d0alist = [ 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
122 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
123 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
124 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
125 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
126 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
127 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
128 |                   0x01ffffff, 0x000000f8, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x000000fc,
129 |                   0x000000d0, 0x000000d4, 0x000000d8, 0x000000dc, 0x000000e0, 0x000000e4,
130 |                   0x000000e8, 0x000000ec, 0x000000f0, 0x000000f4, 0x01ffffff, 0x01ffffff,
131 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x00000000,
132 |                   0x00000004, 0x00000008, 0x0000000c, 0x00000010, 0x00000014, 0x00000018,
133 |                   0x0000001c, 0x00000020, 0x00000024, 0x00000028, 0x0000002c, 0x00000030,
134 |                   0x00000034, 0x00000038, 0x0000003c, 0x00000040, 0x00000044, 0x00000048,
135 |                   0x0000004c, 0x00000050, 0x00000054, 0x00000058, 0x0000005c, 0x00000060,
136 |                   0x00000064, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
137 |                   0x01ffffff, 0x00000068, 0x0000006c, 0x00000070, 0x00000074, 0x00000078,
138 |                   0x0000007c, 0x00000080, 0x00000084, 0x00000088, 0x0000008c, 0x00000090,
139 |                   0x00000094, 0x00000098, 0x0000009c, 0x000000a0, 0x000000a4, 0x000000a8,
140 |                   0x000000ac, 0x000000b0, 0x000000b4, 0x000000b8, 0x000000bc, 0x000000c0,
141 |                   0x000000c4, 0x000000c8, 0x000000cc, 0x01ffffff, 0x01ffffff, 0x01ffffff,
142 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
143 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
144 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
145 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
146 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
147 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
148 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
149 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
150 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
151 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
152 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
153 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
154 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
155 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
156 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
157 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
158 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
159 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
160 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
161 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
162 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
163 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff
164 |                 ]
165 |     in fromList d0alist
166 |
167 | export
168 | d1a : Array Bits32
169 | d1a =
170 |   let d1alist = [ 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
171 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
172 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
173 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
174 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
175 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
176 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
177 |                   0x01ffffff, 0x0000e003, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x0000f003,
178 |                   0x00004003, 0x00005003, 0x00006003, 0x00007003, 0x00008003, 0x00009003,
179 |                   0x0000a003, 0x0000b003, 0x0000c003, 0x0000d003, 0x01ffffff, 0x01ffffff,
180 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x00000000,
181 |                   0x00001000, 0x00002000, 0x00003000, 0x00004000, 0x00005000, 0x00006000,
182 |                   0x00007000, 0x00008000, 0x00009000, 0x0000a000, 0x0000b000, 0x0000c000,
183 |                   0x0000d000, 0x0000e000, 0x0000f000, 0x00000001, 0x00001001, 0x00002001,
184 |                   0x00003001, 0x00004001, 0x00005001, 0x00006001, 0x00007001, 0x00008001,
185 |                   0x00009001, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
186 |                   0x01ffffff, 0x0000a001, 0x0000b001, 0x0000c001, 0x0000d001, 0x0000e001,
187 |                   0x0000f001, 0x00000002, 0x00001002, 0x00002002, 0x00003002, 0x00004002,
188 |                   0x00005002, 0x00006002, 0x00007002, 0x00008002, 0x00009002, 0x0000a002,
189 |                   0x0000b002, 0x0000c002, 0x0000d002, 0x0000e002, 0x0000f002, 0x00000003,
190 |                   0x00001003, 0x00002003, 0x00003003, 0x01ffffff, 0x01ffffff, 0x01ffffff,
191 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
192 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
193 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
194 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
195 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
196 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
197 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
198 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
199 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
200 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
201 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
202 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
203 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
204 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
205 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
206 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
207 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
208 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
209 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
210 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
211 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
212 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff
213 |                 ]
214 |     in fromList d1alist
215 |
216 | export
217 | d2a : Array Bits32
218 | d2a =
219 |   let d2alist = [ 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
220 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
221 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
222 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
223 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
224 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
225 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
226 |                   0x01ffffff, 0x00800f00, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x00c00f00,
227 |                   0x00000d00, 0x00400d00, 0x00800d00, 0x00c00d00, 0x00000e00, 0x00400e00,
228 |                   0x00800e00, 0x00c00e00, 0x00000f00, 0x00400f00, 0x01ffffff, 0x01ffffff,
229 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x00000000,
230 |                   0x00400000, 0x00800000, 0x00c00000, 0x00000100, 0x00400100, 0x00800100,
231 |                   0x00c00100, 0x00000200, 0x00400200, 0x00800200, 0x00c00200, 0x00000300,
232 |                   0x00400300, 0x00800300, 0x00c00300, 0x00000400, 0x00400400, 0x00800400,
233 |                   0x00c00400, 0x00000500, 0x00400500, 0x00800500, 0x00c00500, 0x00000600,
234 |                   0x00400600, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
235 |                   0x01ffffff, 0x00800600, 0x00c00600, 0x00000700, 0x00400700, 0x00800700,
236 |                   0x00c00700, 0x00000800, 0x00400800, 0x00800800, 0x00c00800, 0x00000900,
237 |                   0x00400900, 0x00800900, 0x00c00900, 0x00000a00, 0x00400a00, 0x00800a00,
238 |                   0x00c00a00, 0x00000b00, 0x00400b00, 0x00800b00, 0x00c00b00, 0x00000c00,
239 |                   0x00400c00, 0x00800c00, 0x00c00c00, 0x01ffffff, 0x01ffffff, 0x01ffffff,
240 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
241 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
242 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
243 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
244 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
245 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
246 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
247 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
248 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
249 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
250 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
251 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
252 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
253 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
254 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
255 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
256 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
257 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
258 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
259 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
260 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
261 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff
262 |                 ]
263 |     in fromList d2alist
264 |
265 | export
266 | d3a : Array Bits32
267 | d3a =
268 |   let d3alist = [ 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
269 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
270 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
271 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
272 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
273 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
274 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
275 |                   0x01ffffff, 0x003e0000, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x003f0000,
276 |                   0x00340000, 0x00350000, 0x00360000, 0x00370000, 0x00380000, 0x00390000,
277 |                   0x003a0000, 0x003b0000, 0x003c0000, 0x003d0000, 0x01ffffff, 0x01ffffff,
278 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x00000000,
279 |                   0x00010000, 0x00020000, 0x00030000, 0x00040000, 0x00050000, 0x00060000,
280 |                   0x00070000, 0x00080000, 0x00090000, 0x000a0000, 0x000b0000, 0x000c0000,
281 |                   0x000d0000, 0x000e0000, 0x000f0000, 0x00100000, 0x00110000, 0x00120000,
282 |                   0x00130000, 0x00140000, 0x00150000, 0x00160000, 0x00170000, 0x00180000,
283 |                   0x00190000, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
284 |                   0x01ffffff, 0x001a0000, 0x001b0000, 0x001c0000, 0x001d0000, 0x001e0000,
285 |                   0x001f0000, 0x00200000, 0x00210000, 0x00220000, 0x00230000, 0x00240000,
286 |                   0x00250000, 0x00260000, 0x00270000, 0x00280000, 0x00290000, 0x002a0000,
287 |                   0x002b0000, 0x002c0000, 0x002d0000, 0x002e0000, 0x002f0000, 0x00300000,
288 |                   0x00310000, 0x00320000, 0x00330000, 0x01ffffff, 0x01ffffff, 0x01ffffff,
289 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
290 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
291 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
292 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
293 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
294 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
295 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
296 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
297 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
298 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
299 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
300 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
301 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
302 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
303 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
304 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
305 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
306 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
307 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
308 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
309 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff,
310 |                   0x01ffffff, 0x01ffffff, 0x01ffffff, 0x01ffffff
311 |                 ]
312 |   in fromList d3alist
313 |