Coverage Report

Created: 2025-06-09 08:44

/src/gdal/frmts/aigrid/aigccitt.c
Line
Count
Source (jump to first uncovered line)
1
/******************************************************************************
2
 *
3
 * Project:  Arc/Info Binary Grid Translator
4
 * Purpose:  Code for decoding CCITT RLE (G1) compressed data.
5
 * Author:   Frank Warmerdam, warmerdam@pobox.com
6
 *           Code derived from libtiff (tif_fax3), which originally was
7
 *           derived from code by Frank Cringle in viewfax.
8
 *
9
 ******************************************************************************
10
 * Copyright (c) 2002 Frank Warmerdam <warmerdam@pobox.com>
11
 * Copyright (c) 1990-1997 Sam Leffler
12
 * Copyright (c) 1991-1997 Silicon Graphics, Inc.
13
 * Copyright (c) 2009-2013, Even Rouault <even dot rouault at spatialys.com>
14
 *
15
 * Permission to use, copy, modify, distribute, and sell this software and
16
 * its documentation for any purpose is hereby granted without fee, provided
17
 * that (i) the above copyright notices and this permission notice appear in
18
 * all copies of the software and related documentation, and (ii) the names of
19
 * Sam Leffler and Silicon Graphics may not be used in any advertising or
20
 * publicity relating to the software without the specific, prior written
21
 * permission of Sam Leffler and Silicon Graphics.
22
 *
23
 * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
24
 * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
25
 * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
26
 *
27
 * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
28
 * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
29
 * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
30
 * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
31
 * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
32
 * OF THIS SOFTWARE.
33
 ****************************************************************************/
34
35
#include <assert.h>
36
#include "aigrid.h"
37
38
/* ==================================================================== */
39
/*      Various declarations for the decompression state machine        */
40
/*      cribbed from tif_fax3.h in libtiff.                             */
41
/* ==================================================================== */
42
43
#define FAXMODE_CLASSIC 0x0000       /* default, include RTC */
44
#define FAXMODE_NORTC 0x0001         /* no RTC at end of data */
45
#define FAXMODE_NOEOL 0x0002         /* no EOL code at end of row */
46
7.24k
#define FAXMODE_BYTEALIGN 0x0004     /* byte align row */
47
0
#define FAXMODE_WORDALIGN 0x0008     /* word align row */
48
#define FAXMODE_CLASSF FAXMODE_NORTC /* TIFF Class F */
49
50
/*
51
 * To override the default routine used to image decoded
52
 * spans one can use the pseudo tag TIFFTAG_FAXFILLFUNC.
53
 * The routine must have the type signature given below;
54
 * for example:
55
 *
56
 * fillruns(unsigned char* buf, uint32* runs, uint32* erun, uint32 lastx)
57
 *
58
 * where buf is place to set the bits, runs is the array of b&w run
59
 * lengths (white then black), erun is the last run in the array, and
60
 * lastx is the width of the row in pixels.  Fill routines can assume
61
 * the run array has room for at least lastx runs and can overwrite
62
 * data in the run array as needed (e.g. to append zero runs to bring
63
 * the count up to a nice multiple).
64
 */
65
typedef void (*TIFFFaxFillFunc)(unsigned char *, GUInt32 *, GUInt32 *, GUInt32);
66
67
/* finite state machine codes */
68
69
#define S_Null 0
70
#define S_Pass 1
71
#define S_Horiz 2
72
#define S_V0 3
73
#define S_VR 4
74
#define S_VL 5
75
#define S_Ext 6
76
17.6k
#define S_TermW 7
77
14.2k
#define S_TermB 8
78
3.14k
#define S_MakeUpW 9
79
716
#define S_MakeUpB 10
80
4.29k
#define S_MakeUp 11
81
1.39k
#define S_EOL 12
82
83
typedef struct
84
{                        /* state table entry */
85
    unsigned char State; /* see above */
86
    unsigned char Width; /* width of code in bits */
87
    GUInt16 Param;       /* unsigned 16-bit run length in bits */
88
} TIFFFaxTabEnt;
89
90
#if 0  /* Unused */
91
static const TIFFFaxTabEnt aig_TIFFFaxMainTable[128] = {
92
{12,7,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},{1,4,0},{3,1,0},{5,3,1},{3,1,0},
93
{2,3,0},{3,1,0},{4,3,1},{3,1,0},{5,6,2},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},
94
{1,4,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},{5,7,3},{3,1,0},{5,3,1},{3,1,0},
95
{2,3,0},{3,1,0},{4,3,1},{3,1,0},{1,4,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},
96
{4,6,2},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},{1,4,0},{3,1,0},{5,3,1},{3,1,0},
97
{2,3,0},{3,1,0},{4,3,1},{3,1,0},{6,7,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},
98
{1,4,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},{5,6,2},{3,1,0},{5,3,1},{3,1,0},
99
{2,3,0},{3,1,0},{4,3,1},{3,1,0},{1,4,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},
100
{4,7,3},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},{1,4,0},{3,1,0},{5,3,1},{3,1,0},
101
{2,3,0},{3,1,0},{4,3,1},{3,1,0},{4,6,2},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0},
102
{1,4,0},{3,1,0},{5,3,1},{3,1,0},{2,3,0},{3,1,0},{4,3,1},{3,1,0}
103
};
104
#endif /* Unused */
105
106
static const TIFFFaxTabEnt aig_TIFFFaxWhiteTable[4096] = {
107
    {12, 11, 0},    {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
108
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
109
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
110
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
111
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
112
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
113
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
114
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
115
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
116
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
117
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
118
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
119
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
120
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
121
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
122
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
123
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
124
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
125
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
126
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
127
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
128
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
129
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
130
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
131
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
132
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
133
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
134
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
135
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
136
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
137
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
138
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
139
    {11, 11, 1792}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
140
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
141
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
142
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
143
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
144
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
145
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
146
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
147
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
148
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
149
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
150
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
151
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
152
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
153
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
154
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
155
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
156
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
157
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
158
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
159
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
160
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
161
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
162
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
163
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
164
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
165
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
166
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
167
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
168
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
169
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
170
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
171
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
172
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
173
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
174
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
175
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
176
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
177
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
178
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
179
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
180
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
181
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
182
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
183
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
184
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
185
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
186
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
187
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
188
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
189
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
190
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
191
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
192
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
193
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
194
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
195
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
196
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
197
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
198
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
199
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
200
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
201
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
202
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
203
    {11, 11, 1856}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
204
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
205
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
206
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
207
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
208
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
209
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
210
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
211
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
212
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
213
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
214
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
215
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
216
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
217
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
218
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
219
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
220
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
221
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
222
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
223
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
224
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
225
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
226
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
227
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
228
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
229
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
230
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
231
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
232
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
233
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
234
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
235
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
236
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
237
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
238
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
239
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
240
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
241
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
242
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
243
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
244
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
245
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
246
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
247
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
248
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
249
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
250
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
251
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
252
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
253
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
254
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
255
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
256
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
257
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
258
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
259
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
260
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
261
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
262
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
263
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
264
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
265
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
266
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
267
    {11, 12, 2112}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
268
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
269
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
270
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
271
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
272
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
273
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
274
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
275
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
276
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
277
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
278
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
279
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
280
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
281
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
282
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
283
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
284
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
285
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
286
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
287
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
288
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
289
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
290
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
291
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
292
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
293
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
294
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
295
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
296
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
297
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
298
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
299
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
300
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
301
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
302
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
303
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
304
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
305
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
306
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
307
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
308
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
309
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
310
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
311
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
312
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
313
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
314
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
315
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
316
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
317
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
318
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
319
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
320
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
321
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
322
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
323
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
324
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
325
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
326
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
327
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
328
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
329
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
330
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
331
    {11, 12, 2368}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
332
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
333
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
334
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
335
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
336
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
337
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
338
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
339
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
340
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
341
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
342
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
343
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
344
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
345
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
346
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
347
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
348
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
349
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
350
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
351
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
352
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
353
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
354
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
355
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
356
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
357
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
358
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
359
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
360
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
361
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
362
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
363
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
364
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
365
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
366
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
367
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
368
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
369
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
370
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
371
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
372
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
373
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
374
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
375
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
376
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
377
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
378
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
379
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
380
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
381
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
382
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
383
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
384
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
385
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
386
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
387
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
388
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
389
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
390
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
391
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
392
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
393
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
394
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
395
    {11, 12, 1984}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
396
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
397
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
398
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
399
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
400
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
401
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
402
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
403
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
404
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
405
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
406
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
407
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
408
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
409
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
410
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
411
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
412
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
413
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
414
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
415
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
416
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
417
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
418
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
419
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
420
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
421
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
422
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
423
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
424
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
425
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
426
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
427
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
428
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
429
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
430
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
431
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
432
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
433
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
434
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
435
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
436
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
437
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
438
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
439
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
440
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
441
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
442
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
443
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
444
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
445
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
446
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
447
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
448
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
449
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
450
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
451
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
452
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
453
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
454
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
455
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
456
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
457
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
458
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
459
    {11, 11, 1920}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
460
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
461
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
462
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
463
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
464
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
465
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
466
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
467
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
468
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
469
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
470
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
471
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
472
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
473
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
474
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
475
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
476
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
477
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
478
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
479
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
480
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
481
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
482
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
483
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
484
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
485
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
486
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
487
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
488
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
489
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
490
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
491
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
492
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
493
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
494
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
495
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
496
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
497
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
498
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
499
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
500
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
501
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
502
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
503
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
504
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
505
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
506
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
507
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
508
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
509
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
510
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
511
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
512
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
513
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
514
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
515
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
516
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
517
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
518
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
519
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
520
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
521
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
522
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
523
    {11, 12, 2240}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
524
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
525
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
526
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
527
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
528
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
529
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
530
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
531
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
532
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
533
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
534
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
535
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
536
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
537
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
538
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
539
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
540
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
541
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
542
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
543
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
544
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
545
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
546
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
547
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
548
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
549
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
550
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
551
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
552
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
553
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
554
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
555
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
556
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
557
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
558
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
559
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
560
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
561
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
562
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
563
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
564
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
565
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
566
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
567
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
568
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
569
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
570
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
571
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
572
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
573
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
574
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
575
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
576
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
577
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
578
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
579
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
580
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
581
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
582
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
583
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
584
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
585
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
586
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
587
    {11, 12, 2496}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
588
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
589
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
590
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
591
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
592
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
593
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
594
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
595
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
596
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
597
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
598
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
599
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
600
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
601
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
602
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
603
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
604
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
605
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
606
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
607
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
608
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
609
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
610
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
611
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
612
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
613
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
614
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
615
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
616
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
617
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
618
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
619
    {12, 11, 0},    {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
620
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
621
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
622
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
623
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
624
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
625
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
626
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
627
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
628
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
629
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
630
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
631
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
632
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
633
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
634
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
635
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
636
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
637
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
638
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
639
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
640
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
641
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
642
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
643
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
644
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
645
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
646
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
647
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
648
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
649
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
650
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
651
    {11, 11, 1792}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
652
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
653
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
654
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
655
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
656
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
657
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
658
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
659
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
660
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
661
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
662
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
663
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
664
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
665
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
666
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
667
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
668
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
669
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
670
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
671
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
672
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
673
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
674
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
675
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
676
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
677
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
678
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
679
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
680
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
681
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
682
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
683
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
684
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
685
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
686
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
687
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
688
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
689
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
690
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
691
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
692
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
693
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
694
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
695
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
696
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
697
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
698
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
699
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
700
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
701
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
702
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
703
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
704
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
705
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
706
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
707
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
708
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
709
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
710
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
711
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
712
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
713
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
714
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
715
    {11, 11, 1856}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
716
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
717
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
718
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
719
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
720
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
721
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
722
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
723
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
724
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
725
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
726
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
727
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
728
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
729
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
730
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
731
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
732
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
733
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
734
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
735
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
736
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
737
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
738
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
739
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
740
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
741
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
742
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
743
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
744
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
745
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
746
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
747
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
748
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
749
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
750
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
751
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
752
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
753
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
754
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
755
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
756
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
757
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
758
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
759
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
760
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
761
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
762
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
763
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
764
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
765
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
766
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
767
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
768
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
769
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
770
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
771
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
772
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
773
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
774
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
775
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
776
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
777
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
778
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
779
    {11, 12, 2176}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
780
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
781
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
782
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
783
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
784
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
785
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
786
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
787
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
788
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
789
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
790
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
791
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
792
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
793
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
794
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
795
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
796
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
797
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
798
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
799
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
800
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
801
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
802
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
803
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
804
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
805
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
806
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
807
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
808
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
809
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
810
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
811
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
812
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
813
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
814
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
815
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
816
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
817
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
818
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
819
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
820
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
821
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
822
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
823
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
824
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
825
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
826
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
827
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
828
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
829
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
830
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
831
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
832
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
833
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
834
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
835
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
836
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
837
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
838
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
839
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
840
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
841
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
842
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
843
    {11, 12, 2432}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
844
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
845
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
846
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
847
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
848
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
849
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
850
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
851
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
852
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
853
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
854
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
855
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
856
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
857
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
858
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
859
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
860
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
861
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
862
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
863
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
864
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
865
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
866
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
867
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
868
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
869
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
870
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
871
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
872
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
873
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
874
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
875
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
876
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
877
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
878
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
879
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
880
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
881
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
882
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
883
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
884
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
885
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
886
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
887
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
888
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
889
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
890
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
891
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
892
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
893
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
894
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
895
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
896
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
897
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
898
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
899
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
900
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
901
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
902
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
903
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
904
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
905
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
906
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
907
    {11, 12, 2048}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
908
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
909
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
910
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
911
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
912
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
913
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
914
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
915
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
916
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
917
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
918
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
919
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
920
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
921
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
922
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
923
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
924
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
925
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
926
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
927
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
928
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
929
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
930
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
931
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
932
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
933
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
934
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
935
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
936
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
937
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
938
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
939
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
940
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
941
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
942
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
943
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
944
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
945
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
946
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
947
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
948
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
949
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
950
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
951
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
952
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
953
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
954
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
955
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
956
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
957
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
958
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
959
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
960
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
961
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
962
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
963
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
964
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
965
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
966
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
967
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
968
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
969
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
970
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
971
    {11, 11, 1920}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
972
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
973
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
974
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
975
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
976
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
977
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
978
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
979
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
980
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
981
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
982
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
983
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
984
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
985
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
986
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
987
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
988
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
989
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
990
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
991
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
992
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
993
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
994
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
995
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
996
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
997
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
998
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
999
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
1000
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
1001
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1002
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1003
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1004
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1005
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
1006
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1007
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
1008
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
1009
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
1010
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1011
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1012
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
1013
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
1014
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1015
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1472}, {7, 4, 5},
1016
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1216}, {7, 4, 6},
1017
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1018
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1019
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1020
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1021
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
1022
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1023
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
1024
    {7, 8, 41},     {7, 6, 16},  {9, 9, 960},  {7, 4, 6},
1025
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
1026
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1027
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1028
    {7, 7, 26},     {7, 5, 9},   {9, 9, 704},  {7, 4, 6},
1029
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
1030
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1031
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
1032
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
1033
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1034
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1035
    {11, 12, 2304}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1036
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1037
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
1038
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1039
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
1040
    {7, 8, 40},     {7, 6, 16},  {9, 9, 832},  {7, 4, 6},
1041
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
1042
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1043
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1044
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
1045
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
1046
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1047
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1600}, {7, 4, 5},
1048
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1344}, {7, 4, 6},
1049
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1050
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1051
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1052
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1053
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
1054
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1055
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
1056
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1088}, {7, 4, 6},
1057
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
1058
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1059
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1060
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
1061
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
1062
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1063
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
1064
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
1065
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1066
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1067
    {0, 0, 0},      {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1068
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1069
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
1070
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1071
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
1072
    {7, 8, 39},     {7, 6, 16},  {9, 8, 576},  {7, 4, 6},
1073
    {7, 7, 19},     {7, 5, 8},   {7, 8, 55},   {9, 5, 64},
1074
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1075
    {7, 8, 45},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1076
    {7, 8, 53},     {7, 5, 9},   {9, 8, 448},  {7, 4, 6},
1077
    {7, 8, 35},     {9, 5, 128}, {7, 8, 51},   {7, 6, 15},
1078
    {7, 8, 63},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1079
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1536}, {7, 4, 5},
1080
    {7, 8, 43},     {7, 6, 17},  {9, 9, 1280}, {7, 4, 6},
1081
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1082
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1083
    {7, 8, 29},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1084
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1085
    {7, 8, 33},     {9, 5, 128}, {7, 8, 49},   {7, 6, 14},
1086
    {7, 8, 61},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1087
    {7, 8, 47},     {7, 4, 3},   {7, 8, 59},   {7, 4, 5},
1088
    {7, 8, 41},     {7, 6, 16},  {9, 9, 1024}, {7, 4, 6},
1089
    {7, 8, 31},     {7, 5, 8},   {7, 8, 57},   {9, 5, 64},
1090
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1091
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1092
    {7, 7, 26},     {7, 5, 9},   {9, 9, 768},  {7, 4, 6},
1093
    {7, 8, 37},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
1094
    {9, 8, 320},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1095
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
1096
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
1097
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1098
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1099
    {11, 12, 2560}, {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1100
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1101
    {7, 7, 20},     {9, 5, 128}, {7, 7, 24},   {7, 6, 14},
1102
    {7, 7, 28},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1103
    {7, 7, 23},     {7, 4, 3},   {7, 7, 27},   {7, 4, 5},
1104
    {7, 8, 40},     {7, 6, 16},  {9, 9, 896},  {7, 4, 6},
1105
    {7, 7, 19},     {7, 5, 8},   {7, 8, 56},   {9, 5, 64},
1106
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1107
    {7, 8, 46},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1108
    {7, 8, 54},     {7, 5, 9},   {9, 8, 512},  {7, 4, 6},
1109
    {7, 8, 36},     {9, 5, 128}, {7, 8, 52},   {7, 6, 15},
1110
    {7, 8, 0},      {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1111
    {7, 6, 13},     {7, 4, 3},   {9, 9, 1728}, {7, 4, 5},
1112
    {7, 8, 44},     {7, 6, 17},  {9, 9, 1408}, {7, 4, 6},
1113
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1114
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1115
    {7, 8, 30},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1116
    {7, 6, 12},     {7, 5, 9},   {9, 6, 1664}, {7, 4, 6},
1117
    {7, 8, 34},     {9, 5, 128}, {7, 8, 50},   {7, 6, 14},
1118
    {7, 8, 62},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1119
    {7, 8, 48},     {7, 4, 3},   {7, 8, 60},   {7, 4, 5},
1120
    {7, 8, 42},     {7, 6, 16},  {9, 9, 1152}, {7, 4, 6},
1121
    {7, 8, 32},     {7, 5, 8},   {7, 8, 58},   {9, 5, 64},
1122
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1123
    {7, 7, 22},     {7, 4, 3},   {7, 5, 11},   {7, 4, 5},
1124
    {7, 7, 26},     {7, 5, 9},   {9, 8, 640},  {7, 4, 6},
1125
    {7, 8, 38},     {9, 5, 128}, {7, 7, 25},   {7, 6, 15},
1126
    {9, 8, 384},    {7, 4, 4},   {7, 4, 2},    {7, 4, 7},
1127
    {7, 6, 13},     {7, 4, 3},   {7, 7, 18},   {7, 4, 5},
1128
    {7, 7, 21},     {7, 6, 17},  {9, 7, 256},  {7, 4, 6},
1129
    {7, 6, 1},      {7, 5, 8},   {9, 6, 192},  {9, 5, 64},
1130
    {7, 5, 10},     {7, 4, 4},   {7, 4, 2},    {7, 4, 7}};
1131
static const TIFFFaxTabEnt aig_TIFFFaxBlackTable[8192] = {
1132
    {12, 11, 0},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1133
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1134
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1135
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1136
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1137
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1138
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1139
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1140
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1141
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1142
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1143
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1144
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1145
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1146
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1147
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1148
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1149
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1150
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1151
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1152
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1153
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1154
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1155
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1156
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1157
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1158
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1159
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1160
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1161
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1162
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1163
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1164
    {11, 11, 1792}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1165
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1166
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1167
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1168
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1169
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1170
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1171
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1172
    {8, 11, 23},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1173
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1174
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1175
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1176
    {8, 11, 20},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1177
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1178
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1179
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1180
    {8, 11, 25},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1181
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1182
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1183
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1184
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1185
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1186
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1187
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1188
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1189
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1190
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1191
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1192
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1193
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1194
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1195
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1196
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1197
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1198
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1199
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1200
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1201
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1202
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1203
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1204
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1205
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1206
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1207
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1208
    {10, 12, 128},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1209
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1210
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1211
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1212
    {8, 12, 56},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1213
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1214
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1215
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1216
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1217
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1218
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1219
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1220
    {8, 12, 30},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1221
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1222
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1223
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1224
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1225
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1226
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1227
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1228
    {11, 11, 1856}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1229
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1230
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1231
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1232
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1233
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1234
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1235
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1236
    {8, 12, 57},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1237
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1238
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1239
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1240
    {8, 11, 21},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1241
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1242
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1243
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1244
    {8, 12, 54},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1245
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1246
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1247
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1248
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1249
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1250
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1251
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1252
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1253
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1254
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1255
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1256
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1257
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1258
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1259
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1260
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1261
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1262
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1263
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1264
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1265
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1266
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1267
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1268
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1269
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1270
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1271
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1272
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1273
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1274
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1275
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1276
    {8, 12, 52},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1277
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1278
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1279
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1280
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1281
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1282
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1283
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1284
    {8, 12, 48},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1285
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1286
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1287
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1288
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1289
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1290
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1291
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1292
    {11, 12, 2112}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1293
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1294
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1295
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1296
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1297
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1298
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1299
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1300
    {8, 12, 44},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1301
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1302
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1303
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1304
    {8, 12, 36},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1305
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1306
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1307
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1308
    {10, 12, 384},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1309
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1310
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1311
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1312
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1313
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1314
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1315
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1316
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1317
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1318
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1319
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1320
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1321
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1322
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1323
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1324
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1325
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1326
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1327
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1328
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1329
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1330
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1331
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1332
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1333
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1334
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1335
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1336
    {8, 12, 28},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1337
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1338
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1339
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1340
    {8, 12, 60},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1341
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1342
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1343
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1344
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1345
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1346
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1347
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1348
    {8, 12, 40},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1349
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1350
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1351
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1352
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1353
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1354
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1355
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1356
    {11, 12, 2368}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1357
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1358
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1359
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1360
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1361
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1362
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1363
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1364
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1365
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1366
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1367
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1368
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1369
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1370
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1371
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1372
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1373
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1374
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1375
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1376
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1377
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1378
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1379
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1380
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1381
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1382
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1383
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1384
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1385
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1386
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1387
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1388
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1389
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1390
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1391
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1392
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1393
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1394
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1395
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1396
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1397
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1398
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1399
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1400
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1401
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1402
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1403
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1404
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1405
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1406
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1407
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1408
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1409
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1410
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1411
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1412
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1413
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1414
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1415
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1416
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1417
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1418
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1419
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1420
    {11, 12, 1984}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1421
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1422
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1423
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1424
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1425
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1426
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1427
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1428
    {8, 12, 50},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1429
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1430
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1431
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1432
    {8, 12, 34},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1433
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1434
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1435
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1436
    {10, 13, 1664}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1437
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1438
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1439
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1440
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1441
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1442
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1443
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1444
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1445
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1446
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1447
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1448
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1449
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1450
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1451
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1452
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1453
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1454
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1455
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1456
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1457
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1458
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1459
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1460
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1461
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1462
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1463
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1464
    {8, 12, 26},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1465
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1466
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1467
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1468
    {10, 13, 1408}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1469
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1470
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1471
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1472
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1473
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1474
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1475
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1476
    {8, 12, 32},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1477
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1478
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1479
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1480
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1481
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1482
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1483
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1484
    {11, 11, 1920}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1485
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1486
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1487
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1488
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1489
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1490
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1491
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1492
    {8, 12, 61},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1493
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1494
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1495
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1496
    {8, 12, 42},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1497
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1498
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1499
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1500
    {10, 13, 1024}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1501
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1502
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1503
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1504
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1505
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1506
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1507
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1508
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1509
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1510
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1511
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1512
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1513
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1514
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1515
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1516
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1517
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1518
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1519
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1520
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1521
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1522
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1523
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1524
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1525
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1526
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1527
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1528
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1529
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1530
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1531
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1532
    {10, 13, 768},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1533
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1534
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1535
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1536
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1537
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1538
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1539
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1540
    {8, 12, 62},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1541
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1542
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1543
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1544
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1545
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1546
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1547
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1548
    {11, 12, 2240}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1549
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1550
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1551
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1552
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1553
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1554
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1555
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1556
    {8, 12, 46},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1557
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1558
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1559
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1560
    {8, 12, 38},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1561
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1562
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1563
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1564
    {10, 13, 512},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1565
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1566
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1567
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1568
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1569
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1570
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1571
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1572
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1573
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1574
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1575
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1576
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1577
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1578
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1579
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1580
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1581
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1582
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1583
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1584
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1585
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1586
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1587
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1588
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1589
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1590
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1591
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1592
    {8, 11, 19},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1593
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1594
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1595
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1596
    {8, 11, 24},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1597
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1598
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1599
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1600
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1601
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1602
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1603
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1604
    {8, 11, 22},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1605
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1606
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1607
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1608
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1609
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1610
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1611
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1612
    {11, 12, 2496}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1613
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1614
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1615
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1616
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1617
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1618
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1619
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1620
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1621
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1622
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1623
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1624
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1625
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1626
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1627
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1628
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1629
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1630
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1631
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1632
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1633
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1634
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1635
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1636
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1637
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1638
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1639
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1640
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1641
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1642
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1643
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1644
    {12, 11, 0},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1645
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1646
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1647
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1648
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1649
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1650
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1651
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1652
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1653
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1654
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1655
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1656
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1657
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1658
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1659
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1660
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1661
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1662
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1663
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1664
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1665
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1666
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1667
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1668
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1669
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1670
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1671
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1672
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1673
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1674
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1675
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1676
    {11, 11, 1792}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1677
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1678
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1679
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1680
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1681
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1682
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1683
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1684
    {8, 11, 23},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1685
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1686
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1687
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1688
    {8, 11, 20},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1689
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1690
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1691
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1692
    {8, 11, 25},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1693
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1694
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1695
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1696
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1697
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1698
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1699
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1700
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1701
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1702
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1703
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1704
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1705
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1706
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1707
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1708
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1709
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1710
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1711
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1712
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1713
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1714
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1715
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1716
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1717
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1718
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1719
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1720
    {10, 12, 192},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1721
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1722
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1723
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1724
    {10, 13, 1280}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1725
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1726
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1727
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1728
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1729
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1730
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1731
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1732
    {8, 12, 31},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1733
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1734
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1735
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1736
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1737
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1738
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1739
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1740
    {11, 11, 1856}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1741
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1742
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1743
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1744
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1745
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1746
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1747
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1748
    {8, 12, 58},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1749
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1750
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1751
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1752
    {8, 11, 21},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1753
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1754
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1755
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1756
    {10, 13, 896},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1757
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1758
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1759
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1760
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1761
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1762
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1763
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1764
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1765
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1766
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1767
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1768
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1769
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1770
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1771
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1772
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1773
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1774
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1775
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1776
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1777
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1778
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1779
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1780
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1781
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1782
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1783
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1784
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1785
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1786
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1787
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1788
    {10, 13, 640},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1789
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1790
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1791
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1792
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1793
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1794
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1795
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1796
    {8, 12, 49},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1797
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1798
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1799
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1800
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1801
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1802
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1803
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1804
    {11, 12, 2176}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1805
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1806
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1807
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1808
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1809
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1810
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1811
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1812
    {8, 12, 45},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1813
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1814
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1815
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1816
    {8, 12, 37},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1817
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1818
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1819
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1820
    {10, 12, 448},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1821
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1822
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1823
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1824
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1825
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1826
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1827
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1828
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1829
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1830
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1831
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1832
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1833
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1834
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1835
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1836
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1837
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1838
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1839
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1840
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1841
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1842
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1843
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1844
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1845
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1846
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1847
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1848
    {8, 12, 29},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1849
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1850
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1851
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1852
    {10, 13, 1536}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1853
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1854
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1855
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1856
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1857
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1858
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1859
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1860
    {8, 12, 41},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1861
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1862
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1863
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1864
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1865
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1866
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1867
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1868
    {11, 12, 2432}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1869
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1870
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1871
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1872
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1873
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1874
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1875
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1876
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1877
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1878
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1879
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1880
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1881
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1882
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1883
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1884
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1885
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1886
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1887
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1888
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1889
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1890
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1891
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1892
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1893
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1894
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1895
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1896
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1897
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1898
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1899
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1900
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1901
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1902
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1903
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1904
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1905
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1906
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1907
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1908
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1909
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1910
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1911
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1912
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1913
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1914
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1915
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1916
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1917
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1918
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1919
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1920
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1921
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1922
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1923
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1924
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1925
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1926
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1927
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1928
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1929
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1930
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1931
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1932
    {11, 12, 2048}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1933
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1934
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1935
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1936
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1937
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1938
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1939
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1940
    {8, 12, 51},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1941
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1942
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1943
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1944
    {8, 12, 35},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1945
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1946
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1947
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1948
    {10, 12, 320},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1949
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1950
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1951
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1952
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1953
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1954
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1955
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1956
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1957
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1958
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1959
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1960
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1961
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1962
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1963
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1964
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1965
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1966
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1967
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1968
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1969
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1970
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1971
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1972
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1973
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1974
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1975
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1976
    {8, 12, 27},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1977
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1978
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1979
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1980
    {8, 12, 59},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1981
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1982
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1983
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1984
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1985
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1986
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1987
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1988
    {8, 12, 33},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1989
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1990
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1991
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1992
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1993
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1994
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1995
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1996
    {11, 11, 1920}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1997
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
1998
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
1999
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2000
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2001
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2002
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2003
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2004
    {10, 12, 256},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2005
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2006
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2007
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2008
    {8, 12, 43},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2009
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2010
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2011
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2012
    {10, 13, 1152}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2013
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2014
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2015
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2016
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2017
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2018
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2019
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2020
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2021
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2022
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2023
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2024
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2025
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2026
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2027
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2028
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2029
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2030
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2031
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2032
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2033
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2034
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2035
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2036
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2037
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2038
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2039
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2040
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2041
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2042
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2043
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2044
    {8, 12, 55},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2045
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2046
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2047
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2048
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2049
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2050
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2051
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2052
    {8, 12, 63},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2053
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2054
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2055
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2056
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2057
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2058
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2059
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2060
    {11, 12, 2304}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2061
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2062
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2063
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2064
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2065
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2066
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2067
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2068
    {8, 12, 47},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2069
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2070
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2071
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2072
    {8, 12, 39},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2073
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2074
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2075
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2076
    {8, 12, 53},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2077
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2078
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2079
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2080
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2081
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2082
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2083
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2084
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2085
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2086
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2087
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2088
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2089
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2090
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2091
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2092
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2093
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2094
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2095
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2096
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2097
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2098
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2099
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2100
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2101
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2102
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2103
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2104
    {8, 11, 19},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2105
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2106
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2107
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2108
    {8, 11, 24},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2109
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2110
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2111
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2112
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2113
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2114
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2115
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2116
    {8, 11, 22},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2117
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2118
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2119
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2120
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2121
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2122
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2123
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2124
    {11, 12, 2560}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2125
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2126
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2127
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2128
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2129
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2130
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2131
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2132
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2133
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2134
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2135
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2136
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2137
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2138
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2139
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2140
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2141
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2142
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2143
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2144
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2145
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2146
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2147
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2148
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2149
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2150
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2151
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2152
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2153
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2154
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2155
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2156
    {12, 11, 0},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2157
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2158
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2159
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2160
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2161
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2162
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2163
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2164
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2165
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2166
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2167
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2168
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2169
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2170
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2171
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2172
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2173
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2174
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2175
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2176
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2177
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2178
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2179
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2180
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2181
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2182
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2183
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2184
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2185
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2186
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2187
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2188
    {11, 11, 1792}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2189
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2190
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2191
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2192
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2193
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2194
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2195
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2196
    {8, 11, 23},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2197
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2198
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2199
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2200
    {8, 11, 20},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2201
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2202
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2203
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2204
    {8, 11, 25},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2205
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2206
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2207
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2208
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2209
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2210
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2211
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2212
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2213
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2214
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2215
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2216
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2217
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2218
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2219
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2220
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2221
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2222
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2223
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2224
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2225
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2226
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2227
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2228
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2229
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2230
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2231
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2232
    {10, 12, 128},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2233
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2234
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2235
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2236
    {8, 12, 56},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2237
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2238
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2239
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2240
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2241
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2242
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2243
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2244
    {8, 12, 30},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2245
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2246
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2247
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2248
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2249
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2250
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2251
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2252
    {11, 11, 1856}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2253
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2254
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2255
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2256
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2257
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2258
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2259
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2260
    {8, 12, 57},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2261
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2262
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2263
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2264
    {8, 11, 21},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2265
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2266
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2267
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2268
    {8, 12, 54},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2269
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2270
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2271
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2272
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2273
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2274
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2275
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2276
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2277
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2278
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2279
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2280
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2281
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2282
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2283
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2284
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2285
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2286
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2287
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2288
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2289
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2290
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2291
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2292
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2293
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2294
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2295
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2296
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2297
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2298
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2299
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2300
    {8, 12, 52},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2301
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2302
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2303
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2304
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2305
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2306
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2307
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2308
    {8, 12, 48},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2309
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2310
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2311
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2312
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2313
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2314
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2315
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2316
    {11, 12, 2112}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2317
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2318
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2319
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2320
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2321
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2322
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2323
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2324
    {8, 12, 44},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2325
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2326
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2327
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2328
    {8, 12, 36},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2329
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2330
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2331
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2332
    {10, 12, 384},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2333
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2334
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2335
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2336
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2337
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2338
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2339
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2340
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2341
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2342
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2343
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2344
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2345
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2346
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2347
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2348
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2349
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2350
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2351
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2352
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2353
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2354
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2355
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2356
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2357
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2358
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2359
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2360
    {8, 12, 28},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2361
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2362
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2363
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2364
    {8, 12, 60},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2365
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2366
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2367
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2368
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2369
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2370
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2371
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2372
    {8, 12, 40},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2373
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2374
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2375
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2376
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2377
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2378
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2379
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2380
    {11, 12, 2368}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2381
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2382
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2383
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2384
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2385
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2386
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2387
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2388
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2389
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2390
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2391
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2392
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2393
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2394
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2395
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2396
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2397
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2398
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2399
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2400
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2401
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2402
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2403
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2404
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2405
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2406
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2407
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2408
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2409
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2410
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2411
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2412
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2413
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2414
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2415
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2416
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2417
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2418
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2419
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2420
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2421
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2422
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2423
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2424
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2425
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2426
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2427
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2428
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2429
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2430
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2431
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2432
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2433
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2434
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2435
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2436
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2437
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2438
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2439
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2440
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2441
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2442
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2443
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2444
    {11, 12, 1984}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2445
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2446
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2447
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2448
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2449
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2450
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2451
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2452
    {8, 12, 50},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2453
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2454
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2455
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2456
    {8, 12, 34},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2457
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2458
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2459
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2460
    {10, 13, 1728}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2461
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2462
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2463
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2464
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2465
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2466
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2467
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2468
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2469
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2470
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2471
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2472
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2473
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2474
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2475
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2476
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2477
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2478
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2479
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2480
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2481
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2482
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2483
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2484
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2485
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2486
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2487
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2488
    {8, 12, 26},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2489
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2490
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2491
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2492
    {10, 13, 1472}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2493
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2494
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2495
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2496
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2497
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2498
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2499
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2500
    {8, 12, 32},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2501
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2502
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2503
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2504
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2505
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2506
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2507
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2508
    {11, 11, 1920}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2509
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2510
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2511
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2512
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2513
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2514
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2515
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2516
    {8, 12, 61},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2517
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2518
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2519
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2520
    {8, 12, 42},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2521
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2522
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2523
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2524
    {10, 13, 1088}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2525
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2526
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2527
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2528
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2529
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2530
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2531
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2532
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2533
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2534
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2535
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2536
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2537
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2538
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2539
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2540
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2541
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2542
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2543
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2544
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2545
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2546
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2547
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2548
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2549
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2550
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2551
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2552
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2553
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2554
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2555
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2556
    {10, 13, 832},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2557
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2558
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2559
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2560
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2561
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2562
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2563
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2564
    {8, 12, 62},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2565
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2566
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2567
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2568
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2569
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2570
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2571
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2572
    {11, 12, 2240}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2573
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2574
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2575
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2576
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2577
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2578
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2579
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2580
    {8, 12, 46},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2581
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2582
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2583
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2584
    {8, 12, 38},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2585
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2586
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2587
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2588
    {10, 13, 576},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2589
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2590
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2591
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2592
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2593
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2594
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2595
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2596
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2597
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2598
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2599
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2600
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2601
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2602
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2603
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2604
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2605
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2606
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2607
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2608
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2609
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2610
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2611
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2612
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2613
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2614
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2615
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2616
    {8, 11, 19},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2617
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2618
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2619
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2620
    {8, 11, 24},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2621
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2622
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2623
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2624
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2625
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2626
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2627
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2628
    {8, 11, 22},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2629
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2630
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2631
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2632
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2633
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2634
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2635
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2636
    {11, 12, 2496}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2637
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2638
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2639
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2640
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2641
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2642
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2643
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2644
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2645
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2646
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2647
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2648
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2649
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2650
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2651
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2652
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2653
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2654
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2655
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2656
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2657
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2658
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2659
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2660
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2661
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2662
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2663
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2664
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2665
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2666
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2667
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2668
    {12, 11, 0},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2669
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2670
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2671
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2672
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2673
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2674
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2675
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2676
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2677
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2678
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2679
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2680
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2681
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2682
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2683
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2684
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2685
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2686
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2687
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2688
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2689
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2690
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2691
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2692
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2693
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2694
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2695
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2696
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2697
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2698
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2699
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2700
    {11, 11, 1792}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2701
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2702
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2703
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2704
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2705
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2706
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2707
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2708
    {8, 11, 23},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2709
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2710
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2711
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2712
    {8, 11, 20},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2713
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2714
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2715
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2716
    {8, 11, 25},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2717
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2718
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2719
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2720
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2721
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2722
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2723
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2724
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2725
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2726
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2727
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2728
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2729
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2730
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2731
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2732
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2733
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2734
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2735
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2736
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2737
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2738
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2739
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2740
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2741
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2742
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2743
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2744
    {10, 12, 192},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2745
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2746
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2747
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2748
    {10, 13, 1344}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2749
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2750
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2751
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2752
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2753
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2754
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2755
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2756
    {8, 12, 31},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2757
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2758
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2759
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2760
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2761
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2762
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2763
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2764
    {11, 11, 1856}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2765
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2766
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2767
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2768
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2769
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2770
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2771
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2772
    {8, 12, 58},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2773
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2774
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2775
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2776
    {8, 11, 21},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2777
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2778
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2779
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2780
    {10, 13, 960},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2781
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2782
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2783
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2784
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2785
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2786
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2787
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2788
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2789
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2790
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2791
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2792
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2793
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2794
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2795
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2796
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2797
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2798
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2799
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2800
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2801
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2802
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2803
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2804
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2805
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2806
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2807
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2808
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2809
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2810
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2811
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2812
    {10, 13, 704},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2813
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2814
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2815
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2816
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2817
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2818
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2819
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2820
    {8, 12, 49},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2821
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2822
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2823
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2824
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2825
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2826
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2827
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2828
    {11, 12, 2176}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2829
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2830
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2831
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2832
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2833
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2834
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2835
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2836
    {8, 12, 45},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2837
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2838
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2839
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2840
    {8, 12, 37},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2841
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2842
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2843
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2844
    {10, 12, 448},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2845
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2846
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2847
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2848
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2849
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2850
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2851
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2852
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2853
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2854
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2855
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2856
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2857
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2858
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2859
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2860
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2861
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2862
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2863
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2864
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2865
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2866
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2867
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2868
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2869
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2870
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2871
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2872
    {8, 12, 29},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2873
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2874
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2875
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2876
    {10, 13, 1600}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2877
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2878
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2879
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2880
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2881
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2882
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2883
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2884
    {8, 12, 41},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2885
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2886
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2887
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2888
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2889
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2890
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2891
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2892
    {11, 12, 2432}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2893
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2894
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2895
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2896
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2897
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2898
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2899
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2900
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2901
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2902
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2903
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2904
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2905
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2906
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2907
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2908
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2909
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2910
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2911
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2912
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2913
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2914
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2915
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2916
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2917
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2918
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2919
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2920
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2921
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2922
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2923
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2924
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2925
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2926
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2927
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2928
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2929
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2930
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2931
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2932
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2933
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2934
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2935
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2936
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2937
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2938
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2939
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2940
    {8, 10, 18},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2941
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2942
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2943
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2944
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2945
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2946
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2947
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2948
    {8, 10, 17},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2949
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2950
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2951
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2952
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2953
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2954
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2955
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2956
    {11, 12, 2048}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2957
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2958
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2959
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2960
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2961
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2962
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2963
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2964
    {8, 12, 51},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2965
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2966
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2967
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2968
    {8, 12, 35},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2969
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2970
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2971
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2972
    {10, 12, 320},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2973
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2974
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2975
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2976
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2977
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2978
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2979
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2980
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2981
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2982
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2983
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2984
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2985
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2986
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2987
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2988
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2989
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2990
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2991
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2992
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2993
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2994
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2995
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2996
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2997
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
2998
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
2999
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3000
    {8, 12, 27},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3001
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3002
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3003
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3004
    {8, 12, 59},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3005
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3006
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3007
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3008
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3009
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3010
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3011
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3012
    {8, 12, 33},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3013
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3014
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3015
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3016
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3017
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3018
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3019
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3020
    {11, 11, 1920}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3021
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3022
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3023
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3024
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3025
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3026
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3027
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3028
    {10, 12, 256},  {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3029
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3030
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3031
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3032
    {8, 12, 43},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3033
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3034
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3035
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3036
    {10, 13, 1216}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3037
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3038
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3039
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3040
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3041
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3042
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3043
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3044
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3045
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3046
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3047
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3048
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3049
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3050
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3051
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3052
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3053
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3054
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3055
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3056
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3057
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3058
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3059
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3060
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3061
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3062
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3063
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3064
    {8, 9, 15},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3065
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3066
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3067
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3068
    {8, 12, 55},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3069
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3070
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3071
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3072
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3073
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3074
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3075
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3076
    {8, 12, 63},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3077
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3078
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3079
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3080
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3081
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3082
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3083
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3084
    {11, 12, 2304}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3085
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3086
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3087
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3088
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3089
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3090
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3091
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3092
    {8, 12, 47},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3093
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3094
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3095
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3096
    {8, 12, 39},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3097
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3098
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3099
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3100
    {8, 12, 53},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3101
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3102
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3103
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3104
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3105
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3106
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3107
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3108
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3109
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3110
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3111
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3112
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3113
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3114
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3115
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3116
    {0, 0, 0},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3117
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3118
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3119
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3120
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3121
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3122
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3123
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3124
    {8, 8, 13},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3125
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3126
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3127
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3128
    {8, 11, 19},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3129
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3130
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3131
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3132
    {8, 11, 24},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3133
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3134
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3135
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3136
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3137
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3138
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3139
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3140
    {8, 11, 22},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3141
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3142
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3143
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3144
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3145
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3146
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3147
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3148
    {11, 12, 2560}, {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3149
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3150
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3151
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3152
    {8, 7, 10},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3153
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3154
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3155
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3156
    {8, 10, 16},    {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3157
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3158
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3159
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3160
    {8, 10, 0},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3161
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3162
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3163
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3164
    {10, 10, 64},   {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3165
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3166
    {8, 6, 9},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3167
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3168
    {8, 7, 11},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3169
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3170
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3171
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3172
    {8, 8, 14},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3173
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3174
    {8, 6, 8},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3175
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3176
    {8, 7, 12},     {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3177
    {8, 4, 6},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2},
3178
    {8, 5, 7},      {8, 2, 3}, {8, 3, 1}, {8, 2, 2},
3179
    {8, 4, 5},      {8, 2, 3}, {8, 3, 4}, {8, 2, 2}};
3180
3181
static const unsigned char aig_TIFFBitRevTable[256] = {
3182
    0x00, 0x80, 0x40, 0xc0, 0x20, 0xa0, 0x60, 0xe0, 0x10, 0x90, 0x50, 0xd0,
3183
    0x30, 0xb0, 0x70, 0xf0, 0x08, 0x88, 0x48, 0xc8, 0x28, 0xa8, 0x68, 0xe8,
3184
    0x18, 0x98, 0x58, 0xd8, 0x38, 0xb8, 0x78, 0xf8, 0x04, 0x84, 0x44, 0xc4,
3185
    0x24, 0xa4, 0x64, 0xe4, 0x14, 0x94, 0x54, 0xd4, 0x34, 0xb4, 0x74, 0xf4,
3186
    0x0c, 0x8c, 0x4c, 0xcc, 0x2c, 0xac, 0x6c, 0xec, 0x1c, 0x9c, 0x5c, 0xdc,
3187
    0x3c, 0xbc, 0x7c, 0xfc, 0x02, 0x82, 0x42, 0xc2, 0x22, 0xa2, 0x62, 0xe2,
3188
    0x12, 0x92, 0x52, 0xd2, 0x32, 0xb2, 0x72, 0xf2, 0x0a, 0x8a, 0x4a, 0xca,
3189
    0x2a, 0xaa, 0x6a, 0xea, 0x1a, 0x9a, 0x5a, 0xda, 0x3a, 0xba, 0x7a, 0xfa,
3190
    0x06, 0x86, 0x46, 0xc6, 0x26, 0xa6, 0x66, 0xe6, 0x16, 0x96, 0x56, 0xd6,
3191
    0x36, 0xb6, 0x76, 0xf6, 0x0e, 0x8e, 0x4e, 0xce, 0x2e, 0xae, 0x6e, 0xee,
3192
    0x1e, 0x9e, 0x5e, 0xde, 0x3e, 0xbe, 0x7e, 0xfe, 0x01, 0x81, 0x41, 0xc1,
3193
    0x21, 0xa1, 0x61, 0xe1, 0x11, 0x91, 0x51, 0xd1, 0x31, 0xb1, 0x71, 0xf1,
3194
    0x09, 0x89, 0x49, 0xc9, 0x29, 0xa9, 0x69, 0xe9, 0x19, 0x99, 0x59, 0xd9,
3195
    0x39, 0xb9, 0x79, 0xf9, 0x05, 0x85, 0x45, 0xc5, 0x25, 0xa5, 0x65, 0xe5,
3196
    0x15, 0x95, 0x55, 0xd5, 0x35, 0xb5, 0x75, 0xf5, 0x0d, 0x8d, 0x4d, 0xcd,
3197
    0x2d, 0xad, 0x6d, 0xed, 0x1d, 0x9d, 0x5d, 0xdd, 0x3d, 0xbd, 0x7d, 0xfd,
3198
    0x03, 0x83, 0x43, 0xc3, 0x23, 0xa3, 0x63, 0xe3, 0x13, 0x93, 0x53, 0xd3,
3199
    0x33, 0xb3, 0x73, 0xf3, 0x0b, 0x8b, 0x4b, 0xcb, 0x2b, 0xab, 0x6b, 0xeb,
3200
    0x1b, 0x9b, 0x5b, 0xdb, 0x3b, 0xbb, 0x7b, 0xfb, 0x07, 0x87, 0x47, 0xc7,
3201
    0x27, 0xa7, 0x67, 0xe7, 0x17, 0x97, 0x57, 0xd7, 0x37, 0xb7, 0x77, 0xf7,
3202
    0x0f, 0x8f, 0x4f, 0xcf, 0x2f, 0xaf, 0x6f, 0xef, 0x1f, 0x9f, 0x5f, 0xdf,
3203
    0x3f, 0xbf, 0x7f, 0xff};
3204
3205
#if 0  /* Unused */
3206
static const unsigned char aig_TIFFNoBitRevTable[256] = {
3207
    0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
3208
    0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
3209
    0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
3210
    0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
3211
    0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
3212
    0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
3213
    0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
3214
    0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
3215
    0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
3216
    0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
3217
    0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
3218
    0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
3219
    0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
3220
    0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
3221
    0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
3222
    0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
3223
    0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
3224
    0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
3225
    0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
3226
    0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
3227
    0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
3228
    0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
3229
    0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
3230
    0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
3231
    0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
3232
    0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
3233
    0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
3234
    0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
3235
    0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
3236
    0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
3237
    0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
3238
    0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
3239
};
3240
#endif /* Unused */
3241
3242
/*
3243
 * The following macros define the majority of the G3/G4 decoder
3244
 * algorithm using the state tables defined elsewhere.  To build
3245
 * a decoder you need some setup code and some glue code. Note
3246
 * that you may also need/want to change the way the NeedBits*
3247
 * macros get input data if, for example, you know the data to be
3248
 * decoded is properly aligned and oriented (doing so before running
3249
 * the decoder can be a big performance win).
3250
 *
3251
 * Consult the decoder in the TIFF library for an idea of what you
3252
 * need to define and setup to make use of these definitions.
3253
 *
3254
 * NB: to enable a debugging version of these macros define FAX3_DEBUG
3255
 *     before including this file.  Trace output goes to stdout.
3256
 */
3257
3258
#ifndef EndOfData
3259
28.5k
#define EndOfData() (cp >= ep)
3260
#endif
3261
/*
3262
 * Need <=8 or <=16 bits of input data.  Unlike viewfax we
3263
 * cannot use/assume a word-aligned, properly bit swizzled
3264
 * input data set because data may come from an arbitrarily
3265
 * aligned, read-only source such as a memory-mapped file.
3266
 * Note also that the viewfax decoder does not check for
3267
 * running off the end of the input data buffer.  This is
3268
 * possible for G3-encoded data because it prescans the input
3269
 * data to count EOL markers, but can cause problems for G4
3270
 * data.  In any event, we don't prescan and must watch for
3271
 * running out of data since we can't permit the library to
3272
 * scan past the end of the input data buffer.
3273
 *
3274
 * Finally, note that we must handle remaindered data at the end
3275
 * of a strip specially.  The coder asks for a fixed number of
3276
 * bits when scanning for the next code.  This may be more bits
3277
 * than are actually present in the data stream.  If we appear
3278
 * to run out of data but still have some number of valid bits
3279
 * remaining then we makeup the requested amount with zeros and
3280
 * return successfully.  If the returned data is incorrect then
3281
 * we should be called again and get a premature EOF error;
3282
 * otherwise we should get the right answer.
3283
 */
3284
#ifndef NeedBits8
3285
#define NeedBits8(n, eoflab)                                                   \
3286
    do                                                                         \
3287
    {                                                                          \
3288
        if (BitsAvail < (n))                                                   \
3289
        {                                                                      \
3290
            if (EndOfData())                                                   \
3291
            {                                                                  \
3292
                if (BitsAvail == 0) /* no valid bits */                        \
3293
                    goto eoflab;                                               \
3294
                BitsAvail = (n); /* pad with zeros */                          \
3295
            }                                                                  \
3296
            else                                                               \
3297
            {                                                                  \
3298
                BitAcc |= ((GUInt32)bitmap[*cp++]) << BitsAvail;               \
3299
                BitsAvail += 8;                                                \
3300
            }                                                                  \
3301
        }                                                                      \
3302
    } while (0)
3303
#endif
3304
#ifndef NeedBits16
3305
#define NeedBits16(n, eoflab)                                                  \
3306
38.1k
    do                                                                         \
3307
38.1k
    {                                                                          \
3308
38.1k
        if (BitsAvail < (n))                                                   \
3309
38.1k
        {                                                                      \
3310
23.7k
            if (EndOfData())                                                   \
3311
23.7k
            {                                                                  \
3312
2.83k
                if (BitsAvail == 0) /* no valid bits */                        \
3313
2.83k
                    goto eoflab;                                               \
3314
2.83k
                BitsAvail = (n); /* pad with zeros */                          \
3315
2.82k
            }                                                                  \
3316
23.7k
            else                                                               \
3317
23.7k
            {                                                                  \
3318
20.9k
                BitAcc |= ((GUInt32)bitmap[*cp++]) << BitsAvail;               \
3319
20.9k
                if ((BitsAvail += 8) < (n))                                    \
3320
20.9k
                {                                                              \
3321
4.80k
                    if (EndOfData())                                           \
3322
4.80k
                    {                                                          \
3323
451
                        /* NB: we know BitsAvail is non-zero here */           \
3324
451
                        BitsAvail = (n); /* pad with zeros */                  \
3325
451
                    }                                                          \
3326
4.80k
                    else                                                       \
3327
4.80k
                    {                                                          \
3328
4.35k
                        BitAcc |= ((GUInt32)bitmap[*cp++]) << BitsAvail;       \
3329
4.35k
                        BitsAvail += 8;                                        \
3330
4.35k
                    }                                                          \
3331
4.80k
                }                                                              \
3332
20.9k
            }                                                                  \
3333
23.7k
        }                                                                      \
3334
38.1k
    } while (0)
3335
#endif
3336
38.1k
#define GetBits(n) (BitAcc & ((1 << (n)) - 1))
3337
#define ClrBits(n)                                                             \
3338
43.3k
    do                                                                         \
3339
43.3k
    {                                                                          \
3340
43.3k
        BitsAvail -= (n);                                                      \
3341
43.3k
        BitAcc >>= (n);                                                        \
3342
43.3k
    } while (0)
3343
3344
#ifdef FAX3_DEBUG
3345
static const char *StateNames[] = {
3346
    "Null   ", "Pass   ", "Horiz  ", "V0     ", "VR     ", "VL     ", "Ext    ",
3347
    "TermW  ", "TermB  ", "MakeUpW", "MakeUpB", "MakeUp ", "EOL    ",
3348
};
3349
#define DEBUG_SHOW putchar(BitAcc & (1 << t) ? '1' : '0')
3350
#define LOOKUP8(wid, tab, eoflab)                                              \
3351
    do                                                                         \
3352
    {                                                                          \
3353
        int t;                                                                 \
3354
        NeedBits8(wid, eoflab);                                                \
3355
        TabEnt = tab + GetBits(wid);                                           \
3356
        printf("%08lX/%d: %s%5d\t", (long)BitAcc, BitsAvail, /*ok*/            \
3357
               StateNames[TabEnt->State], TabEnt->Param);                      \
3358
        for (t = 0; t < TabEnt->Width; t++)                                    \
3359
            DEBUG_SHOW;                                                        \
3360
        putchar('\n');                                                         \
3361
        fflush(stdout);                                                        \
3362
        ClrBits(TabEnt->Width);                                                \
3363
    } while (0)
3364
#define LOOKUP16(wid, tab, eoflab)                                             \
3365
    do                                                                         \
3366
    {                                                                          \
3367
        int t;                                                                 \
3368
        NeedBits16(wid, eoflab);                                               \
3369
        TabEnt = tab + GetBits(wid);                                           \
3370
        printf("%08lX/%d: %s%5d\t", (long)BitAcc, BitsAvail, /*ok*/            \
3371
               StateNames[TabEnt->State], TabEnt->Param);                      \
3372
        for (t = 0; t < TabEnt->Width; t++)                                    \
3373
            DEBUG_SHOW;                                                        \
3374
        putchar('\n');                                                         \
3375
        fflush(stdout);                                                        \
3376
        ClrBits(TabEnt->Width);                                                \
3377
    } while (0)
3378
3379
#define SETVAL(x)                                                              \
3380
    do                                                                         \
3381
    {                                                                          \
3382
        *pa++ = RunLength + (x);                                               \
3383
        printf("SETVAL: %d\t%d\n", RunLength + (x), a0); /*ok*/                \
3384
        a0 += x;                                                               \
3385
        RunLength = 0;                                                         \
3386
    } while (0)
3387
#else
3388
#define LOOKUP8(wid, tab, eoflab)                                              \
3389
    do                                                                         \
3390
    {                                                                          \
3391
        NeedBits8(wid, eoflab);                                                \
3392
        TabEnt = tab + GetBits(wid);                                           \
3393
        ClrBits(TabEnt->Width);                                                \
3394
    } while (0)
3395
#define LOOKUP16(wid, tab, eoflab)                                             \
3396
38.1k
    do                                                                         \
3397
38.1k
    {                                                                          \
3398
38.1k
        NeedBits16(wid, eoflab);                                               \
3399
38.1k
        TabEnt = tab + GetBits(wid);                                           \
3400
38.1k
        ClrBits(TabEnt->Width);                                                \
3401
38.1k
    } while (0)
3402
3403
/*
3404
 * Append a run to the run length array for the
3405
 * current row and reset decoding state.
3406
 */
3407
#define SETVAL(x)                                                              \
3408
38.0k
    do                                                                         \
3409
38.0k
    {                                                                          \
3410
38.0k
        *pa++ = RunLength + (x);                                               \
3411
38.0k
        a0 += (x);                                                             \
3412
38.0k
        RunLength = 0;                                                         \
3413
38.0k
    } while (0)
3414
#endif
3415
3416
/*
3417
 * Synchronize input decoding at the start of each
3418
 * row by scanning for an EOL (if appropriate) and
3419
 * skipping any trash data that might be present
3420
 * after a decoding error.  Note that the decoding
3421
 * done elsewhere that recognizes an EOL only consumes
3422
 * 11 consecutive zero bits.  This means that if EOLcnt
3423
 * is non-zero then we still need to scan for the final flag
3424
 * bit that is part of the EOL code.
3425
 */
3426
#define SYNC_EOL(eoflab)                                                       \
3427
    do                                                                         \
3428
    {                                                                          \
3429
        if (EOLcnt == 0)                                                       \
3430
        {                                                                      \
3431
            for (;;)                                                           \
3432
            {                                                                  \
3433
                NeedBits16(11, eoflab);                                        \
3434
                if (GetBits(11) == 0)                                          \
3435
                    break;                                                     \
3436
                ClrBits(1);                                                    \
3437
            }                                                                  \
3438
        }                                                                      \
3439
        for (;;)                                                               \
3440
        {                                                                      \
3441
            NeedBits8(8, eoflab);                                              \
3442
            if (GetBits(8))                                                    \
3443
                break;                                                         \
3444
            ClrBits(8);                                                        \
3445
        }                                                                      \
3446
        while (GetBits(1) == 0)                                                \
3447
            ClrBits(1);                                                        \
3448
        ClrBits(1); /* EOL bit */                                              \
3449
        EOLcnt = 0; /* reset EOL counter/flag */                               \
3450
    } while (0)
3451
3452
/*
3453
 * Cleanup the array of runs after decoding a row.
3454
 * We adjust final runs to insure the user buffer is not
3455
 * overwritten and/or undecoded area is white filled.
3456
 */
3457
#define CLEANUP_RUNS()                                                         \
3458
5.27k
    do                                                                         \
3459
5.27k
    {                                                                          \
3460
5.27k
        if (RunLength)                                                         \
3461
5.27k
            SETVAL(0);                                                         \
3462
5.27k
        if (a0 != lastx)                                                       \
3463
5.27k
        {                                                                      \
3464
4.98k
            badlength(a0, lastx);                                              \
3465
8.22k
            while (a0 > lastx && pa > thisrun)                                 \
3466
4.98k
                a0 -= *--pa;                                                   \
3467
4.98k
            if (a0 < lastx)                                                    \
3468
4.98k
            {                                                                  \
3469
4.98k
                if (a0 < 0)                                                    \
3470
4.98k
                    a0 = 0;                                                    \
3471
4.98k
                if ((pa - thisrun) & 1)                                        \
3472
4.98k
                    SETVAL(0);                                                 \
3473
4.98k
                SETVAL(lastx - a0);                                            \
3474
4.98k
            }                                                                  \
3475
4.98k
            else if (a0 > lastx)                                               \
3476
0
            {                                                                  \
3477
0
                SETVAL(lastx);                                                 \
3478
0
                SETVAL(0);                                                     \
3479
0
            }                                                                  \
3480
4.98k
        }                                                                      \
3481
5.27k
    } while (0)
3482
3483
/*
3484
 * Decode a line of 1D-encoded data.
3485
 *
3486
 * The line expanders are written as macros so that they can be reused
3487
 * but still have direct access to the local variables of the "calling"
3488
 * function.
3489
 *
3490
 * Note that unlike the original version we have to explicitly test for
3491
 * a0 >= lastx after each black/white run is decoded.  This is because
3492
 * the original code depended on the input data being zero-padded to
3493
 * insure the decoder recognized an EOL before running out of data.
3494
 */
3495
3496
/*
3497
 * Update the value of b1 using the array
3498
 * of runs for the reference line.
3499
 */
3500
#define CHECK_b1                                                               \
3501
    do                                                                         \
3502
    {                                                                          \
3503
        if (pa != thisrun)                                                     \
3504
            while (b1 <= a0 && b1 < lastx)                                     \
3505
            {                                                                  \
3506
                b1 += pb[0] + pb[1];                                           \
3507
                pb += 2;                                                       \
3508
            }                                                                  \
3509
    } while (0)
3510
3511
/* ==================================================================== */
3512
/*      Declarations from tif_fax3.c                                    */
3513
/* ==================================================================== */
3514
3515
/*
3516
 * Compression+decompression state blocks are
3517
 * derived from this ``base state'' block.
3518
 */
3519
typedef struct
3520
{
3521
    int rw_mode;       /* O_RDONLY for decode, else encode */
3522
    int mode;          /* operating mode */
3523
    GUInt32 rowbytes;  /* bytes in a decoded scanline */
3524
    GUInt32 rowpixels; /* pixels in a scanline */
3525
3526
    GUInt16 cleanfaxdata; /* CleanFaxData tag */
3527
    GUInt32 badfaxrun;    /* BadFaxRun tag */
3528
    GUInt32 badfaxlines;  /* BadFaxLines tag */
3529
    GUInt32 groupoptions; /* Group 3/4 options tag */
3530
    GUInt32 recvparams;   /* encoded Class 2 session params */
3531
    char *subaddress;     /* subaddress string */
3532
    GUInt32 recvtime;     /* time spent receiving (secs) */
3533
} Fax3BaseState;
3534
3535
17.8k
#define Fax3State(tif) ((Fax3BaseState *)tif)
3536
3537
typedef struct
3538
{
3539
    Fax3BaseState b;
3540
    const unsigned char *bitmap; /* bit reversal table */
3541
    GUInt32 data;                /* current i/o byte/word */
3542
    int bit;                     /* current i/o bit in byte */
3543
    int EOLcnt;                  /* count of EOL codes recognized */
3544
    TIFFFaxFillFunc fill;        /* fill routine */
3545
    GUInt32 *runs;               /* b&w runs for current/previous row */
3546
    GUInt32 *refruns;            /* runs for reference line */
3547
    GUInt32 *curruns;            /* runs for current line */
3548
} Fax3DecodeState;
3549
3550
17.8k
#define DecoderState(tif) ((Fax3DecodeState *)Fax3State(tif))
3551
3552
typedef enum
3553
{
3554
    G3_1D,
3555
    G3_2D
3556
} Ttag;
3557
#ifdef notdef
3558
typedef struct
3559
{
3560
    Fax3BaseState b;
3561
    int data;               /* current i/o byte */
3562
    int bit;                /* current i/o bit in byte */
3563
    Ttag tag;               /* encoding state */
3564
    unsigned char *refline; /* reference line for 2d decoding */
3565
    int k;                  /* #rows left that can be 2d encoded */
3566
    int maxk;               /* max #rows that can be 2d encoded */
3567
} Fax3EncodeState;
3568
3569
#define EncoderState(tif) ((Fax3EncodeState *)Fax3State(tif))
3570
#endif
3571
3572
#define is2DEncoding(sp) (sp->b.groupoptions & GROUP3OPT_2DENCODING)
3573
8.47k
#define isAligned(p, t) ((((size_t)(p)) & (sizeof(t) - 1)) == 0)
3574
3575
/*
3576
 * Group 3 and Group 4 Decoding.
3577
 */
3578
3579
/*
3580
 * These macros glue the TIFF library state to
3581
 * the state expected by Frank's decoder.
3582
 */
3583
#define DECLARE_STATE(tif, sp)                                                 \
3584
1.98k
    Fax3DecodeState *sp = DecoderState(tif);                                   \
3585
1.98k
    int a0;                                   /* reference element */          \
3586
1.98k
    int lastx = sp->b.rowpixels;              /* last element in row */        \
3587
1.98k
    GUInt32 BitAcc;                           /* bit accumulator */            \
3588
1.98k
    int BitsAvail;                            /* # valid bits in BitAcc */     \
3589
1.98k
    int RunLength;                            /* length of current run */      \
3590
1.98k
    unsigned char *cp;                        /* next byte of input data */    \
3591
1.98k
    unsigned char *ep;                        /* end of input data */          \
3592
1.98k
    GUInt32 *pa;                              /* place to stuff next run */    \
3593
1.98k
    GUInt32 *thisrun;                         /* current row's run array */    \
3594
1.98k
    int EOLcnt;                               /* # EOL codes recognized */     \
3595
1.98k
    const unsigned char *bitmap = sp->bitmap; /* input data bit reverser */    \
3596
1.98k
    const TIFFFaxTabEnt *TabEnt
3597
3598
#define DECLARE_STATE_2D(tif, sp, mod)                                         \
3599
    DECLARE_STATE(tif, sp, mod);                                               \
3600
    int b1;     /* next change on prev line */                                 \
3601
    GUInt32 *pb /* next run in reference line */
3602
3603
/**
3604
 * Load any state that may be hanged during decoding.
3605
 */
3606
#define CACHE_STATE(sp)                                                        \
3607
1.97k
    do                                                                         \
3608
1.97k
    {                                                                          \
3609
1.97k
        BitAcc = sp->data;                                                     \
3610
1.97k
        BitsAvail = sp->bit;                                                   \
3611
1.97k
        EOLcnt = sp->EOLcnt;                                                   \
3612
1.97k
        cp = (unsigned char *)rawcp;                                           \
3613
1.97k
        ep = cp + rawcc;                                                       \
3614
1.97k
    } while (0)
3615
/*
3616
 * Save state possibly changed during decoding.
3617
 */
3618
#define UNCACHE_STATE(sp)                                                      \
3619
1.97k
    do                                                                         \
3620
1.97k
    {                                                                          \
3621
1.97k
        sp->bit = BitsAvail;                                                   \
3622
1.97k
        sp->data = BitAcc;                                                     \
3623
1.97k
        sp->EOLcnt = EOLcnt;                                                   \
3624
1.97k
        /* below updates not needed in AIG case */                             \
3625
1.97k
        /* rawcc -= (int)((unsigned char *) cp - rawcp); */                    \
3626
1.97k
        /* rawcp = (unsigned char *) cp; */                                    \
3627
1.97k
    } while (0)
3628
3629
/*
3630
 * Routine for handling various errors/conditions.
3631
 * Note how they are "glued into the decoder" by
3632
 * overriding the definitions used by the decoder.
3633
 */
3634
3635
static void Fax3Unexpected()
3636
532
{
3637
532
    CPLError(CE_Failure, CPLE_AppDefined, "Bad code word");
3638
532
}
3639
3640
532
#define unexpected(table, a0) Fax3Unexpected()
3641
3642
static void Fax3BadLength(GUInt32 a0, GUInt32 lastx)
3643
4.98k
{
3644
4.98k
    CPLError(CE_Warning, CPLE_AppDefined, "%s (got %lu, expected %lu)",
3645
4.98k
             a0 < lastx ? "Premature EOL" : "Line length mismatch",
3646
4.98k
             (unsigned long)a0, (unsigned long)lastx);
3647
4.98k
}
3648
3649
4.98k
#define badlength(a0, lastx) Fax3BadLength(a0, lastx)
3650
3651
static void Fax3PrematureEOF()
3652
11
{
3653
11
    CPLError(CE_Warning, CPLE_AppDefined, "Premature EOF");
3654
11
}
3655
3656
11
#define prematureEOF(a0) Fax3PrematureEOF()
3657
3658
#define Nop
3659
3660
/*
3661
 * The ZERO & FILL macros must handle spans < 2*sizeof(long) bytes.
3662
 * For machines with 64-bit longs this is <16 bytes; otherwise
3663
 * this is <8 bytes.  We optimize the code here to reflect the
3664
 * machine characteristics.
3665
 */
3666
3667
#if __GNUC__ >= 7
3668
#pragma GCC diagnostic push
3669
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
3670
#endif
3671
3672
#if SIZEOF_UNSIGNED_LONG == 8
3673
#define FILL(n, cp)                                                            \
3674
1.98k
    switch (n)                                                                 \
3675
1.98k
    {                                                                          \
3676
41
        case 15:                                                               \
3677
41
            (cp)[14] = 0xff;                                                   \
3678
104
        case 14:                                                               \
3679
104
            (cp)[13] = 0xff;                                                   \
3680
251
        case 13:                                                               \
3681
251
            (cp)[12] = 0xff;                                                   \
3682
334
        case 12:                                                               \
3683
334
            (cp)[11] = 0xff;                                                   \
3684
441
        case 11:                                                               \
3685
441
            (cp)[10] = 0xff;                                                   \
3686
452
        case 10:                                                               \
3687
452
            (cp)[9] = 0xff;                                                    \
3688
532
        case 9:                                                                \
3689
532
            (cp)[8] = 0xff;                                                    \
3690
621
        case 8:                                                                \
3691
621
            (cp)[7] = 0xff;                                                    \
3692
721
        case 7:                                                                \
3693
721
            (cp)[6] = 0xff;                                                    \
3694
828
        case 6:                                                                \
3695
828
            (cp)[5] = 0xff;                                                    \
3696
914
        case 5:                                                                \
3697
914
            (cp)[4] = 0xff;                                                    \
3698
1.17k
        case 4:                                                                \
3699
1.17k
            (cp)[3] = 0xff;                                                    \
3700
1.22k
        case 3:                                                                \
3701
1.22k
            (cp)[2] = 0xff;                                                    \
3702
1.69k
        case 2:                                                                \
3703
1.69k
            (cp)[1] = 0xff;                                                    \
3704
1.96k
        case 1:                                                                \
3705
1.96k
            (cp)[0] = 0xff;                                                    \
3706
1.96k
            (cp) += (n);                                                       \
3707
1.98k
        case 0:;                                                               \
3708
1.98k
    }
3709
#define ZERO(n, cp)                                                            \
3710
9.50k
    switch (n)                                                                 \
3711
9.50k
    {                                                                          \
3712
153
        case 15:                                                               \
3713
153
            (cp)[14] = 0;                                                      \
3714
229
        case 14:                                                               \
3715
229
            (cp)[13] = 0;                                                      \
3716
602
        case 13:                                                               \
3717
602
            (cp)[12] = 0;                                                      \
3718
761
        case 12:                                                               \
3719
761
            (cp)[11] = 0;                                                      \
3720
907
        case 11:                                                               \
3721
907
            (cp)[10] = 0;                                                      \
3722
1.39k
        case 10:                                                               \
3723
1.39k
            (cp)[9] = 0;                                                       \
3724
1.79k
        case 9:                                                                \
3725
1.79k
            (cp)[8] = 0;                                                       \
3726
2.07k
        case 8:                                                                \
3727
2.07k
            (cp)[7] = 0;                                                       \
3728
2.36k
        case 7:                                                                \
3729
2.36k
            (cp)[6] = 0;                                                       \
3730
2.83k
        case 6:                                                                \
3731
2.83k
            (cp)[5] = 0;                                                       \
3732
4.37k
        case 5:                                                                \
3733
4.37k
            (cp)[4] = 0;                                                       \
3734
5.28k
        case 4:                                                                \
3735
5.28k
            (cp)[3] = 0;                                                       \
3736
6.63k
        case 3:                                                                \
3737
6.63k
            (cp)[2] = 0;                                                       \
3738
7.79k
        case 2:                                                                \
3739
7.79k
            (cp)[1] = 0;                                                       \
3740
9.26k
        case 1:                                                                \
3741
9.26k
            (cp)[0] = 0;                                                       \
3742
9.26k
            (cp) += (n);                                                       \
3743
9.50k
        case 0:;                                                               \
3744
9.50k
    }
3745
#else
3746
#define FILL(n, cp)                                                            \
3747
    switch (n)                                                                 \
3748
    {                                                                          \
3749
        case 7:                                                                \
3750
            (cp)[6] = 0xff;                                                    \
3751
        case 6:                                                                \
3752
            (cp)[5] = 0xff;                                                    \
3753
        case 5:                                                                \
3754
            (cp)[4] = 0xff;                                                    \
3755
        case 4:                                                                \
3756
            (cp)[3] = 0xff;                                                    \
3757
        case 3:                                                                \
3758
            (cp)[2] = 0xff;                                                    \
3759
        case 2:                                                                \
3760
            (cp)[1] = 0xff;                                                    \
3761
        case 1:                                                                \
3762
            (cp)[0] = 0xff;                                                    \
3763
            (cp) += (n);                                                       \
3764
        case 0:;                                                               \
3765
    }
3766
#define ZERO(n, cp)                                                            \
3767
    switch (n)                                                                 \
3768
    {                                                                          \
3769
        case 7:                                                                \
3770
            (cp)[6] = 0;                                                       \
3771
        case 6:                                                                \
3772
            (cp)[5] = 0;                                                       \
3773
        case 5:                                                                \
3774
            (cp)[4] = 0;                                                       \
3775
        case 4:                                                                \
3776
            (cp)[3] = 0;                                                       \
3777
        case 3:                                                                \
3778
            (cp)[2] = 0;                                                       \
3779
        case 2:                                                                \
3780
            (cp)[1] = 0;                                                       \
3781
        case 1:                                                                \
3782
            (cp)[0] = 0;                                                       \
3783
            (cp) += (n);                                                       \
3784
        case 0:;                                                               \
3785
    }
3786
#endif
3787
3788
/************************************************************************/
3789
/*                         _TIFFFax3fillruns()                          */
3790
/*                                                                      */
3791
/*      Bit-fill a row according to the white/black                     */
3792
/*      runs generated during G3/G4 decoding.                           */
3793
/************************************************************************/
3794
3795
static void aig_TIFFFax3fillruns(unsigned char *buf, GUInt32 *runs,
3796
                                 GUInt32 *erun, GUInt32 lastx)
3797
5.27k
{
3798
5.27k
    static const unsigned char _fillmasks[] = {0x00, 0x80, 0xc0, 0xe0, 0xf0,
3799
5.27k
                                               0xf8, 0xfc, 0xfe, 0xff};
3800
5.27k
    unsigned char *cp;
3801
5.27k
    GUInt32 x, bx, run;
3802
5.27k
    GInt32 n, nw;
3803
5.27k
    long *lp;
3804
3805
5.27k
    if ((erun - runs) & 1)
3806
5.18k
        *erun++ = 0;
3807
5.27k
    x = 0;
3808
25.2k
    for (; runs < erun; runs += 2)
3809
19.9k
    {
3810
19.9k
        run = runs[0];
3811
19.9k
        if (x + run > lastx || run > lastx)
3812
0
            run = runs[0] = (GUInt32)(lastx - x);
3813
19.9k
        if (run)
3814
19.8k
        {
3815
19.8k
            cp = buf + (x >> 3);
3816
19.8k
            bx = x & 7;
3817
19.8k
            if (run > 8 - bx)
3818
12.4k
            {
3819
12.4k
                if (bx)
3820
9.50k
                { /* align to byte boundary */
3821
9.50k
                    *cp++ &= 0xff << (8 - bx);
3822
9.50k
                    run -= 8 - bx;
3823
9.50k
                }
3824
12.4k
                if ((n = run >> 3) != 0)
3825
9.50k
                { /* multiple bytes to fill */
3826
9.50k
                    if ((n / sizeof(long)) > 1)
3827
1.98k
                    {
3828
                        /*
3829
                         * Align to longword boundary and fill.
3830
                         */
3831
8.11k
                        for (; n && !isAligned(cp, long); n--)
3832
6.12k
                            *cp++ = 0x00;
3833
1.98k
                        lp = (long *)(void *)cp;
3834
1.98k
                        nw = (GInt32)(n / sizeof(long));
3835
1.98k
                        n -= nw * sizeof(long);
3836
1.98k
                        do
3837
8.68k
                        {
3838
8.68k
                            *lp++ = 0L;
3839
8.68k
                        } while (--nw);
3840
1.98k
                        cp = (unsigned char *)(void *)lp;
3841
1.98k
                    }
3842
9.50k
                    ZERO(n, cp);
3843
9.50k
                    run &= 7;
3844
9.50k
                }
3845
12.4k
                if (run)
3846
9.66k
                    cp[0] &= 0xff >> run;
3847
12.4k
            }
3848
7.46k
            else
3849
7.46k
                cp[0] &= ~(_fillmasks[run] >> bx);
3850
19.8k
            x += runs[0];
3851
19.8k
        }
3852
19.9k
        run = runs[1];
3853
19.9k
        if (x + run > lastx || run > lastx)
3854
0
            run = runs[1] = lastx - x;
3855
19.9k
        if (run)
3856
13.7k
        {
3857
13.7k
            cp = buf + (x >> 3);
3858
13.7k
            bx = x & 7;
3859
13.7k
            if (run > 8 - bx)
3860
6.34k
            {
3861
6.34k
                if (bx)
3862
6.12k
                { /* align to byte boundary */
3863
6.12k
                    *cp++ |= 0xff >> bx;
3864
6.12k
                    run -= 8 - bx;
3865
6.12k
                }
3866
6.34k
                if ((n = run >> 3) != 0)
3867
1.98k
                { /* multiple bytes to fill */
3868
1.98k
                    if ((n / sizeof(long)) > 1)
3869
70
                    {
3870
                        /*
3871
                         * Align to longword boundary and fill.
3872
                         */
3873
361
                        for (; n && !isAligned(cp, long); n--)
3874
291
                            *cp++ = 0xff;
3875
70
                        lp = (long *)(void *)cp;
3876
70
                        nw = (GInt32)(n / sizeof(long));
3877
70
                        n -= nw * sizeof(long);
3878
70
                        do
3879
279
                        {
3880
279
                            *lp++ = -1L;
3881
279
                        } while (--nw);
3882
70
                        cp = (unsigned char *)(void *)lp;
3883
70
                    }
3884
1.98k
                    FILL(n, cp);
3885
1.98k
                    run &= 7;
3886
1.98k
                }
3887
6.34k
                if (run)
3888
5.71k
                    cp[0] |= 0xff00 >> run;
3889
6.34k
            }
3890
7.38k
            else
3891
7.38k
                cp[0] |= _fillmasks[run] >> bx;
3892
13.7k
            x += runs[1];
3893
13.7k
        }
3894
19.9k
    }
3895
5.27k
    assert(x == lastx);
3896
5.27k
}
3897
3898
#undef ZERO
3899
#undef FILL
3900
3901
#if __GNUC__ >= 7
3902
#pragma GCC diagnostic pop
3903
#endif
3904
3905
/************************************************************************/
3906
/*                           Fax3DecodeRLE()                            */
3907
/*                                                                      */
3908
/*      Decode the requested amount of RLE-encoded data.                */
3909
/************************************************************************/
3910
3911
static int Fax3DecodeRLE(Fax3BaseState *tif, unsigned char *buf, int occ,
3912
                         unsigned char *rawcp, int rawcc)
3913
1.98k
{
3914
1.98k
    DECLARE_STATE(tif, sp);
3915
1.98k
    int mode = sp->b.mode;
3916
1.98k
    if (occ % sp->b.rowbytes)
3917
2
    {
3918
2
        CPLError(CE_Failure, CPLE_AppDefined,
3919
2
                 "Fractional scanlines cannot be read");
3920
2
        return (-1);
3921
2
    }
3922
3923
1.97k
    CACHE_STATE(sp);
3924
1.97k
    thisrun = sp->curruns;
3925
7.23k
    while ((long)occ > 0)
3926
5.27k
    {
3927
5.27k
        a0 = 0;
3928
5.27k
        RunLength = 0;
3929
5.27k
        pa = thisrun;
3930
#ifdef FAX3_DEBUG
3931
        printf("\nBitAcc=%08X, BitsAvail = %d\n", BitAcc, BitsAvail); /*ok*/
3932
        printf("-------------------- \n");                            /*ok*/
3933
        fflush(stdout);
3934
#endif
3935
3936
        /* --------------------------------------------------------------------
3937
         */
3938
        /*      EXPAND1D() */
3939
        /*                                                                      */
3940
        /*                                                                      */
3941
        /*       Decode a line of 1D-encoded data. */
3942
        /*                                                                      */
3943
        /*      The line expanders are written as macros so that they can */
3944
        /*      be  reused but still have direct access to the local */
3945
        /*      variables of the "calling" function. */
3946
        /*                                                                      */
3947
        /*      Note that unlike the original version we have to explicitly */
3948
        /*      test for a0 >= lastx after each black/white run is decoded. */
3949
        /*      This is because the original code depended on the input data */
3950
        /*      being zero-padded to insure the decoder recognized an EOL */
3951
        /*      before running out of data. */
3952
        /* --------------------------------------------------------------------
3953
         */
3954
5.27k
        do
3955
5.27k
        {
3956
5.27k
            for (;;)
3957
19.0k
            {
3958
19.0k
                for (;;)
3959
22.4k
                {
3960
22.4k
                    LOOKUP16(12, aig_TIFFFaxWhiteTable, eof1d);
3961
22.4k
                    switch (TabEnt->State)
3962
22.4k
                    {
3963
976
                        case S_EOL:
3964
976
                            EOLcnt = 1;
3965
976
                            goto done1d;
3966
17.6k
                        case S_TermW:
3967
17.6k
                            SETVAL(TabEnt->Param);
3968
17.6k
                            goto doneWhite1d;
3969
3.14k
                        case S_MakeUpW:
3970
3.38k
                        case S_MakeUp:
3971
3.38k
                            a0 += TabEnt->Param;
3972
3.38k
                            RunLength += TabEnt->Param;
3973
3.38k
                            break;
3974
369
                        default:
3975
369
                            unexpected("WhiteTable", a0);
3976
369
                            goto done1d;
3977
22.4k
                    }
3978
22.4k
                }
3979
17.6k
            doneWhite1d:
3980
17.6k
                if (a0 >= lastx)
3981
2.85k
                    goto done1d;
3982
14.8k
                for (;;)
3983
15.7k
                {
3984
15.7k
                    LOOKUP16(13, aig_TIFFFaxBlackTable, eof1d);
3985
15.7k
                    switch (TabEnt->State)
3986
15.7k
                    {
3987
415
                        case S_EOL:
3988
415
                            EOLcnt = 1;
3989
415
                            goto done1d;
3990
14.2k
                        case S_TermB:
3991
14.2k
                            SETVAL(TabEnt->Param);
3992
14.2k
                            goto doneBlack1d;
3993
716
                        case S_MakeUpB:
3994
907
                        case S_MakeUp:
3995
907
                            a0 += TabEnt->Param;
3996
907
                            RunLength += TabEnt->Param;
3997
907
                            break;
3998
163
                        default:
3999
163
                            unexpected("BlackTable", a0);
4000
163
                            goto done1d;
4001
15.7k
                    }
4002
15.7k
                }
4003
14.2k
            doneBlack1d:
4004
14.2k
                if (a0 >= lastx)
4005
478
                    goto done1d;
4006
13.7k
                if (*(pa - 1) == 0 && *(pa - 2) == 0)
4007
0
                    pa -= 2;
4008
13.7k
            }
4009
11
        eof1d:
4010
11
            prematureEOF(a0);
4011
11
            CLEANUP_RUNS();
4012
11
            goto EOFRLE;
4013
5.26k
        done1d:
4014
5.26k
            CLEANUP_RUNS();
4015
5.26k
        } while (0);
4016
4017
        /* --------------------------------------------------------------------
4018
         */
4019
        /*      Fill */
4020
        /* --------------------------------------------------------------------
4021
         */
4022
5.26k
        (*sp->fill)(buf, thisrun, pa, lastx);
4023
        /*
4024
         * Cleanup at the end of the row.
4025
         */
4026
5.26k
        if (mode & FAXMODE_BYTEALIGN)
4027
5.26k
        {
4028
5.26k
            int n = BitsAvail - (BitsAvail & ~7);
4029
5.26k
            ClrBits(n);
4030
5.26k
        }
4031
0
        else if (mode & FAXMODE_WORDALIGN)
4032
0
        {
4033
0
            int n = BitsAvail - (BitsAvail & ~15);
4034
0
            ClrBits(n);
4035
0
            if (BitsAvail == 0 && !isAligned(cp, GUInt16))
4036
0
                cp++;
4037
0
        }
4038
5.26k
        buf += sp->b.rowbytes;
4039
5.26k
        occ -= sp->b.rowbytes;
4040
#ifdef notdef
4041
        if (occ != 0)
4042
            tif->tif_row++;
4043
#endif
4044
5.26k
        continue;
4045
11
    EOFRLE: /* premature EOF */
4046
11
        (*sp->fill)(buf, thisrun, pa, lastx);
4047
11
        UNCACHE_STATE(sp);
4048
11
        return (-1);
4049
5.27k
    }
4050
1.96k
    UNCACHE_STATE(sp);
4051
4052
1.96k
    return (1);
4053
1.97k
}
4054
4055
/************************************************************************/
4056
/*                       DecompressCCITTRLETile()                       */
4057
/************************************************************************/
4058
4059
CPLErr DecompressCCITTRLETile(unsigned char *pabySrcData, int nSrcBytes,
4060
                              unsigned char *pabyDstData, int nDstBytes,
4061
                              int nBlockXSize, CPL_UNUSED int nBlockYSize)
4062
1.98k
{
4063
1.98k
    Fax3DecodeState sDecoderState;
4064
1.98k
    Fax3BaseState *sp = (Fax3BaseState *)&sDecoderState;
4065
1.98k
    unsigned char runs_buf[4000];
4066
1.98k
    long rowbytes, rowpixels;
4067
4068
1.98k
    memset(&sDecoderState, 0, sizeof(sDecoderState));
4069
4070
1.98k
    sp->groupoptions = 0;
4071
1.98k
    sp->recvparams = 0;
4072
1.98k
    sp->subaddress = NULL;
4073
4074
1.98k
    DecoderState(sp)->runs = NULL;
4075
1.98k
    DecoderState(sp)->fill = aig_TIFFFax3fillruns;
4076
4077
1.98k
    if (sizeof(runs_buf) < (size_t)(nBlockXSize * 2 + 3))
4078
1
    {
4079
1
        CPLError(CE_Failure, CPLE_AppDefined, "Run buffer too small");
4080
1
        return CE_Failure;
4081
1
    }
4082
4083
    /* -------------------------------------------------------------------- */
4084
    /*                                                                      */
4085
    /* -------------------------------------------------------------------- */
4086
    /*
4087
     * Calculate the scanline/tile widths.
4088
     */
4089
1.98k
    rowbytes = (nBlockXSize + 7) / 8;
4090
1.98k
    rowpixels = nBlockXSize;
4091
4092
1.98k
    sp->rowbytes = (GUInt32)rowbytes;
4093
1.98k
    sp->rowpixels = (GUInt32)rowpixels;
4094
1.98k
    sp->mode |= FAXMODE_BYTEALIGN;
4095
    /*
4096
     * Allocate any additional space required for decoding/encoding.
4097
     */
4098
1.98k
    {
4099
1.98k
        Fax3DecodeState *dsp = DecoderState(sp);
4100
4101
1.98k
        dsp->runs = (GUInt32 *)runs_buf;
4102
1.98k
        dsp->curruns = dsp->runs;
4103
1.98k
        dsp->refruns = NULL;
4104
1.98k
    }
4105
4106
    /* -------------------------------------------------------------------- */
4107
    /*                                                                      */
4108
    /* -------------------------------------------------------------------- */
4109
1.98k
    DecoderState(sp)->bit = 0; /* force initial read */
4110
1.98k
    DecoderState(sp)->data = 0;
4111
1.98k
    DecoderState(sp)->EOLcnt = 0; /* force initial scan for EOL */
4112
4113
1.98k
    DecoderState(sp)->bitmap = aig_TIFFBitRevTable;
4114
4115
1.98k
    if (DecoderState(sp)->refruns)
4116
0
    { /* init reference line to white */
4117
0
        DecoderState(sp)->refruns[0] = (GUInt32)DecoderState(sp)->b.rowpixels;
4118
0
        DecoderState(sp)->refruns[1] = 0;
4119
0
    }
4120
4121
1.98k
    if (Fax3DecodeRLE(sp, pabyDstData, nDstBytes, pabySrcData, nSrcBytes) == 1)
4122
1.96k
        return CE_None;
4123
13
    else
4124
13
        return CE_Failure;
4125
1.98k
}