source: SH_SHM/trunk/source/earthloc.c @ 341

Revision 341, 117.0 KB checked in by marcus, 8 years ago (diff)

r180 | walther | 2011-03-09 16:27:03 +0100 (Mi, 09 Mär 2011) | 3 lines

Merging most of the changes from marcus' branch. For full details please see
http://www.seismic-handler.org/portal/log/SH_SHM/branches/marcus?revs=101-106,123-171

Line 
1
2/* file earthloc.c
3 *      ==========
4 *
5 * version 9, 22-May-2006
6 *
7 * computes distance and azimuth of two locations on earth
8 * transferred from FORTRAN program MBAZ of P. Hellweg
9 * K. Stammler, 21-May-92
10 */
11
12
13/*
14 *
15 *  SeismicHandler, seismic analysis software
16 *  Copyright (C) 1992,  Klaus Stammler, Federal Institute for Geosciences
17 *                                       and Natural Resources (BGR), Germany
18 *
19 *  This program is free software; you can redistribute it and/or modify
20 *  it under the terms of the GNU General Public License as published by
21 *  the Free Software Foundation; either version 2 of the License, or
22 *  (at your option) any later version.
23 *
24 *  This program is distributed in the hope that it will be useful,
25 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
26 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27 *  GNU General Public License for more details.
28 *
29 *  You should have received a copy of the GNU General Public License
30 *  along with this program; if not, write to the Free Software
31 *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
32 *
33 */
34
35
36#include <stdio.h>
37#include <string.h>
38#include <math.h>
39#include "basecnst.h"
40#include BC_SYSBASE
41#include "shconst.h"
42#include "earthloc.h"
43
44
45
46/* macros */
47#define DEG2RAD(x) ((x)*BC_PI/180.0)
48#define RAD2DEG(x) ((x)/BC_PI*180.0)
49#define IDXRECLTH 110
50
51
52
53/* global variables */
54static char mbv_indexfile[BC_FILELTH+1]    /* name of FER index file */
55        ={"fereg.dat"};
56static char mbv_namefile[BC_FILELTH+1]     /* name of FER name file */
57        ={"fername.dat"};
58static char mbv_corrfile[BC_FILELTH+1]     /* station corrections */
59        ={"inputs\\grfcorr.dat"};
60
61
62
63/* prototypes of local routines */
64static void mb_geocr( double lon, double lat, double *a, double *b, double *c );
65static double mb_azm( double x, double y );
66void mbh_fer_lookup( float alat, char drclat, float alng, char drclng,
67        int *igreg, int *isreg );
68void mbh_fer_region(int igreg, char grname[], int isreg, char srname[] );
69
70
71
72/*---------------------------------------------------------------------*/
73
74
75void mb_locdiff( double slat, double slon, double elat, double elon,
76        double *distance, double *azim, double *bazim )
77
78/* returns distance and azimuth in degrees of two locations on
79 * earth
80 *
81 * parameters of routine
82 * double     slat, slon;    input; latitude and longitude of station
83 * double     elat, elon;    input; latitude and longitude of epicentre
84 * double     *distance;     output; distance in degrees
85 * double     *azim;         output; azimuth in degrees
86 * double     *bazim;        output; back-azimuth in degrees
87 */
88{
89        /* local variables */
90        double   as, bs, cs, ds;
91        double   ae, be, ce, de;
92        double   bls, cbls, sbls, ble;
93        double   codel, bgdel;
94        double   xi, xj, xk;
95        double   sindt, cosz, sinz;
96
97        /* executable code */
98
99        mb_geocr( slon, slat, &as, &bs, &cs );
100        ds = sqrt( 1.0 - cs*cs );
101        mb_geocr( elon, elat, &ae, &be, &ce );
102        de = sqrt( 1.0 - ce*ce );
103
104        bls = DEG2RAD( slon );
105        cbls = cos( bls );
106        sbls = sin( bls );
107        codel = ae*as + be*bs + ce*cs;
108
109        sindt = sqrt( 1.0-codel*codel );
110        if  (codel == 0.0)  {
111                bgdel = BC_PI/2.0;
112        } else {
113                bgdel = atan( fabs(sindt/codel) );
114                if  (codel <= 0.0)
115                        bgdel = BC_PI - bgdel;
116        } /*endif*/
117
118        *distance = RAD2DEG( bgdel );
119
120        /* azimuths */
121        xi = bs*ce - be*cs;
122        xj = as*ce - ae*cs;
123        xk = as*be - ae*bs;
124        cosz = (xi*sbls + xj*cbls)/sindt;
125        sinz = xk/(ds*sindt);
126        *bazim = mb_azm( cosz, sinz );
127        ble = DEG2RAD( elon );
128        cosz = -(xi*sin(ble) + xj*cos(ble))/sindt;
129        sinz = -xk/(de*sindt);
130        *azim = mb_azm( cosz, sinz );
131
132} /* end of mb_locdiff */
133
134
135
136/*---------------------------------------------------------------------*/
137
138
139
140void mb_deg_to_km( int listlth, double lat[], double lon[],
141        float x[], float y[] )
142
143/* computes x-y coordinates of points on surface of earth given in lat&lon.
144 * The reference point is assumed to be given as last element of the list.
145 *
146 * parameters of routine
147 * int        listlth;       length of following arrays
148 * double     lat[], lon[];  input; given locations in deg
149 * float      x[], y[];      output; returned locations in km
150 */
151{
152        /* local variables */
153        int      i;                /* counter */
154        double   reflat, reflon;   /* reference point */
155        double   dist, az, baz;    /* distance azimuth back-azimuth */
156
157        /* executable code */
158
159        reflat = lat[listlth-1];
160        reflon = lon[listlth-1];
161        x[listlth-1] = 0.0;
162        y[listlth-1] = 0.0;
163
164        for  (i=0; i<(listlth-1); i++)  {
165                mb_locdiff( lat[i], lon[i], reflat, reflon, &dist, &az, &baz );
166                dist *= SHC_DEG_TO_KM;
167                if  (dist < SHC_EPSILON)  {
168                        x[i] = y[i] = 0.0;
169                } else {
170                        az /= SHC_RAD_TO_DEG;
171                        x[i] = dist * sin(az);
172                        y[i] = dist * cos(az);
173                } /*endif*/
174        } /*endfor*/
175
176} /* end of mb_deg_to_km */
177
178
179
180/*---------------------------------------------------------------------*/
181
182
183
184static void mb_geocr( double lon, double lat, double *a, double *b, double *c )
185
186/* no comment available
187 *
188 */
189{
190        /* local variables */
191        double   blbda, bphi, ep, ug, vg;
192
193        /* executable code */
194
195        blbda = DEG2RAD( lon );
196        bphi = DEG2RAD( lat );
197        ep = 1.0 - 1.0/297.0;
198        ug = ep*ep*tan(bphi);
199        vg = 1.0/sqrt(1.0+ug*ug);
200        *a = vg*cos(blbda);
201        *b = vg*sin(blbda);
202        *c = ug*vg;
203
204} /* end of mb_geocr */
205
206
207
208/*---------------------------------------------------------------------*/
209
210
211
212static double mb_azm( double x, double y )
213
214/* no comment available
215 *
216 */
217{
218        /* local variables */
219        double   th;
220
221        /* executable code */
222
223        if  (x == 0.0)  {
224                if  (y > 0.0)  return 90.0;
225                if  (y < 0.0)  return 270.0;
226                return 0.0;
227        } /*endif*/
228
229        th = RAD2DEG( atan(fabs(y/x)) );
230        if  (x > 0.0)  {
231                if  (y < 0.0)  return (360.0-th);
232                return th;
233        } else {
234                if  (y >= 0.0)  return (180.0-th);
235                return (180.0+th);
236        } /*endif*/
237
238} /* end of mb_azm */
239
240
241
242/*---------------------------------------------------------------------*/
243
244
245void mb_ferindex( float lat, float lon, int *feridx, STATUS *status )
246
247/* returns FER index from given location (lat,lon) in degrees
248 *
249 * parameters of routine
250 * float      lat, lon;     input; location in degrees
251 */
252{
253        /* local variables */
254        int      isreg;        /* seismic region name, not used here */
255
256        /* executable code */
257
258        mbh_fer_lookup( lat, ' ', lon, ' ', feridx, &isreg );
259
260} /* end of mb_ferindex */
261
262
263
264/*---------------------------------------------------------------------*/
265
266
267void mb_fername( int ferindex, int maxlth, char fername[], STATUS *status )
268
269/* returns name of FER
270 *
271 * parameters of routine
272 * int        ferindex;       input; FER index
273 * char       fername[];      output; FER name
274 * STATUS     *status;        output; return status
275 */
276{
277        /* local variables */
278        char     srname[cBcLineLth+1];   /* seismic region name, not used here */
279
280        /* executable code */
281
282        if  (maxlth < 79)  {
283                *status = MBE_SHORTSTR;
284                return;
285        } /*endif*/
286
287        mbh_fer_region( ferindex, fername, 1, srname );
288
289} /* end of mb_fername */
290
291
292
293/*---------------------------------------------------------------------*/
294
295
296
297void mb_setindexfile( char name[], STATUS *status )
298
299/* tells where to find the FER index file
300 *
301 * parameters of routine
302 * char       name[];     input; name (and path) of FER index file
303 * STATUS     *status;    output; return status
304 */
305{
306        /* executable code */
307
308        if  (strlen(name) > BC_FILELTH)  {
309                *status = MBE_SHORTSTR;
310                return;
311        } /*endif*/
312        strcpy( mbv_indexfile, name );
313
314
315} /* end of mb_setindexfile */
316
317
318
319/*---------------------------------------------------------------------*/
320
321
322
323void mb_setfernamefile( char name[], STATUS *status )
324
325/* tells where to find the FER name file
326 *
327 * parameters of routine
328 * char       name[];     input; name (and path) of FER name file
329 * STATUS     *status;    output; return status
330 */
331{
332        /* executable code */
333
334        if  (strlen(name) > BC_FILELTH)  {
335                *status = MBE_SHORTSTR;
336                return;
337        } /*endif*/
338        strcpy( mbv_namefile, name );
339
340
341} /* end of mb_setfernamefile */
342
343
344
345/*---------------------------------------------------------------------*/
346
347
348
349void mb_getlocname( float lat, float lon, int maxlth,
350        char name[], STATUS *status )
351
352/* returns FER name of location (lat,lon)
353 *
354 * parameters of routine
355 * float      lat, lon;       input; location in degrees
356 * int        maxlth;         input; maximum length of output string
357 * char       name[];         output; FER name
358 * STATUS     *status;        output; return status
359 */
360{
361        /* local variables */
362        int      feridx;       /* FER index */
363
364        /* executable code */
365
366        mb_ferindex( lat, lon, &feridx, status );
367        if  (Severe(status))  return;
368        mb_fername( feridx, maxlth, name, status );
369
370} /* end of mb_getlocname */
371
372
373
374/*---------------------------------------------------------------------*/
375
376
377
378void mb_spherediff( float slat, float slon, float elat, float elon,
379        float *dist, float *bazim )
380
381/* computes difference and azimuth of two locations (slat,slon)
382 * and (elat,elon)
383 *
384 * parameters of routine
385 * float      slat, slon;    input; (station) location in degrees
386 * float      elat, elon;    input; (epicentre) location in degrees
387 * float      *dist;         output; distance in degrees
388 * float      *bazim;        output; (back-)azimuth in degrees
389 */
390{
391        /* local variables */
392        float    gamma;    /* top angle in triangle */
393        BOOLEAN  invert;   /* invert angle */
394        double   arg;      /* argument of acos */
395
396        /* executable code */
397
398        /* transformation to mathematical system */
399        slat = 90.0 - slat;
400        elat = 90.0 - elat;
401        if  (slon < 0.0)  slon = 360 + slon;
402        if  (elon < 0.0)  elon = 360 + elon;
403
404        /* compute top angle */
405        gamma = elon - slon;
406        if  (gamma < 0.0)  gamma += 360.0;
407        invert = (gamma > 180.0);
408        if  (invert)  gamma = 360.0 - gamma;
409
410        /* degrees to radian */
411        slat = DEG2RAD( slat );
412        elat = DEG2RAD( elat );
413        gamma = DEG2RAD( gamma );
414
415        arg = cos(elat)*cos(slat) + sin(elat)*sin(slat)*cos(gamma);
416        if  (arg > 1.0)  {fprintf(stderr,"-->acos(%e) [1]\n",arg); arg = 1.0;}
417        if  (arg < -1.0)  {fprintf(stderr,"-->acos(%e) [1]\n",arg); arg = -1.0;}
418        *dist = acos( arg );
419        arg = (cos(elat)-cos(slat)*cos(*dist))/(sin(slat)*sin(*dist));
420        if  (arg > 1.0)  {fprintf(stderr,"-->acos(%e) [2]\n",arg); arg = 1.0;}
421        if  (arg < -1.0)  {fprintf(stderr,"-->acos(%e) [2]\n",arg); arg = -1.0;}
422        *bazim = acos( arg );
423
424        /* back to degrees */
425        *dist = RAD2DEG( *dist );
426        *bazim = RAD2DEG( *bazim );
427
428        if  (invert)  *bazim = 360.0 - *bazim;
429
430} /* end of mb_spherediff */
431
432
433
434/*---------------------------------------------------------------------*/
435
436
437
438void mb_sphereadd( float slat, float slon, float dist, float bazim,
439        float *elat, float *elon )
440
441/* computes new location from input location (slat,slon) and distance
442 * "dist" and azimuth "bazim"
443 *
444 * parameters of routine
445 * float      slat, slon;    input; (station) input location in degrees
446 * float      dist;          input; distance in degrees
447 * float      bazim;         input; (back-)azimuth in degrees
448 * float      *elat, *elon;  output; (epicentre) location in degrees
449 */
450{
451        /* local variables */
452        float    gamma;    /* top angle in triangle */
453        BOOLEAN  invert;   /* invert angle */
454        double   arg;      /* argument of acos */
455
456        /* executable code */
457
458        /* transformation to mathematical system */
459        slat = 90.0 - slat;
460        if  (slon < 0.0)  slon = 360 + slon;
461
462        invert = (bazim > 180.0);
463        if  (invert)  bazim = 360 - bazim;
464
465        /* degrees to radian */
466        slat = DEG2RAD( slat );
467        dist = DEG2RAD( dist );
468        bazim = DEG2RAD( bazim );
469
470        arg = cos(dist)*cos(slat) + sin(dist)*sin(slat)*cos(bazim);
471        if  (arg > 1.0)  {fprintf(stderr,"-->acos(%e) [3]\n",arg); arg = 1.0;}
472        if  (arg < -1.0)  {fprintf(stderr,"-->acos(%e) [3]\n",arg); arg = -1.0;}
473        *elat = acos( arg );
474        arg = (cos(dist)-cos(*elat)*cos(slat))/(sin(*elat)*sin(slat));
475        if  (arg > 1.0)  {fprintf(stderr,"-->acos(%e) [4]\n",arg); arg = 1.0;}
476        if  (arg < -1.0)  {fprintf(stderr,"-->acos(%e) [4]\n",arg); arg = -1.0;}
477        gamma = acos( arg );
478
479        /* back to degrees */
480        *elat = RAD2DEG( *elat );
481        gamma = RAD2DEG( gamma );
482
483        if  (invert)  gamma = 360.0 - gamma;
484        *elon = slon + gamma;
485        if  (*elon > 360.0)  *elon -= 360.0;
486
487        /* transformation back to geo-system */
488        *elat = 90.0 - *elat;
489        if  (*elon > 180.0)  *elon -= 360.0;
490
491} /* end of mb_sphereadd */
492
493
494
495/*---------------------------------------------------------------------*/
496
497
498
499void mb_statcorr( float slo_in, float az_in, float *slo_out,
500        float *az_out, float *slo_dist, float *az_dist, STATUS *status )
501
502/* applies station correction for slowness and azimuth.  The
503 * corrections are listed in a correction file mbv_corrfile.
504 * The difference vector of the next correction point is
505 * added to the input data
506 *
507 * parameters of routine
508 * float      slo_in;    input; input slowness in sec/deg
509 * float      az_in;     input; input azimuth in deg
510 * float      *slo_out;  output; corrected slowness in sec/deg
511 * float      *az_out;   output; corrected azimuth in deg
512 * float      *slo_dist; output; slowness distance to the next correction
513 * float      *az_dist;  output; azimuth distance to the next correction
514 * STATUS     *status;   output; return status
515 */
516#define STARTPOS 26
517{
518        /* local variables */
519        FILE     *cf;                  /* pointer to correction file */
520        char     line[BC_LINELTH+1];   /* current line */
521        float    a0, ac;               /* uncorrected and corrected azimuth */
522        float    s0, sc;               /* uncorrected and corrected slowness */
523        float    a0m, s0m;             /* az & slo of next position */
524        float    acm, scm;             /* corr. az & slo of next position */
525        float    a0r;                  /* a0 in radians */
526        float    ui, vi;               /* input position */
527        float    u0, v0;               /* corrector position */
528        float    mindist;              /* minimum distance */
529        float    dist;                 /* current distance */
530
531        /* executable code */
532
533        cf = sy_fopen( mbv_corrfile, "r" );
534        if  (cf == NULL)  {
535                *status = MBE_OPNCORR;
536                return;
537        } /*endif*/
538
539        az_in = DEG2RAD( az_in );
540        ui = slo_in * cos( az_in );
541        vi = slo_in * sin( az_in );
542        mindist = -1.0;  /* init value */
543
544        /* find closest existing correction */
545        while  (fgets(line,BC_LINELTH,cf) != NULL)  {
546                if  (*line != '!')  {
547                        if  (sscanf(line+STARTPOS,"%f %f %f %f",&s0,&a0,&sc,&ac) != 4)  {
548                                *status = MBE_RDCORR;
549                                sy_fclose( cf );
550                                return;
551                        } /*endif*/
552                        a0r = DEG2RAD( a0 );
553                        u0 = s0 * cos( a0r );
554                        v0 = s0 * sin( a0r );
555                        dist = (u0-ui)*(u0-ui) + (v0-vi)*(v0-vi);
556                        if  (mindist < 0.0  ||  dist < mindist)  {
557                                mindist = dist;
558                                a0m = a0;  s0m = s0;
559                                acm = ac;  scm = sc;
560                        } /*endif*/
561                } /*endif*/
562        } /*endwhile*/
563
564        sy_fclose( cf );
565
566        if  (mindist < 0.0)  {
567                *status = MBE_EMPTYLIST;
568                return;
569        } /*endif*/
570
571        /* apply corrections */
572        az_in = RAD2DEG( az_in );
573        *slo_out = slo_in + scm - s0m;
574        *az_out = az_in + acm - a0m;
575        if  (*az_out < 0.0)  *az_out += 360.0;
576        if  (*az_out > 360.0)  *az_out -= 360.0;
577        *slo_dist = s0m - slo_in;
578        *az_dist = a0m - az_in;
579
580} /* end of mb_statcorr */
581#undef STARTPOS
582
583
584
585/*---------------------------------------------------------------------*/
586
587
588
589void mb_setcorrfilename( char name[], STATUS *status )
590
591/* tells where to find the slowness and azimuth correction file
592 *
593 * parameters of routine
594 * char       name[];     input; name (and path) of correction file
595 * STATUS     *status;    output; return status
596 */
597{
598        /* executable code */
599
600        if  (strlen(name) > BC_FILELTH)  {
601                *status = MBE_SHORTSTR;
602                return;
603        } /*endif*/
604        strcpy( mbv_corrfile, name );
605
606
607} /* end of mb_setcorrfilename */
608
609
610
611/*---------------------------------------------------------------------*/
612
613/* subroutines copied from ISC program CD */
614
615
616void mbh_fer_lookup( float alat, char drclat, float alng, char drclng,
617        int *igreg, int *isreg )
618
619/*Caveat : This  subroutine is part of a suite of programs which is         */
620/*         software  quality  registered.   Software is supplied on         */
621/*         the understanding the user is responsible for validation         */
622/*         and accepts that the authors have  no  liability for its         */
623/*         use or misuse.                                                   */
624/*                                                                          */
625/*                                                                          */
626/*                  REGION NUMBER LOOKUP PROGRAM                            */
627/*                  -------======---------------                            */
628/*                                                                          */
629/*                                                                          */
630/*     Given a latitude and a longitude this subroutine looks up the        */
631/*     geographical region number as defined by Edward A. Flinn and         */
632/*     Eric R. Engdahl in Reviews of Geophysics Vol.3 No.1 pp.123-149       */
633/*     Feb.1965 and in the Bulletin of the Seismological Society of         */
634/*     America Vol.14 No.3-Part II pp.771-992 Jun.1974.                     */
635/*     Also included are four additional geographical regions as agreed     */
636/*     at IUGG in August 1987, six additional regions approved at IASPEI    */
637/*     in August 1989, a further eighteen regions presented at IUGG in      */
638/*     August 1991, and all finally approved at IUGG in July 1995.          */
639/*                                                                          */
640/*                                                                          */
641/*     From the call  lookup(alat,drclat,alng,drclng,igreg,isreg)           */
642/*                                                                          */
643/*     and given the latitude (ALAT), the direction (DRCLAT) 'N' or 'S',    */
644/*          and the longitude (ALNG), the direction (DRCLNG) 'E' or 'W',    */
645/*     the program looks up the geographical region number (IGREG), and     */
646/*                          also the seismic region number (ISREG).         */
647/*                                                                          */
648/*     Options:  If the directions are set to blank the program uses the    */
649/*     sign of the latitude and longitude, positive 'N' and 'E' and         */
650/*     negative 'S' and 'W'.  The direction code is not case sensitive      */
651/*     but the program will only recognise 'N', 'S', 'E', 'W', or blank.    */
652/*     Note:  No test is made for a latitude and longitude near a           */
653/*     boundary; the nearest integer value is used.                         */
654/*                                                                          */
655/*                                                                          */
656/*     The world is segmentised by Flinn and Engdahl as follows -           */
657/*                                                                          */
658/*                                     Y.N                                  */
659/*                                      .                                   */
660/*                                      .                                   */
661/*                           NW  ***    .    ***  NE                        */
662/*                               *2*    .    *1*                            */
663/*                           +-  ***    .    ***  ++                        */
664/*                                      .                                   */
665/*                                      .                                   */
666/*                         Quad 2       .       Quad 1                      */
667/*                                      .                                   */
668/*                  W                   .                    E              */
669/*                  ..........................................              */
670/*                  X                   .                    X              */
671/*                                      .                                   */
672/*                         Quad 3       .       Quad 4                      */
673/*                                      .                                   */
674/*                                      .                                   */
675/*                           SW  ***    .    ***  SE                        */
676/*                               *3*    .    *4*                            */
677/*                           --  ***    .    ***  -+                        */
678/*                                      .                                   */
679/*                                      .                                   */
680/*                                     Y.S                                  */
681/*                                                                          */
682/*                                                                          */
683/*     See also the region name lookup program (REGION).                    */
684/*                                                                          */
685/*                                                                          */
686{
687int lat, lng, i, j, n, quad;
688static int date = 1995;
689static int nn = 757;
690static int ind[5] = { 0,    0, 1919, 3535, 4747};
691static int num[5] = { 0, 1914, 1579, 1161, 1304};
692static short int nsreg[759] = { 0,
693    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2,
694    2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4,
695    4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6,
696    6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
697    7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
698    8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,
699   10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,
700   12,12,12,12,13,13,13,14,14,14,14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,
701   16,16,16,16,16,16,16,16,17,17,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,
702   19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,22,22,22,
703   22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,
704   24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,
705   25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,
706   28,28,28,28,28,28,28,28,28,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,
707   29,29,29,29,29,29,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,
708   31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,
709   31,32,32,32,32,32,32,32,32,32,32,32,32,32,33,33,33,33,33,33,33,33,33,33,33,
710   33,33,33,33,33,33,33,33,33,33,33,33,34,34,34,34,34,34,34,34,34,34,34,34,34,
711   34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,
712   34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,
713   34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,
714   34,34,35,35,35,35,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,37,
715   37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,
716   37,37,37,37,37,37,37,37,37,37,37,37,38,38,38,38,38,38,38,38,38,38,38,38,38,
717   38,38,38,38,38,38,38,38,38,38,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,
718   39,39,39,39,39,39,39,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,
719   40,40,40,40,40,41,41,41,41,41,41,41,41,41,41,41,42,42,42,42,42,42,42,42,42,
720   42,42,42,42,42,42,42,43,43,43,43,43,43,43,43,43,43,44,44,44,44,44,44,44,45,
721   45,45,46,46,46,46,46,46,47,47,47,47,48,48,48,48,48,48,48,48,49,49,49,49,49,
722   49,50,50,50, 5, 7,10,25,25,25,25,25,32,32,33,33,33,37,37,37,37,37,37,37,37,
723   37,37,37,37,37,43,44, 0,
724 };
725static short int lln[6060][3] = {
726  0,  0,561, 0,  9,565, 0, 14,566, 0, 18,567, 0, 30,568, 0, 31,569, 0, 35,570,
727  0, 41,571, 0, 44,420, 0, 65,421, 0, 70,422, 0, 78,420, 0, 92,705, 0, 97,706,
728  0,104,707, 0,105,301, 0,108,261, 0,119,265, 0,125,266, 0,127,267, 0,130,196,
729  0,141,198, 0,145,614, 0,165,618, 1,  0,561, 1,  9,563, 1, 11,565, 1, 13,566,
730  1, 18,567, 1, 30,568, 1, 35,570, 1, 41,571, 1, 46,420, 1, 64,421, 1, 69,420,
731  1, 70,422, 1, 78,420, 1, 92,705, 1, 97,706, 1,103,707, 1,105,301, 1,108,261,
732  1,119,262, 1,120,265, 1,125,266, 1,127,267, 1,130,196, 1,141,198, 1,145,614,
733  1,165,618, 2,  0,561, 2,  9,562, 2, 16,566, 2, 18,567, 2, 31,568, 2, 35,570,
734  2, 41,571, 2, 47,420, 2, 62,421, 2, 68,420, 2, 70,422, 2, 75,423, 2, 80,420,
735  2, 90,705, 2, 96,706, 2,101,707, 2,105,301, 2,111,261, 2,118,262, 2,125,263,
736  2,126,266, 2,128,267, 2,130,196, 2,141,198, 2,145,614, 2,165,618, 3,  0,561,
737  3,  9,562, 3, 15,564, 3, 17,566, 3, 19,567, 3, 31,568, 3, 34,570, 3, 42,571,
738  3, 47,419, 3, 48,420, 3, 60,421, 3, 68,420, 3, 70,422, 3, 75,423, 3, 80,420,
739  3, 90,705, 3, 96,706, 3,101,707, 3,104,301, 3,113,261, 3,118,262, 3,125,263,
740  3,128,264, 3,131,209, 3,142,614, 3,165,615, 3,171,618, 4,  0,752, 4,  1,753,
741  4,  3,755, 4, 10,562, 4, 15,564, 4, 19,567, 4, 20,564, 4, 23,567, 4, 28,557,
742  4, 35,570, 4, 36,558, 4, 43,571, 4, 47,419, 4, 49,420, 4, 58,421, 4, 68,420,
743  4, 70,422, 4, 75,423, 4, 80,420, 4, 90,705, 4, 95,706, 4,100,707, 4,104,301,
744  4,114,261, 4,119,258, 4,121,262, 4,125,263, 4,128,264, 4,131,209, 4,142,614,
745  4,165,615, 4,171,618, 5,  0,752, 5,  1,753, 5,  3,755, 5, 10,562, 5, 15,564,
746  5, 27,557, 5, 36,558, 5, 45,571, 5, 47,419, 5, 49,420, 5, 56,421, 5, 66,420,
747  5, 70,422, 5, 75,423, 5, 79,424, 5, 83,420, 5, 90,705, 5, 94,706, 5,100,707,
748  5,104,301, 5,115,261, 5,119,258, 5,121,262, 5,123,259, 5,127,248, 5,128,260,
749  5,131,209, 5,142,614, 5,165,615, 6,  0,752, 6,  1,753, 6,  3,755, 6, 11,562,
750  6, 15,564, 6, 26,557, 6, 35,558, 6, 47,419, 6, 50,420, 6, 55,421, 6, 64,420,
751  6, 70,422, 6, 75,423, 6, 79,424, 6, 83,319, 6, 90,704, 6, 98,706, 6, 99,707,
752  6,103,708, 6,104,301, 6,116,261, 6,119,253, 6,120,258, 6,121,259, 6,127,248,
753  6,128,260, 6,131,209, 6,142,614, 6,165,615, 7,  0,752, 7,  1,753, 7,  3,755,
754  7, 12,562, 7, 15,564, 7, 25,557, 7, 34,558, 7, 47,419, 7, 50,420, 7, 55,421,
755  7, 63,420, 7, 70,422, 7, 75,423, 7, 79,424, 7, 83,319, 7, 90,704, 7, 98,707,
756  7,101,708, 7,104,301, 7,116,261, 7,118,253, 7,121,259, 7,127,248, 7,128,260,
757  7,131,209, 7,142,614, 7,162,615, 8,  0,753, 8,  3,755, 8, 12,556, 8, 19,564,
758  8, 24,557, 8, 34,558, 8, 46,560, 8, 47,419, 8, 51,420, 8, 54,421, 8, 61,417,
759  8, 71,418, 8, 76,314, 8, 79,424, 8, 82,319, 8, 90,704, 8, 98,707, 8,101,708,
760  8,104,736, 8,107,301, 8,117,252, 8,118,253, 8,121,259, 8,127,248, 8,128,260,
761  8,131,209, 8,142,614, 8,160,615, 9,  0,753, 9,  3,755, 9, 12,556, 9, 21,564,
762  9, 23,557, 9, 34,558, 9, 44,560, 9, 47,419, 9, 51,420, 9, 54,421, 9, 61,417,
763  9, 71,418, 9, 76,314, 9, 80,424, 9, 82,319, 9, 90,704, 9, 98,707, 9,100,708,
764  9,104,736, 9,108,301, 9,117,252, 9,119,253, 9,122,257, 9,124,259, 9,127,248,
765  9,128,260, 9,131,209, 9,142,614, 9,159,615,10,  0,753,10,  4,755,10, 12,556,
766 10, 22,564,10, 23,557,10, 35,558,10, 43,560,10, 47,419,10, 52,420,10, 54,421,
767 10, 59,417,10, 71,418,10, 75,314,10, 80,319,10, 90,703,10, 98,707,10,100,708,
768 10,103,735,10,105,736,10,110,301,10,117,248,10,118,252,10,120,253,10,121,254,
769 10,123,255,10,124,256,10,126,248,10,128,260,10,131,209,10,142,210,10,146,614,
770 10,159,615,10,161,616,10,164,617,10,167,615,11,  0,751,11,  2,753,11,  4,755,
771 11, 12,556,11, 23,557,11, 35,558,11, 44,559,11, 47,415,11, 50,419,11, 52,416,
772 11, 57,740,11, 59,417,11, 71,418,11, 75,314,11, 80,319,11, 90,703,11, 98,707,
773 11,100,708,11,102,733,11,103,735,11,106,736,11,110,301,11,117,248,11,119,252,
774 11,121,254,11,123,255,11,124,256,11,125,251,11,126,248,11,128,260,11,131,209,
775 11,142,210,11,148,614,11,159,615,11,161,616,11,164,617,11,167,615,12,  0,751,
776 12,  2,754,12,  4,755,12, 12,556,12, 22,557,12, 36,558,12, 43,555,12, 45,559,
777 12, 47,415,12, 52,416,12, 57,740,12, 60,417,12, 71,418,12, 74,314,12, 81,319,
778 12, 90,703,12, 98,707,12,100,733,12,103,735,12,107,736,12,110,301,12,117,248,
779 12,120,250,12,122,249,12,124,251,12,126,248,12,128,260,12,131,209,12,141,210,
780 12,148,215,12,150,611,12,159,615,12,161,616,12,164,617,12,167,615,13,  0,751,
781 13,  1,754,13,  4,755,13,  7,754,13, 12,556,13, 22,557,13, 36,558,13, 43,555,
782 13, 48,415,13, 52,416,13, 57,740,13, 60,417,13, 73,314,13, 81,319,13, 90,703,
783 13, 97,298,13, 99,733,13,103,735,13,108,736,13,110,301,13,117,248,13,120,250,
784 13,122,249,13,125,248,13,128,260,13,131,241,13,137,214,13,141,210,13,144,216,
785 13,146,210,13,148,215,13,150,611,13,159,615,14,  0,754,14, 12,556,14, 22,557,
786 14, 36,558,14, 42,555,14, 48,351,14, 51,415,14, 53,740,14, 61,417,14, 73,314,
787 14, 81,319,14, 90,703,14, 97,298,14, 99,733,14,105,734,14,107,736,14,110,301,
788 14,117,248,14,119,249,14,125,248,14,128,260,14,131,241,14,137,214,14,141,215,
789 14,144,216,14,147,215,14,150,611,14,159,615,15,  0,745,15,  3,754,15, 12,556,
790 15, 23,557,15, 37,558,15, 41,554,15, 42,555,15, 48,351,15, 53,740,15, 61,417,
791 15, 73,314,15, 81,319,15, 94,298,15, 99,733,15,106,734,15,107,736,15,110,301,
792 15,117,248,15,119,249,15,122,248,15,126,260,15,131,241,15,137,214,15,141,215,
793 15,145,216,15,147,215,15,150,611,15,159,615,16,  0,745,16,  4,754,16, 12,556,
794 16, 24,557,16, 37,558,16, 40,554,16, 42,555,16, 48,351,16, 56,740,16, 61,417,
795 16, 73,314,16, 83,319,16, 94,298,16, 99,733,16,105,734,16,107,736,16,110,301,
796 16,117,248,16,119,249,16,123,248,16,126,260,16,131,241,16,137,214,16,141,215,
797 16,145,216,16,147,215,16,150,611,16,159,615,17,  0,745,17,  4,754,17, 12,556,
798 17, 24,557,17, 38,558,17, 39,554,17, 41,555,17, 48,351,17, 57,740,17, 62,417,
799 17, 72,314,17, 84,319,17, 94,296,17, 98,733,17,105,734,17,106,736,17,107,737,
800 17,110,301,17,117,248,17,120,249,17,123,248,17,126,260,17,131,241,17,137,214,
801 17,141,215,17,145,216,17,147,215,17,150,611,18,  0,745,18,  4,754,18, 12,556,
802 18, 24,557,18, 39,554,18, 41,555,18, 48,351,18, 58,740,18, 62,417,18, 72,314,
803 18, 85,319,18, 93,296,18, 98,733,18,101,734,18,105,736,18,107,737,18,108,300,
804 18,112,301,18,117,248,18,120,249,18,123,248,18,126,260,18,131,241,18,137,214,
805 18,141,215,18,144,216,18,147,215,18,150,611,19,  0,745,19,  3,551,19,  5,754,
806 19, 12,556,19, 24,557,19, 38,554,19, 40,555,19, 48,351,19, 58,740,19, 63,417,
807 19, 72,314,19, 87,319,19, 93,296,19, 98,733,19,101,734,19,104,736,19,106,737,
808 19,108,300,19,112,301,19,117,248,19,126,260,19,131,241,19,137,214,19,141,215,
809 19,144,216,19,146,215,19,150,611,20,  0,745,20,  1,551,20,  8,754,20, 12,556,
810 20, 25,557,20, 38,554,20, 39,555,20, 45,351,20, 59,740,20, 63,417,20, 70,314,
811 20, 87,319,20, 92,296,20,100,734,20,105,736,20,107,737,20,108,664,20,112,301,
812 20,117,248,20,126,260,20,131,241,20,137,214,20,141,215,20,144,216,20,146,215,
813 20,150,611,21,  0,551,21,  9,754,21, 12,556,21, 25,557,21, 38,554,21, 39,555,
814 21, 45,351,21, 60,740,21, 64,417,21, 69,314,21, 89,316,21, 91,319,21, 92,295,
815 21, 93,296,21, 99,297,21,102,734,21,103,736,21,108,664,21,112,242,21,117,243,
816 21,123,247,21,126,241,21,137,214,21,141,215,21,150,611,22,  0,551,22, 10,754,
817 22, 12,556,22, 25,553,22, 35,557,22, 37,554,22, 38,555,22, 45,351,22, 60,740,
818 22, 65,356,22, 68,314,22, 88,315,22, 89,316,22, 92,315,22, 93,294,22, 94,296,
819 22, 98,297,22,102,318,22,105,736,22,107,664,22,112,242,22,117,243,22,120,244,
820 22,121,243,22,123,247,22,126,241,22,137,213,22,145,611,23,  0,551,23, 12,552,
821 23, 25,553,23, 36,554,23, 38,555,23, 45,351,23, 60,355,23, 61,356,23, 67,710,
822 23, 68,712,23, 69,314,23, 88,315,23, 89,316,23, 91,315,23, 93,294,23, 95,296,
823 23, 97,297,23,100,318,23,106,664,23,112,242,23,118,243,23,120,244,23,122,243,
824 23,123,246,23,126,239,23,132,241,23,137,213,23,145,611,24,  0,551,24, 10,552,
825 24, 25,553,24, 36,554,24, 37,555,24, 45,351,24, 57,355,24, 61,356,24, 66,710,
826 24, 68,712,24, 71,308,24, 88,315,24, 89,316,24, 91,315,24, 93,294,24, 95,296,
827 24, 97,297,24, 99,318,24,105,664,24,114,242,24,119,243,24,120,244,24,122,243,
828 24,123,246,24,126,238,24,127,239,24,132,241,24,137,213,24,145,611,24,177,612,
829 25,  0,551,25, 10,552,25, 25,553,25, 35,554,25, 36,555,25, 44,351,25, 52,352,
830 25, 55,351,25, 57,353,25, 62,354,25, 65,710,25, 70,712,25, 71,308,25, 88,315,
831 25, 93,317,25, 94,294,25, 96,296,25, 97,297,25, 99,318,25,104,664,25,116,242,
832 25,120,243,25,121,244,25,122,243,25,123,245,25,125,246,25,126,238,25,129,239,
833 25,132,240,25,137,213,25,145,611,25,177,612,26,  0,551,26, 10,552,26, 25,553,
834 26, 34,554,26, 36,555,26, 44,351,26, 52,352,26, 53,353,26, 62,354,26, 65,710,
835 26, 69,712,26, 71,308,26, 84,309,26, 88,315,26, 90,317,26, 95,294,26, 96,296,
836 26, 98,297,26, 99,318,26,102,307,26,103,318,26,104,664,26,117,242,26,121,243,
837 26,123,245,26,126,238,26,130,239,26,132,240,26,137,212,26,145,611,26,177,612,
838 27,  0,551,27, 10,552,27, 25,553,27, 34,554,27, 35,555,27, 44,351,27, 50,352,
839 27, 52,353,27, 63,354,27, 65,710,27, 69,712,27, 72,308,27, 81,309,27, 85,310,
840 27, 88,311,27, 89,312,27, 92,313,27, 93,317,27, 95,294,27, 98,297,27, 99,318,
841 27,101,307,27,103,318,27,105,664,27,118,242,27,122,243,27,123,245,27,126,234,
842 27,127,238,27,131,239,27,132,240,27,137,212,27,145,611,27,177,612,28,  0,396,
843 28, 10,552,28, 25,553,28, 35,555,28, 44,351,28, 49,352,28, 51,353,28, 62,354,
844 28, 65,710,28, 71,712,28, 73,308,28, 80,309,28, 82,310,28, 86,306,28, 92,313,
845 28, 98,297,28, 99,318,28,100,307,28,106,664,28,108,307,28,109,664,28,122,666,
846 28,126,234,28,128,238,28,131,239,28,132,240,28,137,212,28,145,611,28,177,612,
847 29,  0,396,29, 10,552,29, 25,553,29, 35,555,29, 44,375,29, 47,351,29, 49,352,
848 29, 50,353,29, 61,354,29, 65,710,29, 72,712,29, 74,308,29, 80,309,29, 81,310,
849 29, 84,306,29, 94,313,29, 97,306,29, 99,307,29,109,664,29,123,666,29,126,234,
850 29,129,238,29,131,239,29,132,237,29,137,211,29,144,611,29,177,612,30,  0,396,
851 30,  9,397,30, 10,401,30, 25,553,30, 34,373,30, 37,374,30, 43,375,30, 47,346,
852 30, 49,347,30, 50,348,30, 61,350,30, 65,709,30, 66,710,30, 73,712,30, 75,308,
853 30, 79,305,30, 81,306,30, 99,307,30,109,664,30,123,666,30,126,234,30,129,235,
854 30,132,237,30,137,211,30,144,611,30,177,612,31,  0,396,31,  9,397,31, 10,401,
855 31, 18,400,31, 19,401,31, 25,553,31, 34,373,31, 37,374,31, 41,375,31, 47,346,
856 31, 48,347,31, 50,348,31, 61,350,31, 65,709,31, 68,710,31, 74,712,31, 75,308,
857 31, 78,305,31, 80,306,31, 99,307,31,110,664,31,122,666,31,126,234,31,129,235,
858 31,132,237,31,137,211,31,144,611,31,177,612,32,  0,396,32,  8,397,32, 11,401,
859 32, 16,400,32, 19,401,32, 25,371,32, 34,373,32, 37,374,32, 39,375,32, 46,346,
860 32, 48,347,32, 50,348,32, 61,350,32, 65,709,32, 69,710,32, 74,711,32, 75,303,
861 32, 78,304,32, 80,306,32, 96,325,32, 97,306,32, 98,307,32,108,664,32,122,666,
862 32,126,234,32,128,235,32,132,236,32,135,237,32,137,211,32,144,611,33,  0,396,
863 33,  8,397,33, 12,400,33, 25,371,33, 35,374,33, 39,375,33, 45,346,33, 47,347,
864 33, 50,348,33, 61,349,33, 65,709,33, 70,710,33, 74,711,33, 75,302,33, 76,303,
865 33, 77,302,33, 78,304,33, 80,306,33, 90,325,33,102,307,33,103,322,33,106,664,
866 33,121,665,33,125,231,33,129,235,33,132,236,33,135,233,33,137,230,33,138,211,
867 33,141,229,33,148,611,34,  0,396,34,  8,397,34, 12,400,34, 23,370,34, 27,371,
868 34, 31,372,34, 35,374,34, 41,375,34, 45,346,34, 46,347,34, 50,348,34, 61,349,
869 34, 65,709,34, 71,710,34, 74,711,34, 75,302,34, 78,304,34, 80,306,34, 90,325,
870 34,102,322,34,107,664,34,121,665,34,125,231,34,130,232,34,133,233,34,136,232,
871 34,137,230,34,140,228,34,141,229,34,148,611,35,  0,396,35,  8,397,35, 12,400,
872 35, 23,370,35, 27,369,35, 28,371,35, 31,372,35, 35,374,35, 41,375,35, 45,346,
873 35, 47,347,35, 50,348,35, 61,342,35, 64,349,35, 65,718,35, 71,710,35, 73,720,
874 35, 75,302,35, 79,304,35, 81,321,35, 82,306,35, 90,325,35,103,322,35,109,664,
875 35,121,665,35,125,231,35,130,660,35,132,232,35,137,227,35,139,230,35,140,228,
876 35,142,229,35,148,611,36,  0,396,36,  8,397,36, 12,400,36, 14,398,36, 16,400,
877 36, 21,368,36, 25,369,36, 29,366,36, 36,374,36, 41,375,36, 44,346,36, 46,345,
878 36, 49,347,36, 50,348,36, 59,341,36, 62,340,36, 63,342,36, 65,718,36, 71,717,
879 36, 73,720,36, 75,324,36, 79,321,36, 91,325,36,103,322,36,105,323,36,107,322,
880 36,109,664,36,123,665,36,125,231,36,130,660,36,136,226,36,137,227,36,140,228,
881 36,142,229,36,148,611,37,  0,387,37,  9,397,37, 11,398,37, 16,399,37, 21,368,
882 37, 25,369,37, 27,366,37, 44,343,37, 45,345,37, 49,338,37, 53,341,37, 56,348,
883 37, 57,341,37, 60,340,37, 64,342,37, 65,717,37, 72,715,37, 74,719,37, 76,321,
884 37, 91,325,37,102,322,37,104,323,37,111,658,37,124,231,37,130,660,37,136,226,
885 37,139,227,37,141,228,37,142,229,37,148,611,38,  0,377,38,  1,386,38,  5,387,
886 38, 11,398,38, 16,390,38, 18,399,38, 20,364,38, 24,365,38, 27,366,38, 44,343,
887 38, 45,344,38, 47,345,38, 48,344,38, 49,338,38, 53,340,38, 55,341,38, 58,340,
888 38, 65,714,38, 68,715,38, 70,717,38, 72,715,38, 73,719,38, 75,321,38, 91,325,
889 38,100,322,38,104,323,38,111,658,38,124,659,38,129,660,38,136,223,38,138,226,
890 38,140,227,38,141,228,38,143,229,38,148,611,39,  0,377,39,  1,386,39,  5,387,
891 39,  8,388,39, 10,389,39, 15,390,39, 19,392,39, 21,364,39, 23,365,39, 26,366,
892 39, 44,344,39, 49,338,39, 53,340,39, 63,339,39, 65,714,39, 68,715,39, 72,716,
893 39, 73,719,39, 74,321,39, 94,322,39,101,323,39,111,658,39,124,659,39,129,660,
894 39,136,223,39,139,226,39,140,227,39,142,228,39,143,229,39,148,611,40,  0,377,
895 40,  1,386,40,  5,387,40,  8,388,40, 10,389,40, 14,390,40, 18,382,40, 19,391,
896 40, 20,392,40, 21,364,40, 24,365,40, 26,366,40, 43,367,40, 45,337,40, 50,338,
897 40, 52,340,40, 62,339,40, 65,714,40, 69,715,40, 72,716,40, 74,320,40, 78,321,
898 40, 94,322,40, 98,323,40,111,658,40,125,659,40,130,660,40,136,223,40,139,226,
899 40,140,227,40,141,228,40,143,229,40,148,611,41,  0,377,41,  4,387,41,  8,380,
900 41, 10,389,41, 12,390,41, 17,382,41, 19,391,41, 21,383,41, 23,363,41, 27,366,
901 41, 41,367,41, 44,362,41, 45,337,41, 49,338,41, 52,340,41, 55,336,41, 56,339,
902 41, 57,340,41, 61,339,41, 65,713,41, 69,716,41, 76,320,41, 80,321,41, 95,322,
903 41, 97,323,41,111,658,41,126,659,41,131,660,41,136,223,41,139,224,41,146,225,
904 41,150,611,42,  0,378,42,  4,387,42,  8,380,42, 10,381,42, 15,382,42, 18,383,
905 42, 22,359,42, 28,360,42, 41,362,42, 45,337,42, 48,338,42, 52,336,42, 56,339,
906 42, 58,340,42, 59,339,42, 65,713,42, 71,716,42, 75,330,42, 80,320,42, 81,332,
907 42, 96,322,42, 97,323,42,100,334,42,111,658,42,129,659,42,130,657,42,132,661,
908 42,135,660,42,136,223,42,139,224,42,146,225,42,150,611,43,  0,538,43,  3,379,
909 43,  8,380,43, 10,381,43, 14,382,43, 16,383,43, 23,359,43, 28,360,43, 39,362,
910 43, 45,337,43, 48,338,43, 51,336,43, 56,339,43, 62,336,43, 64,339,43, 65,713,
911 43, 75,330,43, 80,331,43, 81,332,43, 96,334,43,112,658,43,130,657,43,132,661,
912 43,136,223,43,140,224,43,146,221,43,148,222,43,153,611,44,  0,538,44,  7,545,
913 44, 13,382,44, 15,383,44, 22,358,44, 29,360,44, 33,361,44, 37,362,44, 44,357,
914 44, 48,338,44, 50,336,44, 56,339,44, 61,336,44, 65,713,44, 75,329,44, 80,331,
915 44, 81,332,44, 95,334,44,112,658,44,130,657,44,134,661,44,137,223,44,141,224,
916 44,146,221,44,150,222,44,155,611,45,  0,538,45,  7,545,45, 14,383,45, 21,358,
917 45, 28,357,45, 32,361,45, 37,357,45, 48,338,45, 51,336,45, 58,339,45, 59,336,
918 45, 65,713,45, 75,329,45, 80,331,45, 83,332,45, 91,334,45,115,658,45,130,657,
919 45,134,661,45,138,223,45,141,224,45,146,221,45,152,222,45,164, 16,46,  0,538,
920 46,  6,544,46, 10,545,46, 13,546,46, 14,383,46, 17,549,46, 21,358,46, 28,357,
921 46, 49,336,46, 50,338,46, 53,336,46, 65,713,46, 75,329,46, 82,331,46, 85,332,
922 46, 91,334,46,117,658,46,133,657,46,135,661,46,141,662,46,144,663,46,146,220,
923 46,149,221,46,154,222,46,164, 16,47,  0,538,47,  7,544,47,  9,543,47, 10,546,
924 47, 17,549,47, 22,358,47, 28,357,47, 48,336,47, 65,713,47, 75,329,47, 82,331,
925 47, 86,332,47, 91,334,47,119,658,47,130,657,47,135,661,47,141,662,47,144,663,
926 47,146,220,47,150,221,47,155,222,47,164, 16,48,  0,538,48,  8,543,48, 13,546,
927 48, 17,547,48, 21,549,48, 22,357,48, 47,336,48, 65,713,48, 75,329,48, 85,331,
928 48, 87,332,48, 88,334,48,116,658,48,129,657,48,135,661,48,141,662,48,144,663,
929 48,148,220,48,151,221,48,156,222,48,164, 16,49,  0,538,49,  6,543,49, 13,547,
930 49, 19,548,49, 23,357,49, 47,336,49, 65,713,49, 75,329,49, 86,331,49, 88,333,
931 49, 91,334,49, 94,333,49, 99,334,49,107,333,49,117,657,49,120,658,49,126,657,
932 49,131,656,49,137,661,49,141,662,49,145,663,49,148,220,49,153,221,49,157,222,
933 49,164, 16,50,  0,533,50,  1,538,50,  3,541,50,  6,543,50, 13,547,50, 16,548,
934 50, 24,724,50, 49,336,50, 65,713,50, 75,329,50, 84,326,50, 89,333,50, 99,334,
935 50,102,333,50,109,327,50,113,333,50,117,328,50,118,657,50,120,658,50,126,657,
936 50,128,656,50,137,661,50,141,662,50,145,663,50,150,220,50,153,221,50,158,222,
937 50,164, 16,50,175,  6,51,  0,533,51,  2,534,51,  3,540,51,  6,543,51, 15,548,
938 51, 24,724,51, 50,336,51, 53,724,51, 55,335,51, 61,336,51, 65,713,51, 75,329,
939 51, 80,326,51, 97,333,51,103,327,51,113,328,51,119,657,51,121,658,51,126,657,
940 51,128,656,51,137,661,51,141,662,51,144,663,51,152,220,51,156,217,51,157,218,
941 51,159,219,51,164, 16,51,170,  5,51,175,  6,52,  0,533,52,  2,534,52,  4,540,
942 52,  7,543,52, 14,548,52, 24,724,52, 55,335,52, 61,336,52, 65,713,52, 75,329,
943 52, 79,326,52, 97,333,52,101,326,52,102,327,52,113,328,52,119,657,52,121,658,
944 52,125,657,52,127,656,52,137,661,52,141,662,52,144,663,52,152,220,52,156,217,
945 52,158,218,52,159,219,52,164, 16,52,170,  5,52,175,  6,53,  0,533,53,  1,534,
946 53,  5,540,53,  7,543,53, 14,548,53, 24,724,53, 55,335,53, 61,336,53, 65,713,
947 53, 75,329,53, 78,326,53,102,327,53,113,328,53,119,657,53,127,656,53,137,661,
948 53,141,662,53,144,663,53,155,217,53,158,218,53,161,219,53,164,  4,53,170,  5,
949 53,175,  6,54,  0,534,54,  8,543,54, 14,537,54, 16,548,54, 20,724,54, 55,335,
950 54, 63,326,54, 65,713,54, 71,326,54,102,327,54,113,328,54,120,656,54,137,661,
951 54,141,662,54,144,663,54,155,217,54,159,218,54,163,219,54,164,  4,54,170,  5,
952 54,175,  3,55,  0,534,55,  8,542,55, 13,536,55, 15,537,55, 21,724,55, 55,335,
953 55, 63,326,55,102,327,55,113,328,55,120,656,55,139,663,55,155,217,55,161,218,
954 55,163,219,55,164,  4,55,170,  3,56,  0,534,56,  8,542,56, 12,536,56, 17,537,
955 56, 21,724,56, 55,335,56, 63,326,56,102,327,56,113,328,56,120,656,56,139,663,
956 56,155,217,56,161,218,56,164,  4,56,170,  3,57,  0,534,57,  8,542,57, 11,536,
957 57, 17,537,57, 21,724,57, 55,335,57, 63,326,57,102,327,57,113,328,57,120,656,
958 57,141,663,57,156,217,57,162,218,57,164,  3,58,  0,534,58,  5,535,58, 10,536,
959 58, 18,537,58, 21,724,58, 55,335,58, 63,326,58,110,328,58,120,656,58,142,671,
960 58,155,663,58,157,217,58,165,  3,59,  0,534,59,  4,535,59, 12,536,59, 19,537,
961 59, 21,724,59, 55,335,59, 63,326,59,110,328,59,120,656,59,142,671,59,156,663,
962 59,160,217,59,165,671,59,171,  3,60,  0,534,60,  4,535,60, 12,536,60, 19,721,
963 60, 27,723,60, 29,724,60, 55,335,60, 63,725,60, 85,726,60,130,671,60,173,  3,
964 61,  0,642,61,  4,535,61, 12,536,61, 19,721,61, 28,723,61, 31,724,61, 55,335,
965 61, 63,725,61, 85,726,61,130,671,61,176,  3,62,  0,642,62,  5,535,62, 12,536,
966 62, 20,721,62, 30,723,62, 32,724,62, 55,335,62, 63,725,62, 85,726,62,130,671,
967 63,  0,642,63,  7,535,63, 12,536,63, 21,721,63, 30,723,63, 32,724,63, 55,335,
968 63, 65,725,63, 85,726,63,130,671,64,  0,642,64, 10,646,64, 14,536,64, 23,721,
969 64, 29,723,64, 31,724,64, 55,335,64, 65,725,64, 85,726,64,130,671,65,  0,642,
970 65, 10,646,65, 14,536,65, 24,721,65, 29,723,65, 31,724,65, 55,335,65, 68,725,
971 65, 85,726,65,130,671,66,  0,642,66, 11,646,66, 16,536,66, 24,721,66, 29,723,
972 66, 30,724,66, 55,335,66, 68,725,66, 85,726,66,130,671,67,  0,642,67, 12,646,
973 67, 17,536,67, 24,721,67, 29,723,67, 30,724,67, 61,335,67, 68,725,67, 85,726,
974 67,130,671,67,178,670,68,  0,642,68, 12,646,68, 20,536,68, 22,721,68, 28,723,
975 68, 30,724,68, 40,647,68, 43,724,68, 64,335,68, 68,725,68, 85,726,68,130,671,
976 68,158,670,69,  0,642,69, 15,646,69, 26,721,69, 28,723,69, 29,722,69, 32,724,
977 69, 37,647,69, 48,724,69, 66,725,69, 85,726,69,130,671,69,150,670,70,  0,642,
978 70, 18,646,70, 31,647,70, 50,648,70, 58,724,70, 61,649,70, 66,725,70, 85,726,
979 70,130,670,70,161,669,70,168,670,70,172,669,70,178,670,71,  0,642,71, 20,647,
980 71, 23,646,71, 29,647,71, 50,648,71, 59,649,71, 66,725,71, 85,726,71,130,670,
981 71,159,669,71,178,670,72,  0,642,72, 20,647,72, 50,648,72, 59,649,72, 68,650,
982 72, 85,726,72,130,655,72,139,670,72,151,669,73,  0,640,73, 10,642,73, 20,647,
983 73, 52,648,73, 59,649,73, 69,650,73, 85,726,73,110,653,73,130,655,73,135,668,
984 73,145,669,74,  0,640,74, 10,642,74, 20,647,74, 52,648,74, 62,649,74, 79,650,
985 74, 85,653,74, 88,726,74,110,653,74,130,655,74,135,668,74,155,669,75,  0,640,
986 75, 10,643,75, 25,647,75, 54,648,75, 67,649,75, 81,650,75, 85,653,75,116,655,
987 75,135,668,75,155,669,76,  0,640,76,  5,643,76, 25,647,76, 58,648,76, 70,649,
988 76, 88,653,76,116,655,76,135,668,76,161,669,77,  0,640,77,  5,643,77, 35,647,
989 77, 65,648,77, 70,649,77, 88,653,77, 97,652,77,101,653,77,116,655,77,135,667,
990 77,154,668,77,161,634,78,  0,640,78,  5,643,78, 35,647,78, 70,649,78, 93,652,
991 78,110,654,78,135,667,78,161,634,79,  0,640,79,  5,643,79, 35,645,79, 70,649,
992 79, 85,652,79,110,654,79,135,667,79,161,634,80,  0,641,80,  5,643,80, 35,645,
993 80, 70,649,80, 85,652,80,110,654,80,135,633,80,155,634,81,  0,641,81,  5,643,
994 81, 35,645,81, 70,649,81, 85,652,81,110,654,81,135,633,81,155,634,82,  0,641,
995 82, 35,645,82, 70,651,82,135,633,82,155,634,83,  0,641,83, 35,644,83, 70,651,
996 83,135,633,83,155,634,84,  0,641,84, 35,644,84, 70,651,84,130,633,84,160,634,
997 85,  0,641,85, 35,644,85, 70,651,85,120,633,85,170,634,86,  0,641,86, 35,644,
998 86, 70,651,86,120,633,86,170,634,87,  0,641,87, 35,644,87, 70,651,87,100,633,
999 88,  0,633,89,  0,633,90,180,633, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1000  0,  0,  0, 0,  0,561, 0,  9,407, 0, 18,406, 0, 32,402, 0, 49,528, 0, 62,113,
1001  0, 70,103, 0, 75,106, 0, 79,105, 0, 81,104, 0, 86,696, 0, 89,697, 0, 92,696,
1002  0, 96,695, 0,100,757, 0,106,693, 0,120,611, 0,153,620, 0,165,611, 1,  0,561,
1003  1,  9,407, 1, 18,406, 1, 33,402, 1, 49,528, 1, 58,529, 1, 60,528, 1, 62,113,
1004  1, 64,101, 1, 67,113, 1, 70,103, 1, 78,106, 1, 79,105, 1, 80,104, 1, 86,696,
1005  1, 96,695, 1,100,757, 1,106,693, 1,120,611, 1,153,620, 1,156,622, 1,161,620,
1006  1,165,611, 2,  0,561, 2, 18,402, 2, 20,406, 2, 34,402, 2, 49,528, 2, 53,531,
1007  2, 54,530, 2, 55,528, 2, 56,530, 2, 57,529, 2, 60,528, 2, 62,113, 2, 64,101,
1008  2, 67,103, 2, 77,102, 2, 79, 83, 2, 83, 76, 2, 86,696, 2, 96,695, 2,100,757,
1009  2,106,693, 2,120,611, 2,153,620, 2,156,622, 2,161,620, 2,165,611, 3,  0,561,
1010  3, 18,402, 3, 26,406, 3, 35,402, 3, 50,528, 3, 52,531, 3, 54,530, 3, 58,529,
1011  3, 60,528, 3, 62,113, 3, 64,101, 3, 67,103, 3, 77,102, 3, 78, 83, 3, 83, 76,
1012  3, 89,693, 3,100,757, 3,106,693, 3,120,611, 3,153,620, 3,156,622, 3,161,620,
1013  3,165,611, 4,  0,752, 4,  3,750, 4,  7,749, 4, 13,561, 4, 18,402, 4, 28,406,
1014  4, 36,402, 4, 50,531, 4, 54,530, 4, 58,529, 4, 60,528, 4, 61,101, 4, 68,103,
1015  4, 77,102, 4, 78, 83, 4, 83, 76, 4, 89,693, 4,100,757, 4,106,693, 4,120,611,
1016  4,153,620, 4,156,622, 4,161,620, 4,165,611, 5,  0,752, 5,  3,750, 5,  7,749,
1017  5, 13,561, 5, 18,402, 5, 30,406, 5, 38,402, 5, 50,531, 5, 54,530, 5, 57,529,
1018  5, 61,101, 5, 68,103, 5, 77,102, 5, 78, 83, 5, 83, 76, 5, 90,693, 5,100,757,
1019  5,106,693, 5,120,611, 5,153,620, 5,161,621, 5,164,620, 5,165,611, 6,  0,752,
1020  6,  3,750, 6,  8,749, 6, 12,748, 6, 13,561, 6, 18,402, 6, 30,406, 6, 40,402,
1021  6, 52,531, 6, 54,530, 6, 57,529, 6, 61,101, 6, 70, 99, 6, 77,102, 6, 78, 83,
1022  6, 83, 76, 6, 90,693, 6,100,757, 6,106,693, 6,120,611, 6,153,620, 6,161,621,
1023  6,164,620, 6,165,611, 7,  0,752, 7,  3,750, 7,  8,749, 7, 11,748, 7, 15,561,
1024  7, 18,402, 7, 32,406, 7, 40,402, 7, 57,529, 7, 61,101, 7, 72, 99, 7, 77, 82,
1025  7, 78, 81, 7, 79, 83, 7, 80, 81, 7, 82, 83, 7, 83, 77, 7, 86, 76, 7, 91,693,
1026  7, 97, 63, 7,100,730, 7,106,693, 7,120,611, 7,153,620, 7,165,611, 8,  0,752,
1027  8,  3,750, 8,  8,747, 8, 10,748, 8, 15,561, 8, 18,402, 8, 32,406, 8, 43,402,
1028  8, 58,529, 8, 60, 97, 8, 61,101, 8, 73, 99, 8, 76, 96, 8, 77, 82, 8, 78, 81,
1029  8, 82, 80, 8, 83, 78, 8, 84, 77, 8, 87, 76, 8, 92,693, 8, 96, 63, 8,100,730,
1030  8,106,693, 8,120,611, 8,153,620, 8,165,611, 9,  0,752, 9,  3,750, 9,  8,747,
1031  9, 11,748, 9, 13,747, 9, 15,561, 9, 18,402, 9, 35,406, 9, 44,402, 9, 60, 97,
1032  9, 63,101, 9, 71,100, 9, 72,101, 9, 73, 99, 9, 75, 96, 9, 78, 81, 9, 82, 80,
1033  9, 83, 78, 9, 85, 77, 9, 88, 76, 9, 92,693, 9, 95, 63, 9,100,730, 9,106, 63,
1034  9,110,693, 9,120,611, 9,153,620, 9,165,611,10,  0,752,10,  3,751,10,  6,750,
1035 10,  7,745,10,  8,747,10, 18,402,10, 40,403,10, 45,402,10, 60, 98,10, 62, 97,
1036 10, 69,101,10, 71,100,10, 72,101,10, 73, 99,10, 74, 96,10, 76, 79,10, 83, 78,
1037 10, 86, 77,10, 88, 76,10, 93, 63,10,100,730,10,106, 63,10,110,693,10,120,611,
1038 11,  0,751,11,  5,745,11,  9,747,11, 18,402,11, 42,403,11, 46,402,11, 60, 95,
1039 11, 63, 94,11, 68, 97,11, 72, 96,11, 76, 79,11, 83, 75,11, 86, 74,11, 88, 76,
1040 11, 93, 63,11,100,730,11,106, 63,11,110,693,11,120,611,12,  0,751,12,  4,745,
1041 12, 11,746,12, 13,747,12, 16,746,12, 18,402,12, 43,403,12, 47,402,12, 59, 95,
1042 12, 63, 94,12, 69, 97,12, 71, 96,12, 73, 94,12, 83, 75,12, 87, 74,12, 88, 76,
1043 12, 93, 68,12, 96, 63,12,100,730,12,106, 63,12,113,693,12,120,611,13,  0,751,
1044 13,  3,745,13, 12,746,13, 18,402,13, 43,403,13, 48,402,13, 59, 95,13, 63, 94,
1045 13, 83, 75,13, 87, 72,13, 88, 73,13, 90, 71,13, 92, 68,13, 96, 67,13, 98, 65,
1046 13,104,730,13,106, 63,13,113,693,13,120,611,14,  0,751,14,  2,745,14, 12,746,
1047 14, 18,402,14, 43,403,14, 48,402,14, 59, 95,14, 63, 94,14, 83, 75,14, 85, 72,
1048 14, 89, 70,14, 92, 69,14, 94, 68,14, 95, 67,14, 98, 65,14,104,730,14,106, 63,
1049 14,115,693,14,120,611,15,  0,745,15, 10,744,15, 11,745,15, 12,744,15, 13,746,
1050 15, 18,402,15, 43,403,15, 48,402,15, 59, 92,15, 64, 94,15, 83, 72,15, 89, 70,
1051 15, 91, 62,15, 93, 69,15, 94, 66,15, 98, 65,15,104, 64,15,106, 63,15,115,693,
1052 15,120,611,15,150,612,15,165,619,15,172,611,16,  0,745,16,  5,744,16, 14,746,
1053 16, 18,402,16, 43,403,16, 48,402,16, 59, 92,16, 64, 94,16, 81,731,16, 88, 93,
1054 16, 89, 70,16, 90, 62,16, 92, 61,16, 94, 60,16, 98, 58,16,102, 65,16,103, 64,
1055 16,106, 63,16,115,693,16,120,611,16,150,612,16,165,619,16,172,611,17,  0,745,
1056 17,  6,744,17, 18,402,17, 43,403,17, 48,402,17, 59, 92,17, 64, 91,17, 65, 90,
1057 17, 67, 89,17, 69, 88,17, 72, 87,17, 75, 86,17, 79,731,17, 88, 93,17, 89, 62,
1058 17, 92, 61,17, 95, 60,17, 98, 59,17,101, 58,17,102, 56,17,104, 64,17,105, 54,
1059 17,108, 53,17,115,693,17,120,611,17,150,612,17,165,619,17,172,611,18,  0,745,
1060 18,  6,744,18, 18,402,18, 43,403,18, 48,402,18, 60, 92,18, 64, 91,18, 65, 90,
1061 18, 67, 89,18, 69, 88,18, 72, 87,18, 75, 86,18, 79,731,18, 87, 84,18, 91,527,
1062 18, 95,525,18, 97,523,18, 99, 59,18,102, 57,18,103, 56,18,104, 55,18,105, 54,
1063 18,108, 53,18,115,693,18,120,611,18,150,612,18,154,613,18,157,612,18,172,611,
1064 19,  0,745,19,  6,744,19, 18,402,19, 43,403,19, 48,402,19, 60, 92,19, 64, 91,
1065 19, 65, 90,19, 67, 89,19, 68,402,19, 69, 88,19, 72, 87,19, 74, 85,19, 81,731,
1066 19, 87, 84,19, 91,527,19, 95,525,19, 98,523,19,100, 57,19,103,524,19,104, 55,
1067 19,106, 54,19,108, 53,19,115,693,19,120,611,19,150,612,19,154,613,19,157,612,
1068 19,172,611,20,  0,745,20,  6,744,20, 18,402,20, 43,403,20, 48,402,20, 69, 88,
1069 20, 72, 87,20, 74, 85,20, 86, 84,20, 91,527,20, 96,525,20, 99,523,20,102,524,
1070 20,105, 55,20,106, 54,20,108, 53,20,115,693,20,120,611,20,150,612,20,154,613,
1071 20,159,612,20,175,611,21,  0,745,21,  6,744,21, 13,743,21, 18,402,21, 43,403,
1072 21, 48,402,21, 69,515,21, 74, 85,21, 86, 84,21, 91,526,21, 97,525,21, 99,523,
1073 21,101,524,21,104,523,21,105, 52,21,106, 51,21,108, 53,21,115,693,21,120,611,
1074 21,150,612,21,155,613,21,161,612,21,175,611,22,  0,551,22,  1,745,22,  6,744,
1075 22, 13,743,22, 18,402,22, 43,403,22, 48,402,22, 69,515,22, 76, 85,22, 86,526,
1076 22, 97,525,22, 99,523,22,105, 52,22,107, 51,22,109, 47,22,117,693,22,120,611,
1077 22,150,612,22,157,613,22,161,612,22,178,611,23,  0,551,23,  3,745,23,  6,744,
1078 23, 12,743,23, 18,402,23, 43,403,23, 48,402,23, 69,515,23, 78, 85,23, 86,526,
1079 23, 97,523,23,106, 52,23,107, 49,23,109, 48,23,111, 47,23,118,693,23,120,611,
1080 23,150,612,23,178,611,24,  0,551,24,  4,745,24,  7,744,24, 12,743,24, 18,402,
1081 24, 43,403,24, 48,402,24, 69,513,24, 72,515,24, 80,514,24, 82,526,24, 97,523,
1082 24,108, 49,24,110, 48,24,113, 47,24,119,693,24,120,611,24,150,612,25,  0,551,
1083 25,  6,744,25, 12,743,25, 16,394,25, 22,402,25, 42,403,25, 48,402,25, 69,513,
1084 25, 73,515,25, 80,514,25, 82,526,25, 97,518,25, 98,522,25,108, 49,25,111, 48,
1085 25,113, 47,25,120,611,25,150,612,26,  0,551,26,  7,744,26,  9,743,26, 15,394,
1086 26, 22,402,26, 42,403,26, 48,402,26, 69,513,26, 74,515,26, 80,514,26, 83,526,
1087 26, 97,520,26, 98,518,26,100,522,26,109, 49,26,112, 48,26,114, 47,26,120,611,
1088 26,150,612,27,  0,551,27,  9,743,27, 14,394,27, 22,402,27, 41,403,27, 47,402,
1089 27, 69,513,27, 75,515,27, 80,514,27, 83,526,27, 97,520,27, 98,519,27, 99,518,
1090 27,100,522,27,106,521,27,108, 50,27,110, 49,27,112, 48,27,115, 47,27,121,611,
1091 27,160,612,28,  0,396,28,  7,395,28, 13,394,28, 22,402,28, 39,403,28, 47,402,
1092 28, 69,513,28, 80,514,28, 83,526,28, 95,520,28, 98,519,28,100,518,28,101,522,
1093 28,104,521,28,109, 50,28,111, 49,28,113, 48,28,115, 47,28,121,611,28,160,612,
1094 29,  0,396,29,  5,395,29, 11,394,29, 22,402,29, 38,403,29, 47,402,29, 69,513,
1095 29, 80,514,29, 83,508,29, 86,526,29, 89,504,29, 94,503,29, 95,500,29,100,518,
1096 29,105,521,29,109, 50,29,112, 49,29,114, 48,29,116, 47,29,122,611,29,165,612,
1097 30,  0,396,30,  3,395,30, 10,394,30, 22,402,30, 36,403,30, 46,402,30, 69,513,
1098 30, 81,510,30, 83,508,30, 88,505,30, 90,504,30, 94,503,30, 95,500,30,100,498,
1099 30,104,518,30,106,521,30,109, 50,30,113, 49,30,115, 48,30,117, 47,30,122,611,
1100 30,165,612,31,  0,396,31,  3,395,31, 10,393,31, 22,402,31, 34,403,31, 44,402,
1101 31, 69,513,31, 81,509,31, 85,507,31, 88,505,31, 92,504,31, 94,503,31, 95,500,
1102 31,100,498,31,105,518,31,107,517,31,109,516,31,112, 46,31,113, 49,31,115, 48,
1103 31,117, 47,31,122,611,31,170,612,32,  0,396,32,  1,395,32, 10,393,32, 22,402,
1104 32, 32,403,32, 43,402,32, 69,513,32, 79,511,32, 81,509,32, 85,507,32, 88,505,
1105 32, 91,504,32, 94,503,32, 95,500,32,100,498,32,103,496,32,109,495,32,112, 46,
1106 32,115, 45,32,118, 38,32,125,611,33,  0,396,33,  2,395,33,  9,384,33, 10,393,
1107 33, 22,402,33, 30,403,33, 42,402,33, 69,513,33, 78,511,33, 82,509,33, 85,507,
1108 33, 88,505,33, 91,502,33, 94,501,33, 95,500,33,100,498,33,103,496,33,109,495,
1109 33,112, 42,33,114, 44,33,115, 43,33,120, 38,33,127,611,34,  0,396,34,  2,395,
1110 34,  8,384,34, 10,393,34, 20,404,34, 35,403,34, 41,402,34, 69,513,34, 76,512,
1111 34, 79,511,34, 83,509,34, 85,507,34, 88,505,34, 91,502,34, 94,501,34, 95,499,
1112 34,100,497,34,103,496,34,109,495,34,112, 42,34,114, 44,34,115, 43,34,121, 38,
1113 34,127,611,35,  0,396,35,  2,385,35,  8,384,35, 10,739,35, 20,404,35, 35,403,
1114 35, 39,402,35, 69,513,35, 75,512,35, 84,506,35, 90,502,35, 94,501,35, 95,499,
1115 35,100,497,35,103,496,35,109,495,35,112, 42,35,114, 40,35,116, 39,35,122, 38,
1116 35,130,611,36,  0,387,36,  2,385,36,  8,384,36, 10,739,36, 20,404,36, 25,405,
1117 36, 27,404,36, 35,403,36, 37,402,36, 69,513,36, 75,512,36, 82,506,36, 89,486,
1118 36, 91,484,36, 94,501,36, 95,499,36,100,497,36,103,496,36,109,495,36,112, 42,
1119 36,114, 41,36,115, 40,36,118, 39,36,123, 38,36,132,611,37,  0,377,37,  7,376,
1120 37, 10,739,37, 20,404,37, 25,405,37, 31,404,37, 35,403,37, 36,402,37, 69,513,
1121 37, 75,493,37, 77,492,37, 80,491,37, 83,490,37, 88,488,37, 89,487,37, 90,485,
1122 37, 91,483,37, 94,482,37, 95,480,37,102,479,37,109,478,37,114, 41,37,117, 40,
1123 37,119, 39,37,123, 38,37,132,611,38,  0,377,38,  7,376,38, 10,739,38, 20,404,
1124 38, 25,405,38, 31,404,38, 35,402,38, 69,513,38, 75,493,38, 77,492,38, 80,491,
1125 38, 83,490,38, 86,489,38, 88,488,38, 90,485,38, 91,483,38, 94,482,38, 95,480,
1126 38,102,479,38,109,478,38,114, 37,38,118, 40,38,120, 36,38,123, 35,38,124, 34,
1127 38,132,611,39,  0,377,39,  7,376,39, 10,402,39, 20,404,39, 27,405,39, 33,404,
1128 39, 35,402,39, 69,513,39, 74,494,39, 75,493,39, 77,492,39, 79,491,39, 81,471,
1129 39, 85,469,39, 87,467,39, 91,483,39, 94,482,39, 95,480,39,102,479,39,109,478,
1130 39,114, 37,39,120, 36,39,123, 35,39,125, 34,39,132,611,40,  0,377,40,  7,376,
1131 40, 10,402,40, 20,404,40, 35,402,40, 69,513,40, 72,472,40, 74,494,40, 75,473,
1132 40, 81,471,40, 85,469,40, 87,467,40, 91,481,40, 95,465,40, 96,463,40,102,479,
1133 40,109,478,40,114, 37,40,120, 36,40,124, 35,40,125, 34,40,132,611,41,  0,377,
1134 41,  6,376,41, 10,402,41, 20,404,41, 35,402,41, 69,476,41, 73,472,41, 75,473,
1135 41, 80,471,41, 85,469,41, 87,467,41, 91,465,41, 96,463,41,104,460,41,111,478,
1136 41,114, 37,41,120, 36,41,124, 35,41,125, 34,41,132,611,42,  0,378,42,  2,377,
1137 42, 10,402,42, 20,404,42, 35,402,42, 66,477,42, 70,476,42, 73,472,42, 80,470,
1138 42, 83,468,42, 87,467,42, 88,466,42, 91,465,42, 97,463,42,104,460,42,111,457,
1139 42,114, 33,42,117, 32,42,124, 31,42,125, 30,42,132,611,43,  0,378,43,  2,377,
1140 43, 10,402,43, 20,403,43, 35,402,43, 65,452,43, 67,477,43, 70,475,43, 71,474,
1141 43, 73,472,43, 79,470,43, 82,468,43, 87,466,43, 91,464,43, 97,462,43,104,460,
1142 43,111,457,43,114, 33,43,117, 32,43,124, 31,43,125, 30,43,132,611,44,  0,538,
1143 44,  2,539,44,  5,402,44, 20,403,44, 35,402,44, 62,452,44, 67,475,44, 71,474,
1144 44, 73,472,44, 76,470,44, 82,468,44, 87,466,44, 92,464,44, 97,462,44,104,460,
1145 44,109,459,44,111,458,44,112,457,44,114, 33,44,117, 32,44,124, 31,44,125, 30,
1146 44,132,611,45,  0,538,45,  2,539,45,  5,402,45, 22,403,45, 35,402,45, 59,452,
1147 45, 65,451,45, 67,475,45, 71,447,45, 74,470,45, 83,468,45, 88,466,45, 93,464,
1148 45, 97,462,45,104,456,45,114, 33,45,117, 32,45,119, 28,45,124, 31,45,125, 30,
1149 45,132, 21,45,142, 17,45,165, 16,46,  0,538,46,  2,539,46,  5,402,46, 23,403,
1150 46, 35,402,46, 52,455,46, 56,402,46, 59,452,46, 62,453,46, 64,451,46, 68,475,
1151 46, 70,447,46, 79,441,46, 84,468,46, 90,466,46, 92,464,46, 97,461,46,104,456,
1152 46,114, 33,46,117, 29,46,123, 28,46,124, 27,46,125, 26,46,132, 21,46,142, 17,
1153 46,165, 16,47,  0,538,47,  5,402,47, 24,403,47, 34,402,47, 52,455,47, 59,454,
1154 47, 64,451,47, 68,448,47, 70,447,47, 79,441,47, 86,468,47, 90,464,47, 97,461,
1155 47,104,456,47,116, 33,47,117, 29,47,124, 27,47,125, 26,47,132, 21,47,142, 17,
1156 47,165, 16,48,  0,538,48,  5,402,48, 24,403,48, 34,402,48, 52,446,48, 53,455,
1157 48, 59,454,48, 64,448,48, 70,447,48, 79,441,48, 94,464,48, 97,461,48,104,456,
1158 48,116, 33,48,117, 29,48,123, 25,48,132, 21,48,142, 17,48,165, 16,49,  0,538,
1159 49,  3,402,49, 24,403,49, 34,402,49, 52,446,49, 53,455,49, 59,454,49, 61,450,
1160 49, 65,448,49, 67,447,49, 79,441,49, 95,439,49,102,438,49,110, 24,49,114, 23,
1161 49,123, 25,49,132, 21,49,142, 17,49,165, 16,50,  0,533,50,  6,402,50, 24,403,
1162 50, 33,402,50, 52,446,50, 55,455,50, 58,449,50, 67,447,50, 79,441,50, 95,439,
1163 50,102,438,50,110, 24,50,115, 23,50,125, 25,50,132, 21,50,142, 17,50,165, 16,
1164 50,172,  7,51,  0,533,51,  6,532,51, 11,402,51, 24,403,51, 33,402,51, 52,446,
1165 51, 55,455,51, 57,449,51, 67,443,51, 80,441,51, 95,439,51,102,438,51,110, 24,
1166 51,117, 23,51,127, 25,51,129, 22,51,135, 21,51,142, 17,51,165, 16,51,167,  9,
1167 51,172,  7,52,  0,533,52,  6,532,52, 11,402,52, 25,403,52, 32,738,52, 37,402,
1168 52, 52,446,52, 55,445,52, 66,443,52, 80,441,52, 95,439,52,102,438,52,110, 24,
1169 52,118, 23,52,129, 22,52,135, 21,52,142, 17,52,165, 16,52,166,  9,52,172,  7,
1170 53,  0,533,53,  6,532,53, 11,402,53, 25,403,53, 32,738,53, 37,402,53, 52,446,
1171 53, 55,445,53, 68,443,53, 81,441,53, 95,439,53,102,438,53,110, 24,53,120, 23,
1172 53,130, 22,53,135, 21,53,142, 17,53,163, 10,53,165,  9,53,172,  7,54,  0,533,
1173 54,  8,532,54, 11,402,54, 32,738,54, 37,402,54, 52,446,54, 57,445,54, 68,443,
1174 54, 81,441,54, 93,439,54,102,438,54,110, 24,54,120, 23,54,130, 19,54,131, 22,
1175 54,135, 21,54,142, 17,54,160, 12,54,163, 10,54,165,  9,54,172,  3,55,  0,534,
1176 55,  1,533,55,  9,402,55, 32,738,55, 37,402,55, 52,446,55, 59,445,55, 64,443,
1177 55, 78,440,55, 86,441,55, 91,439,55,102,438,55,110, 24,55,120, 23,55,130, 19,
1178 55,135, 20,55,142, 15,55,151, 17,55,157, 12,55,163, 10,55,165,  9,55,169,  3,
1179 56,  0,534,56,  1,533,56,  8,402,56, 31,738,56, 37,402,56, 52,446,56, 61,445,
1180 56, 64,443,56, 77,440,56, 88,441,56, 90,439,56,102,438,56,110, 24,56,120, 23,
1181 56,130, 19,56,136, 20,56,142, 15,56,151, 13,56,155, 12,56,162, 11,56,163,  3,
1182 56,167,  8,56,172,  3,57,  0,534,57,  1,533,57,  8,402,57, 30,738,57, 37,402,
1183 57, 52,446,57, 61,445,57, 64,443,57, 78,440,57, 90,439,57,102,438,57,110, 24,
1184 57,120, 23,57,132, 19,57,137, 20,57,142, 15,57,151, 13,57,155, 12,57,159, 11,
1185 57,163,  3,57,167,  8,57,172,  3,58,  0,534,58,  2,533,58,  8,402,58, 29,738,
1186 58, 35,402,58, 52,446,58, 62,445,58, 64,443,58, 78,440,58, 93,439,58,102,438,
1187 58,110, 24,58,120, 23,58,133, 19,58,139, 20,58,142, 15,58,151, 13,58,154, 12,
1188 58,158, 11,58,163,  3,59,  0,533,59,  4,402,59, 28,738,59, 33,402,59, 52,446,
1189 59, 63,445,59, 65,443,59, 66,442,59, 69,443,59, 78,440,59, 94,439,59,102,438,
1190 59,110, 24,59,120, 23,59,134, 19,59,142, 15,59,148, 14,59,152,  2,59,168,  3,
1191 60,  0,533,60,  4,402,60, 27,738,60, 31,402,60, 42,680,60, 49,444,60, 64,445,
1192 60, 65,442,60, 69,443,60, 78,440,60, 94,679,60,124, 18,60,139, 19,60,142,  2,
1193 60,148, 14,60,152,  2,60,168,  3,61,  0,642,61, 10,637,61, 30,402,61, 42,680,
1194 61, 50,444,61, 64,442,61, 71,443,61, 79,440,61, 93,679,61,127, 18,61,141,  2,
1195 61,167,  3,62,  0,642,62, 10,637,62, 30,402,62, 40,680,62, 51,444,62, 64,682,
1196 62, 70,442,62, 72,443,62, 78,442,62, 80,440,62, 91,679,62,129, 18,62,141,  1,
1197 62,161,676,62,166,  3,62,169,674,62,170,  3,63,  0,642,63, 10,637,63, 18,638,
1198 63, 21,637,63, 30,402,63, 40,680,63, 52,444,63, 64,682,63, 71,442,63, 80,679,
1199 63,130, 18,63,141,  1,63,161,676,63,165,673,63,168,674,63,172,  3,64,  0,642,
1200 64, 10,637,64, 14,638,64, 23,637,64, 30,402,64, 40,680,64, 53,444,64, 64,682,
1201 64, 79,679,64,131, 18,64,141,  1,64,161,676,64,167,673,64,171,671,65,  0,642,
1202 65, 10,637,65, 14,638,65, 23,637,65, 30,402,65, 35,636,65, 40,680,65, 54,444,
1203 65, 62,682,65, 79,679,65,132,677,65,141,676,65,168,673,65,169,671,66,  0,642,
1204 66, 10,637,66, 30,402,66, 33,636,66, 40,680,66, 54,444,66, 61,682,66, 75,679,
1205 66,134,677,66,141,676,66,167,673,66,169,670,67,  0,642,67, 10,637,67, 30,636,
1206 67, 40,680,67, 54,444,67, 63,682,67, 74,679,67,136,677,67,141,676,67,166,673,
1207 67,170,672,67,172,670,68,  0,642,68, 10,637,68, 25,636,68, 40,680,68, 54,444,
1208 68, 65,682,68, 75,679,68,136,677,68,141,676,68,167,672,68,176,670,69,  0,639,
1209 69, 20,636,69, 40,680,69, 55,681,69, 67,682,69, 78,679,69,137,677,69,141,676,
1210 69,164,672,69,178,670,70,  0,639,70, 20,636,70, 40,680,70, 55,681,70, 67,682,
1211 70, 90,679,70,130,675,70,141,676,70,163,672,70,177,670,71,  0,639,71, 20,636,
1212 71, 40,680,71, 56,681,71, 71,682,71, 90,679,71,127,675,71,154,676,71,158,675,
1213 71,166,672,71,177,670,72,  0,639,72, 20,636,72, 40,680,72, 57,681,72, 74,682,
1214 72, 90,679,72,127,675,72,166,669,73,  0,640,73, 20,636,73, 40,680,73, 57,681,
1215 73, 76,682,73, 90,679,73,127,675,73,166,669,74,  0,640,74, 17,636,74, 40,680,
1216 74, 58,681,74, 79,678,74,116,679,74,125,675,74,166,669,75,  0,640,75, 17,636,
1217 75, 40,680,75, 60,681,75, 79,678,75,125,675,75,166,669,76,  0,640,76, 17,636,
1218 76, 40,680,76, 71,681,76, 78,678,76,125,634,76,166,669,77,  0,640,77, 17,636,
1219 77, 40,680,77, 73,678,77,125,634,78,  0,640,78, 17,636,78, 40,680,78, 73,678,
1220 78,120,634,79,  0,640,79, 17,636,79, 40,680,79, 70,678,79,110,634,80,  0,641,
1221 80, 15,635,80, 30,636,80, 40,680,80, 55,635,80, 67,678,80,100,634,81,  0,641,
1222 81, 10,635,81, 65,678,81, 95,634,82,  0,641,82, 10,635,82, 60,678,82, 90,634,
1223 83,  0,641,83, 10,635,83, 60,678,83, 80,634,84,  0,641,84, 10,635,84, 60,634,
1224 85,  0,641,85, 10,633,85, 60,634,86,  0,641,86, 10,633,86, 75,634,87,  0,641,
1225 87, 10,633,87, 75,634,88,  0,633,89,  0,633,90,180,633, 0,  0,  0, 0,  0,  0,
1226  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1227  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1228  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1229  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1230  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1231  0,  0,409, 0,  9,407, 0, 18,406, 0, 31,409, 0, 45,528, 0, 62,113, 0, 70,103,
1232  0, 75,110, 0, 76,107, 0, 80,105, 0, 81,104, 0, 86,696, 0, 89,697, 0, 92,696,
1233  0, 96,695, 0,100,694, 0,107,693, 0,120,632, 0,153,620, 0,165,632, 0,168,624,
1234  0,176,632, 1,  0,409, 1,  9,407, 1, 18,406, 1, 27,409, 1, 43,528, 1, 62,113,
1235  1, 69,103, 1, 73,111, 1, 75,110, 1, 76,107, 1, 80,105, 1, 81,104, 1, 86,696,
1236  1, 89,697, 1, 92,696, 1, 96,695, 1,100,694, 1,107,693, 1,120,632, 1,153,620,
1237  1,165,632, 1,168,624, 1,176,632, 2,  0,409, 2,  9,407, 2, 18,406, 2, 20,409,
1238  2, 38,528, 2, 62,113, 2, 70,103, 2, 71,111, 2, 75,110, 2, 78,107, 2, 79,105,
1239  2, 82,104, 2, 86,696, 2, 96,698, 2,100,694, 2,109,693, 2,120,632, 2,153,620,
1240  2,165,632, 2,168,624, 2,176,632, 3,  0,409, 3,  9,407, 3, 18,409, 3, 37,528,
1241  3, 62,113, 3, 70,111, 3, 77,110, 3, 79,105, 3, 80,110, 3, 81,109, 3, 82,108,
1242  3, 86,696, 3, 96,698, 3,100,694, 3,109,693, 3,120,632, 3,153,620, 3,165,632,
1243  3,168,624, 3,176,632, 4,  0,409, 4,  9,407, 4, 18,409, 4, 35,528, 4, 62,113,
1244  4, 70,112, 4, 74,111, 4, 78,110, 4, 81,109, 4, 82,108, 4, 86,699, 4, 92,698,
1245  4,100,694, 4,111,693, 4,120,632, 4,153,620, 4,165,632, 4,168,624, 4,176,632,
1246  5,  0,409, 5,  9,408, 5, 18,409, 5, 34,528, 5, 62,113, 5, 72,112, 5, 74,111,
1247  5, 80,109, 5, 82,108, 5, 86,699, 5, 92,698, 5,100,694, 5,111,693, 5,120,632,
1248  5,134,630, 5,144,632, 5,153,620, 5,165,632, 5,168,624, 5,176,632, 6,  0,409,
1249  6,  9,408, 6, 18,409, 6, 34,528, 6, 62,113, 6, 72,112, 6, 75,111, 6, 79,109,
1250  6, 82,108, 6, 86,699, 6, 92,698, 6,100,694, 6,113,693, 6,120,632, 6,134,630,
1251  6,144,632, 6,153,620, 6,165,632, 6,168,624, 6,176,632, 7,  0,409, 7,  9,408,
1252  7, 18,409, 7, 34,528, 7, 62,113, 7, 73,112, 7, 75,111, 7, 79,109, 7, 80,108,
1253  7, 84,699, 7, 92,698, 7,100,694, 7,113,693, 7,120,632, 7,134,630, 7,144,632,
1254  7,148,620, 7,157,626, 7,165,632, 7,168,625, 7,175,632, 7,178,623, 8,  0,409,
1255  8,  9,408, 8, 18,409, 8, 34,528, 8, 62,113, 8, 72,112, 8, 75,116, 8, 78,109,
1256  8, 80,108, 8, 84,699, 8, 92,698, 8,100,694, 8,113,693, 8,120,632, 8,134,630,
1257  8,144,632, 8,148,620, 8,157,626, 8,165,632, 8,168,625, 8,175,632, 8,178,623,
1258  9,  0,409, 9,  9,408, 9, 18,409, 9, 34,528, 9, 62,113, 9, 70,112, 9, 74,116,
1259  9, 78,109, 9, 79,108, 9, 83,699, 9, 92,698, 9,104,694, 9,115,693, 9,120,632,
1260  9,134,630, 9,144,632, 9,148,620, 9,157,626, 9,165,632, 9,168,625, 9,175,632,
1261  9,178,623,10,  0,409,10,  9,408,10, 18,409,10, 35,528,10, 62,113,10, 65,119,
1262 10, 68,113,10, 70,112,10, 73,116,10, 77,115,10, 79,114,10, 83,699,10, 92,698,
1263 10,104,694,10,115,693,10,120,632,10,134,630,10,144,632,10,148,620,10,157,626,
1264 10,165,169,10,176,180,11,  0,409,11,  9,408,11, 18,409,11, 36,528,11, 62,113,
1265 11, 65,119,11, 68,118,11, 70,112,11, 71,116,11, 77,115,11, 78,114,11, 82,699,
1266 11, 92,698,11,104,694,11,117,693,11,120,632,11,134,630,11,144,632,11,148,620,
1267 11,157,626,11,165,169,11,176,180,12,  0,409,12, 10,410,12, 18,409,12, 37,528,
1268 12, 62,113,12, 64,119,12, 68,118,12, 69,116,12, 76,115,12, 78,114,12, 82,699,
1269 12, 92,698,12,107,694,12,117,693,12,120,632,12,134,630,12,144,632,12,148,620,
1270 12,157,626,12,165,169,12,176,180,13,  0,409,13, 10,410,13, 18,409,13, 38,528,
1271 13, 61,119,13, 68,118,13, 70,116,13, 76,115,13, 77,114,13, 81,699,13, 92,698,
1272 13,107,694,13,119,693,13,120,632,13,133,631,13,149,628,13,157,626,13,165,169,
1273 13,168,170,13,173,169,13,176,181,14,  0,409,14, 10,410,14, 18,409,14, 38,528,
1274 14, 60,120,14, 68,118,14, 70,116,14, 75,115,14, 77,114,14, 81,699,14, 92,698,
1275 14,107,694,14,119,693,14,120,632,14,133,631,14,149,628,14,157,626,14,165,169,
1276 14,168,170,14,173,169,14,176,181,15,  0,409,15, 10,410,15, 18,409,15, 38,528,
1277 15, 60,120,15, 69,118,15, 70,117,15, 74,115,15, 76,114,15, 80,683,15,107,684,
1278 15,120,632,15,133,631,15,149,628,15,157,627,15,165,169,15,173,173,15,176,181,
1279 16,  0,409,16, 10,410,16, 18,409,16, 38,528,16, 58,120,16, 68,118,16, 70,117,
1280 16, 72,115,16, 75,114,16, 79,683,16,107,684,16,120,632,16,133,631,16,149,628,
1281 16,157,627,16,165,169,16,173,173,16,176,181,17,  0,409,17, 10,410,17, 18,409,
1282 17, 38,528,17, 58,120,17, 69,118,17, 70,115,17, 73,114,17, 77,683,17,107,684,
1283 17,124,632,17,133,631,17,147,628,17,157,627,17,166,174,17,173,173,17,176,181,
1284 18,  0,409,18, 10,410,18, 18,409,18, 39,528,18, 58,120,18, 68,124,18, 69,123,
1285 18, 70,122,18, 71,121,18, 77,683,18,107,684,18,124,632,18,133,631,18,147,628,
1286 18,156,627,18,166,174,18,173,173,18,176,181,19,  0,409,19, 10,410,19, 18,409,
1287 19, 39,528,19, 58,120,19, 59,126,19, 60,125,19, 68,124,19, 69,123,19, 70,122,
1288 19, 71,121,19, 77,683,19,107,684,19,124,632,19,133,631,19,147,628,19,156,627,
1289 19,166,174,19,173,173,19,176,181,20,  0,409,20, 10,410,20, 18,409,20, 39,528,
1290 20, 58,126,20, 62,125,20, 68,124,20, 69,123,20, 70,122,20, 71,121,20, 77,683,
1291 20,107,684,20,124,632,20,133,631,20,145,629,20,156,627,20,166,174,20,173,173,
1292 20,176,181,21,  0,409,21, 10,410,21, 18,409,21, 40,528,21, 58,126,21, 62,125,
1293 21, 67,124,21, 69,123,21, 70,122,21, 71,121,21, 77,683,21,107,684,21,124,632,
1294 21,133,631,21,145,629,21,156,627,21,166,174,21,173,173,21,176,181,22,  0,409,
1295 22, 10,410,22, 18,409,22, 40,528,22, 56,126,22, 62,129,22, 65,128,22, 67,124,
1296 22, 68,123,22, 70,122,22, 71,121,22, 77,683,22,102,685,22,115,684,22,124,632,
1297 22,133,631,22,145,629,22,156,627,22,166,174,22,176,171,23,  0,409,23, 10,410,
1298 23, 18,409,23, 41,528,23, 55,126,23, 62,129,23, 64,128,23, 67,127,23, 68,123,
1299 23, 70,122,23, 71,121,23, 77,683,23,102,685,23,115,684,23,124,632,23,133,631,
1300 23,145,629,23,156,627,23,166,174,23,176,171,24,  0,409,24, 10,410,24, 18,409,
1301 24, 44,528,24, 54,126,24, 59,133,24, 62,129,24, 67,127,24, 69,123,24, 70,122,
1302 24, 71,121,24, 77,683,24,102,685,24,115,684,24,124,632,24,133,631,24,145,629,
1303 24,156,632,24,170,175,24,176,171,25,  0,409,25,  9,410,25, 18,409,25, 47,528,
1304 25, 54,126,25, 58,133,25, 62,132,25, 63,129,25, 67,130,25, 68,127,25, 69,123,
1305 25, 70,122,25, 71,121,25, 77,683,25,102,685,25,115,684,25,124,632,25,133,631,
1306 25,145,629,25,156,632,25,170,175,25,176,171,26,  0,409,26,  9,410,26, 18,409,
1307 26, 48,528,26, 54,126,26, 58,133,26, 62,132,26, 64,131,26, 66,130,26, 68,127,
1308 26, 69,123,26, 70,122,26, 71,121,26, 77,683,26,102,685,26,115,684,26,124,632,
1309 26,170,175,26,176,171,27,  0,409,27,  8,410,27, 18,409,27, 48,528,27, 55,126,
1310 27, 57,133,27, 62,132,27, 65,131,27, 66,130,27, 68,127,27, 69,123,27, 70,122,
1311 27, 72,121,27, 77,683,27,102,685,27,115,684,27,124,632,27,170,177,28,  0,409,
1312 28,  8,410,28, 18,409,28, 48,528,28, 56,133,28, 62,132,28, 66,130,28, 67,138,
1313 28, 69,127,28, 70,136,28, 71,135,28, 72,134,28, 77,683,28,102,685,28,115,684,
1314 28,124,632,28,170,177,29,  0,409,29,  8,410,29, 18,409,29, 49,528,29, 57,133,
1315 29, 62,132,29, 66,138,29, 68,137,29, 69,127,29, 70,136,29, 71,135,29, 72,134,
1316 29, 77,683,29,102,685,29,115,684,29,120,632,29,170,177,29,177,178,29,179,177,
1317 30,  0,409,30,  9,410,30, 18,409,30, 49,528,30, 56,142,30, 58,133,30, 62,141,
1318 30, 66,138,30, 67,137,30, 69,127,30, 71,135,30, 72,134,30, 77,683,30,100,686,
1319 30,102,685,30,115,684,30,120,632,30,170,177,30,177,178,30,179,177,31,  0,409,
1320 31,  9,410,31, 18,409,31, 50,528,31, 55,142,31, 58,133,31, 62,141,31, 66,138,
1321 31, 67,137,31, 70,127,31, 71,135,31, 72,134,31, 77,687,31, 85,683,31, 97,686,
1322 31,102,685,31,115,684,31,119,632,31,170,177,32,  0,409,32, 10,410,32, 27,409,
1323 32, 51,528,32, 53,142,32, 58,133,32, 62,141,32, 65,140,32, 67,139,32, 70,127,
1324 32, 71,135,32, 72,134,32, 77,687,32, 85,683,32, 97,686,32,105,684,32,119,632,
1325 32,170,179,33,  0,409,33, 10,410,33, 26,409,33, 52,528,33, 53,142,33, 58,133,
1326 33, 62,141,33, 65,140,33, 67,139,33, 69,127,33, 71,135,33, 72,134,33, 77,687,
1327 33, 85,683,33, 94,686,33,105,684,33,118,632,33,170,179,34,  0,409,34,  6,411,
1328 34, 16,410,34, 25,409,34, 53,142,34, 58,133,34, 62,146,34, 63,141,34, 65,140,
1329 34, 67,139,34, 69,127,34, 71,135,34, 73,134,34, 77,687,34, 85,683,34, 94,686,
1330 34,105,684,34,118,632,34,170,179,35,  0,409,35,  6,411,35, 16,410,35, 23,409,
1331 35, 56,133,35, 62,146,35, 65,140,35, 66,139,35, 70,127,35, 71,136,35, 72,135,
1332 35, 73,134,35, 80,683,35, 91,686,35, 98,756,35,105,684,35,117,632,35,174,688,
1333 36,  0,409,36,  6,411,36, 16,410,36, 22,409,36, 56,133,36, 62,146,36, 68,139,
1334 36, 70,127,36, 71,136,36, 72,135,36, 74,134,36, 80,683,36, 91,686,36, 98,756,
1335 36,105,684,36,117,632,36,174,688,37,  0,409,37,  6,411,37, 16,410,37, 21,409,
1336 37, 56,133,37, 62,146,37, 71,145,37, 72,136,37, 73,135,37, 74,134,37, 80,683,
1337 37, 88,686,37, 95,756,37,100,692,37,105,684,37,117,632,37,174,688,38,  0,409,
1338 38,  6,411,38, 16,410,38, 21,409,38, 56,133,38, 62,146,38, 71,145,38, 72,136,
1339 38, 73,135,38, 74,134,38, 80,683,38, 88,686,38, 95,756,38,100,692,38,105,684,
1340 38,117,632,38,174,688,39,  0,409,39,  6,411,39, 16,410,39, 21,409,39, 60,133,
1341 39, 62,146,39, 71,145,39, 72,136,39, 73,135,39, 74,134,39, 80,683,39, 85,686,
1342 39, 92,756,39, 95,692,39,105,684,39,117,632,39,174,688,40,  0,409,40,  6,411,
1343 40, 16,410,40, 21,409,40, 62,146,40, 71,145,40, 72,136,40, 73,135,40, 74,143,
1344 40, 81,683,40, 85,686,40, 92,756,40, 95,692,40,105,684,40,117,632,40,174,688,
1345 41,  0,409,41,  6,411,41, 16,410,41, 21,409,41, 62,146,41, 71,145,41, 72,144,
1346 41, 74,143,41, 81,686,41, 89,756,41, 94,692,41,105,684,41,117,632,41,174,688,
1347 42,  0,409,42,  6,411,42, 16,410,42, 21,409,42, 63,146,42, 71,145,42, 72,144,
1348 42, 75,143,42, 81,686,42, 89,756,42, 94,692,42,105,684,42,117,632,42,170,689,
1349 43,  0,409,43,  8,410,43, 22,409,43, 64,146,43, 71,145,43, 72,144,43, 75,143,
1350 43, 81,686,43, 86,692,43,105,684,43,117,632,43,170,689,44,  0,409,44,  8,410,
1351 44, 22,409,44, 64,146,44, 71,145,44, 72,144,44, 75,143,44, 81,686,44, 86,692,
1352 44,105,684,44,117,632,44,170,689,45,  0,409,45,  8,410,45, 22,409,45, 66,146,
1353 45, 71,145,45, 72,144,45, 75,143,45, 83,692,45,105,684,45,117,632,45,170,689,
1354 46,  0,409,46,  6,410,46, 22,152,46, 24,409,46, 66,146,46, 71,145,46, 72,144,
1355 46, 76,143,46, 83,692,46,105,684,46,117,632,46,170,690,47,  0,409,47,  4,410,
1356 47, 22,152,47, 26,409,47, 66,146,47, 71,145,47, 72,144,47, 76,143,47, 83,692,
1357 47,105,684,47,117,632,47,170,690,48,  0,409,48,  2,410,48, 22,152,48, 28,409,
1358 48, 66,146,48, 71,145,48, 73,144,48, 76,143,48, 83,692,48,105,684,48,117,632,
1359 48,170,690,49,  0,412,49,  2,410,49, 10,156,49, 23,152,49, 30,409,49, 55,148,
1360 49, 65,409,49, 67,146,49, 71,145,49, 73,144,49, 76,143,49, 83,692,49,105,684,
1361 49,117,632,49,170,690,50,  0,412,50,  2,410,50, 10,156,50, 24,152,50, 32,409,
1362 50, 55,148,50, 65,409,50, 67,146,50, 71,145,50, 73,144,50, 76,143,50, 83,692,
1363 50,105,684,50,125,632,50,170,690,51,  0,412,51,  2,410,51, 10,156,51, 26,152,
1364 51, 34,409,51, 55,148,51, 65,409,51, 68,146,51, 71,145,51, 72,144,51, 76,143,
1365 51, 83,692,51,105,684,51,125,632,51,170,690,52,  0,412,52,  2,410,52, 10,156,
1366 52, 28,152,52, 31,151,52, 40,409,52, 55,148,52, 65,147,52, 71,144,52, 76,143,
1367 52, 83,692,52,105,684,52,127,691,52,147,632,52,170,690,53,  0,412,53,  2,410,
1368 53, 10,156,53, 29,152,53, 31,151,53, 40,409,53, 55,148,53, 65,147,53, 71,144,
1369 53, 75,143,53, 83,692,53,105,684,53,127,691,53,147,632,53,170,690,54,  0,412,
1370 54,  2,410,54,  9,156,54, 22,153,54, 31,151,54, 40,409,54, 55,148,54, 65,147,
1371 54, 71,144,54, 74,143,54, 83,692,54,105,684,54,127,691,54,154,632,54,170,690,
1372 55,  0,412,55,  2,410,55,  8,156,55, 22,153,55, 31,151,55, 40,150,55, 59,149,
1373 55, 65,147,55, 72,143,55, 83,692,55,113,684,55,127,691,55,154,632,55,170,690,
1374 56,  0,412,56,  2,410,56,  7,732,56, 18,156,56, 22,153,56, 31,151,56, 40,150,
1375 56, 59,149,56, 73,692,56,113,684,56,127,691,56,157,632,56,170,690,57,  0,412,
1376 57,  2,410,57,  7,732,57, 18,156,57, 22,153,57, 31,150,57, 59,149,57, 73,692,
1377 57,117,684,57,127,691,57,157,632,57,170,690,58,  0,412,58,  2,410,58,  7,732,
1378 58, 22,153,58, 31,150,58, 59,149,58, 73,692,58,117,684,58,127,691,58,160,632,
1379 58,170,690,59,  0,412,59,  2,410,59,  7,732,59, 22,153,59, 31,150,59, 59,149,
1380 59, 73,692,59,117,684,59,127,691,59,160,632,59,170,690,60,  0,414,60,  5,156,
1381 60, 15,732,60, 22,153,60, 31,150,60, 52,154,60, 59,149,60, 73,692,60,148,691,
1382 60,170,690,61,  0,414,61,  5,156,61, 15,732,61, 22,153,61, 31,150,61, 52,154,
1383 61, 62,149,61, 73,692,61,148,691,62,  0,414,62,  5,156,62, 56,154,62, 65,692,
1384 62,149,691,63,  0,414,63,  5,156,63, 54,155,63, 61,154,63, 65,692,63,149,691,
1385 64,  0,414,64,  5,156,64, 56,155,64, 65,692,64,150,691,65,  0,414,65,  5,156,
1386 65, 59,155,65, 67,692,65,159,691,66,  0,414,66,  5,156,66, 59,155,66, 70,692,
1387 66,159,691,67,  0,414,67,  5,156,67, 60,155,67, 70,692,67,162,691,68,  0,414,
1388 68,  5,156,68, 60,155,68, 76,692,68,162,691,69,  0,729,69, 11,156,69, 60,155,
1389 69, 76,692,69,162,691,70,  0,729,70, 11,156,70, 60,155,70, 76,692,70,141,728,
1390 71,  0,729,71, 14,157,71, 60,155,71, 76,692,71,141,728,72,  0,729,72, 19,157,
1391 72, 60,155,72, 76,692,72, 95,729,72,103,692,72,141,728,73,  0,729,73, 21,157,
1392 73, 60,155,73, 71,729,73,103,692,73,120,729,73,129,692,73,141,728,74,  0,729,
1393 74, 24,157,74, 60,155,74, 66,729,74,141,728,75,  0,729,75, 27,157,75, 56,729,
1394 75,147,728,76,  0,729,76, 32,157,76, 50,729,76,152,728,77,  0,729,77,162,728,
1395 78,  0,729,79,  0,729,80,  0,729,81,  0,729,82,  0,729,83,  0,729,84,  0,729,
1396 85,  0,729,86,  0,729,87,  0,729,88,  0,729,89,  0,729,90,180,729, 0,  0,  0,
1397  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1398  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1399  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1400  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1401  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1402  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1403  0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0, 0,  0,  0,
1404  0,  0,  0, 0,  0,409, 0,  9,565, 0, 14,566, 0, 18,567, 0, 30,568, 0, 31,569,
1405  0, 35,570, 0, 41,571, 0, 43,425, 0, 65,421, 0, 70,422, 0, 78,425, 0, 92,273,
1406  0, 98,274, 0,105,275, 0,109,261, 0,118,265, 0,124,269, 0,127,267, 0,130,196,
1407  0,141,198, 0,145,199, 0,149,190, 0,154,191, 0,164,632, 0,171,618, 1,  0,409,
1408  1,  9,565, 1, 14,566, 1, 17,567, 1, 29,572, 1, 31,569, 1, 35,570, 1, 42,574,
1409  1, 43,425, 1, 67,421, 1, 70,422, 1, 78,425, 1, 92,273, 1, 98,274, 1,107,275,
1410  1,109,261, 1,118,268, 1,124,269, 1,127,267, 1,130,196, 1,137,197, 1,140,196,
1411  1,141,198, 1,145,199, 1,149,190, 1,154,191, 1,164,632, 1,171,618, 2,  0,409,
1412  2,  9,565, 2, 12,566, 2, 16,567, 2, 28,572, 2, 31,569, 2, 35,573, 2, 37,570,
1413  2, 41,574, 2, 43,425, 2, 67,421, 2, 70,422, 2, 78,425, 2, 92,273, 2, 99,274,
1414  2,107,275, 2,109,261, 2,118,268, 2,124,270, 2,129,272, 2,131,196, 2,137,201,
1415  2,139,197, 2,141,200, 2,143,198, 2,145,199, 2,149,190, 2,154,191, 2,164,632,
1416  2,171,618, 3,  0,409, 3, 10,565, 3, 12,566, 3, 16,567, 3, 28,572, 3, 31,569,
1417  3, 35,573, 3, 38,570, 3, 41,574, 3, 45,425, 3, 67,421, 3, 68,426, 3, 78,425,
1418  3, 92,273, 3,100,274, 3,107,275, 3,111,261, 3,118,268, 3,124,270, 3,126,271,
1419  3,127,272, 3,131,196, 3,136,201, 3,141,202, 3,142,200, 3,146,203, 3,150,190,
1420  3,154,191, 3,164,632, 3,171,618, 4,  0,409, 4, 11,566, 4, 15,567, 4, 28,572,
1421  4, 31,573, 4, 39,570, 4, 40,574, 4, 45,425, 4, 67,421, 4, 68,426, 4, 78,425,
1422  4, 94,273, 4,101,274, 4,107,275, 4,118,268, 4,123,280, 4,132,196, 4,137,201,
1423  4,141,202, 4,144,200, 4,146,207, 4,147,203, 4,150,192, 4,153,190, 4,154,193,
1424  4,161,191, 4,164,632, 4,175,623, 5,  0,409, 5, 12,575, 5, 13,567, 5, 28,572,
1425  5, 31,573, 5, 40,574, 5, 47,425, 5, 67,421, 5, 68,426, 5, 78,425, 5, 94,273,
1426  5,102,274, 5,105,276, 5,106,277, 5,108,275, 5,118,268, 5,123,280, 5,132,204,
1427  5,135,196, 5,137,205, 5,139,201, 5,141,202, 5,145,207, 5,148,192, 5,153,190,
1428  5,154,193, 5,161,191, 5,164,632, 5,175,623, 6,  0,409, 6, 12,575, 6, 17,567,
1429  6, 28,572, 6, 32,573, 6, 40,574, 6, 47,425, 6, 67,421, 6, 68,426, 6, 78,425,
1430  6, 94,273, 6,104,276, 6,106,277, 6,114,278, 6,118,279, 6,123,280, 6,131,281,
1431  6,133,204, 6,136,196, 6,138,205, 6,139,201, 6,141,202, 6,146,207, 6,148,192,
1432  6,154,193, 6,162,191, 6,164,632, 6,175,623, 7,  0,409, 7, 12,575, 7, 17,567,
1433  7, 19,575, 7, 22,567, 7, 29,572, 7, 32,573, 7, 40,574, 7, 49,425, 7, 66,429,
1434  7, 68,426, 7, 78,425, 7, 96,273, 7,105,277, 7,114,278, 7,118,279, 7,123,280,
1435  7,130,281, 7,133,204, 7,136,208, 7,137,205, 7,140,201, 7,141,202, 7,143,206,
1436  7,146,207, 7,149,192, 7,154,193, 7,164,183, 7,173,632, 7,176,623, 8,  0,409,
1437  8, 12,575, 8, 22,567, 8, 29,572, 8, 32,573, 8, 40,574, 8, 49,425, 8, 66,429,
1438  8, 68,426, 8, 78,425, 8, 96,273, 8,105,282, 8,107,277, 8,114,283, 8,116,285,
1439  8,119,286, 8,124,289, 8,128,290, 8,130,281, 8,133,208, 8,137,205, 8,141,206,
1440  8,146,207, 8,151,194, 8,155,193, 8,164,183, 8,173,632, 8,176,623, 9,  0,409,
1441  9, 12,575, 9, 22,567, 9, 29,572, 9, 32,576, 9, 33,573, 9, 40,574, 9, 51,425,
1442  9, 65,429, 9, 68,426, 9, 78,425, 9, 96,273, 9,105,282, 9,114,284, 9,116,285,
1443  9,119,287, 9,121,288, 9,123,289, 9,127,290, 9,132,208, 9,140,205, 9,141,206,
1444  9,144,595, 9,146,207, 9,151,194, 9,156,193, 9,164,183, 9,165,184, 9,168,183,
1445  9,173,632, 9,176,623,10,  0,409,10, 13,575,10, 22,567,10, 29,576,10, 33,577,
1446 10, 35,573,10, 41,574,10, 51,425,10, 65,429,10, 72,425,10, 98,273,10,105,282,
1447 10,114,284,10,116,291,10,119,287,10,121,288,10,123,289,10,125,290,10,132,208,
1448 10,141,594,10,144,595,10,147,207,10,151,194,10,156,195,10,158,193,10,164,183,
1449 10,165,184,10,168,183,10,173,180,11,  0,409,11, 13,575,11, 24,576,11, 25,567,
1450 11, 29,576,11, 33,577,11, 35,573,11, 37,581,11, 41,574,11, 48,583,11, 51,425,
1451 11, 65,429,11, 71,425,11, 98,273,11,105,282,11,114,284,11,116,291,11,119,292,
1452 11,121,293,11,125,290,11,130,591,11,138,208,11,141,594,11,144,595,11,151,194,
1453 11,156,195,11,159,193,11,164,183,11,165,184,11,168,183,11,173,180,12,  0,409,
1454 12, 12,575,12, 24,576,12, 28,567,12, 30,576,12, 33,577,12, 35,581,12, 41,574,
1455 12, 48,583,12, 51,425,12, 64,429,12, 71,425,12,105,588,12,116,291,12,119,292,
1456 12,121,293,12,129,591,12,138,593,12,141,594,12,145,595,12,151,194,12,156,195,
1457 12,159,193,12,164,183,12,165,184,12,168,183,12,173,180,13,  0,409,13, 12,575,
1458 13, 22,576,13, 33,577,13, 35,581,13, 41,574,13, 47,583,13, 51,425,13, 64,429,
1459 13, 70,425,13,105,588,13,125,590,13,129,591,13,137,593,13,141,594,13,146,595,
1460 13,151,194,13,156,195,13,162,185,13,165,186,13,169,185,13,173,181,14,  0,409,
1461 14, 12,575,14, 22,576,14, 32,581,14, 34,577,14, 36,581,14, 41,582,14, 46,583,
1462 14, 51,425,14, 64,429,14, 70,425,14,105,588,14,124,590,14,129,591,14,137,593,
1463 14,141,594,14,147,595,14,156,195,14,162,185,14,165,186,14,170,185,14,173,181,
1464 15,  0,409,15, 11,575,15, 22,576,15, 30,581,15, 34,577,15, 36,581,15, 41,582,
1465 15, 45,583,15, 51,425,15, 64,429,15, 70,425,15,105,588,15,123,590,15,129,591,
1466 15,138,593,15,141,594,15,147,595,15,156,596,15,162,185,15,165,186,15,170,185,
1467 15,173,181,15,177,182,16,  0,409,16, 11,575,16, 22,576,16, 29,580,16, 33,581,
1468 16, 35,577,16, 36,581,16, 41,582,16, 44,583,16, 51,425,16, 64,429,16, 70,425,
1469 16,105,588,16,121,590,16,129,591,16,138,594,16,147,595,16,156,596,16,162,185,
1470 16,165,186,16,170,185,16,173,181,16,177,182,17,  0,409,17, 11,578,17, 18,575,
1471 17, 23,576,17, 27,580,17, 33,581,17, 40,582,17, 43,583,17, 51,425,17, 53,427,
1472 17, 67,429,17, 70,425,17,105,588,17,121,590,17,129,591,17,138,594,17,147,595,
1473 17,159,597,17,162,187,17,164,185,17,166,186,17,171,185,17,173,181,17,177,182,
1474 18,  0,409,18, 11,578,18, 21,579,18, 26,580,18, 33,581,18, 38,582,18, 43,583,
1475 18, 50,425,18, 53,427,18, 67,429,18, 70,425,18,105,588,18,120,590,18,129,591,
1476 18,138,594,18,149,605,18,159,597,18,162,187,18,165,185,18,167,186,18,171,185,
1477 18,173,181,18,177,182,19,  0,409,19, 12,578,19, 21,579,19, 26,580,19, 33,581,
1478 19, 36,582,19, 43,583,19, 50,425,19, 53,427,19, 67,429,19, 70,425,19,105,588,
1479 19,117,590,19,129,591,19,138,594,19,150,605,19,159,597,19,162,187,19,165,185,
1480 19,168,186,19,171,185,19,175,171,20,  0,409,20, 13,578,20, 21,579,20, 28,580,
1481 20, 33,581,20, 36,582,20, 42,583,20, 50,425,20, 53,427,20, 67,429,20, 72,425,
1482 20,105,588,20,114,590,20,129,591,20,138,594,20,150,605,20,159,597,20,162,187,
1483 20,166,188,20,169,186,20,171,185,20,175,171,21,  0,409,21, 13,578,21, 21,579,
1484 21, 28,580,21, 32,581,21, 36,582,21, 42,583,21, 49,425,21, 53,427,21, 67,429,
1485 21, 72,425,21,105,588,21,113,590,21,129,591,21,138,594,21,152,605,21,159,597,
1486 21,163,187,21,167,188,21,169,189,21,173,185,21,175,171,22,  0,409,22, 14,578,
1487 22, 20,579,22, 29,584,22, 31,581,22, 36,582,22, 42,583,22, 49,425,22, 53,427,
1488 22, 67,429,22, 73,425,22,105,589,22,112,590,22,129,591,22,138,594,22,152,605,
1489 22,160,597,22,164,187,22,169,189,22,175,171,23,  0,409,23, 14,578,23, 20,579,
1490 23, 27,584,23, 32,581,23, 36,582,23, 42,583,23, 49,425,23, 53,427,23, 67,429,
1491 23, 74,425,23,105,589,23,112,590,23,129,591,23,138,594,23,153,605,23,161,597,
1492 23,165,187,23,169,189,23,175,171,24,  0,409,24, 14,578,24, 20,579,24, 26,584,
1493 24, 32,581,24, 36,582,24, 42,583,24, 48,425,24, 53,427,24, 67,429,24, 76,425,
1494 24,105,589,24,112,590,24,129,591,24,138,594,24,154,605,24,162,597,24,169,189,
1495 24,175,171,25,  0,409,25, 14,578,25, 20,584,25, 21,579,25, 23,584,25, 24,579,
1496 25, 26,584,25, 32,581,25, 35,582,25, 42,583,25, 48,425,25, 63,428,25, 67,741,
1497 25, 70,429,25, 76,425,25,105,589,25,112,590,25,129,591,25,138,594,25,151,604,
1498 25,155,605,25,162,597,25,169,189,25,175,171,26,  0,409,26, 14,578,26, 20,584,
1499 26, 21,579,26, 22,584,26, 31,586,26, 32,581,26, 33,587,26, 35,425,26, 62,428,
1500 26, 66,741,26, 71,429,26, 77,425,26,105,589,26,112,590,26,129,592,26,141,594,
1501 26,152,604,26,155,605,26,162,597,26,169,606,26,173,189,26,175,171,27,  0,409,
1502 27, 15,578,27, 20,584,27, 33,587,27, 35,425,27, 61,428,27, 65,741,27, 72,429,
1503 27, 77,425,27,105,589,27,112,590,27,129,592,27,141,594,27,152,604,27,155,605,
1504 27,165,606,27,173,176,27,178,177,28,  0,409,28, 15,578,28, 20,584,28, 33,587,
1505 28, 35,425,28, 60,428,28, 64,741,28, 68,425,28, 73,429,28, 78,425,28,105,589,
1506 28,113,590,28,129,592,28,141,594,28,152,604,28,155,605,28,165,606,28,173,176,
1507 28,178,177,29,  0,409,29, 15,587,29, 16,584,29, 27,585,29, 29,584,29, 32,587,
1508 29, 35,425,29, 59,428,29, 63,425,29, 73,429,29, 78,425,29,105,589,29,113,590,
1509 29,129,592,29,141,601,29,152,604,29,155,605,29,165,606,29,173,176,29,178,177,
1510 30,  0,409,30, 15,587,30, 17,584,30, 32,587,30, 35,425,30, 58,428,30, 62,425,
1511 30, 74,429,30, 79,434,30,105,589,30,114,590,30,129,592,30,141,601,30,152,604,
1512 30,155,605,30,165,607,30,173,176,30,178,177,31,  0