Generated on Thu Jan 20 2022 00:00:00 for Gecode by doxygen 1.9.1
qcp.cpp
Go to the documentation of this file.
1 /* -*- mode: C++; c-basic-offset: 2; indent-tabs-mode: nil -*- */
2 /*
3  * Main authors:
4  * Christian Schulte <schulte@gecode.org>
5  *
6  * Contributing authors:
7  * Samuel Gagnon <samuel.gagnon92@gmail.com>
8  *
9  * Copyright:
10  * Christian Schulte, 2015
11  * Samuel Gagnon, 2018
12  *
13  * This file is part of Gecode, the generic constraint
14  * development environment:
15  * http://www.gecode.org
16  *
17  * Permission is hereby granted, free of charge, to any person obtaining
18  * a copy of this software and associated documentation files (the
19  * "Software"), to deal in the Software without restriction, including
20  * without limitation the rights to use, copy, modify, merge, publish,
21  * distribute, sublicense, and/or sell copies of the Software, and to
22  * permit persons to whom the Software is furnished to do so, subject to
23  * the following conditions:
24  *
25  * The above copyright notice and this permission notice shall be
26  * included in all copies or substantial portions of the Software.
27  *
28  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
29  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
30  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
31  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
32  * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
33  * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
34  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35  *
36  */
37 
38 #include <gecode/driver.hh>
39 
40 #include <gecode/int.hh>
41 #include <gecode/minimodel.hh>
42 
43 using namespace Gecode;
44 
46 namespace {
47 
49  static const int n_seeds = 32;
51  static const unsigned int seeds[n_seeds] = {
52  4156683608, 97006981, 1375463525, 841714419,
53  715462902, 2418870981, 1624092856, 123015042,
54  2456879733, 1964065250, 2622145091, 3852245775,
55  205913142, 1921802200, 3118573517, 315803625,
56  1823610061, 3329660933, 3706705607, 2648334003,
57  424666975, 1774959171, 4178564660, 52701009,
58  2475642041, 2171371390, 1476278023, 2270518404,
59  2981774515, 910724046, 92053990, 1980563460
60  };
61 
62 
64  class QCPOptions : public InstanceOptions {
65  protected:
68  public:
70  QCPOptions(const char* s)
71  : InstanceOptions(s),
72  _tbf("tbf", "tie-breaking factor",0.0) {
73  // Add options
74  add(_tbf);
75  }
77  double tbf(void) const {
78  return _tbf.value();
79  }
81  void tbf(double d) {
82  _tbf.value(d);
83  }
84  };
85 
86 
88  extern const int* qcp[];
90  extern const char* name[];
91 
93  class Spec {
94  protected:
96  const int* data;
98  int info(int i, int j) const {
99  int n = data[0];
100  assert((i >= 0) && (i < n));
101  assert((j >= 0) && (j < n));
102  return data[1 + (i * n) + j];
103  }
105  static const int* find(const char* s) {
106  for (int i=0; name[i] != NULL; i++)
107  if (!strcmp(s,name[i]))
108  return qcp[i];
109  return NULL;
110  }
111  public:
113  bool valid(void) const {
114  return data != NULL;
115  }
117  Spec(const char* s) : data(find(s)) {}
119  int size(void) const {
120  return data[0];
121  }
123  bool assigned(int i, int j) const {
124  return info(i,j) > 0;
125  }
127  int val(int i, int j) const {
128  assert(assigned(i,j));
129  return info(i,j) - 1;
130  }
131  };
132 
133 }
134 
135 
142 class QCP : public Script {
143 protected:
145  const QCPOptions& opt;
147  const Spec spec;
151  double tbf;
152 public:
154  enum {
156  PROP_DISTINCT
157  };
159  enum {
162  BRANCH_CBS_MAX_SD
163  };
165  QCP(const QCPOptions& opt0)
166  : Script(opt0),
167  opt(opt0), spec(opt.instance()),
168  e(*this, spec.size() * spec.size(), 0, spec.size()-1) {
169  // Problem size
170  int n = spec.size();
171  // Matrix for elements
172  Matrix<IntVarArray> m(e, n);
173 
174  // Assign fields
175  for (int i=0; i<n; i++)
176  for (int j=0; j<n; j++)
177  if (spec.assigned(i,j))
178  rel(*this, m(i,j) == spec.val(i,j));
179 
180  // Post constraints
181  switch (opt.propagation()) {
182  case PROP_BINARY:
183  for (int i=0; i<n; i++)
184  for (int k=0; k<n; k++)
185  for (int l=k+1; l<n; l++) {
186  rel(*this, m(i,k) != m(i,l));
187  rel(*this, m(k,i) != m(l,i));
188  }
189  break;
190  case PROP_DISTINCT:
191  for (int i=0; i<n; i++) {
192  distinct(*this, m.row(i), opt.ipl());
193  distinct(*this, m.col(i), opt.ipl());
194  }
195  break;
196  }
197 
198  if (opt.assets() == 0) {
199  // Post branchers directly, as no portfolio search requested
200  switch (opt.branching()) {
201  case BRANCH_CBS_MAX_SD:
202 #ifdef GECODE_HAS_CBS
203  cbsbranch(*this, e);
204 #endif
205  case BRANCH_SIZE:
206  branch(*this, e, INT_VAR_SIZE_MIN(), INT_VAL_MIN());
207  break;
208  case BRANCH_AFC_SIZE:
209  branch(*this, e, INT_VAR_AFC_SIZE_MAX(opt.decay()), INT_VAL_MIN());
210  break;
211  }
212  }
213  }
215  virtual bool slave(const MetaInfo& mi) {
216  if (mi.type() == MetaInfo::PORTFOLIO) {
217  double tbf = opt.tbf();
218  Rnd r(seeds[mi.asset() % n_seeds]);
219  switch (opt.branching()) {
220  case BRANCH_SIZE:
221  {
222  auto tbl =
223  [tbf] (const Space&, double w, double b) {
224  assert(w >= b);
225  return b + (w - b) * tbf;
226  };
227  branch(*this, e, tiebreak(INT_VAR_SIZE_MIN(tbl),
228  INT_VAR_RND(r)),
229  INT_VAL_MIN());
230  }
231  break;
232  case BRANCH_AFC_SIZE:
233  {
234  auto tbl =
235  [tbf] (const Space&, double w, double b) {
236  assert(b >= w);
237  return b - (b - w) * tbf;
238  };
239  branch(*this, e, tiebreak(INT_VAR_AFC_SIZE_MAX(opt.decay(), tbl),
240  INT_VAR_RND(r)),
241  INT_VAL_MIN());
242  }
243  break;
244  default: ;
245  }
246  }
247  return true;
248  }
250  QCP(QCP& s)
251  : Script(s), opt(s.opt), spec(s.spec) {
252  e.update(*this, s.e);
253  }
255  virtual Space*
256  copy(void) {
257  return new QCP(*this);
258  }
260  virtual void
261  print(std::ostream& os) const {
262  int n = spec.size();
263  Matrix<IntVarArray> m(e, n);
264 
265  for (int i=0; i<n; i++) {
266  os << "\t";
267  for (int j=0; j<n; j++) {
268  if (m(i,j).assigned())
269  os.width(2);
270  os << m(i,j) << " ";
271  }
272  os << std::endl;
273  }
274  }
275 };
276 
280 int
281 main(int argc, char* argv[]) {
282  QCPOptions opt("QCP");
283 
285  opt.branching(QCP::BRANCH_SIZE, "size");
287 #ifdef GECODE_HAS_CBS
289 #endif
290 
291  opt.ipl(IPL_DOM);
292 
294  opt.propagation(QCP::PROP_BINARY, "binary",
295  "only binary disequality constraints");
296  opt.propagation(QCP::PROP_DISTINCT, "distinct",
297  "distinct constraints");
298 
299  opt.instance(name[0]);
300 
301  opt.parse(argc,argv);
302  if (!Spec(opt.instance()).valid()) {
303  std::cerr << "Error: unkown instance" << std::endl;
304  return 1;
305  }
306  Script::run<QCP,DFS,QCPOptions>(opt);
307  return 0;
308 }
309 
310 namespace {
311 
312  /*
313  * Instances taken from the 2009 CSP competition.
314  */
315 
316  const int d10_67_0[] = {
317  // Size: 10 x 10
318  10,
319  // Pre-assigned fields
320  2,4,0,0,5,7,0,0,0,0,
321  0,6,0,4,0,0,0,3,0,0,
322  3,0,9,0,0,5,0,0,8,0,
323  0,0,2,10,7,0,0,0,0,0,
324  0,0,0,0,0,0,5,1,0,8,
325  4,0,0,0,0,0,3,6,0,0,
326  0,0,0,8,0,4,0,0,0,1,
327  0,5,0,3,8,0,0,0,0,0,
328  0,0,1,0,0,0,4,0,5,0,
329  0,0,0,0,0,6,0,8,9,3
330  };
331 
332  const int d10_67_10[] = {
333  // Size: 10 x 10
334  10,
335  // Pre-assigned fields
336  0,10,0,0,0,0,4,2,0,0,
337  0,0,0,3,8,0,0,0,6,0,
338  0,0,0,0,0,4,0,0,1,6,
339  1,6,8,5,0,0,0,0,0,0,
340  0,9,1,0,0,7,0,0,0,0,
341  0,0,0,0,5,0,7,1,4,0,
342  3,0,2,4,0,0,8,0,0,0,
343  4,0,0,0,2,0,0,0,0,5,
344  0,7,6,0,0,0,0,0,0,3,
345  0,0,0,0,0,10,6,4,0,0
346  };
347 
348  const int d10_67_11[] = {
349  // Size: 10 x 10
350  10,
351  // Pre-assigned fields
352  7,0,0,0,1,0,0,0,2,0,
353  0,0,7,0,0,0,9,0,0,6,
354  0,0,0,0,0,0,6,7,5,0,
355  9,3,0,7,0,0,0,0,0,2,
356  0,7,0,4,8,0,0,0,0,0,
357  0,1,10,0,0,0,3,0,0,0,
358  2,0,0,0,0,9,7,1,0,0,
359  0,0,1,0,0,7,0,3,8,0,
360  0,0,0,0,0,8,0,0,1,5,
361  0,9,0,6,7,0,0,0,0,0
362  };
363 
364  const int d10_67_12[] = {
365  // Size: 10 x 10
366  10,
367  // Pre-assigned fields
368  0,4,0,0,0,0,8,0,2,0,
369  0,5,7,0,9,0,0,0,0,0,
370  6,3,0,0,0,2,0,0,0,1,
371  0,0,6,0,7,0,0,8,0,0,
372  3,7,0,0,0,0,0,0,4,5,
373  4,0,0,0,0,0,0,2,6,0,
374  0,0,0,9,2,0,0,6,0,0,
375  0,0,0,1,0,7,6,0,0,0,
376  10,0,0,0,6,0,0,0,0,2,
377  0,0,4,5,0,6,3,0,0,0
378  };
379 
380  const int d10_67_13[] = {
381  // Size: 10 x 10
382  10,
383  // Pre-assigned fields
384  0,0,9,6,0,0,0,0,1,0,
385  0,3,0,0,4,0,0,0,10,0,
386  0,0,0,0,6,0,10,0,0,7,
387  0,0,0,7,0,8,0,10,3,0,
388  6,7,10,0,0,0,0,0,0,4,
389  7,0,0,10,0,0,4,0,0,0,
390  0,0,0,4,0,0,6,2,0,0,
391  0,0,5,0,10,0,0,3,0,0,
392  4,9,0,0,0,3,0,0,0,0,
393  9,8,0,0,0,2,0,0,0,1
394  };
395 
396  const int d10_67_14[] = {
397  // Size: 10 x 10
398  10,
399  // Pre-assigned fields
400  7,0,10,9,0,0,0,0,0,0,
401  3,0,0,8,0,0,0,0,9,0,
402  0,2,0,0,7,0,0,0,0,4,
403  9,0,0,10,0,0,2,0,0,0,
404  0,0,9,2,0,8,4,0,0,0,
405  0,0,5,0,1,0,9,8,0,0,
406  0,3,0,0,0,0,0,0,8,6,
407  0,0,0,0,0,5,0,7,0,9,
408  0,7,0,0,0,0,0,9,5,0,
409  0,6,0,0,2,1,5,0,0,0
410  };
411 
412  const int d10_67_1[] = {
413  // Size: 10 x 10
414  10,
415  // Pre-assigned fields
416  9,0,10,0,0,0,0,0,2,6,
417  0,8,0,1,0,0,6,3,0,0,
418  0,0,0,0,0,7,0,1,0,4,
419  10,0,0,0,0,3,0,0,6,0,
420  6,0,0,0,0,0,9,0,0,2,
421  0,0,0,4,6,2,0,0,0,0,
422  0,10,8,6,0,0,0,0,0,0,
423  0,0,0,0,5,0,4,0,1,0,
424  8,2,0,0,0,0,10,6,0,0,
425  0,0,1,0,10,0,0,0,7,0
426  };
427 
428  const int d10_67_2[] = {
429  // Size: 10 x 10
430  10,
431  // Pre-assigned fields
432  0,0,2,8,0,0,6,0,1,0,
433  6,8,0,0,0,0,0,4,0,0,
434  9,0,0,7,0,0,0,0,0,4,
435  0,0,0,6,0,0,3,0,0,10,
436  0,0,0,0,7,3,10,0,0,8,
437  0,0,5,0,0,2,0,3,0,0,
438  0,7,0,0,8,9,0,0,6,0,
439  5,0,0,0,0,0,0,6,7,0,
440  7,0,3,0,5,0,0,0,0,0,
441  0,2,0,0,0,8,0,0,9,0
442  };
443 
444  const int d10_67_3[] = {
445  // Size: 10 x 10
446  10,
447  // Pre-assigned fields
448  0,0,0,0,10,6,0,0,0,9,
449  0,0,0,1,8,0,2,0,0,0,
450  0,0,9,7,0,0,1,0,0,8,
451  4,9,0,2,0,0,0,0,7,0,
452  0,2,6,0,0,0,0,9,0,0,
453  0,0,1,9,0,0,5,0,0,0,
454  0,0,0,0,0,4,0,7,8,0,
455  10,8,0,0,0,0,0,0,6,0,
456  9,4,0,0,0,0,0,0,5,2,
457  0,0,0,0,5,8,0,3,0,0
458  };
459 
460  const int d10_67_4[] = {
461  // Size: 10 x 10
462  10,
463  // Pre-assigned fields
464  5,0,3,0,0,0,0,10,0,0,
465  0,0,5,0,0,0,2,0,3,10,
466  0,0,0,7,0,8,1,0,0,0,
467  10,5,0,0,1,0,0,0,0,0,
468  0,10,8,0,0,0,0,0,1,0,
469  0,0,1,3,0,0,0,9,0,6,
470  0,2,0,1,0,0,0,4,0,5,
471  0,0,0,0,5,9,0,0,10,0,
472  0,0,0,0,3,0,6,0,0,4,
473  8,0,0,0,0,6,0,0,5,0
474  };
475 
476  const int d10_67_5[] = {
477  // Size: 10 x 10
478  10,
479  // Pre-assigned fields
480  7,0,0,0,0,0,0,8,1,0,
481  0,0,6,1,0,0,0,0,0,2,
482  0,3,0,8,9,2,0,0,0,0,
483  0,0,0,0,7,4,0,0,0,10,
484  0,4,0,0,0,0,10,9,0,0,
485  0,0,1,0,0,0,0,0,6,5,
486  9,0,4,0,0,0,1,0,0,0,
487  0,5,0,4,0,8,0,0,10,0,
488  0,9,0,0,6,0,8,3,0,0,
489  5,0,0,0,0,3,0,0,9,0
490  };
491 
492  const int d10_67_6[] = {
493  // Size: 10 x 10
494  10,
495  // Pre-assigned fields
496  6,0,10,5,0,0,0,0,1,0,
497  0,0,0,0,2,5,0,0,7,0,
498  0,7,0,1,10,0,0,0,6,0,
499  0,0,7,0,0,0,4,0,9,0,
500  1,0,0,0,0,2,0,5,0,0,
501  0,8,5,0,0,0,0,0,0,7,
502  0,4,0,7,9,0,0,0,0,0,
503  0,0,0,0,0,7,10,6,0,0,
504  0,0,0,8,0,0,0,7,0,1,
505  7,0,0,0,0,0,1,8,0,2
506  };
507 
508  const int d10_67_7[] = {
509  // Size: 10 x 10
510  10,
511  // Pre-assigned fields
512  0,7,0,0,6,0,0,0,0,1,
513  0,1,4,0,0,0,0,3,0,6,
514  1,0,0,2,3,0,0,0,0,0,
515  2,0,0,3,0,8,0,0,0,0,
516  0,0,0,0,0,6,0,8,7,0,
517  0,0,6,0,0,0,4,0,3,0,
518  0,0,0,4,0,0,10,0,6,0,
519  0,10,8,0,1,9,0,0,0,0,
520  0,0,0,0,0,7,9,6,0,3,
521  6,0,0,0,0,0,0,7,0,4
522  };
523 
524  const int d10_67_8[] = {
525  // Size: 10 x 10
526  10,
527  // Pre-assigned fields
528  0,5,0,4,0,0,3,0,0,0,
529  0,0,0,0,7,0,2,0,0,4,
530  0,6,10,0,0,3,0,0,9,0,
531  4,0,0,0,0,7,0,0,3,10,
532  0,8,2,0,0,0,4,0,0,6,
533  8,0,0,10,0,0,0,6,0,0,
534  0,0,4,0,0,2,0,7,0,0,
535  3,0,0,0,2,0,10,0,0,0,
536  0,0,0,8,3,0,0,0,0,5,
537  0,0,0,0,0,4,0,5,2,0
538  };
539 
540  const int d10_67_9[] = {
541  // Size: 10 x 10
542  10,
543  // Pre-assigned fields
544  2,8,0,0,0,7,0,0,0,0,
545  0,5,0,8,0,2,0,0,0,6,
546  0,0,0,0,0,0,2,5,0,4,
547  4,0,0,0,2,0,3,1,0,0,
548  0,0,10,0,0,0,0,0,2,9,
549  0,0,8,9,0,0,0,0,5,0,
550  0,0,0,6,0,0,0,0,9,8,
551  0,0,4,0,9,6,0,0,1,0,
552  8,0,0,0,0,0,6,7,0,0,
553  0,2,0,0,8,0,0,9,0,0
554  };
555 
556  const int d15_120_0[] = {
557  // Size: 15 x 15
558  15,
559  // Pre-assigned fields
560  0,0,0,2,0,0,11,0,0,4,15,12,13,8,0,
561  0,7,2,0,0,0,0,13,15,0,1,0,4,9,0,
562  0,0,6,3,0,0,12,0,8,0,13,0,0,1,2,
563  0,0,1,7,0,6,3,0,0,2,0,9,0,11,0,
564  0,0,0,12,0,0,4,0,0,10,9,3,0,7,6,
565  13,0,0,0,7,2,6,0,5,0,14,8,0,0,0,
566  7,0,14,0,12,4,15,1,0,6,0,0,0,0,0,
567  15,4,8,0,9,5,0,0,0,0,0,11,0,0,10,
568  11,13,0,0,2,0,0,12,0,0,3,0,6,0,14,
569  0,3,10,11,0,0,14,0,9,0,0,2,1,0,0,
570  0,0,0,0,11,12,0,7,4,0,0,6,0,14,5,
571  0,8,11,4,0,7,0,0,0,3,0,0,2,0,15,
572  2,5,0,0,4,0,0,6,10,14,0,0,8,0,0,
573  5,6,0,0,0,0,0,8,0,13,7,0,9,0,4,
574  3,0,5,1,13,11,0,4,0,0,0,0,0,2,0
575  };
576 
577  const int d15_120_10[] = {
578  // Size: 15 x 15
579  15,
580  // Pre-assigned fields
581  0,0,8,14,1,0,7,0,4,10,0,0,0,0,9,
582  0,11,0,13,0,12,10,0,5,0,0,0,4,2,0,
583  0,7,11,0,0,0,8,0,3,2,0,0,0,6,10,
584  1,0,0,0,2,0,0,8,0,12,9,0,14,7,0,
585  2,0,0,0,0,11,1,7,0,0,14,0,12,0,15,
586  4,0,0,2,14,0,0,9,0,0,11,7,13,0,0,
587  12,0,0,0,10,0,0,0,14,9,4,6,1,0,0,
588  10,15,0,0,3,0,0,0,0,6,5,13,0,8,0,
589  0,0,2,0,0,1,0,3,0,0,15,9,0,0,11,
590  13,0,15,9,0,0,0,4,10,0,0,5,11,0,0,
591  0,9,12,0,0,14,0,0,0,0,0,8,10,5,4,
592  3,0,0,1,0,7,5,10,0,13,6,0,0,0,0,
593  0,3,7,0,9,5,15,6,1,0,0,0,0,11,0,
594  0,8,10,5,0,0,11,0,15,0,0,0,0,4,1,
595  0,4,0,11,8,15,0,0,0,7,0,2,0,0,5
596  };
597 
598  const int d15_120_11[] = {
599  // Size: 15 x 15
600  15,
601  // Pre-assigned fields
602  0,0,9,0,10,0,14,0,3,0,8,0,0,13,6,
603  7,0,0,8,0,0,0,0,1,11,9,4,14,0,0,
604  0,0,0,2,0,12,13,0,4,8,11,0,0,15,0,
605  0,2,0,11,6,15,0,14,0,0,0,9,0,0,1,
606  0,0,11,0,9,13,8,5,0,0,0,14,12,3,0,
607  13,1,12,0,0,0,6,7,0,0,0,0,0,2,3,
608  0,6,0,0,3,4,9,10,5,0,0,0,0,0,0,
609  4,0,0,0,0,10,0,9,8,2,15,0,0,0,13,
610  1,12,10,13,0,0,0,4,0,0,0,6,15,0,0,
611  8,15,0,6,0,2,0,0,0,7,0,3,1,0,0,
612  0,13,2,0,8,0,0,0,0,15,4,0,9,11,0,
613  3,0,0,10,7,14,2,0,0,0,1,0,0,5,0,
614  0,0,5,1,0,0,0,0,0,4,14,7,10,0,12,
615  2,8,0,0,0,0,11,6,14,1,0,0,0,0,15,
616  0,0,13,0,12,0,0,0,9,0,0,8,11,6,10
617  };
618 
619  const int d15_120_12[] = {
620  // Size: 15 x 15
621  15,
622  // Pre-assigned fields
623  0,0,6,8,9,0,7,0,10,0,0,0,2,4,0,
624  1,8,0,14,0,2,0,15,0,0,0,0,0,3,6,
625  0,6,9,0,0,5,3,4,0,0,11,0,0,0,7,
626  0,3,13,0,0,15,0,0,0,11,14,2,0,9,0,
627  10,7,0,5,1,11,0,0,0,0,0,0,14,0,9,
628  3,0,11,0,0,0,0,13,0,4,6,8,0,0,10,
629  0,0,12,7,5,13,14,0,0,2,0,4,0,0,0,
630  0,10,4,0,0,0,9,7,0,0,15,0,8,0,11,
631  0,0,0,4,0,0,6,1,8,0,3,10,7,0,0,
632  0,11,0,0,6,0,0,0,1,14,0,5,15,10,0,
633  2,13,0,12,0,0,0,0,11,0,4,14,0,7,0,
634  5,0,0,11,10,7,0,0,2,0,0,0,4,8,0,
635  14,0,0,0,0,6,0,0,4,8,0,12,5,0,0,
636  4,0,0,0,2,0,5,14,13,9,0,0,0,12,1,
637  0,0,1,0,13,0,4,10,0,7,8,0,0,0,15
638  };
639 
640  const int d15_120_13[] = {
641  // Size: 15 x 15
642  15,
643  // Pre-assigned fields
644  0,7,0,15,10,0,0,8,9,0,12,14,0,0,0,
645  0,0,5,2,0,12,8,0,0,7,0,0,11,0,4,
646  7,10,0,12,0,0,0,3,0,0,0,13,9,1,0,
647  0,0,9,0,14,10,3,11,0,0,0,5,0,6,0,
648  12,8,11,14,0,3,0,5,0,9,0,0,0,0,0,
649  6,0,12,5,3,0,0,15,13,0,2,0,0,0,0,
650  0,0,0,0,1,0,14,0,10,3,9,0,0,13,6,
651  0,0,4,0,0,9,1,0,12,0,0,6,2,5,0,
652  2,1,0,0,0,8,6,7,0,15,0,0,0,10,0,
653  0,4,14,0,0,0,0,0,2,8,5,0,12,0,11,
654  10,0,0,0,5,13,15,0,11,0,0,3,0,2,0,
655  15,9,2,0,0,0,0,0,8,0,11,0,14,0,1,
656  0,15,0,13,11,0,12,0,0,0,8,0,4,0,14,
657  0,0,0,9,4,0,0,6,0,2,0,10,0,15,13,
658  8,0,0,0,0,15,0,0,0,13,14,1,6,0,10
659  };
660 
661  const int d15_120_14[] = {
662  // Size: 15 x 15
663  15,
664  // Pre-assigned fields
665  1,0,9,0,0,13,2,10,0,0,0,14,0,0,0,
666  0,0,2,8,6,0,13,4,0,0,0,3,0,5,0,
667  8,11,5,0,0,0,0,0,0,13,6,0,0,1,3,
668  13,0,10,0,0,0,4,5,0,3,0,9,0,0,6,
669  5,3,0,11,13,0,12,0,7,0,0,0,0,2,0,
670  0,6,13,0,0,0,0,0,15,9,14,0,12,4,0,
671  11,14,0,0,12,6,8,0,2,4,0,0,0,3,0,
672  0,0,0,0,0,14,0,0,6,10,15,5,13,0,9,
673  0,0,0,0,4,12,0,9,8,0,0,2,15,0,7,
674  12,0,0,0,0,5,3,15,9,2,0,0,4,0,0,
675  0,0,0,4,1,0,0,0,0,12,9,7,2,0,15,
676  0,12,0,9,14,10,0,0,0,0,4,0,6,7,0,
677  15,10,0,3,11,0,0,0,0,0,0,0,9,14,12,
678  0,8,1,2,0,15,0,6,11,0,3,0,0,0,0,
679  0,0,11,13,0,0,7,1,0,0,5,4,0,0,14
680  };
681 
682  const int d15_120_1[] = {
683  // Size: 15 x 15
684  15,
685  // Pre-assigned fields
686  4,0,0,0,8,0,2,14,0,0,10,0,12,3,0,
687  7,0,0,0,13,0,14,0,3,8,0,9,0,0,4,
688  6,15,0,13,11,14,4,0,0,0,12,0,0,0,2,
689  5,0,0,10,0,12,6,8,0,0,0,0,7,13,0,
690  11,1,13,0,3,0,15,0,0,0,0,0,0,8,6,
691  0,0,14,3,0,0,0,0,1,0,0,11,10,15,0,
692  0,8,7,14,9,0,0,0,0,1,0,12,4,0,0,
693  15,9,0,0,10,13,0,5,6,2,0,0,0,0,0,
694  0,5,15,8,0,0,0,0,14,0,11,0,0,2,12,
695  0,0,12,0,0,0,7,9,0,5,0,13,2,14,0,
696  0,2,1,0,0,0,0,3,15,13,14,7,0,0,0,
697  0,0,4,1,0,10,0,12,0,14,9,0,0,0,11,
698  14,0,0,0,0,5,0,4,7,0,0,15,9,0,10,
699  0,6,0,15,0,7,0,0,0,3,2,8,0,0,13,
700  0,0,0,0,6,15,5,0,10,0,4,0,11,1,0
701  };
702 
703  const int d15_120_2[] = {
704  // Size: 15 x 15
705  15,
706  // Pre-assigned fields
707  5,0,0,4,0,9,10,0,2,3,14,0,0,0,0,
708  14,5,2,0,0,0,0,0,11,4,3,10,0,0,0,
709  11,10,0,5,0,12,7,14,0,0,0,0,13,0,0,
710  0,0,0,15,12,0,0,0,7,0,2,11,0,5,6,
711  0,13,0,0,0,0,0,7,3,0,8,14,0,6,9,
712  6,0,0,0,5,0,3,9,15,0,0,0,0,14,2,
713  3,0,0,0,0,11,4,0,13,2,0,0,1,0,14,
714  0,1,13,2,3,14,0,0,0,0,5,0,0,10,0,
715  0,0,5,0,9,6,0,15,0,10,0,13,3,0,0,
716  7,0,1,13,0,0,9,6,0,11,0,0,8,0,0,
717  2,0,11,0,7,0,0,4,6,0,0,5,0,8,0,
718  0,14,0,0,10,15,0,0,0,7,13,0,0,3,11,
719  0,8,9,0,4,2,12,0,0,0,0,0,15,7,0,
720  0,4,15,14,0,0,0,0,0,0,7,3,6,0,13,
721  0,0,0,1,0,0,13,11,0,14,0,15,9,0,12
722  };
723 
724  const int d15_120_3[] = {
725  // Size: 15 x 15
726  15,
727  // Pre-assigned fields
728  0,0,13,14,0,0,0,6,0,1,9,0,0,10,2,
729  2,0,10,5,0,0,0,13,14,12,6,0,0,0,0,
730  0,0,0,8,4,6,9,0,0,0,0,13,0,1,10,
731  0,0,0,0,7,5,1,8,0,0,12,0,10,0,14,
732  11,2,0,15,0,0,0,12,0,0,0,10,13,8,0,
733  10,7,0,0,0,2,0,0,0,0,0,3,12,11,13,
734  14,0,0,0,3,9,5,0,10,15,0,0,0,0,7,
735  9,0,5,0,0,0,0,0,15,7,1,8,0,0,12,
736  1,0,4,3,0,0,15,14,12,0,0,0,0,0,6,
737  5,13,3,0,0,0,8,0,0,0,0,12,1,4,0,
738  0,0,0,1,10,3,0,0,0,8,14,7,4,0,0,
739  0,4,0,0,0,0,0,11,2,0,5,15,14,6,0,
740  0,6,12,0,1,15,10,0,9,0,13,0,0,0,0,
741  0,3,0,6,14,11,0,0,4,9,0,0,2,0,0,
742  0,5,11,0,6,0,7,9,0,10,0,0,0,13,0
743  };
744 
745  const int d15_120_4[] = {
746  // Size: 15 x 15
747  15,
748  // Pre-assigned fields
749  15,0,0,3,2,0,4,0,0,6,0,0,0,13,9,
750  12,10,0,9,0,13,0,0,0,0,1,11,15,0,0,
751  0,0,9,10,1,0,8,0,0,12,0,0,7,0,5,
752  5,0,3,0,9,0,0,6,7,13,0,0,8,0,0,
753  0,4,0,0,3,14,0,8,0,0,12,0,0,2,6,
754  0,0,0,0,8,0,9,3,0,5,15,6,0,11,0,
755  0,9,0,0,0,4,1,0,0,0,2,0,14,0,10,
756  0,0,6,1,0,11,3,5,0,0,0,7,0,15,0,
757  0,6,1,0,10,12,0,13,14,0,7,0,0,0,0,
758  0,0,0,0,0,0,5,0,12,3,8,14,4,7,1,
759  6,0,14,8,0,15,0,0,5,7,0,0,0,1,0,
760  14,8,0,0,0,0,11,7,13,0,0,12,1,0,0,
761  8,7,0,0,0,5,0,11,0,0,14,0,2,0,15,
762  13,0,2,15,5,0,0,0,11,1,0,8,0,0,0,
763  0,11,13,5,0,0,0,0,10,0,0,3,0,8,12
764  };
765 
766  const int d15_120_5[] = {
767  // Size: 15 x 15
768  15,
769  // Pre-assigned fields
770  7,4,0,0,0,9,0,14,0,0,2,0,13,3,0,
771  0,8,4,0,0,1,10,0,0,11,0,14,0,0,13,
772  2,0,15,0,1,5,7,0,8,0,0,0,0,0,6,
773  8,11,0,0,0,0,12,0,3,0,9,0,5,7,0,
774  0,13,5,10,0,7,3,0,0,0,0,0,11,0,9,
775  0,0,0,5,6,14,9,13,15,0,0,1,0,0,0,
776  0,10,14,0,15,8,0,2,7,0,0,0,0,4,0,
777  0,1,0,0,0,0,0,8,0,4,7,5,0,10,14,
778  0,0,0,3,5,0,0,12,9,8,10,0,0,2,0,
779  15,0,0,0,3,0,0,0,2,6,5,11,12,0,0,
780  13,0,0,9,0,0,6,0,0,0,0,15,2,11,12,
781  0,0,0,6,14,13,15,9,0,0,0,0,4,0,3,
782  5,0,13,8,4,0,0,15,0,0,0,9,1,0,0,
783  12,15,7,0,0,0,1,0,11,5,3,0,0,0,0,
784  0,0,1,13,0,0,0,0,0,12,8,6,0,9,10
785  };
786 
787  const int d15_120_6[] = {
788  // Size: 15 x 15
789  15,
790  // Pre-assigned fields
791  13,0,7,11,0,12,0,0,3,5,0,6,0,0,0,
792  0,13,0,0,3,0,0,12,11,0,7,0,1,0,15,
793  0,0,3,5,0,8,7,0,0,0,2,10,0,0,4,
794  15,0,1,0,11,2,9,14,0,0,0,0,0,5,0,
795  4,6,0,0,0,0,0,5,0,0,0,12,8,15,10,
796  0,0,10,6,0,11,0,0,0,14,0,1,3,9,0,
797  0,15,0,0,12,3,0,6,8,0,9,0,7,0,0,
798  7,11,0,0,0,0,0,0,14,10,5,2,0,0,12,
799  11,0,0,0,0,0,4,0,10,9,3,8,0,0,0,
800  0,8,0,14,10,0,0,13,9,12,0,0,15,0,1,
801  0,0,0,7,15,13,3,10,0,0,12,0,6,0,0,
802  0,0,0,2,0,0,5,9,1,8,0,0,0,7,14,
803  0,7,15,4,2,1,8,0,0,0,0,0,0,13,0,
804  2,9,6,0,0,0,0,0,0,0,4,0,10,1,13,
805  12,0,2,0,5,0,6,0,0,11,0,15,0,3,0
806  };
807 
808  const int d15_120_7[] = {
809  // Size: 15 x 15
810  15,
811  // Pre-assigned fields
812  10,0,0,0,0,6,4,0,0,5,0,9,0,8,15,
813  0,0,11,14,0,12,3,0,0,0,0,0,6,2,8,
814  0,14,2,0,0,0,0,0,6,3,0,11,8,0,13,
815  9,0,0,2,0,0,8,1,0,0,4,15,11,0,0,
816  3,2,0,0,4,0,0,0,0,0,0,10,15,14,12,
817  12,0,0,9,5,7,0,0,0,0,6,4,0,1,0,
818  0,0,4,0,0,5,15,3,2,11,0,0,9,0,0,
819  0,1,0,5,10,0,14,0,0,12,0,0,0,3,9,
820  0,0,0,0,0,0,11,5,12,0,1,13,3,7,0,
821  1,6,0,0,14,0,0,11,8,0,12,0,0,10,0,
822  4,15,0,0,0,2,0,6,0,13,7,0,0,0,1,
823  0,11,5,1,8,13,0,0,3,0,0,0,12,0,0,
824  0,0,8,3,1,4,0,0,0,14,13,0,0,0,10,
825  0,0,3,15,0,0,13,4,5,0,11,8,0,0,0,
826  5,8,12,0,7,0,0,10,14,9,0,0,0,0,0
827  };
828 
829  const int d15_120_8[] = {
830  // Size: 15 x 15
831  15,
832  // Pre-assigned fields
833  0,0,5,11,0,6,0,12,0,0,0,0,3,15,9,
834  8,0,9,0,0,12,0,0,0,13,5,0,0,0,2,
835  7,0,0,8,9,11,3,10,0,0,15,0,0,0,12,
836  0,0,1,12,0,7,9,0,0,8,0,2,0,0,10,
837  4,0,8,3,0,0,7,0,0,1,0,0,0,13,11,
838  0,6,7,0,0,0,11,2,8,0,1,0,0,5,0,
839  0,13,0,9,0,0,10,5,6,0,4,7,0,0,0,
840  5,0,0,0,2,0,0,13,3,0,0,12,15,7,0,
841  0,8,6,2,10,0,0,0,4,0,0,3,1,0,0,
842  11,0,0,0,0,13,0,15,0,12,0,6,0,8,14,
843  0,12,0,0,14,4,0,0,5,6,7,0,10,0,0,
844  0,9,0,0,8,15,0,11,0,3,2,0,0,14,0,
845  0,11,0,10,5,0,8,0,9,0,0,1,4,0,0,
846  13,15,11,0,0,0,0,0,10,0,0,4,7,9,0,
847  15,0,0,0,6,0,5,0,0,11,13,0,2,0,4
848  };
849 
850  const int d15_120_9[] = {
851  // Size: 15 x 15
852  15,
853  // Pre-assigned fields
854  0,0,1,10,3,0,0,14,0,0,0,0,5,8,12,
855  9,15,0,8,0,0,0,13,7,0,0,1,0,0,6,
856  6,14,0,7,0,3,0,0,0,13,0,0,4,0,11,
857  12,10,0,0,0,0,0,0,0,11,3,4,2,0,15,
858  0,0,0,13,9,11,10,0,2,0,12,7,0,0,0,
859  0,0,10,9,0,8,0,2,11,0,0,0,3,5,0,
860  0,0,0,0,14,6,5,0,8,0,13,2,12,0,0,
861  0,0,11,0,0,13,3,0,5,8,0,15,0,14,0,
862  0,1,0,0,5,0,8,6,0,9,2,0,0,7,0,
863  4,7,0,0,0,9,1,0,0,6,0,0,0,15,5,
864  0,3,9,0,0,7,0,0,1,12,0,14,0,0,10,
865  0,0,15,5,13,0,14,0,3,0,0,12,0,0,1,
866  10,0,6,0,0,0,4,8,0,7,14,0,0,2,0,
867  15,0,0,0,2,0,0,4,0,0,1,0,7,3,13,
868  0,9,2,4,1,0,0,5,0,0,10,0,15,0,0
869  };
870 
871  const int d20_187_0[] = {
872  // Size: 20 x 20
873  20,
874  // Pre-assigned fields
875  10,0,0,2,15,14,16,4,19,0,17,0,0,0,0,0,0,9,18,6,
876  0,5,15,19,2,1,12,0,6,0,4,0,7,0,0,0,0,20,13,0,
877  0,17,9,0,0,20,14,0,7,8,6,3,0,0,11,12,0,0,0,18,
878  18,0,11,8,20,0,0,0,0,17,12,0,6,2,0,16,7,0,0,0,
879  0,0,16,6,0,17,3,0,0,0,0,0,19,1,9,18,10,7,0,8,
880  14,15,5,0,9,0,0,0,0,16,0,11,1,4,13,0,0,0,3,0,
881  6,0,7,17,5,0,18,3,0,14,0,0,10,0,19,2,0,0,0,11,
882  0,19,0,0,7,6,8,12,18,0,20,0,0,0,17,0,0,0,5,16,
883  0,20,0,0,11,0,0,18,16,0,13,0,4,10,8,9,17,0,0,0,
884  16,0,4,0,17,0,11,0,0,20,18,19,5,15,0,0,0,3,0,1,
885  15,9,0,0,0,13,0,0,0,3,0,4,14,6,5,0,12,0,10,7,
886  11,8,0,3,19,4,0,14,0,15,0,0,9,7,6,0,0,12,0,0,
887  0,18,17,20,0,7,0,0,0,5,0,14,0,13,2,10,3,4,0,0,
888  5,3,18,0,1,0,0,19,8,0,11,0,0,0,0,14,2,0,7,0,
889  20,1,0,0,0,11,6,0,13,19,0,12,0,0,7,0,0,18,16,10,
890  0,0,10,11,0,12,4,8,14,9,15,17,0,0,0,6,19,0,0,0,
891  0,0,14,18,0,0,15,16,0,0,0,10,12,0,0,19,9,11,17,2,
892  0,12,0,9,0,0,10,0,4,0,1,6,0,0,0,17,14,13,19,0,
893  0,0,0,14,12,0,0,15,10,0,0,7,0,9,1,0,0,19,8,20,
894  4,0,0,0,0,2,0,1,15,12,3,5,13,19,0,0,8,0,0,17
895  };
896 
897  const int d20_187_10[] = {
898  // Size: 20 x 20
899  20,
900  // Pre-assigned fields
901  4,0,1,0,9,15,0,0,5,0,14,12,18,17,0,0,13,0,19,0,
902  19,0,0,20,0,11,18,15,0,0,7,8,0,9,0,6,0,10,3,0,
903  0,0,10,18,13,0,0,4,14,0,0,0,17,0,3,8,16,0,6,0,
904  15,1,0,8,0,0,13,0,12,11,6,0,4,0,0,0,0,3,2,20,
905  10,0,11,9,14,5,2,0,0,13,15,0,6,0,0,0,0,20,1,0,
906  13,10,0,0,17,0,0,0,9,1,0,0,8,0,20,16,5,0,4,0,
907  0,6,0,19,18,0,0,3,10,0,12,0,0,7,16,0,14,0,17,0,
908  20,0,0,11,3,19,0,12,8,0,0,16,0,15,0,13,0,0,10,1,
909  9,20,0,5,0,0,10,0,0,17,0,0,16,0,8,0,4,6,0,15,
910  0,17,3,15,0,2,0,6,7,8,19,0,0,0,5,0,0,18,9,0,
911  2,13,0,0,0,4,3,17,0,20,9,0,1,10,0,0,15,0,0,11,
912  0,0,0,0,0,13,8,11,4,7,0,1,0,20,6,12,18,0,0,16,
913  0,14,4,0,0,0,0,9,20,0,0,7,12,0,13,18,0,0,5,19,
914  0,0,18,3,0,20,16,7,0,19,0,2,0,0,10,14,17,8,0,0,
915  18,0,13,0,10,7,0,0,3,0,0,15,9,11,0,2,0,12,0,5,
916  11,19,0,12,4,14,0,0,18,0,17,0,0,0,0,20,2,5,0,0,
917  0,18,12,0,11,0,1,16,0,5,4,17,0,14,19,0,0,7,0,0,
918  3,0,19,10,0,17,0,0,0,16,5,11,2,12,0,0,6,0,0,7,
919  0,0,14,0,7,0,5,0,0,10,0,9,0,8,15,11,0,17,0,4,
920  0,8,16,0,1,0,17,14,0,0,13,20,3,2,0,4,0,0,0,10
921  };
922 
923  const int d20_187_11[] = {
924  // Size: 20 x 20
925  20,
926  // Pre-assigned fields
927  8,0,0,0,9,20,0,14,5,13,0,0,15,0,0,19,11,0,18,17,
928  14,0,0,2,1,0,12,0,0,19,10,0,8,0,0,17,0,9,7,16,
929  0,0,12,8,0,0,2,17,0,0,18,0,9,5,19,0,0,6,0,3,
930  9,11,0,19,4,0,0,0,14,5,0,0,0,0,13,1,12,0,0,7,
931  15,0,0,14,12,18,0,0,0,0,0,13,19,4,0,0,8,0,11,10,
932  0,14,3,15,0,11,4,0,0,0,0,12,20,8,1,0,10,0,0,13,
933  17,0,0,4,2,3,7,13,0,0,0,6,0,10,0,0,0,1,0,19,
934  16,0,15,0,0,0,0,20,2,4,8,19,18,0,5,0,0,0,13,6,
935  3,8,0,17,19,4,14,0,10,0,7,0,13,0,0,0,16,0,12,0,
936  4,7,0,0,0,10,0,6,12,0,0,2,0,9,14,8,15,0,16,0,
937  10,0,17,0,0,12,0,0,0,0,19,9,4,0,6,0,1,2,14,11,
938  0,0,13,0,0,5,10,11,9,20,0,7,0,19,2,15,0,0,0,12,
939  0,3,6,0,0,2,0,0,16,0,13,4,0,0,0,18,7,5,1,0,
940  0,18,16,0,3,0,0,8,11,0,4,0,0,13,0,0,5,10,17,0,
941  0,9,0,7,20,1,0,2,15,12,16,0,0,14,11,0,0,0,0,4,
942  19,20,4,18,11,0,16,10,0,0,0,0,0,6,0,3,0,17,0,0,
943  0,19,5,20,0,0,13,12,0,6,0,16,0,11,18,0,2,8,0,0,
944  0,0,9,12,0,8,0,15,0,18,2,0,16,0,17,14,0,19,3,0,
945  5,0,14,0,7,0,20,0,8,16,0,10,11,0,0,6,3,18,0,0,
946  0,4,0,0,18,0,19,0,7,3,12,11,14,0,20,2,0,0,15,0
947  };
948 
949  const int d20_187_12[] = {
950  // Size: 20 x 20
951  20,
952  // Pre-assigned fields
953  0,0,16,0,0,18,13,20,0,9,14,0,0,15,4,0,0,1,0,10,
954  0,0,0,5,14,7,0,9,4,8,1,16,13,0,0,0,0,0,19,17,
955  0,0,11,4,17,1,0,19,0,20,7,14,10,2,0,0,0,0,0,6,
956  0,14,12,16,0,19,0,0,0,0,0,0,3,8,1,11,0,7,4,15,
957  18,0,0,11,13,3,5,0,17,0,16,0,14,0,12,8,20,0,0,0,
958  0,17,0,10,12,6,3,0,0,0,0,2,18,14,0,16,0,0,9,4,
959  11,13,0,0,0,0,0,7,15,0,0,1,0,0,5,14,6,0,18,20,
960  4,11,7,15,0,0,12,0,0,0,0,10,0,1,3,6,0,2,8,0,
961  12,0,4,0,0,0,16,3,14,0,0,0,20,19,0,9,0,10,15,18,
962  0,0,20,0,0,4,0,14,18,1,13,11,2,0,0,0,17,19,0,0,
963  10,19,0,0,2,0,1,0,0,16,3,0,0,18,7,0,0,17,12,0,
964  0,8,0,1,0,5,7,0,9,15,0,0,11,20,17,0,19,0,0,12,
965  1,0,3,0,6,0,0,0,0,0,20,17,12,13,8,0,5,4,0,14,
966  16,0,18,6,0,17,11,0,0,3,5,0,0,4,0,10,2,0,7,0,
967  5,6,0,0,16,0,0,12,0,0,0,9,0,0,18,3,7,20,2,1,
968  0,0,9,0,0,16,17,0,3,13,8,0,0,7,0,4,0,18,10,0,
969  8,0,0,13,0,0,9,2,10,17,0,19,7,0,11,0,15,0,0,0,
970  6,12,0,17,18,14,0,11,5,0,0,4,0,0,0,19,9,0,0,3,
971  0,18,0,9,4,0,15,6,0,12,0,13,0,0,0,0,11,14,3,0,
972  0,9,17,0,5,0,0,10,13,0,11,0,1,0,2,7,18,15,0,0
973  };
974 
975  const int d20_187_13[] = {
976  // Size: 20 x 20
977  20,
978  // Pre-assigned fields
979  1,0,8,14,0,0,0,10,0,0,19,7,0,18,0,20,16,0,5,12,
980  0,19,10,0,13,7,0,0,0,0,17,12,6,0,9,0,2,18,0,5,
981  4,2,0,9,20,0,0,0,13,5,16,0,0,19,0,0,8,11,0,7,
982  9,0,7,19,0,8,0,0,0,0,0,0,10,17,0,0,13,20,6,4,
983  11,20,0,6,0,0,18,1,16,2,13,0,9,15,0,0,0,0,0,3,
984  0,11,0,0,3,9,0,14,0,0,6,0,0,1,0,19,12,17,18,0,
985  2,0,0,7,0,13,0,15,0,0,18,16,3,0,14,5,0,0,9,6,
986  0,0,9,0,0,0,3,6,0,16,2,0,8,0,4,10,0,0,15,18,
987  6,0,1,12,0,16,0,0,15,0,10,8,14,0,5,0,19,0,4,0,
988  0,13,0,0,2,6,1,0,11,0,7,4,16,0,19,0,0,15,0,0,
989  17,0,12,0,0,19,13,0,18,14,0,0,0,5,0,3,1,2,0,10,
990  12,4,0,0,0,15,5,3,8,0,0,1,0,10,0,18,17,0,7,0,
991  0,0,0,8,0,14,4,0,0,11,0,18,0,0,20,16,15,12,3,0,
992  20,6,18,13,4,0,10,12,0,8,0,0,17,0,0,0,0,3,0,19,
993  0,1,0,0,11,20,17,0,6,3,0,9,19,8,18,0,0,0,12,0,
994  7,14,15,16,8,0,0,18,0,20,0,0,0,11,10,13,0,0,0,0,
995  0,0,19,0,0,0,16,11,7,12,20,3,13,0,0,14,5,10,0,0,
996  0,18,14,2,5,0,9,0,19,0,0,11,0,0,3,0,10,7,0,8,
997  0,0,0,0,19,0,15,20,9,17,0,0,0,2,16,11,0,13,14,1,
998  19,16,3,20,15,0,0,0,17,0,0,14,2,4,0,1,0,0,0,0
999  };
1000 
1001  const int d20_187_14[] = {
1002  // Size: 20 x 20
1003  20,
1004  // Pre-assigned fields
1005  13,11,3,0,0,14,16,7,20,0,0,4,0,0,0,0,0,5,12,0,
1006  12,0,0,18,2,0,0,0,16,19,0,0,10,5,0,4,14,11,8,0,
1007  15,2,0,0,7,0,0,0,0,8,0,14,0,11,6,17,16,0,20,0,
1008  0,0,0,0,0,0,7,15,10,17,16,0,8,0,0,11,6,2,13,0,
1009  20,7,0,1,16,0,15,19,0,0,0,17,0,10,0,5,0,12,0,11,
1010  14,6,4,0,0,17,0,0,0,2,9,0,0,0,18,0,10,0,1,5,
1011  19,10,0,0,0,0,2,14,0,5,0,18,0,17,0,6,1,15,0,20,
1012  0,14,7,20,15,0,8,0,11,13,0,0,5,12,0,0,0,19,0,0,
1013  0,0,13,0,20,15,3,0,0,0,18,0,0,19,4,10,17,14,0,12,
1014  0,18,8,0,4,13,0,0,6,0,3,12,17,16,1,0,19,0,0,0,
1015  0,15,0,19,17,4,0,9,0,0,1,0,6,0,0,2,0,0,18,3,
1016  0,0,9,6,19,5,0,2,0,1,0,13,12,14,10,0,0,0,3,0,
1017  3,0,0,0,0,20,1,18,9,0,19,0,0,6,0,15,11,0,16,17,
1018  10,3,0,0,8,0,0,4,1,6,15,0,11,0,0,13,0,0,5,2,
1019  0,5,12,14,0,2,0,0,8,0,10,1,13,0,20,0,0,17,19,0,
1020  0,0,20,10,14,6,19,0,0,18,17,0,3,0,16,7,0,0,0,4,
1021  0,0,14,4,0,0,0,8,18,10,0,20,0,0,11,0,7,16,2,19,
1022  2,0,0,0,0,18,17,11,0,7,14,9,15,0,5,19,0,0,0,10,
1023  5,13,11,17,0,7,14,0,15,0,0,3,0,1,19,0,0,10,0,0,
1024  4,0,0,9,0,0,6,13,5,0,2,0,20,0,3,0,18,1,0,0
1025  };
1026 
1027  const int d20_187_1[] = {
1028  // Size: 20 x 20
1029  20,
1030  // Pre-assigned fields
1031  0,6,18,0,16,4,17,0,0,9,3,0,0,0,0,2,0,0,19,13,
1032  0,7,0,13,0,20,0,0,8,16,0,1,18,0,17,14,0,0,4,15,
1033  6,20,3,0,0,14,0,18,17,4,7,16,0,0,0,13,0,0,0,0,
1034  0,0,8,15,0,16,12,19,11,0,0,2,0,0,0,18,0,17,0,1,
1035  1,11,20,17,0,0,3,0,0,6,0,4,0,8,9,0,0,0,16,5,
1036  3,17,0,0,18,7,10,0,19,0,0,0,16,0,0,8,15,1,0,4,
1037  8,0,15,0,0,5,0,12,0,14,11,0,10,4,0,0,18,2,9,0,
1038  5,0,16,0,0,15,0,17,13,1,0,0,7,3,4,0,0,19,0,0,
1039  15,0,0,7,0,1,0,0,6,13,16,20,0,19,0,0,11,8,0,0,
1040  0,18,0,0,3,0,0,0,16,0,14,0,19,0,8,4,10,9,5,0,
1041  0,8,2,19,4,0,9,15,5,12,10,0,14,0,11,0,0,0,0,0,
1042  9,0,0,14,0,8,2,4,0,0,18,0,11,20,19,0,7,0,17,0,
1043  0,0,19,0,8,9,0,0,20,0,0,17,15,1,6,0,4,5,0,14,
1044  0,0,0,12,6,11,0,2,0,5,19,15,0,9,1,0,0,0,8,20,
1045  0,1,9,4,12,0,0,6,0,0,0,0,20,0,0,11,19,3,7,17,
1046  0,4,11,18,13,0,15,0,0,20,5,14,0,0,0,16,0,7,2,0,
1047  17,16,0,0,0,0,0,5,0,0,2,12,0,18,10,9,0,20,6,3,
1048  11,0,0,6,15,0,19,14,0,0,0,3,12,7,2,0,5,16,0,0,
1049  16,10,5,8,1,0,4,0,18,0,0,0,9,0,0,12,3,0,0,7,
1050  0,0,0,0,17,0,6,7,10,0,4,18,0,5,20,0,16,0,15,0
1051  };
1052 
1053  const int d20_187_2[] = {
1054  // Size: 20 x 20
1055  20,
1056  // Pre-assigned fields
1057  0,10,6,19,0,0,7,0,18,5,0,0,14,2,0,11,0,0,0,20,
1058  12,0,1,4,0,7,0,0,2,0,16,0,0,0,11,8,15,0,6,3,
1059  0,7,19,0,0,0,17,0,0,15,1,0,20,5,0,0,12,16,4,10,
1060  18,0,10,11,16,0,9,7,0,0,14,2,0,0,15,0,0,0,8,4,
1061  0,1,5,14,0,17,0,0,9,0,0,0,4,19,7,12,0,3,0,0,
1062  0,0,0,0,11,0,20,9,10,6,2,5,16,7,0,0,0,0,12,19,
1063  0,5,0,18,0,11,0,4,0,20,0,8,3,13,0,9,2,0,0,17,
1064  13,0,9,3,8,15,0,0,6,0,0,18,2,0,4,20,14,0,0,0,
1065  0,18,0,10,15,5,3,11,0,0,19,0,0,17,2,0,0,0,0,12,
1066  0,15,17,0,2,19,0,0,0,9,0,3,0,11,8,18,0,0,10,0,
1067  3,12,13,20,0,8,0,0,0,0,0,17,0,0,0,19,1,11,5,9,
1068  17,13,0,5,0,18,0,0,11,0,7,4,0,15,6,0,3,10,0,0,
1069  0,0,0,0,18,6,10,16,20,2,11,13,0,0,5,14,0,12,0,0,
1070  0,0,0,0,17,0,19,15,0,1,0,0,0,0,3,16,6,14,13,2,
1071  6,0,0,17,19,0,16,0,0,13,20,0,10,12,0,0,4,15,1,0,
1072  7,0,20,0,0,13,0,18,16,0,5,0,12,0,0,6,9,2,3,0,
1073  19,0,8,13,20,0,1,0,0,10,15,12,0,0,0,0,5,0,14,7,
1074  16,11,18,0,12,0,5,8,13,19,0,14,7,0,0,0,0,6,0,0,
1075  20,14,0,0,0,0,13,2,4,11,18,0,6,0,17,0,0,19,0,0,
1076  4,2,0,0,1,14,0,3,0,0,0,0,0,9,10,17,7,0,0,13
1077  };
1078 
1079  const int d20_187_3[] = {
1080  // Size: 20 x 20
1081  20,
1082  // Pre-assigned fields
1083  6,0,0,0,0,0,3,13,5,15,9,18,0,16,2,0,0,1,0,0,
1084  0,13,0,10,8,16,0,0,0,9,0,4,15,0,11,0,20,14,0,5,
1085  8,0,2,16,0,0,0,11,1,0,15,19,0,0,0,0,6,0,17,18,
1086  0,3,0,0,12,2,0,10,0,0,19,0,9,4,8,15,11,16,0,0,
1087  7,0,0,0,11,0,1,5,3,8,0,14,2,0,0,4,13,0,0,20,
1088  16,0,0,0,0,4,0,12,8,14,0,2,3,11,7,10,0,0,0,9,
1089  11,12,6,17,0,0,0,0,0,4,10,0,0,5,0,2,0,19,0,15,
1090  2,17,0,5,3,11,0,0,0,16,0,0,18,0,12,8,1,0,0,0,
1091  19,9,1,0,0,15,14,0,12,17,6,0,0,0,18,0,4,0,3,0,
1092  10,20,0,9,0,0,5,16,0,0,8,13,0,7,0,1,0,4,19,0,
1093  0,0,0,15,19,0,0,0,11,13,7,6,0,12,0,0,10,17,2,4,
1094  0,15,8,12,9,0,0,18,0,7,13,0,1,0,16,17,0,3,0,0,
1095  0,10,13,0,0,0,0,6,0,2,0,7,14,18,20,16,0,9,8,0,
1096  1,0,15,4,0,0,12,8,20,0,0,0,0,10,0,3,9,0,13,16,
1097  3,0,9,0,20,13,8,0,0,0,0,0,11,19,0,0,14,12,18,2,
1098  0,0,0,18,17,9,7,0,15,0,12,8,0,0,4,6,0,0,20,0,
1099  0,0,20,0,5,18,15,4,16,6,0,0,0,3,14,9,0,0,1,0,
1100  0,0,18,0,10,0,4,9,2,0,0,12,13,20,15,0,0,0,0,19,
1101  13,16,0,19,7,1,0,0,0,0,0,11,6,0,0,0,17,8,15,14,
1102  0,8,3,0,0,6,20,0,19,0,18,0,16,0,0,0,15,11,12,0
1103  };
1104 
1105  const int d20_187_4[] = {
1106  // Size: 20 x 20
1107  20,
1108  // Pre-assigned fields
1109  0,0,0,0,20,14,12,0,11,2,0,0,9,13,1,0,0,8,19,6,
1110  15,20,0,0,0,3,0,0,0,9,17,0,4,12,5,14,0,16,13,0,
1111  0,0,17,10,0,0,2,0,1,0,0,14,8,6,0,19,7,4,0,9,
1112  13,7,3,0,9,0,4,18,0,5,0,0,0,19,15,0,0,2,0,0,
1113  16,0,0,20,0,0,19,0,5,12,2,0,6,18,0,0,0,0,9,11,
1114  0,10,14,11,3,0,0,8,9,19,12,0,0,4,0,15,0,0,5,0,
1115  0,11,0,14,4,18,0,13,17,3,0,0,0,0,7,6,0,19,0,0,
1116  14,0,0,0,11,17,0,1,0,0,15,5,20,0,0,4,2,0,8,0,
1117  6,16,0,15,0,7,0,11,0,0,1,10,12,3,0,0,4,0,0,13,
1118  0,0,12,1,14,0,13,2,0,0,6,9,17,0,0,0,5,15,20,0,
1119  0,0,13,0,10,0,15,0,8,16,20,0,19,0,9,7,18,0,0,12,
1120  0,3,19,9,0,16,14,0,0,10,0,8,5,0,0,0,12,7,0,18,
1121  1,19,6,0,0,0,9,7,0,0,0,17,14,0,8,0,0,11,16,5,
1122  12,0,0,4,5,2,17,0,3,0,0,7,0,0,0,13,19,0,15,0,
1123  17,0,0,0,18,13,0,19,12,6,0,0,0,0,2,5,16,3,0,15,
1124  19,0,0,17,0,0,0,10,0,18,8,11,0,1,4,0,15,0,3,0,
1125  4,2,9,5,12,0,0,14,15,0,0,0,0,8,10,18,0,0,0,20,
1126  0,15,4,0,0,0,16,17,6,0,7,13,0,10,14,20,9,0,0,0,
1127  0,0,8,0,0,12,0,0,0,4,5,1,16,2,6,0,0,17,11,3,
1128  0,14,20,16,8,11,1,0,0,0,13,3,0,0,0,0,10,0,2,0
1129  };
1130 
1131  const int d20_187_5[] = {
1132  // Size: 20 x 20
1133  20,
1134  // Pre-assigned fields
1135  18,6,3,13,0,7,20,8,0,0,11,0,0,0,0,14,0,15,0,0,
1136  0,0,11,0,5,3,0,17,1,0,0,12,2,7,0,6,18,0,0,20,
1137  0,0,4,0,19,12,9,15,0,10,0,0,14,0,11,8,6,13,0,0,
1138  20,0,2,0,0,0,0,0,10,4,17,8,0,0,14,3,5,12,0,16,
1139  0,8,0,2,0,11,0,19,0,12,3,14,15,16,0,0,0,0,20,17,
1140  2,4,0,0,11,0,6,0,5,0,0,0,0,1,10,17,0,19,3,0,
1141  6,12,10,3,0,16,0,0,0,19,15,2,0,13,5,0,0,0,14,0,
1142  0,0,1,0,0,8,0,10,0,13,6,7,19,17,0,0,3,0,0,14,
1143  0,0,0,5,20,9,0,7,0,16,0,0,13,0,18,0,10,0,15,8,
1144  7,0,0,11,6,19,18,5,0,0,20,17,0,0,0,10,9,0,1,0,
1145  0,1,0,0,4,0,0,0,8,11,7,0,0,5,17,16,0,20,12,9,
1146  3,0,9,8,0,6,0,0,13,0,14,0,0,18,20,15,1,0,0,0,
1147  13,10,0,0,12,0,2,0,14,17,0,11,7,20,8,0,0,0,9,0,
1148  0,3,15,0,13,0,4,6,0,14,8,19,0,0,0,20,0,10,16,0,
1149  8,7,17,0,0,0,0,0,9,0,0,18,0,15,3,5,19,14,10,0,
1150  4,17,0,10,7,0,0,1,0,3,9,16,18,0,0,0,11,0,0,12,
1151  0,0,13,0,0,0,14,20,15,6,0,0,3,8,16,0,0,5,0,4,
1152  16,0,14,17,3,0,12,0,18,0,0,0,0,19,6,0,7,2,0,10,
1153  0,16,0,14,17,0,1,0,0,0,10,0,8,0,0,0,20,3,4,7,
1154  1,2,0,12,0,10,19,4,17,0,0,3,11,0,0,7,0,0,5,0
1155  };
1156 
1157  const int d20_187_6[] = {
1158  // Size: 20 x 20
1159  20,
1160  // Pre-assigned fields
1161  1,0,0,15,3,0,0,7,6,0,0,17,13,0,4,0,20,0,19,0,
1162  0,7,0,0,20,2,12,0,0,0,0,9,6,18,13,0,11,0,8,14,
1163  18,0,16,0,11,0,0,0,1,0,10,20,15,13,14,0,0,0,4,3,
1164  0,0,6,17,4,5,0,8,16,11,0,0,0,3,0,1,9,2,0,0,
1165  0,5,11,4,12,15,0,0,2,3,17,0,20,0,0,7,0,0,0,0,
1166  15,9,12,16,0,0,0,19,0,0,0,0,18,14,3,2,0,1,0,7,
1167  0,4,0,0,7,18,0,1,0,6,0,2,3,0,0,16,0,17,10,15,
1168  0,15,10,0,0,4,18,0,0,1,11,0,0,0,8,5,12,0,17,0,
1169  13,2,19,0,0,12,9,0,0,16,20,0,0,15,6,0,0,11,0,8,
1170  0,12,3,14,0,17,2,6,0,13,0,0,0,19,0,0,0,4,16,11,
1171  9,8,20,0,0,0,4,0,7,0,18,1,0,5,0,12,10,3,0,0,
1172  0,14,0,6,13,0,17,0,11,0,0,19,5,8,0,0,3,0,0,4,
1173  20,0,18,0,0,0,3,0,8,17,1,16,4,0,0,11,0,0,0,19,
1174  7,0,0,20,0,14,0,18,0,9,0,10,0,11,16,0,13,15,0,2,
1175  0,0,0,19,5,20,0,9,0,14,2,18,0,4,7,0,0,0,12,10,
1176  12,0,0,10,0,0,0,2,14,0,4,8,19,0,0,13,16,5,0,0,
1177  0,16,0,3,19,0,0,5,18,0,15,0,0,6,0,10,0,14,7,20,
1178  2,0,14,0,0,0,11,10,0,12,6,0,7,0,0,19,15,8,18,0,
1179  11,19,0,0,0,16,20,0,0,7,0,0,14,0,12,17,8,9,13,0,
1180  14,0,0,0,6,10,1,17,15,0,0,12,0,0,20,0,5,0,2,0
1181  };
1182 
1183  const int d20_187_7[] = {
1184  // Size: 20 x 20
1185  20,
1186  // Pre-assigned fields
1187  3,10,14,5,0,0,0,7,0,0,9,0,1,6,13,8,0,11,0,0,
1188  18,0,9,20,0,14,0,10,0,0,0,7,4,0,0,0,12,0,2,15,
1189  0,1,0,0,12,19,0,0,13,4,0,0,0,3,10,0,14,7,15,11,
1190  0,14,0,0,9,0,5,0,0,15,8,0,0,12,4,18,13,1,10,0,
1191  11,17,18,0,1,0,0,2,19,0,0,0,13,5,0,9,6,0,0,0,
1192  0,11,0,1,0,0,8,4,15,0,5,0,2,17,0,0,0,13,14,6,
1193  1,0,0,4,6,0,17,0,10,7,19,0,9,8,0,16,2,0,0,0,
1194  14,0,12,19,0,10,0,0,8,20,0,0,17,0,0,4,15,6,18,0,
1195  4,0,11,6,0,16,2,5,0,0,0,15,0,0,0,0,8,17,13,20,
1196  16,20,0,13,19,3,1,0,12,8,18,17,0,0,0,7,0,0,0,0,
1197  0,0,0,17,0,0,3,0,4,9,11,0,0,14,0,15,0,16,5,18,
1198  10,2,5,0,0,0,15,20,16,17,0,19,3,13,0,1,0,0,0,0,
1199  0,0,16,0,0,13,0,11,0,3,14,10,7,15,0,0,5,19,0,12,
1200  0,0,0,18,5,17,12,0,0,13,2,0,0,16,6,3,20,0,0,7,
1201  15,0,6,3,0,0,13,1,0,10,0,20,16,0,11,0,0,8,7,0,
1202  0,9,17,0,13,0,0,0,0,0,7,0,18,19,5,6,11,0,0,4,
1203  0,16,3,0,11,8,7,6,0,0,0,4,0,0,17,0,0,9,20,0,
1204  0,0,0,16,3,20,9,17,0,0,0,1,0,0,12,19,0,0,8,5,
1205  19,8,0,0,14,4,0,12,5,1,0,3,0,0,7,0,0,15,0,9,
1206  13,18,2,0,7,0,0,0,1,0,10,5,15,0,14,0,3,0,0,0
1207  };
1208 
1209  const int d20_187_8[] = {
1210  // Size: 20 x 20
1211  20,
1212  // Pre-assigned fields
1213  7,16,8,19,0,0,0,5,4,0,0,0,11,3,12,9,0,0,0,18,
1214  0,0,7,18,0,0,0,20,0,3,0,8,10,9,0,0,13,14,1,17,
1215  18,0,13,0,9,0,8,4,11,0,0,0,3,12,0,5,16,6,0,0,
1216  14,3,2,9,0,0,0,10,0,0,0,4,0,0,1,0,11,18,17,6,
1217  0,0,12,8,0,0,9,3,1,0,0,15,13,19,14,6,0,0,0,0,
1218  4,0,18,0,13,0,6,14,7,0,0,12,16,0,20,3,0,0,8,0,
1219  0,13,0,15,0,3,10,0,8,0,5,0,0,0,9,0,4,20,7,1,
1220  10,19,3,0,0,9,0,0,14,2,7,18,0,4,17,0,0,0,0,20,
1221  0,0,10,0,12,18,0,7,16,17,0,0,0,0,0,13,6,2,19,11,
1222  6,18,0,11,0,0,0,12,0,0,0,13,17,15,2,7,0,0,20,5,
1223  0,4,5,2,15,12,14,0,0,0,3,0,0,18,0,1,19,7,0,0,
1224  0,2,0,20,0,4,0,0,17,7,13,0,5,16,11,0,15,0,9,0,
1225  9,6,0,12,5,13,15,0,0,20,4,0,0,0,0,0,7,0,14,0,
1226  11,0,6,0,4,8,17,0,0,9,16,14,1,2,0,19,0,0,0,0,
1227  20,0,0,14,0,17,0,8,10,0,12,1,0,0,0,0,9,11,3,19,
1228  0,8,0,10,14,0,2,9,0,12,0,3,0,0,16,0,0,0,5,4,
1229  0,0,0,0,17,6,7,18,0,10,15,0,19,5,0,0,0,1,13,0,
1230  5,0,17,0,0,0,13,0,0,14,1,20,8,0,0,2,12,0,0,3,
1231  17,0,0,0,20,0,5,0,18,1,0,7,15,0,0,8,14,13,0,0,
1232  0,9,0,0,1,16,0,0,2,0,20,0,0,7,15,14,0,4,0,8
1233  };
1234 
1235  const int d20_187_9[] = {
1236  // Size: 20 x 20
1237  20,
1238  // Pre-assigned fields
1239  0,6,0,0,1,0,12,0,5,7,19,0,0,15,9,0,17,0,14,0,
1240  4,0,0,2,7,0,19,0,0,0,18,6,8,5,0,12,0,0,20,0,
1241  5,0,16,18,0,8,0,13,0,12,14,0,0,0,10,0,0,11,9,0,
1242  0,9,0,0,17,16,6,0,0,0,0,11,5,3,8,0,0,10,12,4,
1243  0,10,2,11,0,18,0,3,8,0,0,1,0,0,15,0,9,5,0,16,
1244  0,5,0,10,9,0,0,17,7,0,3,18,11,16,0,2,0,0,0,15,
1245  13,3,20,0,11,0,0,14,0,5,0,2,0,8,0,0,15,4,0,0,
1246  1,0,0,0,0,20,11,12,4,0,2,0,9,19,14,0,18,0,17,0,
1247  0,14,19,0,13,6,0,0,0,15,0,0,0,7,20,4,3,1,0,8,
1248  0,2,0,12,0,7,5,0,0,3,0,15,14,0,16,0,19,20,1,0,
1249  6,4,0,0,12,0,10,0,0,0,11,17,18,0,0,20,5,0,0,3,
1250  0,0,12,15,0,0,14,7,11,17,0,0,4,0,0,0,20,8,6,1,
1251  2,0,4,13,0,0,0,5,1,10,17,0,16,18,0,19,0,0,0,9,
1252  10,0,14,0,0,2,18,20,0,6,9,0,0,0,17,8,0,3,4,0,
1253  0,0,17,9,0,11,8,15,3,13,4,0,0,0,18,10,2,0,0,0,
1254  0,19,6,4,0,5,15,0,9,8,0,0,20,0,0,7,0,0,11,0,
1255  0,0,15,1,20,0,0,16,17,0,0,7,10,13,0,0,6,0,18,2,
1256  9,7,0,0,8,0,13,0,6,0,1,4,0,0,11,3,0,12,0,0,
1257  15,0,1,16,4,14,0,19,0,0,6,12,0,9,0,13,0,0,0,5,
1258  11,15,0,0,0,1,0,0,16,0,0,9,0,0,12,14,10,2,5,20
1259  };
1260 
1261  const int d25_264_0[] = {
1262  // Size: 25 x 25
1263  25,
1264  // Pre-assigned fields
1265  6,13,17,0,0,15,10,0,0,4,7,3,0,2,0,0,22,25,14,0,0,1,0,18,19,
1266  22,0,7,4,0,0,0,0,14,17,0,25,0,0,0,0,15,20,3,1,11,0,12,5,13,
1267  0,4,12,0,18,24,17,0,2,11,20,19,0,0,15,0,0,0,0,8,22,25,0,10,16,
1268  20,0,15,19,0,0,5,1,10,2,0,11,0,24,25,14,16,21,0,0,13,0,0,0,18,
1269  2,9,14,0,22,0,0,20,23,24,0,0,0,25,16,4,0,12,17,10,6,0,0,11,0,
1270  3,2,11,20,7,0,6,5,12,0,23,0,18,0,0,0,0,0,0,17,0,24,16,0,4,
1271  0,0,0,6,12,0,7,13,0,0,0,16,0,14,22,5,25,0,8,2,19,21,0,9,10,
1272  14,8,0,5,0,7,0,22,13,0,3,0,23,0,19,0,21,0,0,16,0,11,1,0,17,
1273  0,20,9,12,8,11,1,7,4,0,0,13,0,0,10,0,0,0,6,0,5,0,21,2,0,
1274  0,0,0,0,0,0,0,0,18,1,6,0,25,0,8,20,4,14,21,3,15,9,22,19,2,
1275  0,7,0,0,1,0,21,0,0,0,0,5,0,0,11,16,2,10,0,13,14,17,15,8,22,
1276  1,11,0,0,15,17,23,0,0,3,8,22,0,21,7,24,13,0,10,6,9,0,0,0,0,
1277  11,0,4,0,5,21,2,24,0,18,19,6,0,13,0,1,0,9,0,14,25,0,0,0,0,
1278  5,1,22,11,23,16,0,0,0,0,0,15,0,3,0,9,20,0,25,0,0,2,0,14,8,
1279  12,0,24,0,3,6,0,10,1,16,25,0,13,0,0,21,8,23,0,5,18,22,0,0,0,
1280  8,0,21,0,0,5,14,0,0,15,17,0,20,11,0,0,6,0,18,22,24,4,2,1,0,
1281  0,22,0,0,14,20,16,0,7,12,13,4,21,18,23,11,0,0,0,0,0,0,9,24,0,
1282  0,0,0,15,19,0,0,16,22,0,0,14,11,20,0,8,12,4,0,0,17,3,25,0,21,
1283  16,0,0,8,20,0,0,23,0,13,2,0,12,19,14,22,0,17,0,0,3,0,0,7,9,
1284  7,6,0,14,0,4,15,3,9,21,0,0,10,17,20,0,0,0,12,18,0,0,19,0,0,
1285  10,24,0,25,0,18,0,0,15,19,0,0,2,0,5,13,0,8,23,0,0,12,6,0,3,
1286  0,23,8,0,0,1,0,21,6,0,9,24,16,5,13,0,14,11,0,0,0,19,0,4,0,
1287  0,25,19,23,16,0,4,12,0,0,21,0,7,8,3,0,18,13,2,0,10,0,5,0,0,
1288  4,0,3,17,0,8,25,0,0,0,11,0,1,6,0,23,0,16,19,15,0,5,7,0,24,
1289  0,0,0,13,0,25,0,11,5,20,1,18,8,0,0,10,0,2,4,19,0,0,24,21,0
1290  };
1291 
1292  const int d25_264_10[] = {
1293  // Size: 25 x 25
1294  25,
1295  // Pre-assigned fields
1296  0,24,0,0,4,5,0,21,0,20,9,19,1,0,0,6,0,0,0,16,0,25,3,8,12,
1297  22,17,25,0,0,2,19,0,20,5,1,16,0,18,6,23,0,0,0,24,8,0,15,0,0,
1298  0,22,0,0,0,16,0,17,24,7,10,0,25,15,0,0,21,1,13,8,0,19,0,18,23,
1299  10,4,0,15,9,0,12,7,0,0,3,13,0,0,11,17,25,0,21,0,0,2,18,0,22,
1300  19,5,10,0,18,23,0,0,13,16,0,6,0,17,0,0,2,21,8,7,0,0,0,9,0,
1301  0,0,8,19,2,0,24,3,11,0,0,0,4,0,16,5,0,23,0,12,0,18,7,0,20,
1302  0,14,0,25,17,9,0,0,0,10,0,8,12,0,0,18,22,0,6,3,4,16,0,0,13,
1303  1,0,14,0,0,0,20,0,0,17,4,15,5,13,23,8,0,3,0,0,11,0,9,16,2,
1304  8,20,0,17,0,0,0,11,18,0,0,23,0,4,0,16,7,10,24,0,0,1,13,3,6,
1305  21,15,3,0,0,0,6,2,16,0,17,0,0,9,0,0,12,25,0,0,14,7,0,24,10,
1306  0,19,0,24,11,20,4,0,15,0,7,12,13,16,0,9,18,0,25,0,0,22,0,2,0,
1307  6,0,4,0,0,0,1,0,22,25,20,0,8,0,14,11,5,0,0,0,19,10,12,17,0,
1308  3,0,20,1,7,10,0,15,0,11,0,0,19,0,0,0,0,2,0,14,5,21,24,6,9,
1309  0,0,11,12,24,0,22,23,19,0,25,2,9,14,18,0,17,0,16,1,0,0,0,0,8,
1310  16,0,0,21,22,4,0,0,3,8,0,0,0,1,5,10,6,0,23,0,18,17,0,20,19,
1311  25,21,7,14,0,0,16,10,0,9,6,20,0,0,15,0,0,24,4,0,1,0,19,0,0,
1312  0,2,0,20,0,0,14,6,0,12,19,0,11,0,10,7,8,17,3,0,9,0,0,25,0,
1313  0,0,17,5,0,14,3,0,7,18,0,22,0,10,20,0,15,0,0,11,0,0,6,12,24,
1314  0,0,1,0,0,8,0,19,17,3,16,4,0,21,12,20,24,14,0,0,13,0,22,0,0,
1315  18,0,0,16,1,6,0,0,4,0,0,10,14,23,24,0,0,12,15,25,21,0,5,0,0,
1316  4,0,16,23,10,0,0,0,0,0,2,0,15,0,25,24,0,18,22,0,7,14,0,13,21,
1317  23,12,13,0,0,22,10,0,14,0,8,7,2,5,0,0,19,0,17,20,25,0,21,0,0,
1318  0,1,0,2,23,15,0,5,25,4,21,24,0,3,22,0,0,6,0,13,0,12,0,0,0,
1319  7,16,18,0,12,0,17,8,0,0,0,0,0,0,0,4,11,22,0,6,20,9,10,21,25,
1320  0,0,9,0,20,25,8,18,0,0,0,0,21,2,19,15,0,0,5,10,23,3,0,22,0
1321  };
1322 
1323  const int d25_264_11[] = {
1324  // Size: 25 x 25
1325  25,
1326  // Pre-assigned fields
1327  0,7,1,23,18,22,0,0,19,0,12,25,0,16,0,4,8,0,0,0,5,0,13,21,0,
1328  15,14,0,0,0,10,2,22,4,19,7,0,9,13,20,18,5,0,0,0,0,0,23,0,0,
1329  0,1,3,0,20,18,0,19,0,8,2,0,15,0,0,25,24,11,6,22,0,9,0,23,0,
1330  22,0,14,0,0,3,18,13,0,9,1,0,12,0,0,17,0,25,19,7,0,20,24,2,0,
1331  2,16,20,4,5,14,11,0,21,15,0,0,17,19,0,0,13,0,0,1,0,7,0,0,0,
1332  0,10,6,25,0,0,8,17,5,0,20,0,0,0,1,2,16,15,0,0,0,0,7,9,23,
1333  0,9,4,8,25,0,19,24,0,18,6,7,0,17,22,0,11,0,0,13,16,0,12,0,0,
1334  1,0,0,0,0,2,7,0,3,0,0,13,0,15,8,20,0,14,23,9,12,11,4,5,0,
1335  9,21,25,0,10,16,20,0,0,0,0,11,0,0,24,0,6,19,14,4,13,0,22,0,0,
1336  23,0,0,16,0,17,1,14,10,12,0,15,18,20,0,0,0,0,0,2,21,6,0,0,13,
1337  24,0,0,2,13,8,25,0,0,0,0,17,0,4,18,9,0,20,0,0,0,19,11,6,16,
1338  0,0,0,20,9,6,0,7,15,0,3,14,0,11,0,8,10,0,5,21,0,13,19,0,1,
1339  0,0,0,3,2,0,4,9,14,0,17,16,0,0,21,24,0,7,22,0,6,0,0,8,11,
1340  10,0,0,0,0,0,12,21,16,0,0,2,7,0,0,3,22,23,4,0,8,0,25,20,19,
1341  19,0,2,0,23,0,22,0,20,10,24,6,11,0,0,12,0,0,0,3,0,5,0,13,4,
1342  0,0,13,11,15,0,0,4,0,7,16,0,0,3,14,0,19,1,0,0,22,2,0,25,21,
1343  0,18,7,6,17,12,0,0,0,4,0,8,22,2,5,0,0,13,16,10,0,25,0,0,0,
1344  11,6,0,0,0,15,0,2,0,0,18,0,0,0,10,1,25,24,0,5,23,3,9,22,17,
1345  16,0,0,0,0,0,10,1,22,0,0,0,21,25,23,0,12,8,13,0,2,18,3,0,5,
1346  13,3,9,19,0,11,0,5,18,22,0,23,14,0,2,16,0,0,8,0,7,0,0,0,0,
1347  3,0,5,0,1,0,0,18,0,11,0,10,13,14,7,0,0,4,21,15,17,0,0,12,20,
1348  0,4,22,7,0,0,17,0,0,24,0,18,0,9,13,6,2,0,15,25,0,14,10,0,8,
1349  0,8,0,22,21,0,0,0,13,3,11,20,16,1,0,0,0,12,9,0,14,0,18,10,25,
1350  20,5,0,0,16,13,0,15,24,2,22,0,1,0,3,0,18,0,0,0,19,17,0,7,9,
1351  25,15,8,17,3,24,9,0,0,14,23,0,10,0,0,5,0,18,12,16,0,0,0,19,0
1352  };
1353 
1354  const int d25_264_12[] = {
1355  // Size: 25 x 25
1356  25,
1357  // Pre-assigned fields
1358  11,0,0,22,18,0,0,5,0,8,3,0,4,2,23,0,15,0,25,20,0,14,19,10,0,
1359  3,8,22,20,0,0,2,0,17,1,13,12,23,18,0,0,4,0,0,0,10,5,16,0,0,
1360  24,9,21,0,15,3,0,0,10,0,17,0,13,12,0,6,0,0,22,2,0,23,20,0,0,
1361  0,0,0,23,20,25,6,1,16,19,0,14,0,0,18,8,24,0,21,0,12,0,3,0,13,
1362  0,1,24,0,13,12,18,0,11,0,0,3,0,0,0,0,0,25,0,6,14,10,4,2,23,
1363  16,24,0,12,8,19,0,21,0,6,0,17,5,0,14,0,0,13,15,0,0,0,23,0,20,
1364  0,0,5,6,0,0,23,0,13,0,4,15,10,0,0,0,14,0,19,24,16,12,0,25,18,
1365  0,0,16,0,14,0,11,0,22,0,24,0,1,8,21,3,20,19,0,13,7,2,0,0,25,
1366  5,13,3,0,16,2,17,0,25,23,0,0,19,6,0,21,7,0,0,0,0,0,0,14,9,
1367  23,0,15,0,12,14,20,0,0,2,0,24,18,0,0,0,0,4,11,8,5,6,21,0,0,
1368  21,0,0,0,3,15,7,17,0,0,0,0,0,0,19,14,11,8,12,0,20,16,13,0,2,
1369  19,16,14,0,0,0,0,20,0,24,21,7,0,23,13,15,3,6,9,0,0,25,0,0,17,
1370  14,4,23,5,10,0,0,18,3,0,0,22,0,0,17,9,8,0,16,0,0,15,0,19,1,
1371  6,0,12,15,1,16,0,19,20,4,0,13,21,0,0,0,0,0,10,5,17,0,0,0,11,
1372  0,12,25,0,6,11,0,0,15,3,10,2,22,16,8,0,0,5,0,7,21,0,0,13,0,
1373  12,5,18,0,0,1,0,0,0,0,14,10,0,0,4,11,22,0,0,15,8,24,2,7,0,
1374  0,0,0,10,7,4,1,13,0,18,0,0,0,15,6,24,23,22,2,0,25,0,0,20,0,
1375  0,18,0,3,0,24,0,4,7,16,0,19,6,13,5,12,0,0,0,0,0,1,10,15,22,
1376  0,6,0,8,0,18,0,22,12,0,16,0,2,21,11,0,0,0,5,10,0,7,1,23,0,
1377  0,0,2,0,0,0,5,25,1,10,22,0,0,7,9,23,21,12,0,14,0,0,17,8,0,
1378  0,25,0,0,0,0,0,11,0,14,7,0,0,17,24,18,16,10,3,21,2,0,12,1,15,
1379  0,22,0,14,17,21,12,0,0,0,0,9,0,5,0,20,0,24,0,0,3,19,7,18,16,
1380  13,0,0,25,0,0,24,6,0,0,8,5,17,10,0,16,0,11,0,22,15,0,0,21,14,
1381  10,19,13,11,23,0,3,0,14,0,12,8,15,25,0,0,0,20,0,4,0,22,0,0,21,
1382  15,21,19,2,0,0,14,8,0,9,5,0,0,0,16,4,1,18,13,25,22,0,0,0,0
1383  };
1384 
1385  const int d25_264_13[] = {
1386  // Size: 25 x 25
1387  25,
1388  // Pre-assigned fields
1389  17,15,0,6,0,4,0,23,0,8,0,0,1,21,16,0,12,2,10,18,0,0,0,24,0,
1390  9,0,4,3,22,6,0,21,17,10,0,24,15,0,0,13,0,1,0,11,20,7,0,0,0,
1391  0,11,13,0,10,21,18,0,0,15,0,7,0,16,0,17,0,5,0,0,2,25,0,3,1,
1392  23,16,9,0,0,0,24,14,0,0,0,11,2,7,0,20,8,6,0,12,17,0,5,0,0,
1393  0,25,22,1,6,5,15,0,0,11,2,12,0,3,0,8,0,16,17,20,0,0,0,0,10,
1394  21,13,0,0,0,2,0,0,6,7,0,0,20,18,0,0,17,24,1,0,0,16,14,23,25,
1395  20,2,12,0,0,25,0,0,21,0,0,5,11,17,3,15,23,0,0,19,0,24,9,0,0,
1396  24,0,0,0,23,10,0,2,4,0,0,18,16,9,0,0,0,3,11,1,5,21,8,15,0,
1397  0,12,0,0,0,7,6,20,15,0,0,0,23,0,9,25,13,19,22,14,0,0,16,0,21,
1398  7,4,6,0,0,14,13,9,0,19,16,0,0,0,15,0,22,0,0,21,0,17,0,5,11,
1399  2,0,25,0,0,23,3,8,18,0,17,0,0,0,0,22,0,9,0,10,24,20,15,7,12,
1400  18,10,8,0,16,0,0,0,12,6,3,0,0,0,19,0,11,23,15,7,13,0,22,0,0,
1401  5,0,17,24,9,0,16,19,0,22,4,25,21,0,7,10,0,0,0,0,3,0,6,0,0,
1402  14,0,23,11,12,0,4,0,1,17,20,0,24,2,0,0,0,22,19,0,18,0,0,0,7,
1403  11,0,0,16,1,0,0,0,7,0,22,23,9,0,0,21,18,0,3,13,0,15,4,6,5,
1404  0,0,0,4,25,1,11,0,0,18,12,0,0,22,14,5,2,17,20,6,19,0,0,9,0,
1405  12,17,11,7,14,19,20,0,0,0,15,0,0,25,0,6,0,13,24,0,10,2,0,4,0,
1406  0,0,0,25,3,0,0,0,14,12,0,17,13,8,20,18,9,0,2,0,0,0,1,11,19,
1407  0,22,2,13,18,0,0,7,19,25,14,0,4,0,21,0,10,0,5,0,0,23,0,20,8,
1408  0,20,0,17,8,3,5,24,0,0,21,0,0,12,25,9,0,0,14,0,22,0,18,10,6,
1409  0,0,0,18,0,0,17,1,3,24,0,14,0,13,5,12,0,8,9,0,25,11,0,21,4,
1410  19,14,0,12,7,0,0,25,9,0,0,22,17,0,6,0,0,0,0,0,15,10,2,16,18,
1411  0,0,0,10,17,0,22,5,24,3,1,15,0,0,23,0,21,0,6,0,9,13,0,19,20,
1412  6,7,5,0,0,12,23,22,8,4,25,16,0,0,2,0,24,0,0,3,0,0,21,0,0,
1413  0,0,3,0,0,11,0,0,0,0,19,20,8,6,17,23,7,12,0,25,14,5,24,0,0
1414  };
1415 
1416  const int d25_264_14[] = {
1417  // Size: 25 x 25
1418  25,
1419  // Pre-assigned fields
1420  0,0,11,0,0,18,22,0,24,0,23,0,0,10,17,3,4,6,8,20,2,0,9,25,0,
1421  9,0,13,24,10,20,19,0,0,0,0,0,11,0,25,16,17,0,18,21,0,12,3,0,0,
1422  0,5,0,15,7,0,1,16,13,0,0,17,24,0,22,12,0,2,0,0,0,9,8,19,11,
1423  3,11,0,18,0,0,15,5,23,0,12,0,16,0,0,25,14,4,0,24,13,6,0,0,8,
1424  22,0,8,0,4,0,0,0,0,18,0,0,2,0,21,24,1,25,12,19,3,0,20,5,0,
1425  8,16,6,0,18,2,11,0,0,0,13,7,0,24,12,22,0,21,0,25,23,19,0,0,0,
1426  0,9,0,22,11,0,8,0,20,17,15,4,0,0,10,5,0,0,0,0,18,14,1,6,0,
1427  0,0,10,0,0,17,0,9,0,7,0,11,23,20,15,2,0,0,22,18,19,0,13,0,5,
1428  24,13,0,0,0,15,0,10,17,0,20,21,18,5,4,0,25,0,0,0,0,3,0,11,2,
1429  14,15,23,0,0,0,0,0,4,13,24,0,0,9,0,0,19,10,0,17,11,25,12,22,0,
1430  0,0,0,11,2,23,0,1,15,0,3,16,9,0,0,18,0,24,0,12,25,21,0,20,6,
1431  25,21,1,0,17,5,14,0,8,0,11,0,6,0,0,20,0,0,15,10,0,0,18,4,7,
1432  13,0,0,4,0,3,9,0,21,0,0,2,17,0,14,0,6,0,11,0,20,7,19,1,0,
1433  4,0,0,9,5,1,10,23,0,14,0,0,0,15,0,0,11,13,20,0,21,0,7,17,12,
1434  5,2,0,7,0,8,6,25,12,16,9,18,0,1,0,0,21,0,17,23,0,0,15,0,0,
1435  0,24,0,0,15,10,0,20,0,25,8,1,5,0,19,4,0,14,0,9,6,0,0,0,13,
1436  21,0,7,3,0,0,18,24,1,15,0,0,0,19,0,0,23,16,0,6,10,13,0,0,17,
1437  0,0,22,10,24,0,0,0,0,12,0,20,3,6,9,13,0,11,0,14,16,1,21,0,0,
1438  15,0,12,19,25,0,0,0,0,0,0,6,10,16,18,0,22,9,13,0,8,2,14,0,1,
1439  0,18,21,0,9,0,2,0,25,1,7,24,22,17,0,23,20,0,0,16,0,0,0,8,0,
1440  0,0,0,8,6,0,0,2,11,20,18,15,19,25,0,0,5,0,16,0,4,24,0,23,0,
1441  6,4,0,5,0,0,13,8,0,22,1,9,0,0,0,0,2,18,24,0,0,20,23,16,25,
1442  0,6,3,0,0,19,23,13,22,8,16,12,0,21,7,17,0,0,9,0,0,0,2,0,15,
1443  0,22,2,20,14,9,0,6,7,19,0,0,8,4,0,0,0,17,10,0,0,0,0,3,21,
1444  2,19,16,0,1,7,17,15,0,5,0,0,0,18,13,0,0,8,14,0,0,4,0,0,3
1445  };
1446 
1447  const int d25_264_1[] = {
1448  // Size: 25 x 25
1449  25,
1450  // Pre-assigned fields
1451  7,0,0,10,0,5,9,23,17,0,0,12,18,0,4,15,19,0,0,13,22,0,0,20,24,
1452  0,0,0,21,1,8,14,22,0,0,10,6,7,9,17,25,0,0,13,0,0,16,15,0,5,
1453  14,24,3,18,0,9,0,0,0,17,6,10,0,0,23,0,22,19,15,0,16,7,0,0,1,
1454  0,0,0,3,8,22,10,9,0,0,0,24,20,0,0,21,0,0,4,17,5,1,6,13,0,
1455  18,0,8,0,7,11,0,20,0,0,21,17,0,23,0,1,0,0,10,5,0,14,13,2,19,
1456  15,0,5,0,0,6,23,19,0,0,0,20,24,14,12,0,7,18,22,0,25,2,0,0,0,
1457  2,9,18,25,13,0,0,7,5,0,0,0,0,0,8,0,14,6,0,22,1,3,0,17,0,
1458  0,16,0,0,11,4,19,0,1,13,0,5,15,0,0,23,24,0,0,0,3,0,9,6,7,
1459  8,10,4,22,3,0,0,0,0,21,5,15,0,20,0,6,11,23,0,14,24,0,0,12,0,
1460  13,21,25,0,0,0,0,17,2,7,1,14,0,18,19,20,4,0,0,0,0,8,24,0,22,
1461  0,0,20,14,12,0,13,10,11,24,0,0,23,3,0,17,0,0,7,9,0,21,4,0,18,
1462  9,25,15,0,0,1,0,0,0,23,16,0,17,22,10,3,12,0,5,0,21,6,0,0,0,
1463  6,5,2,23,0,21,0,0,0,0,0,3,4,1,18,0,0,10,24,11,0,0,17,0,9,
1464  12,22,0,0,0,0,5,18,4,10,0,0,19,25,13,0,6,14,0,23,2,0,0,16,0,
1465  0,14,21,2,25,0,0,11,6,3,4,0,9,0,24,0,0,8,0,0,19,0,16,18,15,
1466  16,17,11,4,0,0,22,24,9,0,2,0,0,8,0,0,3,0,0,10,23,25,0,0,12,
1467  0,12,0,0,23,13,2,25,15,16,14,4,0,24,0,10,0,0,11,8,0,0,0,1,0,
1468  1,0,19,0,6,0,12,0,20,11,7,0,25,17,5,24,0,15,0,0,10,0,0,0,8,
1469  0,7,22,24,0,0,0,13,19,12,0,2,1,0,0,0,9,3,20,16,0,15,25,0,11,
1470  0,0,14,0,4,24,0,0,8,0,11,18,0,19,0,5,17,21,16,0,0,13,2,9,0,
1471  0,0,0,15,0,0,21,8,0,18,3,7,11,5,0,0,0,1,0,4,13,9,10,14,0,
1472  3,0,0,0,21,18,8,0,0,22,9,0,5,0,16,0,0,11,19,0,17,0,20,7,23,
1473  17,6,0,7,20,0,1,0,3,25,19,23,0,16,0,0,0,9,21,15,18,0,0,10,0,
1474  25,8,0,5,0,20,4,0,21,0,12,0,2,0,15,13,18,0,17,0,0,0,1,11,16,
1475  0,0,0,16,18,15,3,6,0,2,0,0,0,0,14,7,5,24,0,20,0,19,12,23,0
1476  };
1477 
1478  const int d25_264_2[] = {
1479  // Size: 25 x 25
1480  25,
1481  // Pre-assigned fields
1482  0,0,0,0,0,15,0,16,0,2,0,12,23,0,21,19,6,13,24,10,0,0,9,7,5,
1483  22,0,0,7,18,21,9,2,0,3,1,0,0,11,0,0,0,10,6,13,15,19,0,0,0,
1484  4,13,0,10,0,22,17,0,18,0,0,14,8,0,0,0,15,7,21,0,0,23,12,1,3,
1485  11,9,0,0,15,0,0,0,0,22,0,7,18,25,0,0,4,1,17,12,20,16,0,14,8,
1486  0,5,24,14,0,3,0,10,0,18,17,15,0,0,7,0,13,21,0,1,22,0,4,11,0,
1487  9,18,10,13,0,1,0,7,11,14,20,0,0,23,15,8,3,0,0,0,0,22,0,0,0,
1488  0,25,21,0,3,0,24,18,16,0,0,5,13,0,2,20,0,0,0,8,17,0,0,4,12,
1489  13,3,20,0,2,0,0,0,6,9,12,0,25,19,0,0,18,0,4,0,21,0,0,16,17,
1490  18,21,13,0,16,17,10,20,0,1,7,0,0,0,19,4,25,0,0,0,8,0,0,15,22,
1491  0,0,0,3,5,0,13,0,8,21,10,0,0,0,0,25,14,12,15,24,16,0,7,0,1,
1492  0,8,0,0,11,19,0,0,9,15,23,21,5,2,0,0,0,24,14,4,0,20,10,18,0,
1493  16,17,12,15,6,0,7,3,0,0,0,0,0,13,4,0,0,8,25,11,0,24,22,0,0,
1494  0,0,22,0,21,0,5,0,1,0,16,4,6,18,23,17,0,25,0,7,0,10,0,0,20,
1495  15,2,0,0,7,16,0,0,0,23,0,9,0,0,14,22,19,0,5,0,4,25,20,6,21,
1496  0,0,18,25,0,9,19,12,15,0,13,22,0,17,0,11,23,2,16,21,7,0,0,0,0,
1497  0,0,0,6,24,12,14,0,2,0,0,16,19,9,20,1,10,17,7,0,0,5,8,0,0,
1498  2,11,0,24,19,0,23,15,17,0,25,1,3,0,6,5,0,14,0,0,0,18,0,0,4,
1499  6,0,2,23,0,0,0,11,19,0,0,20,15,22,0,0,16,5,0,0,9,0,1,25,24,
1500  21,20,14,18,0,0,15,0,24,4,0,0,0,8,0,3,0,0,23,22,0,11,13,0,19,
1501  0,0,25,4,22,0,0,0,14,8,11,0,0,12,10,16,24,0,9,15,0,0,0,2,18,
1502  0,16,4,8,14,13,2,17,0,6,0,18,20,0,0,10,1,0,0,23,0,12,0,3,0,
1503  0,4,0,0,0,24,0,21,0,16,6,0,17,1,0,18,0,0,0,3,14,7,11,13,23,
1504  23,0,0,0,25,2,3,13,4,0,8,10,0,5,22,0,0,9,19,0,6,0,18,0,0,
1505  8,0,9,0,0,14,16,6,25,19,24,0,2,0,3,0,0,0,0,0,23,1,17,22,0,
1506  17,1,7,9,0,0,18,0,0,0,0,3,14,0,11,0,5,4,2,0,12,0,16,21,13
1507  };
1508 
1509  const int d25_264_3[] = {
1510  // Size: 25 x 25
1511  25,
1512  // Pre-assigned fields
1513  0,2,3,0,11,9,0,15,18,0,17,13,0,16,7,6,4,0,5,1,0,0,0,0,25,
1514  21,0,0,0,3,0,14,0,11,18,0,10,0,15,0,19,0,2,20,4,8,9,25,0,12,
1515  5,0,14,0,20,0,16,18,17,10,0,2,12,0,0,9,0,24,0,0,0,19,15,0,7,
1516  19,12,0,3,0,25,6,24,16,0,4,20,7,0,9,1,18,0,0,0,14,23,0,0,0,
1517  0,0,6,1,0,12,0,22,0,0,23,24,2,19,11,5,21,0,3,16,0,0,0,17,0,
1518  0,20,0,0,0,10,9,0,12,0,8,14,22,0,0,0,1,6,21,18,2,24,0,11,0,
1519  23,0,9,2,14,8,24,11,22,0,0,0,0,6,0,18,17,0,0,12,25,0,1,0,0,
1520  9,3,0,19,1,0,0,8,6,0,7,23,0,0,24,0,0,0,11,22,0,16,0,25,15,
1521  0,0,5,0,0,24,17,9,7,3,0,0,0,22,16,0,11,0,14,8,12,0,2,21,10,
1522  0,15,0,5,0,0,10,0,21,0,18,0,3,2,19,25,24,8,7,0,17,11,20,0,0,
1523  8,25,4,13,24,0,2,0,0,12,11,0,18,5,21,0,0,1,0,0,0,0,7,0,16,
1524  18,1,0,24,10,0,0,0,0,13,0,0,0,7,0,14,0,3,8,0,22,20,6,23,11,
1525  7,0,10,12,0,0,0,6,19,4,0,0,0,0,8,0,13,0,25,21,18,0,14,15,9,
1526  11,21,24,8,0,2,7,19,0,5,15,9,0,4,0,0,0,0,0,3,0,10,0,16,13,
1527  0,0,13,23,17,22,0,14,0,0,0,21,16,0,4,3,0,25,2,0,15,1,0,6,20,
1528  15,10,0,0,8,4,22,0,20,23,0,11,0,0,0,2,0,19,9,6,0,7,0,0,18,
1529  2,16,15,17,21,7,0,0,0,22,25,19,0,0,0,20,9,0,13,0,6,0,0,24,23,
1530  0,0,0,18,0,19,0,17,0,15,13,22,6,10,25,12,16,20,23,14,0,8,0,0,0,
1531  0,0,23,21,0,0,4,0,1,24,10,0,20,0,0,0,5,15,0,7,0,25,12,13,2,
1532  0,11,21,0,22,15,0,3,0,17,0,7,8,12,0,0,0,23,0,5,20,0,19,9,0,
1533  10,0,0,0,19,0,5,7,23,21,0,6,13,0,2,15,20,0,0,0,16,0,11,3,0,
1534  0,0,0,4,5,23,11,0,0,0,22,0,10,0,17,0,2,18,6,24,0,0,3,19,14,
1535  1,23,0,0,0,0,19,0,8,25,6,0,0,9,18,24,3,11,0,0,13,22,4,12,0,
1536  24,22,2,0,15,0,23,12,14,8,0,0,5,13,0,10,0,7,0,0,21,4,0,0,3,
1537  20,14,7,0,23,5,0,0,0,0,9,0,25,3,15,0,6,10,19,0,0,17,21,0,0
1538  };
1539 
1540  const int d25_264_4[] = {
1541  // Size: 25 x 25
1542  25,
1543  // Pre-assigned fields
1544  8,12,0,0,0,6,2,0,11,0,0,0,16,3,0,21,25,13,15,0,24,10,5,0,7,
1545  23,0,0,20,17,0,22,13,0,19,25,4,14,18,15,0,0,0,0,0,5,0,21,7,16,
1546  10,7,18,6,1,0,9,2,0,22,17,0,0,14,0,0,16,23,0,0,0,21,24,0,0,
1547  0,0,16,12,0,17,21,0,15,0,20,0,24,0,10,23,4,22,8,0,0,14,13,1,0,
1548  5,16,19,0,12,8,0,0,24,11,7,0,0,21,0,0,2,9,0,4,23,1,0,17,0,
1549  0,0,0,0,6,0,24,4,25,21,0,0,0,20,12,9,0,19,0,8,10,5,7,23,11,
1550  6,0,0,22,2,4,7,0,0,18,0,0,25,12,0,0,0,0,16,9,20,8,19,21,5,
1551  22,11,0,7,0,16,19,0,0,0,0,18,5,0,25,10,0,8,0,0,15,3,20,0,2,
1552  0,15,0,9,0,0,0,14,0,3,0,16,0,23,20,12,21,0,1,2,19,0,0,10,6,
1553  17,20,14,0,10,12,5,0,21,7,0,0,6,0,0,25,18,0,0,13,0,16,23,0,0,
1554  0,6,0,18,16,23,8,1,0,4,0,5,10,25,0,0,0,0,21,12,11,0,0,0,22,
1555  0,0,0,0,15,18,25,23,2,0,10,17,0,0,1,22,24,0,11,16,0,0,6,4,9,
1556  0,0,12,21,0,0,0,24,0,0,18,20,1,17,9,0,23,15,3,0,6,4,0,2,0,
1557  0,0,22,19,24,0,0,9,23,8,13,12,0,15,0,1,7,17,0,11,4,2,0,0,0,
1558  0,19,25,2,0,21,0,22,17,0,8,9,0,0,0,0,3,18,23,24,1,20,0,0,0,
1559  0,0,7,14,0,3,0,18,6,24,0,13,15,0,16,0,11,0,10,0,0,19,0,20,4,
1560  16,17,5,10,23,0,0,0,1,0,12,0,13,22,0,2,0,25,7,19,0,0,0,15,0,
1561  14,0,0,5,9,0,10,0,13,0,0,25,11,0,19,24,20,2,0,0,12,0,22,6,0,
1562  18,24,13,11,4,1,0,12,0,0,5,0,0,0,14,0,17,6,0,10,0,15,0,0,21,
1563  2,0,0,0,13,0,15,8,3,17,0,0,18,19,0,5,0,0,14,1,7,0,0,9,20,
1564  0,4,11,0,20,24,17,3,18,0,9,2,0,0,6,13,0,0,0,23,0,0,8,0,25,
1565  21,14,2,0,0,0,0,0,0,16,11,6,7,24,13,19,12,0,20,5,0,25,0,0,23,
1566  0,23,3,0,0,2,0,16,7,10,4,15,0,0,17,8,0,0,5,6,0,0,11,24,1,
1567  24,0,6,0,0,20,0,0,0,14,0,0,17,4,11,0,15,3,22,0,8,7,9,0,13,
1568  13,5,0,8,25,19,4,10,0,1,24,14,0,0,2,0,0,12,17,0,0,0,3,11,0
1569  };
1570 
1571  const int d25_264_5[] = {
1572  // Size: 25 x 25
1573  25,
1574  // Pre-assigned fields
1575  14,0,0,20,16,24,10,0,0,0,0,15,0,21,23,3,6,0,12,19,0,2,9,0,0,
1576  12,6,0,15,0,22,0,14,8,0,4,5,0,0,21,16,0,0,20,0,13,7,0,1,10,
1577  0,9,17,4,1,0,20,0,0,0,0,0,21,12,0,0,0,13,0,16,22,23,24,14,5,
1578  16,12,20,7,14,2,0,0,0,0,0,23,0,25,0,15,18,0,21,0,5,24,0,17,9,
1579  0,21,25,1,8,3,23,12,10,0,0,0,17,0,22,0,13,24,0,0,0,0,5,20,0,
1580  0,0,4,12,0,0,21,18,24,2,0,6,0,22,0,11,0,20,0,17,0,0,8,13,16,
1581  0,0,0,0,0,0,15,24,0,1,6,0,0,10,11,12,8,9,19,7,3,0,14,5,23,
1582  20,14,10,22,12,0,0,0,16,13,11,7,6,17,0,5,0,0,0,1,0,0,0,15,0,
1583  2,22,18,21,15,0,0,1,4,23,0,0,0,9,10,19,0,0,17,11,0,14,0,0,0,
1584  0,25,0,0,0,5,17,4,19,10,0,0,18,0,6,13,15,0,16,22,12,0,23,0,3,
1585  0,23,15,0,0,4,0,21,1,0,0,25,11,6,18,0,9,2,0,10,19,13,3,0,0,
1586  21,16,19,0,5,6,0,17,18,25,0,0,1,8,0,0,20,0,3,0,2,22,0,10,0,
1587  0,0,0,0,0,0,9,13,2,15,14,0,20,0,8,22,11,23,0,0,1,6,19,25,0,
1588  9,0,16,0,18,15,11,0,13,0,17,21,0,0,12,0,25,10,0,5,14,0,7,0,1,
1589  0,0,24,0,21,12,5,0,0,0,8,11,0,0,0,23,3,19,10,4,0,18,2,0,6,
1590  1,0,0,0,0,0,22,23,6,20,18,14,10,3,0,0,0,16,11,24,9,0,0,0,21,
1591  8,0,0,0,17,11,24,0,0,22,19,18,23,0,0,0,21,14,4,13,6,20,0,0,0,
1592  15,0,6,24,20,8,0,0,3,11,5,0,0,7,0,2,4,0,0,0,0,21,12,18,0,
1593  11,24,0,0,19,1,6,2,0,7,0,10,3,13,9,0,0,0,0,0,23,0,0,22,25,
1594  19,0,1,0,22,16,0,0,20,0,0,24,8,15,3,0,0,17,0,2,18,0,25,0,13,
1595  5,0,12,8,6,0,0,0,0,0,25,0,4,18,15,7,2,21,22,0,0,16,0,3,19,
1596  4,17,8,6,23,0,2,15,0,0,9,0,24,0,5,1,0,3,25,0,0,10,0,12,0,
1597  6,5,11,13,0,23,1,0,0,9,15,0,0,0,16,25,19,0,8,0,0,17,0,7,4,
1598  0,2,0,11,0,7,18,8,9,6,20,22,0,0,0,0,10,1,0,14,4,0,16,0,0,
1599  0,20,0,10,0,0,0,22,7,17,21,19,15,0,25,4,0,0,6,0,24,12,18,0,8
1600  };
1601 
1602  const int d25_264_6[] = {
1603  // Size: 25 x 25
1604  25,
1605  // Pre-assigned fields
1606  14,23,12,4,0,21,16,0,0,10,0,0,0,1,0,0,18,9,15,2,3,0,20,0,7,
1607  10,18,0,0,0,0,9,0,20,2,0,0,11,0,0,0,7,25,1,24,19,13,0,12,5,
1608  0,10,0,11,0,17,18,20,0,15,24,0,0,0,9,0,3,0,7,0,13,23,14,0,12,
1609  22,3,25,0,0,4,0,10,0,23,0,0,17,9,0,12,16,5,0,0,0,2,15,0,13,
1610  12,8,0,13,0,14,0,3,15,4,19,23,0,2,0,0,25,0,0,7,0,0,11,5,6,
1611  0,0,7,0,16,13,0,18,25,0,10,11,14,0,0,3,0,1,4,0,24,12,22,0,20,
1612  0,7,24,14,0,9,3,1,0,17,0,18,0,0,22,5,23,4,0,0,0,21,0,0,8,
1613  6,12,13,0,0,0,17,9,0,0,18,14,0,0,0,10,19,24,8,0,22,5,2,21,0,
1614  3,0,0,23,13,16,20,4,10,0,8,0,18,0,0,0,22,12,0,0,0,11,0,24,9,
1615  0,4,2,0,25,0,10,8,6,0,0,12,13,24,0,0,0,0,0,21,16,14,0,15,17,
1616  0,13,10,12,7,5,24,0,19,20,15,22,0,0,18,21,1,0,16,14,0,0,0,0,0,
1617  1,14,0,9,11,0,23,0,0,12,20,6,15,21,0,0,10,22,0,0,0,19,17,0,4,
1618  0,0,18,0,0,12,0,0,2,0,21,0,10,7,4,15,0,13,5,25,20,0,24,9,0,
1619  5,0,0,25,22,11,0,0,8,0,9,1,19,10,21,6,0,0,23,13,18,0,0,0,0,
1620  20,6,0,16,8,0,2,25,0,0,3,4,24,11,0,0,0,0,19,0,17,0,5,18,14,
1621  0,0,8,20,12,0,0,0,9,13,6,0,4,14,3,25,15,0,2,10,0,22,7,0,0,
1622  25,21,20,3,19,0,0,17,14,0,0,0,1,0,23,22,0,8,0,6,0,0,10,11,0,
1623  8,17,5,6,0,19,4,0,0,0,0,21,0,18,14,2,0,7,0,0,15,20,0,13,0,
1624  0,0,0,0,14,0,6,13,24,3,0,9,2,5,15,16,0,0,18,0,8,0,12,20,0,
1625  0,0,15,0,0,0,14,24,0,6,4,3,0,0,16,13,9,21,11,5,0,0,18,1,0,
1626  16,0,11,0,0,0,0,23,0,9,0,2,0,22,12,0,8,19,25,17,6,4,13,0,18,
1627  13,0,0,15,21,3,0,19,0,0,12,0,0,17,11,7,20,23,0,22,2,0,0,0,16,
1628  0,0,0,7,4,0,13,0,1,19,0,15,25,0,17,14,0,0,0,20,9,10,8,16,3,
1629  0,1,4,22,10,25,0,0,11,24,16,7,6,19,0,9,13,0,20,0,0,0,0,17,0,
1630  15,25,0,0,18,23,0,6,17,22,5,0,0,0,1,0,0,0,13,12,4,8,0,14,0
1631  };
1632 
1633  const int d25_264_7[] = {
1634  // Size: 25 x 25
1635  25,
1636  // Pre-assigned fields
1637  0,0,0,0,0,10,24,0,2,0,18,8,0,7,19,6,0,12,11,0,0,9,1,25,16,
1638  20,3,2,0,19,5,23,4,8,17,16,0,0,0,14,0,6,13,21,0,0,0,7,0,0,
1639  0,0,0,0,16,21,13,7,5,0,0,12,0,25,24,3,10,0,0,2,4,20,23,0,0,
1640  22,12,0,0,10,0,3,0,23,19,5,0,0,17,11,0,0,0,4,18,13,1,9,0,0,
1641  0,7,17,0,0,0,0,0,10,15,0,11,4,3,1,8,22,18,5,16,0,0,0,20,25,
1642  15,18,0,16,24,12,0,11,0,9,20,7,0,0,8,0,0,22,2,0,23,3,0,6,0,
1643  13,21,9,0,20,0,0,3,0,12,0,14,22,0,0,0,7,4,17,6,11,2,0,0,19,
1644  0,24,0,6,12,1,0,23,14,10,4,0,13,0,9,11,18,0,0,0,0,0,16,19,0,
1645  11,0,20,7,0,0,5,10,13,24,0,0,8,0,25,0,0,14,0,1,0,6,3,12,15,
1646  21,0,18,8,0,0,0,0,0,0,25,23,15,0,13,1,5,19,16,14,9,0,0,0,17,
1647  12,0,0,0,9,7,0,0,15,4,11,0,2,20,22,5,0,0,0,0,14,0,17,8,13,
1648  0,0,6,14,0,0,0,22,0,0,13,10,12,24,0,23,0,21,0,19,8,15,25,11,2,
1649  0,10,11,0,0,15,0,13,1,22,23,0,0,21,0,0,0,24,7,17,0,19,0,16,6,
1650  0,20,0,18,0,16,1,14,0,0,0,0,0,23,10,12,17,8,24,0,22,11,21,0,0,
1651  19,0,0,24,1,0,2,0,3,0,21,15,20,0,18,0,11,0,22,13,0,10,0,14,23,
1652  14,6,3,5,0,8,16,0,21,0,0,2,11,9,0,17,0,10,18,0,0,25,0,13,0,
1653  4,19,21,0,22,11,0,0,0,25,0,0,9,0,0,24,0,0,3,0,5,18,15,2,10,
1654  0,0,0,23,17,25,20,0,0,7,12,0,5,8,15,10,0,11,0,3,0,0,0,4,22,
1655  24,9,22,21,0,0,19,25,4,16,0,1,14,6,0,0,12,0,0,5,7,0,0,0,0,
1656  17,5,10,15,0,0,25,19,0,11,2,13,7,1,0,22,21,0,0,24,6,0,0,0,0,
1657  0,0,12,0,2,4,0,20,0,14,0,0,23,22,17,0,16,0,10,15,24,13,8,0,18,
1658  7,0,4,2,11,19,0,0,0,0,1,9,0,0,0,13,25,0,0,0,15,12,6,18,5,
1659  1,14,0,3,5,0,7,0,0,0,24,22,25,2,4,0,15,0,0,0,0,0,18,21,12,
1660  0,2,0,17,0,23,9,21,22,0,3,5,0,15,0,19,24,20,6,0,0,0,12,0,0,
1661  10,23,24,12,13,2,4,1,6,3,0,0,0,0,0,16,8,25,0,11,18,0,0,0,0
1662  };
1663 
1664  const int d25_264_8[] = {
1665  // Size: 25 x 25
1666  25,
1667  // Pre-assigned fields
1668  0,0,22,25,0,0,16,9,4,0,12,0,0,0,0,2,18,0,15,14,5,11,3,13,24,
1669  21,0,0,0,0,0,0,2,7,20,0,0,9,1,10,16,15,0,0,6,23,12,25,0,4,
1670  11,21,6,0,0,5,0,19,18,0,13,10,0,25,0,0,0,12,24,8,3,0,23,2,0,
1671  19,4,0,0,8,0,9,0,12,23,15,0,1,0,6,0,16,10,5,0,0,20,14,25,0,
1672  24,0,0,19,16,21,2,0,0,0,3,0,14,0,18,10,0,1,25,23,0,22,4,0,20,
1673  0,0,17,0,24,20,19,0,10,13,2,25,0,0,9,3,11,0,14,7,0,0,0,0,16,
1674  0,22,24,16,11,14,0,20,15,9,23,0,0,0,0,0,8,13,0,0,25,7,1,6,0,
1675  12,9,13,21,0,16,15,0,0,0,17,18,0,5,19,0,6,0,1,4,0,10,0,0,0,
1676  0,0,0,14,2,0,18,0,0,17,7,0,0,13,4,19,22,21,0,3,0,15,5,0,1,
1677  15,18,3,10,7,0,0,8,0,2,0,21,0,0,14,1,0,0,0,24,11,23,12,0,0,
1678  0,0,11,8,20,10,0,0,21,0,0,5,25,7,23,0,0,3,2,22,0,4,0,12,19,
1679  9,0,18,12,19,2,0,17,14,16,0,0,0,0,20,4,7,22,3,0,13,0,0,0,0,
1680  4,5,0,18,0,13,0,6,0,8,20,16,17,0,12,0,10,23,0,0,1,0,22,24,0,
1681  0,11,0,1,0,8,0,21,2,14,10,13,18,19,0,22,0,6,0,16,0,0,0,20,0,
1682  0,0,5,7,9,0,1,0,0,10,0,4,0,11,13,23,24,16,17,0,12,0,0,0,2,
1683  10,0,14,0,3,6,25,16,0,0,9,0,5,24,17,0,0,0,0,0,18,1,7,21,0,
1684  0,19,0,9,4,24,17,0,5,0,0,1,22,23,15,0,0,0,21,2,16,0,0,3,11,
1685  16,12,0,0,0,25,13,7,3,5,0,0,4,0,21,17,19,0,23,0,0,14,0,0,22,
1686  0,25,1,11,0,0,21,0,0,18,0,14,7,15,0,0,4,19,20,5,6,0,17,8,0,
1687  22,20,15,0,0,4,0,18,6,0,1,0,10,17,0,21,0,2,0,0,0,19,24,0,9,
1688  2,24,0,0,23,0,0,4,0,21,0,9,0,12,0,5,0,0,6,15,20,25,19,1,17,
1689  0,0,12,0,13,7,14,25,22,0,6,2,23,3,1,0,0,0,18,0,0,0,15,5,0,
1690  5,23,0,0,17,22,6,0,9,0,0,0,8,18,0,7,25,20,11,1,0,0,0,0,3,
1691  6,0,10,17,0,0,0,13,0,12,4,7,11,0,0,9,3,24,0,0,15,21,0,18,8,
1692  3,7,0,5,0,0,23,1,0,25,11,19,24,0,0,20,17,0,0,0,4,0,0,9,14
1693  };
1694 
1695  const int d25_264_9[] = {
1696  // Size: 25 x 25
1697  25,
1698  // Pre-assigned fields
1699  8,0,1,21,0,0,0,7,13,0,9,0,24,0,4,3,16,6,15,0,0,20,0,22,0,
1700  0,0,0,0,20,7,0,0,15,8,16,0,19,10,18,4,1,0,17,5,9,0,0,24,0,
1701  23,0,9,19,0,21,5,12,22,18,0,6,0,0,0,20,0,3,7,8,0,0,16,0,14,
1702  22,8,0,0,0,0,0,9,0,20,3,14,21,23,10,0,0,0,0,6,11,24,0,4,16,
1703  25,0,10,7,0,15,0,11,18,0,0,8,5,13,6,0,22,9,0,3,24,0,0,14,0,
1704  0,16,4,8,18,0,7,22,0,25,0,0,15,0,23,6,0,0,0,0,19,0,24,17,11,
1705  0,18,2,0,19,8,17,0,16,0,10,0,13,21,22,0,0,0,0,11,1,14,6,0,25,
1706  20,0,11,0,5,9,2,0,23,4,1,0,0,22,0,7,6,0,0,0,21,10,15,0,12,
1707  16,0,0,12,0,0,0,21,7,15,0,24,3,11,9,10,5,23,0,14,0,0,22,0,0,
1708  0,25,17,0,0,0,14,0,0,22,7,1,0,3,24,18,23,0,0,12,15,16,5,0,0,
1709  11,23,22,0,10,16,21,14,9,0,0,15,0,0,0,0,4,8,1,17,0,0,0,13,0,
1710  0,20,0,14,24,5,3,6,10,7,0,23,4,0,12,0,0,0,16,0,0,0,17,8,18,
1711  0,0,0,16,8,3,0,1,0,5,6,4,22,0,19,0,15,14,0,0,0,0,20,10,24,
1712  15,0,0,0,2,0,24,0,0,0,20,0,1,7,0,0,10,16,9,22,25,5,0,12,21,
1713  0,7,12,0,23,13,0,24,11,21,0,0,10,0,0,16,18,19,2,9,0,15,4,0,0,
1714  17,3,0,0,1,10,4,0,0,0,22,21,7,24,5,0,2,0,18,0,0,6,0,25,8,
1715  0,0,8,20,13,25,16,0,6,23,0,0,0,5,15,2,0,24,3,1,17,0,0,0,0,
1716  6,13,23,25,17,1,0,4,0,0,19,11,0,0,0,14,7,0,0,20,10,22,0,0,0,
1717  13,4,0,22,9,0,0,0,17,0,23,0,0,14,0,1,0,25,12,19,3,21,0,0,5,
1718  0,0,20,10,0,19,6,0,12,0,13,22,0,8,0,0,0,5,11,2,0,4,9,18,23,
1719  7,19,0,13,11,0,0,3,2,0,18,10,25,0,20,0,17,0,0,0,0,0,12,9,15,
1720  10,17,7,0,0,4,15,25,8,9,0,0,0,0,13,0,0,1,24,0,14,19,0,21,0,
1721  21,0,15,3,0,0,0,0,0,14,24,13,0,18,0,11,0,4,20,0,5,8,23,16,2,
1722  0,11,0,18,0,22,13,8,0,0,15,0,9,6,0,23,25,7,0,0,2,17,19,0,4,
1723  0,24,16,17,22,0,10,2,0,19,0,5,0,4,14,15,12,0,8,0,0,0,18,0,6
1724  };
1725 
1726 
1727  /*
1728  * Instances taken from examples that ship with the generator
1729  * "lsencode" by Carla Gomes <gomes@cs.cornell.edu>.
1730  */
1731 
1732  const int d30_316[] = {
1733  // Size: 30 x 30
1734  30,
1735  // Pre-assigned fields
1736  30,24,2,18,0,15,20,0,5,0,7,0,0,0,21,0,0,23,0,0,17,26,0,25,4,19,12,11,14,0,
1737  0,20,0,0,9,30,28,0,0,21,2,0,0,22,17,0,6,1,27,0,0,0,10,14,24,18,0,8,19,12,
1738  25,16,24,14,4,0,2,0,0,29,11,0,30,17,0,0,21,0,1,0,0,0,0,10,0,0,23,26,9,5,
1739  0,5,30,27,25,24,23,0,0,8,0,0,0,12,2,6,18,0,28,0,19,22,7,17,0,16,4,0,0,1,
1740  28,0,4,3,14,0,0,12,0,2,17,22,0,8,11,20,26,0,21,0,0,0,19,27,0,10,0,0,0,23,
1741  0,10,0,30,0,1,14,0,0,0,21,0,19,11,18,23,9,7,13,0,0,27,0,0,0,0,28,20,24,29,
1742  0,0,0,0,0,16,0,2,0,30,19,28,25,26,6,14,1,27,0,0,0,0,24,0,21,0,0,23,17,7,
1743  10,0,0,15,21,28,19,23,0,26,9,12,1,0,24,22,0,4,0,0,5,29,0,20,17,11,0,14,27,18,
1744  5,0,10,0,19,12,3,7,25,0,6,14,21,0,0,29,8,18,16,4,24,9,0,0,26,2,22,15,0,13,
1745  7,17,14,19,27,20,0,0,29,3,0,0,0,9,0,0,28,13,0,1,15,0,0,4,10,0,26,24,30,0,
1746  0,4,13,20,0,0,0,28,12,19,27,6,0,7,26,5,24,2,11,9,22,14,0,18,0,1,8,17,0,0,
1747  26,14,22,8,0,10,0,6,0,4,0,0,0,0,0,19,0,15,29,3,20,7,9,13,0,0,11,0,0,24,
1748  24,0,11,0,0,18,0,0,14,5,22,8,0,0,0,0,12,17,9,23,6,0,0,0,30,28,0,0,21,2,
1749  16,27,15,24,12,26,25,17,0,1,0,0,23,0,0,30,0,0,10,0,21,28,18,3,29,14,9,7,6,22,
1750  18,3,26,0,7,0,4,0,0,10,29,0,22,23,0,1,0,19,5,28,9,17,25,0,11,0,0,0,20,14,
1751  0,0,20,0,0,3,0,29,10,28,30,13,26,24,0,16,0,21,25,8,23,19,1,9,14,4,18,27,0,17,
1752  19,0,7,25,20,9,16,15,3,14,0,10,17,30,29,27,4,0,23,21,18,0,11,0,28,0,6,12,2,8,
1753  0,2,19,29,26,0,11,10,0,16,8,23,0,21,5,24,0,0,20,0,7,0,3,0,0,9,25,0,4,28,
1754  9,23,0,7,6,0,29,0,22,24,10,0,0,1,4,26,11,5,19,0,12,2,13,16,3,27,0,30,0,20,
1755  2,0,29,16,10,0,0,11,18,15,1,5,0,4,13,17,20,0,6,24,0,21,14,12,8,30,0,0,22,0,
1756  6,29,1,0,28,17,27,0,0,0,0,20,0,14,7,0,3,0,0,2,8,0,4,22,15,26,21,5,16,30,
1757  0,0,18,0,22,29,0,0,0,17,0,25,20,10,19,0,5,0,15,27,0,30,2,6,0,0,24,28,1,9,
1758  0,12,21,0,18,27,30,0,0,0,28,4,2,0,9,25,23,14,0,0,0,11,0,29,0,6,0,10,0,3,
1759  0,11,28,0,29,22,17,0,24,6,0,9,0,16,20,21,0,25,0,12,30,0,0,0,2,7,0,1,5,19,
1760  29,22,6,21,13,11,26,0,1,0,20,19,24,2,0,8,0,16,17,0,27,3,0,28,0,25,10,0,23,0,
1761  0,26,9,22,24,4,5,20,11,27,18,17,0,13,25,28,19,12,14,6,2,0,8,30,0,29,3,21,15,10,
1762  8,0,16,9,0,0,0,21,27,25,24,7,12,19,0,18,0,0,2,0,1,4,0,0,22,20,30,0,13,0,
1763  22,30,8,0,0,0,0,0,21,0,0,27,11,0,1,10,7,28,4,17,14,6,29,0,9,24,20,25,0,16,
1764  0,19,27,28,17,6,0,0,4,0,25,21,15,20,30,2,29,8,26,0,0,0,0,24,5,23,16,22,3,0,
1765  1,15,17,0,0,19,24,0,9,23,14,3,6,0,0,4,16,0,0,20,11,12,0,0,0,0,7,13,0,26
1766  };
1767 
1768  const int d30_320[] = {
1769  // Size: 30 x 30
1770  30,
1771  // Pre-assigned fields
1772  0,2,3,0,5,6,7,8,9,0,11,0,0,0,0,16,17,18,0,20,21,22,0,24,0,0,0,28,0,30,
1773  2,3,4,0,6,7,0,9,10,0,12,0,14,15,0,17,18,0,20,21,22,0,24,0,26,27,0,29,30,0,
1774  0,4,5,6,7,8,9,10,0,0,0,14,15,16,0,18,19,20,21,22,23,24,0,26,27,28,0,30,1,2,
1775  0,5,0,7,8,9,10,11,12,0,14,15,16,0,18,19,20,21,22,23,0,25,26,27,28,29,30,1,2,0,
1776  0,0,7,8,0,0,0,12,0,0,15,16,17,18,19,0,21,22,0,24,25,0,27,28,29,30,0,0,3,4,
1777  6,7,0,0,0,11,12,13,14,15,16,17,0,19,20,21,22,0,24,0,0,0,0,29,0,1,2,0,0,5,
1778  0,0,9,10,11,12,13,14,15,0,17,18,19,0,21,0,0,0,25,26,27,0,0,0,1,2,3,4,0,0,
1779  0,9,0,11,12,13,14,15,0,17,18,0,20,21,0,0,24,25,26,27,28,29,0,1,0,3,4,0,0,0,
1780  9,10,0,12,13,14,15,16,0,18,19,20,21,22,23,24,25,0,0,28,29,30,0,0,3,4,5,6,7,0,
1781  0,11,0,0,0,0,0,17,18,19,20,21,22,0,0,25,26,27,0,0,30,0,2,3,4,5,0,0,8,9,
1782  11,12,13,14,15,0,17,0,19,20,21,22,0,0,25,26,0,28,29,30,1,2,3,4,0,6,7,8,0,10,
1783  12,13,0,15,16,0,18,0,20,0,22,23,0,25,26,27,0,0,0,1,2,3,4,0,6,7,0,9,0,11,
1784  0,0,15,16,0,0,0,20,21,22,23,0,25,0,27,28,29,0,0,2,3,4,5,6,7,8,0,10,11,12,
1785  0,0,16,17,0,19,20,0,22,0,0,25,0,27,28,29,0,1,2,3,4,0,0,7,8,9,10,11,0,13,
1786  0,16,17,0,0,20,0,22,23,24,0,26,27,0,0,30,0,2,0,4,0,6,7,0,0,10,11,12,13,14,
1787  0,17,18,0,0,21,22,23,24,25,26,27,0,29,30,1,2,0,0,0,6,0,0,9,10,0,0,13,0,15,
1788  0,0,19,20,21,22,23,0,25,26,27,0,29,30,0,0,3,4,5,6,7,8,0,0,11,12,0,0,15,16,
1789  0,19,20,0,0,23,0,0,26,27,28,29,30,1,2,0,4,0,0,7,8,9,10,11,0,13,14,0,16,17,
1790  19,0,0,0,0,24,25,26,0,0,0,0,1,0,3,0,5,0,0,8,9,0,11,12,13,0,15,16,0,0,
1791  0,0,22,23,0,0,26,0,28,29,30,1,0,0,4,5,6,0,8,9,10,0,12,0,14,0,16,0,0,19,
1792  21,22,23,0,25,26,27,0,29,30,0,2,3,4,5,6,0,8,9,0,0,0,13,0,0,16,17,18,19,0,
1793  22,23,24,25,26,27,28,29,0,1,2,3,0,5,6,0,0,9,0,11,12,13,0,15,0,17,18,19,0,21,
1794  23,24,25,0,0,28,0,0,0,0,0,4,5,0,7,0,0,0,0,12,13,0,0,0,0,18,19,0,0,0,
1795  24,0,0,27,0,0,30,1,2,0,0,5,0,0,8,0,0,11,0,13,14,15,16,17,0,19,20,21,0,0,
1796  25,0,27,28,29,30,1,2,3,4,5,6,7,8,0,0,0,12,0,14,0,16,17,18,19,20,0,22,23,24,
1797  26,27,28,29,0,1,0,3,4,0,6,0,8,9,10,11,12,0,14,15,0,17,0,0,20,21,0,0,24,25,
1798  27,0,0,0,0,2,3,4,0,6,7,8,9,10,0,0,13,14,15,16,17,0,19,0,21,22,0,24,25,0,
1799  28,29,30,0,2,3,4,0,0,0,0,0,10,11,12,13,14,15,0,0,18,19,20,21,0,23,24,25,26,27,
1800  0,0,1,0,0,4,0,0,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,0,23,24,25,26,27,0,
1801  30,1,0,3,4,5,6,7,0,9,0,11,12,0,14,0,0,0,18,19,0,21,22,23,24,0,26,27,28,29
1802  };
1803 
1804  /*
1805  * 40 hard 30x30 instances with 42% holes generated with "lsencode" by Carla
1806  * Gomes <gomes@cs.cornell.edu>. Those instances where first used in
1807  * A. Zanarini, G. Pesant, Solution counting algorithms for
1808  * constraint-centered search heuristics, CP 2007.
1809  * Pages 743-757, LNCS 4741
1810  *
1811  */
1812 
1813  const int d30_374_1[] = {
1814  30,
1815  0,19,0,29,0,15,0,25,0,4,7,21,0,14,0,24,22,0,0,0,5,23,10,26,0,16,9,2,0,8,
1816  0,18,0,5,29,22,0,17,0,7,30,6,21,0,24,0,26,1,13,11,23,0,15,14,19,0,0,0,0,0,
1817  15,0,30,0,4,6,19,0,0,14,0,0,0,0,10,27,0,0,12,20,25,18,22,0,13,7,0,0,29,17,
1818  0,0,20,0,9,17,6,0,16,0,23,18,12,0,13,0,0,11,26,0,29,0,0,0,2,19,15,7,3,0,
1819  0,0,4,3,0,25,0,0,0,0,22,8,0,0,20,14,24,6,0,29,30,7,0,27,12,0,0,5,19,23,
1820  0,0,0,0,17,12,0,24,15,16,4,20,14,0,0,0,0,18,0,0,19,2,27,30,0,6,0,26,8,29,
1821  14,12,6,23,0,0,0,4,0,2,13,24,9,0,0,3,17,30,8,0,7,0,0,0,20,18,0,11,0,5,
1822  12,0,0,7,0,1,9,30,28,25,0,14,20,0,19,22,10,0,0,26,27,0,0,11,0,5,0,0,6,24,
1823  0,0,28,0,11,0,0,7,0,0,0,27,3,17,18,21,0,14,23,24,12,0,25,9,26,22,0,0,16,2,
1824  2,3,21,0,26,0,5,1,14,0,0,17,0,6,0,23,18,10,25,28,0,15,9,16,27,0,0,0,0,0,
1825  16,28,10,0,19,11,0,0,24,0,6,0,0,29,23,30,0,21,2,3,1,22,0,5,0,13,0,0,12,0,
1826  0,15,13,0,5,0,20,0,26,27,0,7,22,1,0,4,19,0,14,10,0,0,11,0,8,24,0,0,25,0,
1827  4,0,12,21,0,23,3,0,7,17,0,0,16,5,29,9,0,0,0,27,0,0,8,10,28,1,2,14,0,0,
1828  0,0,16,0,0,21,12,19,0,26,0,13,8,22,2,0,25,5,15,0,20,0,24,0,0,0,17,6,23,0,
1829  18,2,29,0,0,9,10,28,30,0,12,22,23,0,0,0,14,0,5,0,0,20,7,0,0,15,26,0,17,0,
1830  5,24,0,6,25,0,0,0,10,19,1,0,29,2,8,0,30,20,0,12,0,28,3,0,0,0,11,27,15,0,
1831  30,8,5,0,7,0,16,14,21,3,0,0,11,9,26,29,12,13,1,0,0,0,0,4,0,0,0,22,0,0,
1832  23,0,9,27,21,0,0,20,25,28,0,0,24,0,4,17,13,0,0,0,26,0,0,18,29,2,14,0,0,22,
1833  0,0,19,28,0,0,15,21,5,0,26,29,0,20,0,0,16,0,0,1,0,12,0,0,9,8,7,17,24,30,
1834  6,0,0,0,2,24,0,0,8,0,3,15,0,0,11,20,0,0,16,9,0,27,30,17,0,14,10,1,13,4,
1835  28,14,22,30,0,3,0,0,2,0,19,0,17,10,15,0,0,29,0,23,11,0,26,0,0,20,12,0,21,1,
1836  0,11,0,19,24,0,30,8,0,1,0,9,0,26,0,0,0,12,3,0,0,16,18,22,21,0,25,15,20,7,
1837  13,23,15,17,0,28,21,26,0,0,11,0,2,0,27,8,0,0,9,4,0,14,12,0,10,0,0,0,0,19,
1838  0,10,11,13,0,0,0,0,0,22,24,23,26,25,12,15,1,0,7,0,8,6,0,0,16,17,18,28,0,0,
1839  29,25,0,0,12,5,8,11,0,9,10,3,0,0,0,26,7,0,0,0,14,1,0,2,15,0,6,16,0,13,
1840  21,9,0,26,15,0,25,0,22,23,0,0,0,27,0,0,0,4,18,0,0,11,13,7,5,0,3,29,0,10,
1841  10,29,0,14,0,26,4,0,9,5,0,0,15,0,6,0,11,7,24,18,0,8,0,28,0,0,19,0,2,21,
1842  26,6,0,0,22,0,0,16,19,0,18,11,0,12,21,0,3,17,0,2,13,25,0,0,23,27,0,4,0,0,
1843  0,0,0,22,0,13,1,2,29,0,15,0,19,28,0,11,4,27,0,16,21,0,6,12,0,0,20,0,0,9,
1844  0,13,24,16,30,0,14,0,0,18,0,0,0,15,0,0,0,9,10,0,3,26,2,25,0,29,5,20,11,6
1845  };
1846 
1847  const int d30_374_2[] = {
1848  30,
1849  15,4,20,0,14,10,23,0,0,7,0,8,0,0,26,0,0,21,3,0,0,11,17,13,9,0,12,0,6,16,
1850  0,11,29,0,0,0,0,0,17,0,15,27,24,18,25,4,0,0,0,9,23,19,0,0,3,5,16,0,26,6,
1851  29,0,0,0,8,0,0,5,0,3,0,24,20,9,0,17,0,0,18,2,11,0,14,21,0,25,0,28,16,30,
1852  6,5,22,20,9,29,0,30,19,0,0,25,0,15,0,0,23,14,0,0,0,0,0,1,16,13,2,26,0,0,
1853  0,0,27,0,24,6,7,29,28,0,1,0,3,0,16,0,13,0,2,26,15,20,4,0,10,0,0,0,17,0,
1854  0,10,0,9,12,2,0,0,15,24,17,0,0,4,0,28,0,20,0,0,30,0,3,0,27,29,23,11,0,8,
1855  7,20,12,0,0,13,4,18,29,22,16,0,2,0,0,0,5,0,0,23,8,21,0,19,26,0,0,0,25,11,
1856  0,0,0,13,0,0,22,0,9,27,25,4,14,0,30,5,24,16,0,28,0,10,11,0,19,0,8,0,1,0,
1857  24,30,13,26,25,0,0,4,27,5,21,0,0,0,0,3,0,0,0,0,6,28,20,16,0,22,0,29,19,7,
1858  0,0,1,21,0,0,6,24,14,28,3,30,22,2,4,26,0,0,27,19,0,0,7,0,0,0,0,0,5,15,
1859  5,0,0,12,26,0,9,0,3,0,0,0,0,21,0,0,17,0,7,13,4,0,29,25,8,0,11,27,14,20,
1860  27,0,16,0,11,0,0,12,0,0,14,0,0,20,8,0,0,0,30,24,26,0,13,5,4,1,18,0,22,19,
1861  10,0,17,0,2,0,0,0,5,21,0,28,26,0,7,0,14,9,0,30,0,18,1,4,13,16,0,8,20,0,
1862  17,13,19,0,0,25,11,2,8,0,0,22,0,3,27,0,1,30,0,20,0,14,10,6,0,0,15,16,0,0,
1863  30,23,0,0,13,0,0,20,10,15,0,7,16,17,0,0,12,1,21,6,0,0,0,29,14,0,9,25,0,0,
1864  0,26,14,4,7,20,0,22,6,0,28,0,12,0,3,21,2,27,0,10,0,8,0,0,0,24,17,0,0,13,
1865  0,0,0,0,0,8,0,27,0,19,13,0,9,1,29,12,0,7,16,0,0,2,22,28,5,11,20,18,0,10,
1866  8,18,0,30,27,4,19,17,0,25,0,29,11,23,5,16,0,26,0,0,0,13,21,12,0,0,0,14,0,0,
1867  0,22,2,0,0,26,0,0,0,10,0,11,21,12,28,15,16,0,8,0,5,17,30,0,1,0,0,23,0,9,
1868  19,0,0,3,0,0,5,23,2,0,6,0,30,0,9,7,4,10,11,8,21,27,0,0,0,17,0,22,0,28,
1869  1,29,5,8,0,0,0,25,23,12,26,10,19,0,0,13,0,28,0,0,7,24,9,0,0,3,6,0,21,0,
1870  23,15,0,28,0,14,21,0,26,29,0,20,7,0,11,6,0,0,25,0,9,30,0,0,0,2,5,10,0,22,
1871  0,0,10,1,0,18,30,0,0,0,7,0,0,26,0,27,0,19,28,3,0,0,0,8,22,12,21,17,15,25,
1872  12,0,3,22,29,16,15,0,0,0,19,9,8,27,17,25,26,0,14,0,13,0,0,0,0,0,1,2,0,24,
1873  0,0,4,29,28,3,2,0,12,6,0,0,0,0,0,19,30,11,0,1,20,0,0,15,18,21,27,0,10,14,
1874  11,1,0,16,20,28,0,13,0,14,5,0,6,8,0,10,15,0,29,0,3,12,0,26,0,0,0,9,7,0,
1875  4,28,30,18,0,0,26,15,0,0,24,1,0,10,2,9,7,17,13,22,0,0,0,3,0,20,0,0,0,29,
1876  0,0,0,6,0,0,3,0,11,0,10,13,0,28,1,0,20,5,15,16,14,0,0,17,23,18,0,24,30,0,
1877  16,19,0,0,18,11,14,28,0,0,0,26,25,0,0,0,27,0,17,0,12,9,8,0,0,15,3,30,2,0,
1878  0,7,15,0,4,17,8,16,0,9,18,6,0,0,21,0,29,13,0,14,10,0,19,11,24,27,0,0,0,0
1879  };
1880 
1881  const int d30_374_3[] = {
1882  30,
1883  0,6,26,0,0,16,2,14,5,19,7,0,0,0,0,8,9,0,13,22,0,0,0,21,11,3,12,0,0,29,
1884  0,2,0,19,0,12,21,0,1,14,0,0,0,0,4,0,0,23,0,18,17,0,3,8,16,0,11,24,22,13,
1885  24,26,0,0,2,0,0,0,27,17,0,8,0,20,12,29,28,0,18,0,0,21,25,0,1,30,0,0,11,22,
1886  0,0,5,16,0,27,1,0,0,3,0,11,2,0,13,28,4,0,0,19,20,10,0,29,0,22,14,0,17,0,
1887  3,0,0,22,16,0,15,0,0,23,24,27,30,1,0,18,12,0,0,25,14,28,5,0,0,8,20,6,0,0,
1888  30,0,0,0,10,15,0,1,0,21,25,0,24,22,0,20,0,0,0,0,8,26,0,27,7,0,3,2,9,12,
1889  0,0,2,11,0,30,0,0,16,1,0,21,4,6,0,25,0,0,0,27,24,14,0,3,12,23,0,0,19,18,
1890  29,8,0,28,12,0,0,25,21,0,0,2,11,0,0,0,26,22,6,17,0,9,19,20,0,0,0,3,18,30,
1891  0,5,28,0,3,0,19,0,23,25,18,0,0,30,0,17,6,13,0,16,0,1,20,0,26,0,0,4,0,24,
1892  18,0,15,4,6,5,0,16,19,8,0,3,27,11,10,0,21,0,9,0,22,0,13,0,0,20,0,0,0,1,
1893  9,14,3,0,0,8,0,21,29,0,0,5,0,26,15,0,2,16,0,0,0,11,7,0,17,0,1,0,25,10,
1894  0,0,1,0,0,29,0,10,0,24,5,7,0,17,25,23,14,0,0,2,6,0,15,0,9,0,16,11,0,8,
1895  6,7,0,0,22,2,0,0,25,0,0,14,12,24,5,0,0,19,29,4,16,0,28,17,0,26,10,9,0,0,
1896  0,13,0,5,27,0,3,30,7,0,19,26,0,0,23,15,29,14,21,12,0,6,0,0,0,0,0,10,0,16,
1897  0,25,30,17,0,0,18,11,13,0,4,6,0,0,0,27,23,5,20,0,0,0,2,26,0,14,22,16,0,0,
1898  0,16,13,0,0,0,11,2,9,0,17,0,15,0,8,0,3,1,4,24,19,20,0,0,0,21,0,25,0,5,
1899  11,0,0,24,18,21,0,12,0,0,0,0,0,13,0,16,0,29,8,0,10,15,23,0,30,6,9,20,2,26,
1900  14,24,6,30,9,17,7,0,0,27,23,18,0,0,20,0,5,15,1,0,0,0,0,28,29,0,0,21,0,4,
1901  23,0,0,1,30,25,4,5,12,0,10,19,18,0,0,0,0,3,15,0,0,0,0,7,20,28,21,0,13,9,
1902  0,0,16,10,19,0,0,3,17,28,11,9,1,29,0,0,20,4,26,0,15,23,22,0,0,12,0,0,14,0,
1903  5,0,19,0,13,28,25,0,2,0,0,0,0,18,24,22,7,0,0,0,0,17,0,14,21,0,23,12,20,27,
1904  12,23,22,0,0,20,6,0,0,29,2,16,10,15,28,1,0,21,27,0,9,0,0,19,3,0,0,0,30,0,
1905  15,0,9,25,29,1,0,0,14,11,0,0,0,0,18,24,22,0,0,0,13,0,4,12,23,16,7,0,6,21,
1906  22,3,0,15,5,23,17,0,11,20,0,0,29,25,0,0,0,6,7,8,26,0,0,10,28,9,13,0,0,0,
1907  0,10,0,0,0,0,14,24,28,9,1,0,0,5,7,0,18,0,16,6,27,19,30,2,8,0,17,0,12,0,
1908  0,19,24,14,25,0,0,6,0,4,29,0,17,8,11,13,0,0,23,20,7,16,0,1,0,15,0,5,0,0,
1909  27,28,25,26,0,0,16,0,0,0,13,0,19,4,0,21,0,11,0,7,1,0,9,0,18,24,15,14,10,0,
1910  16,0,17,0,23,0,5,22,0,0,12,13,20,0,3,10,0,25,24,15,0,8,14,0,0,0,0,27,29,0,
1911  0,0,21,0,0,10,20,7,0,0,0,17,5,0,9,0,0,30,22,1,23,13,16,25,2,0,24,29,3,0,
1912  19,18,0,20,0,0,26,15,0,0,21,30,6,23,14,0,27,12,0,3,0,0,1,9,0,25,29,0,5,0
1913  };
1914 
1915  const int d30_374_4[] = {
1916  30,
1917  0,0,20,16,26,22,0,0,14,19,0,24,5,11,0,13,27,0,28,12,0,6,0,0,23,0,17,0,15,18,
1918  0,0,26,6,1,7,28,0,19,0,0,0,0,0,24,0,15,23,21,8,11,0,12,0,18,27,14,9,0,30,
1919  0,0,0,19,6,0,8,10,17,30,24,14,0,27,0,0,7,0,18,0,9,23,0,15,0,0,22,0,11,16,
1920  14,21,0,7,0,0,15,0,0,0,0,0,4,24,3,0,6,0,20,30,23,10,19,13,16,0,29,2,0,9,
1921  0,0,0,0,10,2,0,3,8,9,23,4,28,0,0,5,17,21,26,0,0,0,18,12,19,0,0,14,25,0,
1922  0,22,1,24,25,0,3,18,0,0,11,13,0,0,10,28,8,0,9,0,2,19,0,29,20,0,7,0,4,0,
1923  17,0,0,20,0,21,30,15,22,5,0,27,11,0,0,1,9,18,24,0,29,0,2,0,0,19,0,0,13,10,
1924  19,0,22,0,30,11,0,7,5,24,14,0,0,0,18,29,13,1,0,0,28,0,15,0,0,17,0,8,16,0,
1925  0,23,5,12,0,14,22,16,0,0,27,20,0,25,0,0,0,0,0,15,13,9,3,0,0,2,6,21,10,19,
1926  4,0,24,0,28,5,0,2,0,0,13,0,21,3,0,11,0,8,19,10,14,29,30,7,0,25,0,0,26,0,
1927  0,0,0,10,3,15,0,17,0,21,7,0,1,13,0,0,30,0,2,25,16,26,4,0,9,8,5,0,0,0,
1928  15,30,0,17,0,23,9,29,0,0,20,28,0,4,13,24,0,7,0,1,0,0,0,25,5,0,21,18,0,0,
1929  20,0,16,1,8,0,2,21,0,22,9,0,15,29,23,0,12,0,10,0,0,0,24,30,0,0,13,25,19,0,
1930  0,12,0,0,15,0,0,5,0,13,0,18,27,0,20,7,29,4,23,22,26,0,28,0,24,9,0,30,6,0,
1931  0,5,0,0,20,25,27,0,16,3,0,30,13,0,21,18,0,0,0,28,17,12,0,0,29,0,23,0,24,4,
1932  18,13,27,0,0,0,0,14,0,26,3,10,7,0,0,30,23,20,0,0,0,8,5,0,0,0,15,4,1,2,
1933  26,0,21,27,0,0,25,12,13,7,0,6,0,9,0,0,0,3,0,0,10,0,0,20,0,23,1,15,8,22,
1934  25,7,30,0,9,0,13,0,0,0,28,0,2,0,0,6,0,0,0,17,0,22,27,10,12,0,11,3,18,26,
1935  30,9,4,0,2,19,0,0,21,16,0,3,0,0,25,0,11,22,0,0,15,0,7,17,1,0,8,6,0,29,
1936  0,3,0,0,0,29,10,26,20,11,25,23,30,15,9,0,21,16,12,0,7,0,8,22,0,0,0,0,0,24,
1937  9,10,0,8,5,4,11,0,12,28,0,17,16,14,0,0,20,0,0,23,0,25,0,0,26,7,0,24,0,0,
1938  0,28,2,5,19,17,0,0,0,6,1,0,9,30,0,26,0,13,15,7,8,14,0,0,0,4,0,0,0,11,
1939  16,8,19,0,0,0,0,0,26,0,2,29,14,20,7,21,0,28,25,24,6,13,0,0,0,22,0,12,3,0,
1940  12,16,0,0,27,0,0,0,0,0,10,0,0,22,17,15,5,0,3,13,0,18,9,14,28,24,0,0,30,23,
1941  3,1,17,26,0,0,6,11,4,0,15,0,0,0,22,20,0,19,0,0,0,28,0,18,0,30,25,5,27,0,
1942  6,15,13,0,4,9,26,0,3,27,0,1,0,0,16,25,0,17,0,0,0,0,29,24,10,12,30,0,0,0,
1943  0,18,3,28,0,0,19,0,7,10,0,0,0,2,29,0,0,5,8,11,0,21,14,1,0,13,4,16,0,20,
1944  7,0,29,0,0,0,0,0,18,0,0,12,25,1,15,27,28,26,11,0,20,0,0,4,6,14,0,17,5,21,
1945  28,0,0,11,24,26,12,30,1,0,18,9,22,17,8,0,0,0,0,29,0,4,25,2,13,0,0,20,0,0,
1946  0,4,14,25,0,6,0,1,0,15,0,0,0,7,0,23,10,0,30,27,3,24,0,26,22,5,2,0,0,12
1947  };
1948 
1949  const int d30_374_5[] = {
1950  30,
1951  25,18,16,19,4,0,0,7,0,0,0,0,29,15,14,17,0,13,0,24,3,2,0,0,27,0,30,21,0,0,
1952  5,7,6,0,0,14,28,17,0,0,4,0,13,9,20,23,2,29,1,0,0,0,0,0,11,12,0,0,22,19,
1953  14,0,11,0,12,0,0,27,23,18,24,9,2,30,17,19,21,0,0,16,0,7,20,28,0,0,0,25,0,0,
1954  9,0,13,4,0,5,0,0,15,0,0,28,26,0,0,25,22,24,2,11,0,0,23,0,0,0,19,10,21,1,
1955  0,11,24,23,0,17,21,9,0,12,27,25,6,0,15,0,0,0,10,8,0,0,19,30,0,26,0,0,7,0,
1956  24,0,0,0,16,0,27,22,5,13,30,10,0,19,28,4,11,21,0,2,0,0,8,20,17,0,7,0,0,0,
1957  0,0,10,27,17,0,0,1,0,24,3,0,25,0,18,9,0,6,14,23,19,13,15,0,2,0,4,0,12,0,
1958  0,0,0,25,13,0,19,0,1,23,17,3,0,5,6,0,10,27,0,14,0,20,30,15,26,0,0,0,16,28,
1959  15,0,7,0,3,0,25,0,21,2,20,0,8,11,26,0,30,0,16,0,0,18,12,0,0,29,27,28,0,22,
1960  10,8,18,12,0,22,26,13,0,0,7,15,0,1,0,0,0,9,23,0,0,29,0,6,20,0,21,11,0,0,
1961  0,23,0,15,0,0,0,0,13,0,0,22,0,27,4,12,29,2,20,0,0,0,17,3,0,5,8,1,11,25,
1962  20,16,27,0,0,30,12,0,26,0,14,0,0,0,9,0,4,8,24,0,0,28,0,13,5,18,0,23,0,15,
1963  18,3,9,26,1,0,0,19,0,29,0,0,0,8,0,0,0,14,0,12,10,17,0,27,13,20,28,22,30,0,
1964  0,2,26,0,8,21,1,16,0,5,12,27,22,10,0,0,0,4,0,0,11,0,29,7,18,0,0,14,0,20,
1965  6,19,0,22,21,13,0,20,8,0,26,0,0,18,0,0,0,11,9,0,28,15,4,0,30,0,25,24,29,0,
1966  28,21,5,30,26,11,0,0,0,22,15,0,17,0,0,0,0,0,29,0,12,14,0,25,0,16,23,0,4,13,
1967  0,0,0,0,20,27,11,26,29,10,0,1,0,0,0,0,25,28,8,7,9,12,0,24,0,13,14,0,0,30,
1968  7,0,0,9,22,0,24,30,19,0,0,0,5,20,27,14,16,17,0,3,6,10,0,0,0,0,0,0,2,12,
1969  8,26,0,0,19,0,0,18,14,0,11,20,0,0,13,0,23,25,27,1,21,0,22,0,0,0,3,30,17,9,
1970  27,0,21,0,0,0,17,5,0,30,0,4,0,0,29,22,0,10,25,0,13,9,7,26,12,0,0,0,28,8,
1971  0,25,1,0,0,15,0,0,0,16,0,21,9,3,7,0,0,0,17,19,26,24,5,12,10,2,0,18,13,0,
1972  23,0,0,21,0,0,4,0,6,0,0,0,0,24,0,3,8,15,0,20,30,27,16,17,28,1,12,5,19,0,
1973  3,12,29,28,0,0,0,0,11,6,16,26,0,7,0,20,0,0,0,0,25,0,2,0,1,9,17,0,10,4,
1974  0,27,25,5,15,12,30,24,18,17,19,0,4,0,0,10,0,0,26,0,2,0,0,0,0,23,0,9,0,6,
1975  0,13,0,0,2,29,7,14,0,28,0,11,18,16,0,8,6,0,5,9,24,0,0,19,3,25,0,0,0,27,
1976  0,0,0,0,30,18,20,12,22,0,0,0,28,4,2,26,7,0,19,29,0,0,0,11,23,15,6,0,14,17,
1977  13,29,0,6,23,19,2,21,0,11,0,14,30,0,0,15,18,0,12,0,4,22,0,16,0,0,0,17,0,0,
1978  0,0,8,0,25,1,9,0,12,0,0,13,20,0,30,0,5,0,0,4,27,16,14,0,19,6,10,15,0,0,
1979  4,9,19,7,0,20,23,0,2,27,28,0,24,0,5,21,1,26,0,15,0,0,0,0,0,11,16,0,3,0,
1980  0,0,0,2,0,28,0,0,0,0,25,19,21,0,22,24,12,0,0,13,15,3,1,18,0,14,20,29,26,16
1981  };
1982 
1983  const int d30_374_6[] = {
1984  30,
1985  2,0,10,0,0,0,26,0,21,7,8,22,9,6,0,0,14,16,0,15,4,23,0,25,13,12,0,0,0,29,
1986  0,30,28,26,0,0,9,11,2,20,24,0,21,15,0,0,16,0,14,17,0,0,10,0,0,0,5,4,29,27,
1987  0,0,16,3,0,0,0,2,0,0,20,8,12,19,27,22,28,0,7,0,0,0,24,23,14,26,21,0,17,5,
1988  0,10,0,4,8,12,0,29,0,0,0,0,22,0,0,0,0,13,25,16,5,20,2,1,7,23,0,15,19,6,
1989  26,12,24,0,9,18,16,23,0,0,10,21,11,29,0,0,0,15,17,22,0,0,20,0,5,0,0,28,0,0,
1990  8,23,0,0,13,7,0,18,0,26,0,0,5,2,0,20,17,22,1,14,12,0,25,15,11,0,0,0,0,0,
1991  0,16,22,14,4,0,0,19,0,13,0,15,1,23,0,11,0,26,0,0,6,30,0,21,0,9,12,18,0,0,
1992  1,24,9,0,28,10,12,5,20,0,0,0,0,27,21,14,0,0,11,0,23,15,30,0,19,0,17,0,0,18,
1993  5,25,26,0,0,9,4,0,28,10,21,0,0,0,0,0,24,0,0,0,0,13,29,14,16,0,23,12,22,3,
1994  0,1,4,0,30,24,29,0,17,0,0,7,14,0,0,8,2,9,18,25,27,0,0,0,10,6,0,0,15,11,
1995  30,27,0,2,0,19,3,0,24,0,12,18,0,0,13,23,0,11,0,9,15,0,1,0,0,0,4,5,26,25,
1996  0,0,0,0,12,0,24,0,0,18,11,17,26,0,7,0,4,29,15,10,9,2,8,0,0,16,27,0,23,0,
1997  24,0,20,0,7,8,0,0,13,16,2,0,0,26,14,29,0,12,4,0,0,1,0,0,3,11,28,0,27,15,
1998  0,0,0,6,0,23,0,0,19,29,0,0,0,17,5,24,18,27,3,30,16,0,11,12,4,13,0,21,0,7,
1999  0,0,8,11,0,28,0,0,0,0,0,19,10,0,23,18,25,0,24,26,21,0,5,6,0,0,30,3,16,20,
2000  22,0,0,17,0,25,11,10,0,28,13,16,27,0,24,1,5,0,2,6,19,26,0,0,0,0,9,0,7,0,
2001  17,20,18,0,0,0,0,3,11,0,0,9,25,0,26,15,23,28,10,0,0,21,4,0,30,0,29,7,0,1,
2002  0,0,0,28,6,15,0,30,10,12,16,11,17,0,8,13,27,4,0,0,0,19,0,0,0,22,0,29,20,0,
2003  3,0,12,0,29,4,21,6,26,22,23,27,0,0,2,0,0,19,8,5,0,18,16,30,0,0,0,17,0,0,
2004  9,8,2,27,3,0,10,0,0,0,0,29,0,25,17,0,7,21,13,0,24,28,0,20,18,1,0,0,11,0,
2005  23,0,14,24,27,29,20,28,8,4,0,0,0,0,16,12,0,7,0,0,0,0,15,18,1,17,0,6,0,30,
2006  27,0,5,7,21,22,0,20,0,30,14,0,0,13,0,6,0,0,9,11,1,0,0,10,0,4,26,23,0,0,
2007  0,0,13,29,23,2,22,0,0,17,0,6,7,16,0,0,9,0,0,18,28,0,0,24,0,0,14,10,25,21,
2008  21,14,6,0,0,0,7,8,0,0,15,2,0,0,9,26,0,0,16,13,29,12,0,5,0,20,1,0,4,23,
2009  0,22,0,21,0,0,0,25,3,5,0,0,8,28,0,0,11,0,0,24,30,7,19,16,17,15,0,9,2,0,
2010  16,15,17,19,0,13,0,1,27,0,9,0,28,18,0,0,0,0,23,29,25,4,0,0,12,5,0,0,14,0,
2011  11,3,0,0,19,0,17,15,14,27,1,0,0,0,20,0,26,10,0,8,0,0,9,2,23,18,0,16,0,0,
2012  0,19,0,30,0,0,1,0,29,0,28,0,0,12,22,2,20,24,0,0,14,8,0,0,0,3,11,27,13,26,
2013  14,26,0,22,25,0,0,0,6,0,7,1,19,8,0,0,3,5,0,0,0,11,0,0,20,28,2,13,18,16,
2014  0,0,0,23,18,0,2,9,16,25,0,12,24,4,11,27,0,0,0,0,0,29,13,7,6,0,22,0,0,28
2015  };
2016 
2017  const int d30_374_7[] = {
2018  30,
2019  0,26,16,0,15,14,0,0,0,11,23,19,21,3,0,5,20,17,2,8,0,6,0,0,0,0,7,24,0,12,
2020  0,16,10,0,0,0,30,0,0,5,0,0,28,9,0,26,8,19,0,6,7,4,1,14,0,11,0,0,29,17,
2021  0,10,9,2,1,5,0,30,17,0,13,7,0,23,3,0,0,0,0,0,28,19,8,0,22,0,16,20,0,0,
2022  18,17,5,0,0,3,15,23,20,6,0,11,0,7,0,0,16,0,0,0,0,27,0,8,0,0,22,28,12,1,
2023  7,0,11,4,0,30,0,16,0,14,0,0,6,0,26,0,17,0,20,0,0,12,0,5,10,29,9,22,13,0,
2024  0,0,17,15,0,0,0,24,27,9,0,22,4,2,23,29,0,0,16,0,11,5,0,0,0,18,26,3,0,28,
2025  0,15,0,0,0,0,8,0,0,25,0,1,18,19,21,7,23,0,28,22,27,0,14,0,13,10,0,17,30,0,
2026  15,0,22,0,12,0,0,28,25,0,11,0,20,0,0,14,18,13,17,24,8,30,0,6,0,3,0,16,0,23,
2027  0,21,0,24,20,9,29,0,26,2,15,12,0,5,14,0,4,23,0,0,0,0,0,3,30,28,17,0,19,0,
2028  0,0,14,0,16,2,0,13,10,28,0,25,24,0,19,3,0,29,0,30,20,0,21,0,0,26,23,0,1,8,
2029  0,18,13,0,11,0,28,17,0,0,27,3,8,30,4,19,0,6,7,0,0,0,0,22,14,16,0,0,25,21,
2030  14,0,18,25,0,0,6,21,2,0,20,0,0,12,0,16,0,28,13,0,0,0,5,1,0,15,29,0,24,27,
2031  0,2,0,12,29,27,0,25,4,0,0,0,7,28,6,0,30,0,0,11,16,8,18,0,1,20,0,23,0,0,
2032  27,23,28,20,0,0,18,26,7,13,0,0,0,0,17,0,1,0,0,0,12,25,15,0,6,0,5,19,8,10,
2033  16,4,0,0,21,11,14,0,1,0,26,0,17,10,28,13,0,5,12,0,25,0,29,23,0,8,0,0,9,0,
2034  0,0,27,0,13,1,12,22,0,26,30,29,0,24,0,21,0,0,18,0,0,14,4,2,17,5,11,8,0,0,
2035  4,0,25,27,0,12,7,29,11,10,21,0,30,0,0,0,0,22,0,28,18,0,9,0,23,0,14,0,0,2,
2036  17,13,0,7,14,16,0,0,0,8,2,0,29,0,0,0,0,0,0,23,15,3,10,30,0,4,21,0,5,20,
2037  9,0,8,28,0,13,21,0,16,18,4,24,0,6,12,20,15,1,10,29,0,0,19,0,0,0,0,25,0,0,
2038  29,20,0,0,28,0,0,0,0,0,8,27,23,0,0,30,6,0,24,10,0,7,3,15,12,2,0,13,11,9,
2039  0,9,0,0,30,17,24,0,5,27,0,20,14,4,2,0,10,0,0,3,13,15,0,19,16,0,0,1,0,7,
2040  24,28,15,6,22,0,3,0,0,17,0,26,16,0,0,10,5,8,21,0,0,2,0,0,19,0,0,11,18,0,
2041  8,11,0,13,19,6,0,0,0,0,9,15,0,0,18,22,0,4,0,17,5,29,0,7,0,24,25,0,3,0,
2042  0,14,0,19,18,10,11,0,0,0,16,17,2,0,22,0,0,21,8,25,0,0,26,0,4,0,13,9,28,6,
2043  0,5,0,0,0,0,0,8,0,15,19,6,22,0,10,25,2,18,26,21,0,0,13,16,27,0,28,0,20,14,
2044  21,0,0,8,0,0,0,7,28,23,24,0,0,0,15,2,14,0,5,20,9,18,0,11,3,17,19,27,0,0,
2045  19,0,20,21,10,29,0,0,14,0,0,8,0,0,0,24,11,0,0,4,3,0,2,13,7,9,0,12,27,18,
2046  28,19,0,0,23,22,4,11,15,0,25,16,5,26,0,0,0,24,30,0,0,0,20,17,0,0,1,6,0,0,
2047  1,0,4,16,0,7,25,14,29,0,0,0,0,15,8,0,27,9,11,2,6,22,0,0,20,12,3,0,0,0,
2048  2,0,23,17,24,0,16,18,0,3,14,0,0,27,30,4,0,25,22,5,21,0,0,0,15,0,0,0,0,26
2049  };
2050 
2051  const int d30_374_8[] = {
2052  30,
2053  0,28,0,0,18,22,0,29,24,5,0,7,0,4,2,3,14,0,0,0,17,15,0,0,1,13,0,10,0,11,
2054  11,0,16,0,6,0,0,19,15,0,17,29,9,0,0,0,8,27,0,0,13,1,2,24,0,0,20,18,0,5,
2055  6,0,30,17,24,0,0,11,23,0,25,2,0,19,0,10,0,0,15,8,20,0,27,0,5,0,26,14,12,0,
2056  13,17,0,0,0,5,0,0,11,0,0,10,24,14,0,26,28,22,7,1,0,16,0,15,12,0,25,27,8,0,
2057  0,27,5,0,0,3,9,0,22,8,0,30,26,0,13,19,0,0,6,0,29,0,24,0,0,11,7,21,4,14,
2058  9,0,18,27,4,0,12,0,0,0,13,11,15,7,10,14,17,16,0,2,3,0,0,0,8,24,0,0,19,0,
2059  0,0,4,0,13,10,0,27,28,6,5,0,0,0,1,7,0,15,11,0,0,26,21,22,17,0,0,9,3,18,
2060  0,0,23,18,10,0,4,0,26,30,0,21,2,20,6,16,0,29,28,0,0,27,0,13,0,15,3,11,0,0,
2061  25,7,0,1,0,12,15,0,0,3,0,0,0,16,0,24,6,19,4,13,26,0,0,0,18,0,22,0,11,27,
2062  0,20,0,19,30,14,0,6,2,11,0,9,13,0,24,8,0,0,0,0,4,0,5,16,21,0,0,3,10,25,
2063  0,11,7,20,0,18,0,1,0,19,21,15,22,27,28,0,0,6,0,25,0,12,14,0,23,8,0,0,29,0,
2064  28,21,3,0,2,17,0,20,0,12,0,1,0,0,26,15,0,5,0,18,0,13,0,25,11,16,24,0,0,0,
2065  0,2,0,11,1,0,21,0,18,0,16,26,30,12,22,27,5,24,0,0,0,0,0,4,14,25,0,17,0,13,
2066  21,0,8,0,25,20,29,22,1,24,30,19,3,10,27,0,0,0,17,0,0,0,0,23,0,6,0,0,0,12,
2067  0,0,0,12,17,0,26,14,0,0,18,22,0,23,16,0,15,8,25,6,0,9,19,10,24,30,2,0,0,0,
2068  30,1,0,0,0,0,0,26,4,17,15,3,0,0,5,0,29,0,24,0,2,0,16,14,22,18,0,0,13,19,
2069  26,6,10,0,0,0,14,25,19,7,4,0,0,13,0,17,0,28,0,22,0,0,1,0,30,27,0,0,23,9,
2070  2,0,22,0,0,8,3,0,21,1,0,0,14,26,0,0,0,0,9,24,0,29,13,17,0,7,11,0,6,20,
2071  15,0,26,5,0,21,28,0,12,2,19,0,0,0,3,0,4,30,0,16,11,23,0,0,6,1,0,8,7,0,
2072  0,23,0,0,5,26,7,16,0,0,2,18,4,21,0,9,10,12,0,3,19,0,28,20,0,14,0,13,0,0,
2073  14,0,29,24,11,15,30,0,0,0,22,0,0,18,23,21,0,0,20,28,0,4,8,5,0,0,9,0,0,10,
2074  1,0,13,16,0,25,27,24,0,0,9,0,0,0,20,0,12,0,14,26,30,22,15,8,0,0,0,19,18,6,
2075  8,24,6,25,29,0,0,0,9,14,11,0,16,0,0,0,22,18,0,0,21,0,30,28,0,3,13,20,15,0,
2076  0,0,12,8,0,11,0,2,10,0,6,0,5,0,21,0,0,0,30,17,15,0,26,0,13,0,16,25,20,1,
2077  27,14,0,30,15,0,8,0,0,0,0,0,23,6,0,29,20,0,1,7,0,19,0,2,0,21,12,26,28,17,
2078  29,0,0,2,27,1,0,0,3,4,0,0,21,0,0,6,19,0,0,12,8,28,0,0,25,5,18,16,0,15,
2079  18,25,0,15,0,23,24,5,0,21,0,13,10,29,9,0,30,0,0,11,0,0,0,7,0,28,27,0,2,8,
2080  0,19,11,26,0,0,0,0,0,25,12,0,18,0,0,4,23,9,27,0,10,21,17,0,20,0,1,15,24,0,
2081  0,29,0,0,16,0,17,3,20,9,0,0,12,25,0,22,11,1,21,0,5,2,4,19,0,0,28,0,0,0,
2082  0,12,0,4,22,0,11,7,0,0,3,5,0,28,8,0,18,25,2,15,27,14,9,0,0,0,0,24,0,0
2083  };
2084 
2085  const int d30_374_9[] = {
2086  30,
2087  0,27,0,0,12,0,28,0,29,16,3,25,0,5,18,26,10,30,11,2,22,0,0,4,0,21,0,14,0,0,
2088  26,13,18,0,0,5,0,9,0,12,0,0,28,0,0,14,16,23,0,11,8,0,25,20,30,27,2,0,0,1,
2089  18,29,13,0,10,28,1,0,0,2,22,0,9,0,0,0,0,0,19,21,16,0,0,27,0,26,0,15,20,11,
2090  7,0,0,20,8,0,4,0,0,27,30,28,0,15,0,3,12,0,0,14,9,6,23,5,0,18,21,0,16,0,
2091  11,0,5,2,30,14,0,0,16,0,20,23,0,0,21,0,4,10,6,0,0,22,19,0,0,9,3,13,0,0,
2092  29,2,0,0,19,13,8,0,4,11,5,0,0,0,20,22,27,7,0,0,0,14,10,23,0,0,1,0,25,0,
2093  0,0,0,0,9,26,3,21,0,6,19,0,8,0,30,17,28,15,29,25,0,0,0,1,11,7,0,16,0,2,
2094  0,15,23,0,0,17,11,19,0,0,0,0,1,26,27,0,25,28,0,0,20,13,22,29,6,12,4,0,2,0,
2095  0,0,0,29,0,22,0,0,21,20,26,0,30,2,10,0,0,1,0,0,5,9,6,17,25,19,0,24,13,27,
2096  0,30,0,9,22,0,12,15,17,23,10,6,0,0,0,0,26,0,0,5,0,0,8,28,19,2,0,29,3,13,
2097  24,23,2,0,0,29,25,0,3,0,0,14,4,0,0,9,0,0,0,0,6,21,0,18,0,30,26,19,17,5,
2098  15,21,11,24,0,0,29,0,26,0,1,17,3,23,25,30,7,8,0,0,0,5,0,22,0,0,0,0,10,19,
2099  3,0,0,23,0,16,17,28,0,19,6,21,18,13,0,8,0,0,0,0,11,1,0,14,15,0,29,9,0,0,
2100  27,14,0,19,24,0,2,0,15,13,8,7,22,0,23,0,0,0,17,0,1,18,0,0,0,16,10,0,26,0,
2101  0,19,0,30,6,12,0,20,2,24,0,22,16,0,14,10,0,11,15,0,0,7,29,0,1,28,0,0,0,0,
2102  0,7,28,0,0,0,13,16,6,0,9,10,0,30,0,20,23,0,0,18,0,11,17,0,29,0,14,0,5,21,
2103  20,0,0,7,17,0,27,13,0,0,0,0,25,1,3,0,0,22,0,28,30,16,5,0,12,15,0,23,18,8,
2104  0,5,0,12,0,21,0,11,0,26,4,0,0,29,0,0,17,2,3,13,15,0,20,10,7,0,25,0,23,6,
2105  17,4,30,25,13,0,0,18,24,0,0,9,0,11,0,0,19,0,0,27,29,0,28,0,0,1,6,20,22,23,
2106  6,0,14,0,18,2,0,8,25,15,0,0,26,0,29,0,0,21,23,0,0,10,27,0,28,3,0,4,0,12,
2107  13,0,16,10,25,23,22,4,11,0,7,19,12,8,0,0,0,0,1,24,14,0,0,0,0,0,27,0,21,18,
2108  0,0,3,18,0,24,0,27,12,0,14,11,0,0,8,1,0,6,0,30,17,26,0,0,10,0,28,5,0,7,
2109  19,16,15,0,27,0,0,0,8,25,0,0,0,7,2,6,11,4,5,23,0,29,3,0,26,10,0,1,0,0,
2110  0,3,0,0,23,0,26,1,0,0,28,13,0,10,0,12,6,25,9,0,2,15,0,19,27,0,0,21,0,20,
2111  4,17,25,0,0,11,14,0,0,0,0,20,10,0,13,28,3,0,18,19,7,0,30,26,0,22,8,12,0,0,
2112  0,0,24,11,0,6,23,3,22,0,0,1,0,0,12,0,8,0,25,10,0,4,16,0,14,0,19,2,0,9,
2113  0,0,12,15,5,0,0,26,27,10,0,8,20,21,7,2,1,19,22,0,0,28,0,25,24,0,0,0,30,0,
2114  21,20,29,8,1,18,0,0,0,17,0,26,6,9,5,0,0,0,2,0,12,0,7,0,0,0,13,28,27,15,
2115  9,25,0,0,0,7,0,0,10,3,0,0,13,27,15,4,0,0,20,12,21,0,14,6,5,0,22,0,11,0,
2116  0,0,27,22,0,0,0,6,0,7,24,0,23,12,0,29,0,20,30,17,0,0,0,13,9,14,0,10,15,16
2117  };
2118 
2119  const int d30_374_10[] = {
2120  30,
2121  25,9,24,0,26,5,0,27,0,18,21,0,0,15,13,0,7,28,3,0,1,0,14,2,0,6,0,0,20,0,
2122  0,0,29,22,2,10,0,0,0,20,23,0,1,0,21,16,30,0,4,0,0,14,8,0,0,12,0,6,5,25,
2123  0,0,0,1,25,0,0,4,29,30,0,22,3,11,0,0,23,8,18,0,15,0,9,0,26,13,17,0,14,2,
2124  0,20,0,9,6,28,0,15,21,23,0,13,0,0,0,0,0,0,0,3,5,16,25,22,4,24,11,2,19,0,
2125  19,3,9,14,0,0,29,0,16,7,15,0,18,8,0,13,24,12,0,26,27,0,11,0,5,0,0,0,0,21,
2126  0,14,0,28,9,0,4,0,13,0,26,25,29,21,27,22,0,0,0,12,0,5,24,0,0,16,15,23,0,30,
2127  20,16,0,5,15,0,8,24,17,0,13,28,30,0,0,18,0,11,1,25,0,0,6,0,0,22,0,0,12,4,
2128  29,19,10,0,0,9,13,3,23,22,5,0,0,0,0,14,0,18,0,2,0,20,0,27,0,0,6,8,25,24,
2129  0,5,0,16,0,0,18,22,0,9,0,0,10,20,19,0,6,1,27,4,2,11,0,0,17,0,0,24,7,23,
2130  0,26,16,6,11,17,0,0,0,15,10,0,12,4,0,30,25,0,23,28,0,18,19,0,24,0,20,0,0,0,
2131  16,0,11,21,0,27,0,25,20,28,19,0,0,30,14,0,8,23,0,0,9,0,22,0,15,17,0,29,0,0,
2132  0,12,19,0,20,24,1,0,14,0,8,0,27,2,0,0,18,0,29,0,0,7,0,30,3,28,13,15,6,0,
2133  11,1,13,8,10,14,0,0,0,0,0,16,26,9,30,20,29,0,0,23,3,0,0,5,0,0,12,7,0,22,
2134  3,0,2,0,0,0,0,0,28,6,11,20,14,13,29,0,21,16,7,1,22,0,0,4,0,0,0,26,0,18,
2135  0,21,5,27,0,22,24,18,0,0,0,0,0,1,26,9,13,19,0,29,6,12,0,0,20,11,0,0,8,0,
2136  23,0,0,0,28,0,25,26,6,27,30,18,7,0,24,0,0,29,22,0,21,0,15,0,14,5,0,17,0,0,
2137  14,30,0,0,23,0,7,10,0,0,0,2,22,27,8,25,5,0,20,0,0,3,0,18,29,0,0,1,17,26,
2138  0,0,21,23,4,0,14,0,0,1,18,29,0,0,16,0,0,26,28,19,10,0,0,7,0,2,8,30,27,0,
2139  0,23,3,0,18,6,0,0,0,12,0,21,0,0,15,7,22,0,11,0,28,30,26,16,0,19,29,10,0,0,
2140  28,13,0,0,0,19,21,0,3,0,1,0,15,0,0,26,0,0,25,16,0,8,10,6,23,0,5,0,18,27,
2141  6,18,30,15,0,1,10,14,2,13,0,3,0,19,0,0,4,9,26,0,0,0,7,21,0,8,0,0,24,0,
2142  0,29,12,0,0,4,0,19,11,8,0,15,0,0,0,0,0,2,5,27,14,0,0,1,7,9,22,25,0,13,
2143  5,0,0,0,0,15,0,6,19,0,0,8,23,0,25,10,0,22,13,21,0,27,17,9,1,0,24,0,11,7,
2144  4,0,26,17,0,0,27,29,0,0,24,10,0,28,18,2,19,7,0,0,23,15,0,25,22,30,16,0,0,0,
2145  17,6,1,18,3,0,12,0,0,24,0,0,0,0,0,29,28,0,16,0,0,4,27,0,8,14,9,21,0,19,
2146  8,0,0,25,0,0,16,9,26,0,3,27,0,12,17,0,20,0,6,10,0,0,0,24,0,7,30,18,29,0,
2147  30,17,0,0,22,0,11,0,0,0,0,4,0,0,3,21,0,5,0,0,29,2,18,23,10,0,7,16,28,1,
2148  0,0,17,0,14,21,23,16,9,4,0,12,28,5,2,19,0,0,0,13,8,22,0,0,18,29,0,0,0,20,
2149  7,0,28,0,19,3,0,8,27,0,14,0,2,10,0,0,1,0,0,0,30,25,23,15,0,0,0,22,26,6,
2150  0,0,0,7,21,16,6,30,5,3,20,23,17,0,0,28,0,24,0,14,0,0,2,0,25,0,19,0,1,29
2151  };
2152 
2153  const int d30_374_11[] = {
2154  30,
2155  21,28,27,0,0,22,29,6,3,11,23,0,0,0,0,0,15,0,18,9,26,8,0,0,12,30,0,4,1,0,
2156  19,0,3,0,24,30,0,18,0,1,14,8,6,26,22,0,0,16,0,0,0,0,4,0,0,20,17,0,7,9,
2157  30,0,20,14,0,17,25,3,22,2,0,9,8,24,0,0,28,15,0,23,0,0,29,4,26,0,0,27,0,0,
2158  5,21,23,0,27,0,1,0,0,12,0,0,19,0,0,6,0,20,16,30,15,10,0,14,11,0,0,0,22,4,
2159  0,3,0,23,21,0,0,0,0,28,24,13,5,7,11,16,20,6,0,0,25,9,0,18,0,8,1,0,0,0,
2160  22,0,4,1,0,6,0,12,18,0,29,23,30,13,0,24,25,0,28,0,10,0,0,0,21,0,26,0,15,2,
2161  23,14,19,24,0,16,21,5,0,15,0,0,4,0,6,0,0,0,0,25,2,13,3,0,20,17,8,22,0,0,
2162  6,23,0,0,20,29,26,0,10,27,19,12,17,18,0,0,0,0,0,5,7,22,24,30,0,0,2,0,13,0,
2163  9,29,7,11,17,0,0,27,0,0,30,25,0,5,0,0,6,0,21,20,4,0,0,8,19,13,0,0,23,18,
2164  0,0,12,5,25,0,17,2,7,26,9,0,28,0,1,0,24,3,0,0,0,30,0,21,0,0,14,18,0,11,
2165  0,26,29,15,0,1,0,19,9,0,0,11,12,27,23,17,0,21,0,0,16,7,5,0,0,22,0,0,28,0,
2166  28,0,0,0,13,0,4,0,0,0,0,17,1,0,0,25,0,29,30,21,19,24,15,3,6,0,18,14,5,0,
2167  0,5,0,21,0,18,3,20,6,0,7,0,23,25,0,10,16,0,0,11,0,15,9,2,27,0,0,0,0,29,
2168  0,27,0,10,1,0,0,23,0,0,22,20,11,0,9,14,13,0,3,0,24,0,21,29,0,18,19,15,0,26,
2169  0,0,17,4,0,0,9,7,11,3,0,16,10,21,26,0,0,19,0,0,0,0,27,5,0,1,23,20,8,28,
2170  20,0,0,0,2,0,13,0,8,0,0,5,0,14,3,15,0,24,11,17,0,25,16,23,0,21,0,29,18,6,
2171  0,0,28,22,6,11,10,21,12,0,25,0,3,0,2,0,0,0,0,0,27,4,1,26,0,9,24,0,20,15,
2172  0,16,18,0,0,0,27,0,30,8,4,15,0,6,0,22,0,17,26,0,0,20,0,1,23,29,10,9,0,0,
2173  0,0,0,0,26,0,0,0,14,17,0,6,2,3,21,13,27,0,23,0,22,18,0,0,29,24,12,0,9,7,
2174  1,12,0,30,22,0,0,0,4,29,16,0,24,0,0,19,8,0,25,14,0,0,0,0,13,6,9,5,2,23,
2175  25,0,9,0,0,28,6,29,0,30,0,18,16,11,0,27,10,7,5,0,0,0,0,15,4,0,20,0,0,13,
2176  2,0,21,7,0,24,20,26,0,5,0,0,29,9,0,0,23,28,8,0,30,11,10,25,3,0,0,0,17,0,
2177  14,22,0,0,19,20,0,0,25,0,5,2,0,0,0,0,18,10,1,4,8,27,26,6,0,0,0,24,21,0,
2178  0,9,10,0,3,0,19,0,16,0,18,4,0,1,29,21,22,5,7,27,0,0,0,0,17,0,11,12,0,0,
2179  0,4,13,29,0,15,0,1,0,0,26,0,0,30,12,8,7,0,0,0,0,28,0,17,5,16,0,19,3,20,
2180  0,11,0,20,16,2,22,24,0,10,1,0,0,4,8,7,0,23,6,18,28,0,0,0,25,0,0,17,19,0,
2181  10,17,14,0,5,23,0,30,21,18,0,0,0,0,27,0,4,0,0,7,0,1,19,0,0,2,29,3,0,12,
2182  0,2,0,0,18,8,0,0,0,13,21,0,0,28,20,11,0,12,22,3,9,6,25,10,0,5,0,16,0,27,
2183  15,20,0,12,14,7,0,0,23,19,0,3,0,0,13,30,11,8,4,16,0,0,17,0,28,25,0,0,0,24,
2184  24,0,0,9,0,26,11,0,29,0,3,10,0,0,14,0,19,25,0,22,6,0,30,0,18,7,27,1,0,16
2185  };
2186 
2187  const int d30_374_12[] = {
2188  30,
2189  30,24,0,0,0,7,0,17,0,27,23,3,6,2,10,18,0,0,29,13,0,0,26,11,0,9,0,0,1,21,
2190  13,0,0,22,3,10,18,24,0,30,0,25,16,19,14,11,0,0,21,1,0,0,0,9,0,6,0,17,27,0,
2191  0,30,11,28,16,0,25,0,22,0,0,0,12,0,19,5,0,0,0,0,20,18,17,2,8,3,0,9,0,6,
2192  0,6,24,0,0,17,5,0,26,3,25,2,21,0,0,0,27,0,0,29,28,0,10,0,0,11,16,7,18,0,
2193  7,14,10,27,0,1,15,0,0,17,0,13,0,6,29,0,3,0,8,20,0,21,30,0,0,0,26,18,9,0,
2194  0,16,0,0,0,0,0,0,11,15,2,26,29,25,5,0,0,7,20,17,9,10,0,0,19,0,13,28,0,12,
2195  0,0,0,0,0,16,29,6,14,0,0,15,8,0,24,28,0,0,13,22,7,0,0,12,9,17,0,25,19,23,
2196  0,23,0,12,11,0,0,0,10,0,14,20,0,13,17,9,16,6,0,0,18,1,0,7,0,0,8,0,26,19,
2197  1,0,0,14,29,0,0,15,4,0,17,0,25,3,22,12,0,10,0,0,21,0,0,24,20,0,23,30,6,26,
2198  16,28,0,7,14,0,11,13,15,25,6,5,26,20,0,0,0,27,0,0,0,0,8,23,10,0,0,0,29,0,
2199  23,17,9,5,22,19,21,0,0,0,0,18,0,16,27,0,15,12,0,26,13,3,0,28,0,0,7,0,11,0,
2200  20,0,8,0,30,5,24,0,7,28,0,0,0,0,18,17,0,0,3,0,14,0,25,0,15,19,11,10,23,9,
2201  9,25,20,0,0,8,0,0,2,0,0,0,5,0,3,0,23,1,7,0,0,22,24,0,26,30,27,12,0,11,
2202  8,15,21,13,0,6,0,19,16,10,0,23,0,4,7,0,29,26,0,0,0,0,0,1,0,20,0,5,30,3,
2203  0,26,5,29,13,0,0,7,21,9,0,0,24,0,0,0,20,19,16,0,10,27,0,8,0,28,14,0,12,25,
2204  0,4,7,0,24,26,8,9,13,18,10,29,22,27,0,23,0,0,0,0,1,0,0,20,0,25,21,2,0,0,
2205  12,0,14,0,7,0,0,0,0,24,15,0,18,17,0,19,26,30,22,9,2,25,28,0,16,0,3,0,0,27,
2206  11,0,0,19,17,0,16,23,3,0,0,12,0,14,8,15,24,13,0,0,0,28,20,18,0,0,6,1,0,0,
2207  0,9,0,1,0,21,14,0,0,0,0,0,30,28,11,20,7,23,0,24,3,13,19,0,29,8,12,0,16,0,
2208  0,0,19,26,0,0,27,5,18,0,9,0,2,0,0,7,22,0,17,11,0,8,3,0,0,23,20,14,0,4,
2209  14,0,0,18,0,2,26,8,25,5,29,10,0,0,0,6,13,0,9,0,4,7,11,0,17,0,1,0,0,0,
2210  6,1,12,0,28,3,0,30,0,0,18,0,0,29,23,25,0,4,2,16,0,0,21,14,27,0,0,0,22,5,
2211  0,11,23,24,5,0,0,29,0,0,0,7,13,9,0,0,25,0,28,19,0,16,1,17,3,0,0,21,20,2,
2212  0,7,29,0,10,0,30,0,6,23,27,0,28,24,13,0,17,9,19,25,0,5,16,4,0,0,0,0,0,18,
2213  5,0,0,11,8,30,20,0,28,13,1,0,3,0,12,0,9,0,27,6,22,0,29,16,25,0,0,0,0,0,
2214  29,12,6,20,9,0,0,22,19,0,7,0,0,0,0,0,4,3,0,27,30,11,5,0,13,26,0,15,0,0,
2215  0,0,22,9,18,12,0,2,0,0,20,14,0,8,0,0,1,5,26,30,11,6,0,0,23,24,0,4,0,0,
2216  0,0,16,0,19,4,28,27,0,14,30,0,0,0,0,21,0,15,5,3,25,26,0,29,6,2,0,0,17,24,
2217  22,19,0,0,0,29,23,12,0,1,0,17,14,30,21,26,0,8,0,0,0,20,0,0,18,15,10,0,7,28,
2218  27,0,26,3,0,9,0,28,0,16,21,24,0,0,0,4,10,0,0,0,5,0,13,15,0,12,2,29,8,0
2219  };
2220 
2221  const int d30_374_13[] = {
2222  30,
2223  0,13,6,0,16,0,0,17,12,19,0,5,20,0,0,3,0,22,25,27,0,18,1,0,10,30,11,23,0,0,
2224  8,5,19,21,0,2,0,0,0,0,0,0,18,12,23,14,7,0,0,0,27,3,0,0,15,13,0,26,29,17,
2225  0,0,14,0,27,6,1,20,26,0,4,29,12,0,19,0,13,0,0,0,0,16,5,2,7,0,0,0,10,21,
2226  24,0,0,22,0,25,0,4,1,0,0,0,21,11,0,13,10,0,27,6,0,29,26,0,3,15,18,2,30,0,
2227  0,20,8,0,26,30,3,0,0,0,0,6,14,0,0,0,18,13,23,1,0,21,0,10,0,11,19,5,24,16,
2228  30,0,27,4,0,0,5,9,0,1,16,0,0,8,20,0,0,10,19,15,6,0,0,17,13,0,0,24,12,28,
2229  0,9,10,26,20,7,15,18,0,0,0,0,24,0,17,4,1,12,3,0,16,28,0,5,0,0,0,0,23,0,
2230  0,1,0,15,0,23,18,16,6,13,0,0,7,0,30,9,27,11,28,0,0,0,2,14,0,5,22,0,0,26,
2231  28,0,0,10,1,0,0,15,2,6,22,30,9,4,21,5,0,0,0,0,26,0,0,12,0,0,24,3,16,8,
2232  0,23,0,0,0,27,6,24,0,2,0,16,0,20,11,12,0,0,22,0,0,0,13,0,17,7,1,15,26,30,
2233  0,12,24,30,0,1,10,0,23,0,25,0,8,16,0,0,17,5,6,11,0,0,15,27,19,0,0,0,9,14,
2234  4,2,0,23,24,16,30,5,0,21,11,10,0,17,3,28,0,0,14,19,0,0,0,0,0,0,29,22,15,0,
2235  21,19,0,0,14,24,0,2,4,0,18,0,0,27,22,0,5,17,0,13,7,25,0,0,30,29,0,16,0,0,
2236  22,24,29,0,3,0,23,28,19,5,10,0,0,7,27,0,0,0,0,4,8,0,21,0,2,0,16,14,18,0,
2237  0,0,20,9,19,0,8,0,18,0,24,1,0,30,0,6,21,0,10,5,3,15,7,0,0,0,14,0,0,27,
2238  17,3,12,24,0,14,0,19,0,23,0,18,15,22,0,20,0,29,9,26,5,0,0,8,21,0,0,0,0,13,
2239  1,10,0,0,8,28,29,0,30,18,5,27,0,0,2,0,15,3,0,0,22,0,0,13,0,0,25,0,7,11,
2240  0,0,0,0,2,10,7,0,11,9,14,0,0,0,0,29,19,0,18,0,23,4,27,25,12,17,21,20,0,5,
2241  5,0,15,7,0,8,25,0,0,4,0,9,0,0,24,0,0,26,0,0,1,27,19,21,14,0,0,18,11,3,
2242  3,16,7,0,0,19,0,27,0,8,30,20,0,26,0,0,22,6,0,24,10,23,11,4,0,0,0,0,14,0,
2243  20,17,2,6,9,0,12,0,13,0,0,26,1,0,0,30,0,8,0,0,0,10,0,18,25,16,0,11,0,15,
2244  0,15,0,0,0,0,9,3,5,7,6,19,10,14,25,0,0,0,24,29,0,0,17,0,16,28,0,8,0,23,
2245  14,0,13,27,10,0,0,0,20,0,3,0,0,2,12,25,8,18,0,0,28,0,24,1,0,23,15,30,0,0,
2246  2,0,0,0,0,0,20,0,27,0,0,14,17,9,6,21,0,24,4,25,18,19,8,0,22,1,0,0,0,29,
2247  16,0,9,28,0,0,24,25,0,26,0,22,29,0,0,11,0,0,8,21,14,30,12,20,0,6,13,0,5,0,
2248  9,7,11,8,25,0,0,23,0,0,20,0,27,13,5,0,24,21,2,0,30,0,0,0,28,4,0,0,1,18,
2249  0,0,18,0,0,0,0,30,16,28,29,4,0,25,0,0,0,15,1,10,0,0,22,6,0,26,5,17,2,7,
2250  0,0,0,16,15,18,0,10,29,30,7,21,0,0,4,0,14,1,0,17,0,2,0,0,11,25,3,13,20,0,
2251  11,6,1,25,21,0,13,0,0,15,27,0,30,0,0,23,2,19,0,22,0,17,20,29,18,0,4,0,0,0,
2252  0,0,0,0,4,9,0,0,14,11,1,3,23,6,13,10,30,0,15,20,12,26,25,0,0,8,28,0,0,0
2253  };
2254 
2255  const int d30_374_14[] = {
2256  30,
2257  0,15,20,7,9,16,12,2,5,10,13,29,0,28,0,24,25,0,26,19,0,14,0,22,0,0,0,0,0,0,
2258  20,0,8,0,21,1,3,0,0,0,7,19,0,0,14,0,4,23,12,27,15,18,0,0,0,0,6,0,9,2,
2259  8,0,28,0,11,15,29,0,3,0,0,0,0,0,16,0,0,0,19,6,9,27,22,24,23,10,20,4,0,0,
2260  21,17,0,28,0,25,0,30,0,0,0,2,19,0,4,10,0,5,11,0,18,1,8,0,16,0,26,0,7,24,
2261  0,0,0,14,20,10,0,1,16,25,18,0,12,11,23,28,0,22,0,8,2,3,0,17,0,0,29,9,0,0,
2262  0,0,0,3,16,0,26,0,0,0,20,8,25,0,13,0,9,2,0,0,10,11,27,5,24,28,19,6,0,0,
2263  27,9,7,15,0,0,1,16,0,30,0,0,13,18,24,0,0,11,0,0,0,22,0,0,3,5,8,2,14,23,
2264  0,28,16,6,0,0,0,0,12,23,24,14,0,25,30,0,11,29,9,0,19,0,0,2,0,15,7,5,20,0,
2265  30,12,6,26,0,13,0,0,24,2,10,21,11,0,0,23,0,0,0,28,14,0,25,0,9,0,3,22,0,4,
2266  16,1,0,30,0,9,5,19,7,11,21,0,28,0,0,29,0,0,0,12,17,6,0,0,0,0,4,10,27,18,
2267  0,11,0,29,0,0,24,23,9,27,0,22,20,26,3,0,15,14,0,13,0,0,0,6,2,17,25,0,0,12,
2268  0,0,13,0,0,27,15,25,18,0,14,0,24,0,19,26,17,0,0,1,0,0,12,4,0,8,21,28,0,10,
2269  29,27,3,12,5,0,0,0,0,0,0,28,22,14,0,6,16,0,25,0,8,0,7,20,13,0,0,21,17,15,
2270  0,10,19,0,0,2,4,0,0,0,11,15,0,17,25,0,6,12,24,0,0,9,0,21,5,27,30,29,16,0,
2271  28,0,24,0,0,12,0,0,4,7,0,27,1,0,9,22,18,0,0,26,3,25,0,0,30,0,17,15,19,0,
2272  3,0,30,23,0,0,18,28,2,0,0,16,0,0,1,0,27,0,10,20,0,21,11,0,8,19,0,0,6,13,
2273  12,0,0,0,0,0,21,17,29,15,26,0,2,16,0,18,8,28,1,30,20,0,4,23,0,22,0,0,0,0,
2274  26,0,1,10,19,0,0,11,0,0,9,12,15,8,5,3,0,0,17,0,21,2,24,7,0,0,27,13,0,0,
2275  6,0,0,22,29,0,20,18,0,3,0,7,0,0,27,13,0,0,0,24,23,17,0,12,25,14,10,0,8,21,
2276  0,7,10,17,3,23,22,0,13,16,25,0,21,27,18,20,0,15,0,0,0,0,0,8,26,0,0,0,24,6,
2277  5,0,0,16,7,30,9,0,28,14,0,0,0,29,0,1,10,26,3,0,0,20,23,0,6,11,0,19,0,0,
2278  0,13,4,9,0,17,0,22,15,8,29,0,0,1,0,0,0,0,18,11,0,24,3,0,0,30,0,20,10,7,
2279  18,20,0,0,15,29,0,0,0,0,4,25,23,0,0,2,5,0,14,17,12,13,9,0,10,0,24,0,0,1,
2280  0,24,9,0,22,0,0,8,11,29,19,0,17,23,0,0,2,25,0,18,27,0,21,28,0,13,0,0,26,5,
2281  19,0,22,0,6,14,0,13,0,4,0,23,0,2,0,0,12,24,21,0,0,7,0,15,17,0,0,30,1,29,
2282  17,6,0,0,18,0,16,24,0,0,0,30,0,0,7,12,22,10,8,23,0,0,0,0,15,21,9,14,2,0,
2283  0,25,23,13,2,3,14,0,6,17,0,0,30,0,0,8,1,27,7,29,0,0,10,0,19,26,0,0,0,9,
2284  25,14,0,8,0,0,0,20,30,0,1,3,18,10,0,17,0,0,22,5,0,0,28,19,0,2,0,16,15,0,
2285  0,23,21,0,27,7,28,3,8,24,22,0,0,12,0,0,0,19,0,0,1,0,17,14,11,4,0,0,13,20,
2286  0,0,0,0,13,8,0,0,0,0,2,0,10,4,21,0,19,16,23,0,6,5,26,9,0,0,14,7,25,11
2287  };
2288 
2289  const int d30_374_15[] = {
2290  30,
2291  0,2,0,1,0,10,0,17,16,11,27,0,21,0,3,0,4,0,24,0,0,19,7,14,0,30,15,22,0,12,
2292  0,0,9,15,6,24,4,16,20,0,25,7,0,23,1,28,0,0,27,0,22,0,3,0,26,0,8,0,0,0,
2293  4,0,0,14,19,28,29,0,0,0,0,0,1,5,13,17,16,0,0,9,0,10,30,6,7,2,21,20,0,0,
2294  14,0,5,22,4,23,8,0,0,16,0,26,6,0,0,2,12,19,9,0,0,21,15,0,0,28,0,0,1,20,
2295  0,20,8,0,13,9,3,0,30,12,17,1,15,26,16,0,0,27,29,6,0,0,0,24,0,0,0,0,0,5,
2296  0,24,0,5,7,19,25,12,29,0,4,0,0,0,0,21,23,0,30,26,0,0,0,28,2,22,13,0,15,18,
2297  22,1,4,0,23,0,5,0,14,0,7,24,0,18,0,25,20,12,0,13,11,0,0,19,27,0,0,2,16,0,
2298  0,16,24,13,0,0,0,0,0,23,8,0,0,21,6,0,2,5,0,22,0,3,12,0,20,9,7,11,0,17,
2299  6,13,0,0,24,5,12,23,0,7,21,0,0,0,0,15,11,30,0,3,29,0,0,2,0,0,10,1,0,4,
2300  18,0,13,0,0,30,11,0,5,25,23,20,0,24,0,3,0,14,0,0,12,0,29,26,15,19,1,4,0,0,
2301  0,0,20,2,0,16,17,0,0,0,0,29,11,1,19,27,0,0,0,12,30,4,0,5,21,0,0,24,25,15,
2302  24,0,7,16,14,0,0,2,23,0,3,30,0,29,0,0,17,26,5,0,0,15,22,0,0,0,0,8,10,11,
2303  0,26,0,0,10,27,2,30,0,13,29,25,0,12,0,19,0,7,1,11,5,18,16,0,0,0,0,0,23,28,
2304  16,18,15,6,11,17,0,0,4,20,2,0,25,0,0,0,19,0,0,0,27,29,0,0,23,8,3,30,28,0,
2305  0,3,0,7,0,0,24,29,0,0,19,0,8,6,23,0,0,4,11,20,15,16,18,9,14,0,0,0,17,0,
2306  9,6,0,11,0,29,20,7,0,18,0,0,12,0,17,0,8,0,28,1,0,13,19,10,25,0,26,0,21,0,
2307  15,0,26,0,9,0,0,0,7,29,22,0,2,28,4,12,10,3,8,0,0,0,0,23,1,27,0,18,13,0,
2308  3,8,0,20,0,0,0,24,6,0,0,0,16,27,18,14,9,15,25,28,10,11,0,0,0,1,0,0,0,22,
2309  23,0,29,21,0,0,0,10,22,1,15,14,0,0,7,0,3,0,0,2,18,0,17,20,12,0,5,19,6,0,
2310  17,29,23,0,2,0,13,1,0,4,0,6,20,0,0,0,0,0,3,5,14,0,11,16,0,24,25,10,0,0,
2311  0,0,0,0,0,8,0,3,13,28,0,19,27,0,22,24,0,21,0,0,1,9,0,12,0,6,16,7,11,26,
2312  0,23,0,17,1,0,28,19,9,0,0,4,18,0,0,5,26,6,20,10,0,0,21,3,0,7,27,0,0,13,
2313  12,0,10,9,0,0,21,5,19,0,0,16,22,14,27,20,0,0,17,0,0,28,0,8,0,13,4,0,0,25,
2314  21,14,28,0,0,15,1,4,0,27,0,8,7,30,11,0,5,0,0,0,25,12,2,0,18,29,22,0,0,0,
2315  0,0,17,0,27,0,0,25,0,0,16,13,0,9,10,11,0,22,14,29,3,0,4,7,0,20,0,5,24,2,
2316  28,0,0,0,0,22,0,0,11,0,18,23,19,4,0,0,0,25,0,24,2,5,0,17,13,15,30,6,0,16,
2317  30,4,21,0,20,0,18,0,27,9,0,0,0,25,0,0,0,0,26,19,8,0,5,0,6,17,2,16,22,3,
2318  0,12,18,30,15,20,0,28,2,0,0,0,0,0,8,0,7,29,4,0,17,0,1,0,19,0,0,9,14,21,
2319  1,0,0,3,0,13,14,0,8,10,5,0,29,0,28,18,15,24,6,23,0,17,0,0,4,26,0,0,12,0,
2320  0,10,25,0,16,1,0,11,0,24,0,22,23,2,9,26,14,0,0,0,21,27,0,0,0,0,18,28,5,0
2321  };
2322 
2323  const int d30_374_16[] = {
2324  30,
2325  26,0,0,0,13,5,9,4,0,0,0,1,3,0,0,6,17,0,30,19,29,0,25,12,20,21,0,10,22,0,
2326  10,0,22,18,26,0,0,21,0,0,20,0,30,5,7,19,0,0,0,0,1,3,23,0,24,9,0,17,4,0,
2327  6,21,0,0,19,11,28,0,0,10,0,0,0,8,0,16,2,3,5,13,14,0,26,0,22,0,0,30,12,0,
2328  29,23,0,6,8,0,0,14,24,0,0,0,0,26,0,25,27,22,20,7,0,0,4,28,0,0,11,21,18,30,
2329  0,8,2,19,16,6,7,0,0,0,0,0,0,30,9,0,23,24,13,18,26,0,0,4,5,11,0,1,27,0,
2330  0,0,30,22,29,3,17,0,19,0,24,0,0,23,4,18,10,0,0,6,0,0,21,13,0,1,28,0,7,5,
2331  0,11,0,28,0,0,29,0,0,9,30,16,7,4,21,0,0,18,2,3,0,22,24,0,17,6,5,0,0,25,
2332  2,0,4,29,0,20,14,0,17,7,0,0,25,0,18,0,0,26,10,0,3,0,0,0,27,13,21,8,23,1,
2333  15,16,19,26,0,0,0,5,0,29,0,4,22,0,8,0,0,28,0,1,23,13,17,0,0,3,12,0,0,27,
2334  20,0,0,0,0,13,0,8,26,30,0,25,2,14,0,10,7,17,0,0,18,28,11,19,0,0,0,12,29,23,
2335  0,0,5,0,0,7,20,15,6,0,3,18,24,28,19,0,8,27,14,0,10,0,22,25,0,0,4,0,17,0,
2336  11,0,9,23,0,10,0,12,8,18,1,0,26,7,0,29,0,0,4,0,0,16,0,0,0,15,25,0,24,19,
2337  0,0,0,0,1,0,0,10,25,2,27,0,0,20,23,24,4,21,0,14,0,9,0,30,8,0,6,15,13,11,
2338  0,0,11,0,25,0,23,27,28,4,14,22,13,0,0,0,15,0,0,9,0,29,3,0,19,17,2,6,0,18,
2339  21,0,0,30,28,8,13,23,0,20,0,0,0,0,27,4,25,0,0,16,0,0,29,14,15,0,0,18,3,9,
2340  1,27,29,0,0,21,3,0,14,24,0,17,8,0,0,0,9,0,25,22,5,20,10,0,0,0,7,0,0,13,
2341  24,19,0,15,18,0,0,22,0,26,7,0,12,13,3,0,0,0,8,2,27,0,1,6,25,4,0,0,0,0,
2342  0,14,0,0,24,15,16,0,0,0,10,0,1,3,0,27,0,13,0,0,9,2,0,8,0,5,29,22,25,26,
2343  19,12,0,0,0,24,1,16,22,11,6,10,28,2,29,15,0,0,0,5,25,0,9,0,0,0,27,0,14,0,
2344  28,15,0,1,14,22,2,18,0,0,23,9,0,17,0,0,0,19,12,26,4,0,0,0,0,24,30,16,6,0,
2345  9,0,15,14,2,0,19,0,0,28,17,13,20,0,0,12,18,0,0,0,7,0,30,21,3,8,0,0,0,22,
2346  0,0,18,0,0,0,0,0,12,25,26,23,21,0,20,5,13,7,0,29,0,19,27,11,9,10,17,0,0,3,
2347  25,13,20,12,0,17,0,30,0,0,0,28,0,10,0,0,5,1,0,24,0,4,0,29,14,0,23,3,0,8,
2348  14,26,3,0,0,16,0,0,0,5,0,0,0,0,28,0,19,15,21,23,0,8,20,18,12,30,10,0,11,0,
2349  0,7,6,0,3,27,0,2,18,0,0,8,0,0,15,1,0,9,22,17,20,30,0,23,16,12,0,24,0,0,
2350  0,0,0,3,10,26,27,13,1,0,19,30,0,15,5,0,0,4,23,0,11,14,0,16,7,0,0,9,0,2,
2351  0,2,16,25,12,0,18,0,5,3,13,0,10,22,14,9,0,0,29,0,0,26,0,0,28,0,15,4,0,20,
2352  8,24,7,2,30,0,0,0,13,0,12,27,4,0,6,17,21,0,26,0,28,0,0,3,0,18,0,0,1,0,
2353  0,18,0,0,4,28,0,0,16,12,8,21,0,0,0,23,6,30,11,0,0,10,0,5,0,27,1,2,15,0,
2354  0,20,13,4,0,0,12,3,9,17,0,15,0,24,2,22,11,16,7,0,6,27,0,0,0,0,0,5,0,0
2355  };
2356 
2357  const int d30_374_17[] = {
2358  30,
2359  0,0,14,25,5,23,15,16,21,3,0,2,0,24,0,26,0,27,0,7,11,17,0,0,29,1,0,20,0,0,
2360  0,0,0,3,8,0,23,0,4,0,28,9,7,22,0,2,30,0,19,0,13,16,0,0,1,15,29,0,0,5,
2361  0,0,28,11,30,29,0,26,9,2,19,0,0,0,8,0,21,15,7,25,0,12,5,0,0,14,0,17,16,0,
2362  6,0,30,0,0,1,25,0,0,0,11,7,0,14,0,5,2,21,0,0,3,0,27,28,0,10,8,26,18,0,
2363  0,4,18,0,9,0,29,20,26,19,27,12,0,0,24,17,0,28,0,0,10,0,0,0,2,0,25,13,3,8,
2364  0,0,5,18,4,0,11,0,0,15,1,0,28,7,16,0,0,30,12,0,26,0,0,9,13,0,27,0,23,10,
2365  7,30,8,0,0,0,12,25,0,26,20,0,23,17,11,0,0,0,6,16,5,24,14,0,0,0,0,18,19,13,
2366  29,16,0,15,26,12,3,0,24,0,21,0,19,0,0,9,0,20,0,5,8,0,18,0,0,28,0,23,14,0,
2367  24,6,25,0,16,0,19,0,8,0,0,0,12,27,0,0,11,0,9,14,0,29,1,21,15,3,17,0,0,0,
2368  8,10,0,0,15,9,0,24,0,11,0,0,0,28,19,30,1,0,0,18,0,6,0,14,3,4,22,29,0,25,
2369  0,15,2,12,0,0,21,22,18,10,6,25,0,0,0,20,0,5,27,0,0,14,19,0,23,30,24,0,1,0,
2370  0,17,0,9,20,7,0,0,29,12,3,0,18,2,15,0,5,0,25,0,0,0,21,8,0,0,10,19,22,27,
2371  0,27,15,0,12,30,0,0,0,0,0,14,17,19,0,1,29,7,22,0,0,4,9,10,0,21,26,28,13,0,
2372  16,0,17,0,22,21,0,18,2,0,0,20,11,13,3,0,24,1,0,0,29,0,0,26,25,0,12,0,10,9,
2373  19,0,10,8,17,0,0,13,16,7,0,0,26,0,22,0,15,12,1,0,0,0,0,24,27,0,6,0,4,30,
2374  1,0,0,0,23,14,17,27,13,18,9,28,15,26,21,0,0,11,8,29,0,0,25,12,0,2,0,0,0,0,
2375  0,26,0,14,0,18,0,10,0,0,25,11,6,0,7,12,19,0,2,22,0,9,0,0,21,0,15,4,17,16,
2376  0,1,0,0,10,8,4,21,0,20,29,0,0,0,14,0,17,25,26,0,0,5,0,2,0,27,9,6,0,11,
2377  0,0,0,21,0,13,18,29,0,5,0,17,20,0,23,15,0,4,16,6,19,0,0,7,28,0,0,30,27,0,
2378  21,3,9,22,0,20,14,0,0,0,26,19,2,0,0,6,0,17,15,0,12,0,13,18,10,0,5,0,0,23,
2379  27,0,0,0,28,4,13,14,0,22,5,18,30,0,0,24,20,0,21,9,0,0,8,11,0,25,0,2,0,0,
2380  4,0,0,30,3,27,7,0,11,17,0,0,0,0,0,29,26,22,23,15,0,0,0,16,0,9,0,25,6,2,
2381  14,0,0,0,24,26,0,0,17,23,0,27,0,10,9,0,0,6,28,12,2,7,0,13,20,19,0,0,0,21,
2382  0,20,24,2,0,0,0,30,28,0,12,22,0,25,29,0,0,0,0,13,1,10,17,0,4,0,19,3,9,14,
2383  15,23,19,26,0,0,27,0,0,0,0,3,9,21,30,0,28,0,0,17,18,1,0,5,14,22,2,0,0,0,
2384  3,18,0,0,0,5,0,19,0,0,23,24,13,29,10,21,8,0,0,28,20,30,2,17,0,0,0,0,0,15,
2385  22,21,6,7,0,0,0,5,20,16,0,0,0,0,0,19,0,29,0,3,23,11,10,0,9,0,18,8,15,17,
2386  11,0,20,4,0,0,0,0,5,0,10,0,0,12,27,23,25,18,0,19,0,13,22,0,26,16,0,0,28,3,
2387  0,5,26,0,0,0,20,1,6,0,0,21,16,18,0,0,22,0,0,0,4,23,11,0,12,8,7,10,30,28,
2388  13,9,21,28,6,2,0,11,3,25,0,0,27,0,0,7,12,0,24,8,17,26,29,0,0,18,0,0,0,0
2389  };
2390 
2391  const int d30_374_18[] = {
2392  30,
2393  8,29,0,16,0,21,14,7,28,0,0,0,27,13,0,12,9,0,0,22,11,0,26,0,6,0,30,0,19,5,
2394  13,0,7,14,9,23,0,0,20,5,17,8,24,26,0,22,0,0,27,12,21,0,1,0,0,0,19,0,10,0,
2395  0,0,0,3,7,29,16,11,0,0,0,0,25,14,17,30,8,20,6,15,0,26,0,2,21,0,0,0,18,10,
2396  0,20,14,4,0,0,25,22,9,29,30,10,19,0,0,0,0,0,16,0,3,23,2,0,8,0,1,12,0,15,
2397  10,7,0,24,0,14,19,29,30,0,0,0,0,28,0,0,0,0,11,6,0,0,12,25,27,18,26,16,5,0,
2398  0,0,19,13,17,12,1,0,27,0,9,0,0,7,0,29,0,0,23,0,16,20,3,0,18,30,0,22,4,0,
2399  0,11,30,0,22,16,0,1,0,8,24,0,0,0,5,0,29,2,0,25,20,19,0,26,0,4,27,6,0,9,
2400  0,3,24,26,12,7,4,0,0,14,0,0,21,5,8,2,0,1,0,19,0,0,22,9,15,28,0,0,13,0,
2401  20,17,0,0,0,30,0,16,22,3,0,4,5,1,11,23,19,0,21,0,0,0,0,0,10,0,15,2,0,13,
2402  12,5,4,0,6,17,26,0,0,0,11,0,0,19,0,28,3,23,0,0,1,0,0,13,16,14,0,10,15,22,
2403  0,6,9,25,0,27,2,20,29,4,1,19,0,0,12,3,21,0,0,16,28,0,0,0,0,10,0,0,0,17,
2404  30,0,8,7,2,0,22,0,17,20,0,16,26,29,24,0,5,28,12,0,0,9,0,0,0,1,0,27,23,0,
2405  0,0,21,30,10,0,0,0,26,0,0,17,23,12,9,0,0,13,2,29,0,6,24,15,0,7,0,0,11,4,
2406  15,30,0,19,0,0,0,13,5,25,3,6,29,0,0,0,0,10,18,7,22,14,16,0,28,0,0,4,27,0,
2407  3,0,0,21,0,0,8,0,0,0,22,12,0,0,23,9,0,24,30,1,26,11,5,10,7,29,16,0,6,0,
2408  5,19,0,11,28,24,0,0,0,10,4,0,8,0,7,0,16,21,0,0,15,18,29,23,30,25,0,0,0,27,
2409  0,28,22,0,25,20,9,0,23,0,15,29,0,8,0,0,27,12,0,0,0,0,0,11,0,5,18,14,17,6,
2410  14,21,23,0,0,0,0,19,7,1,28,13,0,30,18,26,0,0,0,8,12,27,11,0,2,0,25,0,0,20,
2411  0,0,17,0,29,0,28,12,16,0,18,11,2,0,0,10,0,6,0,21,0,24,25,19,0,3,0,0,7,30,
2412  0,10,0,0,26,19,0,4,25,0,0,0,3,0,27,11,0,0,13,0,17,22,7,20,0,15,9,24,14,0,
2413  17,9,11,0,0,3,21,10,0,22,0,26,20,27,0,0,7,0,14,0,8,0,0,18,13,0,2,0,0,1,
2414  0,0,0,12,0,1,13,9,0,0,2,0,0,6,16,17,20,25,0,14,24,5,28,7,3,0,29,30,0,0,
2415  19,4,26,2,0,0,0,18,0,28,27,0,16,0,3,7,1,15,22,17,25,0,0,0,0,0,0,11,30,12,
2416  4,0,6,0,27,11,0,0,0,13,0,0,14,0,21,1,22,3,0,18,23,0,0,0,0,26,17,20,25,2,
2417  2,0,0,0,3,0,15,8,0,16,20,1,10,9,25,27,13,17,19,0,0,0,4,21,0,0,5,0,0,0,
2418  0,0,2,6,0,15,0,0,1,11,0,24,18,0,29,0,25,0,0,30,7,8,14,27,26,20,28,5,0,0,
2419  26,1,0,27,13,5,0,3,15,30,25,22,0,18,0,6,0,14,0,0,10,2,0,8,0,19,4,0,0,0,
2420  6,0,20,0,30,0,5,23,0,17,0,9,0,0,22,0,14,18,28,0,0,29,27,16,0,12,0,15,0,11,
2421  16,24,15,0,23,0,11,17,0,0,0,7,6,0,0,0,28,0,5,3,0,4,21,30,19,0,12,13,0,0,
2422  9,14,0,0,0,0,0,0,8,23,5,21,0,24,0,18,0,29,10,13,0,15,0,0,12,22,0,3,28,25
2423  };
2424 
2425  const int d30_374_19[] = {
2426  30,
2427  25,0,10,2,26,22,0,11,0,6,0,0,0,3,24,5,0,0,4,23,20,0,0,1,0,19,13,15,0,0,
2428  0,12,28,0,0,3,19,13,0,0,0,25,27,29,1,0,0,0,16,0,10,26,0,20,0,0,11,21,2,9,
2429  7,2,26,25,17,0,0,0,20,13,0,0,24,0,0,11,16,27,0,10,0,5,0,8,3,0,30,12,0,0,
2430  0,17,0,0,30,4,26,0,13,12,23,28,7,0,0,29,0,0,15,14,0,8,11,0,19,0,0,18,21,20,
2431  30,0,16,0,23,0,20,0,9,3,14,0,26,24,5,0,0,21,0,0,27,22,13,18,15,10,0,0,0,0,
2432  9,20,0,0,14,21,0,0,0,22,0,0,1,5,30,10,0,0,26,0,25,28,29,0,8,0,27,0,12,6,
2433  0,0,0,1,0,0,0,24,0,0,13,0,0,21,22,8,28,18,3,19,0,7,0,23,14,25,12,11,6,5,
2434  21,0,0,18,27,0,25,1,30,20,0,3,9,0,28,17,0,16,0,6,22,14,12,0,26,0,0,0,13,0,
2435  8,3,15,21,19,0,0,0,0,0,0,24,23,26,0,0,29,14,0,27,0,4,22,12,0,5,2,25,20,0,
2436  0,27,24,0,0,26,0,0,15,19,30,7,0,0,14,16,2,28,0,13,18,23,5,0,0,17,9,6,0,0,
2437  22,0,0,12,0,0,7,9,14,24,0,0,0,23,8,0,18,25,20,0,13,2,0,27,17,29,0,0,16,11,
2438  3,0,0,15,0,0,27,0,0,16,11,0,0,0,0,7,0,29,24,28,23,0,19,9,18,0,20,1,5,4,
2439  19,15,1,23,22,0,0,25,0,2,7,17,0,11,21,13,0,0,0,5,0,0,0,0,29,14,0,0,10,12,
2440  0,14,0,0,9,17,0,0,3,7,20,0,5,0,19,0,30,0,25,0,0,0,0,11,22,27,8,16,18,13,
2441  11,0,13,28,4,1,0,0,18,23,2,0,0,6,0,25,7,0,8,0,15,9,21,0,0,20,0,0,0,27,
2442  16,0,0,30,5,12,0,0,0,8,29,2,14,17,0,4,22,23,7,24,21,0,0,6,0,0,0,0,19,18,
2443  13,26,19,24,0,0,10,0,0,30,21,29,18,0,20,0,27,0,0,0,14,0,1,28,0,16,17,0,25,23,
2444  14,25,8,6,1,23,0,16,0,0,0,0,0,10,2,0,15,26,19,0,0,20,9,24,0,7,0,22,0,3,
2445  0,0,0,0,21,29,0,23,19,0,0,11,17,18,4,2,0,0,13,20,0,6,25,30,12,15,0,0,14,0,
2446  10,7,5,17,0,16,8,22,29,9,0,6,0,27,0,0,0,0,0,30,4,13,0,0,20,0,23,2,26,0,
2447  12,23,18,13,0,14,4,30,28,0,5,0,0,0,25,0,8,22,0,17,2,0,0,10,1,0,0,19,0,16,
2448  0,0,0,0,0,0,0,17,5,0,27,12,19,0,9,30,0,10,11,0,1,16,18,0,7,8,15,0,22,29,
2449  5,0,30,8,13,19,18,2,0,0,0,9,20,0,0,28,0,1,12,0,3,0,0,4,0,21,0,10,23,26,
2450  0,6,0,0,0,25,5,27,2,0,0,15,0,7,26,0,14,13,9,16,0,11,30,0,4,0,22,28,0,0,
2451  0,29,0,0,10,2,23,26,0,15,4,14,6,30,0,21,5,19,1,0,0,0,0,0,0,0,0,20,11,24,
2452  0,21,22,0,0,18,29,0,4,11,19,0,2,14,0,0,1,12,0,7,28,10,16,0,0,3,26,9,0,0,
2453  0,10,6,0,2,13,17,28,11,27,3,5,0,15,0,0,0,20,0,9,24,0,0,26,0,18,21,0,0,30,
2454  23,0,4,26,18,0,3,5,12,0,10,20,29,0,0,9,6,0,0,0,0,17,28,2,21,30,0,0,8,0,
2455  6,28,23,5,0,0,21,15,8,0,0,1,22,0,0,14,10,2,0,11,0,0,27,0,9,0,3,29,0,7,
2456  0,13,20,22,0,8,1,12,21,0,24,0,25,0,16,0,9,0,10,15,19,0,3,0,0,0,28,27,0,0
2457  };
2458 
2459  const int d30_374_20[] = {
2460  30,
2461  25,14,9,0,0,0,23,20,13,7,30,0,0,6,3,4,8,0,0,29,28,19,0,22,0,0,0,24,0,21,
2462  9,0,0,0,19,0,6,2,0,26,0,0,28,23,0,18,0,0,30,15,10,25,22,0,20,17,0,16,7,14,
2463  2,0,24,30,10,0,25,4,0,21,0,0,0,18,22,1,0,9,0,28,0,26,5,17,0,0,0,6,20,7,
2464  30,25,1,14,9,12,2,0,26,8,0,0,19,17,27,0,0,18,15,0,21,13,0,0,0,0,0,0,24,4,
2465  0,17,0,19,3,0,7,0,0,2,16,4,0,14,0,25,6,8,0,0,0,0,27,0,28,0,21,26,18,5,
2466  0,30,0,22,27,0,3,0,2,10,12,15,0,0,0,19,0,13,1,18,16,7,0,0,25,0,20,8,0,0,
2467  0,15,0,7,16,0,5,0,0,0,0,28,0,0,24,0,4,23,19,21,25,0,0,0,29,12,14,10,30,27,
2468  0,22,0,0,26,29,0,10,1,28,11,0,7,0,18,23,0,6,13,0,19,0,21,30,0,3,0,4,0,0,
2469  15,26,0,0,0,7,0,29,0,30,0,0,0,10,12,24,2,0,0,4,0,27,8,11,9,25,17,28,14,0,
2470  8,12,0,13,5,19,29,9,10,6,22,23,21,0,0,0,0,20,0,0,17,0,11,0,7,4,0,0,27,0,
2471  16,0,6,3,0,28,8,24,17,22,0,27,0,2,20,0,1,0,0,13,15,0,0,12,0,10,0,19,0,9,
2472  17,21,7,0,6,15,10,0,18,0,0,13,25,0,30,0,0,5,0,0,0,29,2,0,24,22,3,0,12,0,
2473  0,2,29,0,4,14,0,16,11,3,0,5,0,0,13,0,9,17,7,0,12,28,10,0,0,24,0,0,22,25,
2474  23,20,27,0,18,9,1,19,0,29,26,0,5,25,6,10,0,0,8,0,2,0,13,0,0,0,15,0,0,11,
2475  0,19,0,0,23,26,27,15,4,0,0,10,16,11,0,6,18,0,0,2,30,0,17,1,0,0,8,0,21,3,
2476  28,0,0,5,17,20,19,0,15,0,3,12,26,0,0,0,0,2,24,7,0,9,0,6,13,0,0,0,11,29,
2477  0,0,8,0,0,0,28,0,7,20,21,0,0,0,9,16,0,0,2,0,26,24,23,13,1,15,10,14,4,0,
2478  0,9,22,28,11,27,0,17,0,0,10,6,8,20,0,2,7,16,0,0,14,5,0,4,0,0,26,30,0,0,
2479  0,16,0,27,0,13,0,0,29,12,2,0,0,0,10,20,19,26,28,3,0,0,0,15,0,21,5,0,6,1,
2480  0,0,20,10,14,0,0,0,6,17,24,9,0,8,0,30,5,0,18,0,4,0,0,2,3,0,22,11,25,23,
2481  5,0,0,12,0,6,0,28,0,0,13,0,1,0,11,27,10,7,22,30,8,0,3,21,16,0,25,0,0,0,
2482  6,0,4,23,30,17,14,0,19,0,0,24,29,13,0,0,3,28,20,0,18,8,0,0,0,11,0,0,0,22,
2483  13,24,12,0,28,16,26,0,0,27,15,0,0,0,7,17,0,0,0,1,0,0,30,14,0,23,0,29,5,20,
2484  0,0,19,16,20,0,0,13,0,0,0,17,22,5,0,8,23,0,0,10,0,12,24,0,15,14,29,7,9,0,
2485  7,4,5,0,0,0,0,25,14,0,18,20,12,29,0,0,11,24,26,0,0,21,0,0,27,2,16,22,17,0,
2486  0,0,11,20,0,0,9,26,5,16,4,30,15,0,0,0,0,1,0,12,0,17,19,24,8,18,0,3,0,0,
2487  10,29,3,4,0,30,0,0,8,0,7,18,20,12,26,0,22,0,11,24,0,0,0,5,0,13,0,21,0,2,
2488  22,6,13,26,0,0,15,1,0,0,0,0,11,16,2,21,24,0,0,0,0,23,0,8,5,28,30,27,0,19,
2489  4,0,0,0,0,0,0,5,0,0,1,21,10,22,25,0,28,30,29,9,23,15,26,27,18,0,2,0,0,0,
2490  0,0,26,2,0,4,0,21,28,0,27,0,14,15,0,7,0,12,5,17,0,18,29,0,22,8,1,0,0,10
2491  };
2492 
2493  const int d30_375_21[] = {
2494  30,
2495  18,13,0,20,0,29,0,0,7,16,0,8,24,0,30,28,10,0,25,21,0,19,9,0,0,14,27,0,0,0,
2496  0,8,16,0,0,24,0,14,0,0,2,9,0,5,0,15,26,21,29,7,17,0,13,30,22,25,0,10,0,0,
2497  24,4,0,3,0,2,0,0,0,15,22,28,14,8,26,30,1,0,6,0,0,17,0,27,12,5,0,0,0,25,
2498  11,0,26,7,0,22,0,1,27,0,0,4,19,0,6,2,12,0,30,0,15,0,0,5,10,17,21,14,0,0,
2499  0,0,14,0,10,0,5,0,1,23,27,12,0,20,0,21,0,16,0,0,0,7,24,25,4,3,8,0,17,11,
2500  0,20,0,9,21,27,0,7,6,0,26,23,0,0,3,25,0,0,0,11,16,1,0,0,28,0,15,0,24,10,
2501  7,3,18,27,0,21,0,0,15,10,0,0,6,11,0,12,0,24,9,0,14,5,8,0,30,0,19,0,2,0,
2502  6,0,0,2,29,4,15,16,17,26,21,0,7,18,20,0,8,23,24,0,12,0,0,0,0,0,1,0,28,0,
2503  1,12,15,0,6,0,0,8,29,28,23,0,21,3,0,0,20,7,0,4,11,0,30,26,0,0,0,0,13,22,
2504  0,0,0,0,0,0,10,0,25,0,0,0,0,28,2,0,4,13,14,8,20,23,19,15,17,9,3,21,27,30,
2505  22,0,0,30,25,0,0,5,0,0,20,7,18,26,24,0,0,19,21,15,0,10,0,14,0,0,0,23,12,6,
2506  20,6,0,25,0,23,14,0,26,0,24,5,0,0,4,0,21,1,0,10,2,16,7,0,0,0,9,0,8,0,
2507  27,0,5,0,0,0,16,15,2,12,28,0,0,9,23,0,11,0,19,20,13,0,1,0,3,0,10,17,0,14,
2508  8,5,0,0,0,19,4,0,23,17,0,10,30,24,28,0,27,3,18,26,22,29,0,0,2,0,0,0,0,0,
2509  0,14,30,10,20,8,0,6,9,0,0,0,0,0,12,18,17,25,13,0,0,4,27,0,0,16,0,0,5,7,
2510  28,0,6,13,7,15,0,27,3,25,0,18,10,0,17,0,19,0,0,29,0,0,16,9,21,0,4,0,0,0,
2511  2,0,24,6,0,0,30,3,0,11,0,29,20,0,0,23,13,5,0,0,7,12,0,8,26,0,0,25,14,0,
2512  0,0,28,11,30,14,2,23,0,18,7,0,0,19,0,0,0,0,22,24,0,0,10,12,29,27,0,8,6,17,
2513  0,21,0,23,0,0,19,0,4,30,17,25,0,0,10,3,0,0,5,16,0,0,0,22,0,6,24,20,7,26,
2514  30,22,27,0,0,0,1,0,0,21,0,0,25,16,13,0,0,29,0,14,5,2,0,18,8,0,12,9,3,23,
2515  0,26,23,0,5,0,11,20,16,2,0,0,17,0,0,10,9,0,4,13,6,0,12,0,0,7,30,0,0,15,
2516  16,7,0,24,0,11,21,25,30,0,18,0,0,0,0,0,15,0,0,0,28,14,3,19,1,8,0,26,23,4,
2517  4,2,0,0,3,25,0,0,0,0,13,19,0,0,0,14,23,0,0,28,0,20,0,7,5,24,18,29,22,16,
2518  21,25,7,0,1,0,24,0,0,22,15,14,0,12,0,5,30,0,28,0,0,0,18,2,0,11,20,13,0,0,
2519  0,17,0,0,13,0,18,11,0,14,8,1,16,0,0,0,0,2,0,19,24,21,6,29,7,23,0,3,0,12,
2520  15,0,3,0,23,0,0,24,0,19,0,13,29,14,25,22,0,4,11,0,27,6,0,0,0,1,2,0,21,28,
2521  0,0,0,29,15,17,23,10,11,0,30,0,28,0,14,8,0,0,0,5,0,0,21,20,0,0,26,7,9,18,
2522  3,0,11,0,4,28,26,0,0,0,6,16,12,7,0,0,0,22,1,0,23,0,29,13,9,30,0,19,0,0,
2523  0,0,17,15,14,9,25,0,10,13,0,0,22,21,27,11,2,20,0,0,3,0,5,0,0,19,28,18,0,0,
2524  0,19,21,28,9,20,27,17,0,0,16,0,13,15,0,1,0,8,0,0,0,18,0,0,23,26,0,22,30,0
2525  };
2526 
2527  const int d30_375_22[] = {
2528  30,
2529  12,30,9,17,0,6,2,27,0,0,24,0,3,0,13,23,0,0,0,0,0,14,25,19,5,29,0,11,0,0,
2530  0,0,0,15,24,29,30,20,25,18,7,14,0,0,0,10,22,0,8,0,0,2,3,4,0,6,0,28,5,0,
2531  28,19,0,0,0,17,18,0,29,22,3,0,0,0,25,20,0,6,0,23,16,0,12,0,0,26,21,0,1,30,
2532  0,0,11,25,0,20,6,0,17,0,18,12,24,28,0,0,1,27,7,15,0,3,22,0,30,0,0,0,10,23,
2533  26,0,0,0,28,30,0,4,0,3,29,21,20,7,0,0,15,0,0,2,0,6,0,22,13,0,27,17,18,0,
2534  30,15,0,0,0,27,0,0,5,28,4,20,6,0,22,7,17,2,14,13,0,8,0,0,23,0,10,0,9,0,
2535  22,10,29,13,3,5,7,0,0,8,0,1,0,0,0,0,0,23,15,0,0,0,9,12,0,4,25,24,11,27,
2536  29,0,0,28,17,7,4,8,22,0,26,0,1,0,0,18,10,0,11,21,0,13,0,9,14,30,6,0,0,0,
2537  0,0,0,0,19,0,0,11,24,16,0,0,15,6,8,0,7,13,12,9,0,0,1,2,21,0,5,18,22,28,
2538  0,0,5,27,6,0,0,19,0,0,10,30,0,0,4,0,24,20,1,0,21,0,13,29,0,12,0,14,15,8,
2539  25,0,0,0,9,0,10,14,1,11,0,6,30,21,0,12,0,0,0,0,29,18,0,27,0,22,15,4,17,0,
2540  0,6,0,26,7,0,19,0,20,0,23,13,0,15,18,0,0,25,9,11,8,0,21,0,2,5,0,0,12,0,
2541  0,0,20,21,0,3,27,0,14,7,0,0,5,29,0,0,0,30,0,6,2,19,18,23,11,13,1,0,0,0,
2542  9,18,3,0,30,0,0,0,0,0,20,5,27,0,15,16,0,12,0,14,0,0,2,0,1,17,7,25,0,11,
2543  0,0,7,12,0,26,5,3,0,1,27,0,19,8,14,13,4,24,16,0,0,20,0,18,0,25,22,0,0,0,
2544  21,7,0,0,0,18,13,29,28,17,0,8,14,2,0,0,0,16,26,1,23,10,24,30,9,0,0,0,0,0,
2545  17,0,0,5,1,13,0,30,6,0,0,29,0,0,20,15,14,0,22,0,19,21,0,0,7,28,4,10,0,0,
2546  0,21,10,0,20,0,0,0,0,5,0,28,22,14,26,9,0,29,0,25,6,23,17,0,18,7,0,0,0,2,
2547  3,0,24,18,15,0,0,10,9,26,0,0,2,0,0,27,6,0,0,28,25,0,29,7,0,20,8,0,0,19,
2548  16,29,13,7,27,23,24,0,8,0,0,22,0,18,12,6,0,19,20,0,0,0,0,0,0,9,0,0,21,1,
2549  6,1,0,0,0,16,14,24,21,0,0,0,0,10,0,0,18,0,28,27,12,0,4,26,15,0,20,7,29,22,
2550  18,24,23,4,0,14,0,21,0,0,11,17,8,0,0,30,20,9,0,0,27,5,0,16,28,15,19,0,0,0,
2551  23,27,4,30,0,0,15,0,0,9,0,18,12,11,3,0,0,7,0,29,0,26,19,1,17,0,0,5,0,20,
2552  0,0,1,0,26,9,0,0,0,0,30,2,18,0,0,25,0,0,21,8,20,22,14,6,16,0,11,23,28,29,
2553  0,0,19,24,0,21,25,9,0,30,22,0,23,4,16,0,2,0,0,0,14,0,20,0,26,3,0,12,27,0,
2554  0,22,28,8,10,0,0,0,0,13,0,0,21,25,7,0,11,4,24,17,0,9,26,0,0,0,0,2,30,15,
2555  27,17,2,16,8,15,0,1,19,0,12,0,0,0,23,24,26,0,0,4,13,28,0,0,0,0,30,0,25,21,
2556  20,12,0,2,0,0,8,6,7,0,19,0,0,13,27,22,29,17,18,0,15,24,0,0,0,0,0,21,0,5,
2557  0,3,8,0,2,0,0,17,12,27,0,23,0,24,1,0,0,21,25,26,10,0,0,11,0,0,28,13,6,14,
2558  11,9,30,0,0,0,3,0,15,23,5,10,0,16,2,4,25,0,6,0,22,0,0,0,0,19,0,20,13,12
2559  };
2560 
2561  const int d30_375_23[] = {
2562  30,
2563  5,23,0,9,0,0,0,0,29,0,0,0,25,6,7,21,0,0,16,0,18,1,0,19,22,28,13,20,30,17,
2564  10,0,21,0,3,0,30,8,22,0,0,28,2,26,0,0,0,0,0,11,25,5,0,0,18,24,27,0,19,7,
2565  27,12,2,0,4,9,3,0,0,0,7,13,18,17,0,0,29,26,5,0,0,0,22,24,0,21,15,0,0,8,
2566  19,10,0,6,0,30,0,11,15,0,26,0,0,13,12,4,0,21,2,23,0,0,20,27,24,0,0,5,1,0,
2567  30,2,0,1,0,0,24,0,0,10,13,25,0,5,0,0,6,7,15,21,17,0,0,0,11,29,0,9,14,0,
2568  0,0,28,0,0,0,9,0,8,17,15,12,1,29,26,30,0,0,10,13,22,23,0,20,0,3,0,0,18,5,
2569  0,24,19,21,23,28,29,2,12,0,0,4,0,0,1,0,0,17,0,14,26,30,3,0,0,8,0,0,7,0,
2570  24,0,0,0,0,16,27,0,25,0,29,0,11,9,4,23,17,0,0,12,5,21,15,0,10,26,0,13,0,2,
2571  1,11,0,24,26,14,6,7,28,8,23,0,0,30,0,0,0,2,3,29,0,0,0,4,0,16,0,0,12,0,
2572  9,0,13,0,11,12,0,17,27,25,10,0,0,0,0,15,14,8,23,22,3,7,16,0,2,0,0,0,0,19,
2573  13,1,0,0,0,29,18,0,0,0,0,9,4,24,0,2,7,15,26,0,27,19,0,22,3,0,21,11,0,6,
2574  0,0,26,0,1,6,0,0,0,27,25,24,22,0,0,7,28,5,21,0,2,0,13,16,19,11,0,18,0,0,
2575  0,25,0,0,9,0,16,0,0,24,6,0,5,0,0,0,15,19,0,0,0,12,27,14,8,13,2,3,29,23,
2576  21,0,16,2,18,0,0,26,0,0,28,14,0,0,24,29,22,0,13,7,23,0,6,9,4,0,10,1,0,0,
2577  0,16,25,0,30,7,0,20,0,26,0,0,0,0,5,24,19,3,4,0,9,2,0,15,29,0,23,0,0,18,
2578  18,27,0,10,21,3,0,0,0,28,0,2,0,0,16,20,11,0,0,0,0,17,7,30,1,0,5,8,0,22,
2579  0,0,0,19,22,24,25,18,0,0,8,3,0,10,13,5,21,0,0,15,20,0,4,2,0,12,30,0,27,0,
2580  0,0,7,30,0,0,0,14,6,0,21,0,0,16,17,0,26,0,22,9,29,13,2,0,15,4,11,0,5,1,
2581  0,5,27,11,0,0,26,19,20,21,0,0,15,0,25,10,16,12,0,18,0,0,8,0,0,0,14,30,9,4,
2582  6,0,0,18,27,0,0,5,21,0,0,20,14,0,2,0,0,10,0,26,12,29,17,13,9,0,0,19,24,25,
2583  4,20,29,3,0,23,0,0,1,11,0,26,19,15,0,0,0,0,9,0,0,24,0,28,0,6,8,10,0,12,
2584  20,8,10,12,6,0,7,23,0,0,4,0,27,2,19,0,0,0,0,0,30,16,0,1,13,0,0,26,25,0,
2585  3,0,0,13,14,20,28,6,19,0,1,10,0,12,30,27,0,22,8,0,0,0,0,21,0,23,25,24,0,0,
2586  0,15,5,0,19,4,0,25,10,3,24,0,0,0,6,9,0,1,0,0,13,20,21,0,0,0,18,27,28,0,
2587  0,4,18,23,0,0,0,0,0,14,0,6,9,0,15,12,13,11,0,0,0,28,25,0,17,1,7,0,20,26,
2588  22,0,0,8,0,5,0,9,0,29,2,0,13,28,20,0,12,0,0,24,14,4,26,7,0,0,17,16,23,0,
2589  0,17,15,29,8,18,23,0,16,13,0,22,0,0,0,1,27,20,24,10,6,0,0,0,0,0,19,0,26,28,
2590  15,0,0,0,13,0,11,30,7,18,0,21,29,22,0,3,0,24,0,25,0,9,0,0,0,10,1,28,6,0,
2591  0,28,1,0,0,27,17,12,26,9,5,8,21,20,22,0,30,23,6,0,0,0,0,0,0,18,0,0,0,14,
2592  7,0,11,0,20,0,1,3,2,30,0,17,8,14,0,16,0,0,25,27,0,0,23,26,28,0,0,0,0,29
2593  };
2594 
2595  const int d30_375_24[] = {
2596  30,
2597  19,22,0,1,30,0,0,0,23,17,0,28,20,0,14,0,0,2,0,9,13,4,0,5,0,26,18,25,0,7,
2598  30,2,0,0,0,28,0,6,0,0,0,1,4,0,0,21,14,23,0,7,19,0,0,29,18,25,20,0,12,5,
2599  1,0,27,6,18,23,3,0,12,20,0,0,0,29,0,24,9,0,7,0,2,8,4,0,13,0,26,0,0,11,
2600  28,0,15,0,13,10,1,20,22,8,11,0,0,0,0,17,30,0,5,0,0,9,0,18,26,6,0,24,3,0,
2601  15,0,14,7,16,0,28,0,25,0,0,18,0,2,1,11,0,29,0,0,0,0,24,27,17,12,10,4,0,8,
2602  0,14,0,0,21,27,11,8,0,0,25,0,26,23,16,6,0,0,0,29,0,0,3,7,0,28,5,10,30,17,
2603  20,0,0,26,0,0,6,0,14,2,0,3,13,0,7,25,24,30,1,0,15,10,0,12,0,0,11,17,0,0,
2604  26,23,20,0,29,0,0,17,2,0,0,0,3,13,0,15,0,27,25,16,1,5,12,0,0,0,6,0,0,24,
2605  27,0,29,12,0,15,25,0,0,0,0,2,30,8,0,0,11,21,0,0,14,0,6,9,0,0,24,1,22,13,
2606  0,0,0,0,20,6,14,0,1,27,26,5,0,16,17,13,29,0,19,3,22,0,8,0,10,30,0,0,18,0,
2607  0,0,0,0,12,25,2,24,0,28,0,27,7,26,4,0,3,17,30,5,0,14,0,0,16,0,0,21,9,0,
2608  4,0,5,15,24,26,27,0,10,1,0,7,23,0,12,0,0,0,16,0,0,19,28,0,6,29,0,18,11,0,
2609  0,11,0,9,2,20,13,12,0,0,23,19,27,0,29,0,0,15,6,10,0,0,21,0,24,3,0,8,16,0,
2610  22,12,0,19,8,0,0,16,0,18,15,0,11,9,26,0,0,20,0,30,0,28,29,25,27,5,0,0,0,3,
2611  0,3,8,22,0,0,21,15,0,5,4,23,6,1,0,29,0,10,0,13,30,0,0,14,0,0,0,16,0,12,
2612  6,13,24,0,0,14,0,0,27,10,12,26,0,19,0,0,25,3,20,0,0,0,23,0,5,11,8,0,0,22,
2613  0,0,0,10,0,21,0,0,9,0,18,16,0,0,25,2,23,0,11,0,12,24,14,0,15,20,19,0,27,30,
2614  17,28,0,0,0,0,0,22,26,0,30,0,0,27,13,19,6,18,29,0,0,20,16,24,0,0,3,9,15,4,
2615  0,19,10,0,11,0,20,26,29,21,0,0,2,0,8,12,7,0,0,24,3,0,0,13,0,14,22,0,4,0,
2616  0,6,11,30,0,9,0,23,0,0,24,0,14,22,19,3,0,7,0,0,0,0,0,28,1,0,4,26,10,21,
2617  5,15,9,0,0,0,0,0,16,0,3,11,10,0,18,0,0,19,13,0,0,12,26,0,0,22,7,14,6,27,
2618  23,0,0,0,14,17,0,1,30,3,16,24,0,6,0,0,28,0,0,4,7,0,18,19,29,0,13,0,0,20,
2619  0,0,18,3,0,0,0,30,0,9,19,21,0,14,0,0,5,8,28,26,10,17,0,16,0,27,29,0,25,0,
2620  13,24,0,5,3,1,0,18,0,7,0,15,0,30,27,0,0,22,9,0,4,29,0,0,0,0,0,11,20,26,
2621  9,17,0,18,22,16,24,25,28,0,29,12,21,15,0,10,0,0,0,27,0,2,20,0,30,0,0,0,8,0,
2622  12,9,21,0,7,0,26,0,15,0,0,0,16,5,24,0,1,0,0,0,8,11,0,20,14,10,17,3,2,0,
2623  0,0,16,20,26,0,8,0,0,25,21,0,9,0,0,0,12,24,4,1,5,0,0,30,0,7,28,6,13,29,
2624  3,29,12,14,6,0,22,11,7,23,0,0,0,0,2,9,0,0,0,21,17,26,15,4,19,0,0,30,0,0,
2625  0,20,22,23,0,24,19,7,0,14,28,0,0,25,0,4,27,0,10,6,0,13,5,8,0,2,0,0,0,0,
2626  0,21,19,0,0,5,18,14,24,26,27,4,12,0,0,22,10,0,23,28,9,0,30,0,25,0,0,0,0,2
2627  };
2628 
2629  const int d30_375_25[] = {
2630  30,
2631  0,18,27,5,0,0,0,20,0,12,6,7,2,0,9,0,1,14,10,0,26,4,0,8,0,3,0,15,19,0,
2632  17,12,16,0,3,8,11,0,28,6,13,22,1,0,0,0,0,21,0,5,0,9,29,30,0,0,0,0,4,14,
2633  0,0,23,0,0,15,19,5,0,14,22,6,9,25,0,0,13,12,0,0,11,27,0,2,0,30,1,0,0,3,
2634  0,0,13,23,22,1,0,0,24,0,0,16,0,9,20,0,15,0,0,8,30,0,3,18,11,28,25,21,0,17,
2635  0,7,0,22,18,3,24,29,0,1,30,0,0,0,0,28,0,20,0,0,0,0,0,5,17,23,21,10,12,15,
2636  2,8,4,0,19,18,0,0,9,0,28,0,0,11,7,0,14,0,15,29,13,0,10,6,24,5,0,0,27,0,
2637  0,0,2,0,0,9,30,19,0,4,0,12,23,0,0,16,28,0,6,3,5,0,1,25,0,21,20,0,22,26,
2638  9,0,24,15,27,0,0,14,0,10,20,11,0,26,0,19,0,0,22,0,0,0,0,13,21,2,18,5,0,7,
2639  10,11,12,0,0,0,6,0,0,0,7,27,4,21,0,0,2,0,24,14,19,3,0,20,0,9,0,30,26,5,
2640  30,0,18,0,23,0,9,0,0,2,0,5,12,6,28,21,0,0,17,13,0,19,15,0,0,22,0,4,10,0,
2641  0,20,0,24,0,14,26,15,3,0,9,30,0,0,0,29,0,17,13,23,0,22,8,0,0,0,5,12,25,27,
2642  0,19,29,8,21,0,0,0,13,0,5,28,15,0,2,0,22,9,14,0,25,0,0,0,7,26,16,0,0,10,
2643  25,0,0,0,28,0,0,1,0,8,14,0,13,24,6,3,19,2,0,22,27,29,12,0,0,0,10,0,7,0,
2644  13,14,0,6,0,0,5,21,0,0,0,19,0,12,0,30,16,26,0,2,9,0,23,10,0,4,7,8,20,0,
2645  0,30,0,27,0,0,25,7,12,0,2,15,8,20,21,0,0,0,0,18,23,13,16,26,4,0,11,0,0,0,
2646  16,27,6,7,17,0,10,3,18,0,0,0,0,0,30,1,0,4,9,0,0,0,0,0,25,14,26,28,0,8,
2647  3,26,15,14,1,0,0,0,8,18,4,0,0,16,11,20,27,6,0,25,10,21,0,29,0,0,19,0,0,0,
2648  28,21,0,9,8,17,15,0,6,0,26,25,0,0,24,0,4,10,29,7,0,0,0,22,16,0,0,23,0,18,
2649  27,1,21,0,29,20,0,10,0,22,23,0,26,0,13,4,25,0,3,0,7,11,6,0,12,0,0,0,24,0,
2650  26,0,0,20,0,0,7,24,29,11,0,0,14,0,17,12,10,5,19,16,0,30,21,0,0,8,0,18,0,2,
2651  0,4,0,0,30,0,16,9,27,19,0,18,3,23,8,0,0,0,28,0,24,25,0,0,13,0,12,17,0,29,
2652  0,22,20,0,13,5,0,8,0,7,0,29,11,10,0,0,0,16,12,26,14,2,0,0,28,17,0,6,0,0,
2653  1,0,25,12,0,0,0,0,17,0,21,0,20,7,5,10,3,0,0,0,15,26,2,4,19,0,30,0,11,0,
2654  0,24,8,30,0,13,4,0,0,3,0,0,0,0,22,25,0,0,0,12,0,23,5,14,26,20,0,9,15,21,
2655  11,0,0,18,24,7,0,0,2,25,0,0,0,8,0,22,21,23,0,0,0,28,27,12,29,0,0,14,5,1,
2656  0,0,28,13,20,16,3,0,0,26,8,14,0,22,18,15,12,0,5,27,0,17,0,0,10,6,0,0,29,0,
2657  21,0,5,0,0,6,2,4,23,0,0,1,0,14,27,0,0,28,7,0,12,0,22,0,20,0,3,19,17,13,
2658  18,0,0,2,11,30,0,25,5,29,0,0,19,3,0,14,9,0,23,0,4,6,0,24,0,15,0,0,0,16,
2659  23,5,0,17,0,2,13,0,16,0,0,21,18,0,26,11,29,30,0,10,20,0,4,0,6,0,14,0,28,0,
2660  5,0,0,0,2,25,0,22,1,20,3,0,16,30,0,0,0,13,0,4,0,0,7,15,0,10,8,26,23,0
2661  };
2662 
2663  const int d30_375_26[] = {
2664  30,
2665  24,0,10,0,0,1,19,0,5,0,6,0,12,4,25,21,0,29,26,0,0,0,13,18,23,27,3,22,0,0,
2666  1,0,0,21,15,7,0,0,17,23,25,14,0,19,0,0,8,0,0,0,27,0,9,12,10,11,28,20,0,0,
2667  20,14,7,23,0,24,11,8,0,4,0,17,0,0,0,25,0,0,13,10,0,6,3,27,0,0,5,0,1,12,
2668  7,20,8,27,0,25,0,24,0,0,0,18,0,3,19,0,0,0,5,30,21,23,14,28,9,0,12,0,29,0,
2669  25,29,4,0,0,0,27,20,1,6,0,0,13,11,28,0,12,0,0,9,0,0,0,26,19,0,7,0,5,2,
2670  11,0,2,0,13,0,9,30,12,16,23,0,19,0,5,0,4,0,0,0,26,18,28,0,0,3,0,14,0,15,
2671  14,7,22,12,0,0,26,0,4,0,28,0,15,8,0,13,0,16,10,3,0,19,17,0,11,0,30,18,0,0,
2672  0,23,0,29,1,20,5,27,0,28,17,0,0,0,6,0,9,2,3,0,14,16,0,24,0,13,0,7,0,0,
2673  18,6,0,0,0,22,0,0,0,21,14,19,28,0,16,0,23,17,0,1,8,0,15,13,24,0,0,29,30,7,
2674  13,0,0,28,25,0,0,9,23,0,0,6,0,0,4,0,2,0,14,0,5,17,20,16,3,1,0,10,0,26,
2675  3,17,28,0,16,5,0,22,13,15,30,9,8,0,0,0,7,0,2,0,0,0,0,25,29,0,0,0,18,20,
2676  10,0,5,22,14,21,0,1,0,0,4,7,16,30,0,3,0,6,0,0,0,2,0,15,0,26,25,28,13,0,
2677  0,25,0,18,0,6,0,0,30,0,19,0,0,0,14,2,11,27,0,0,0,12,5,7,21,22,9,8,20,4,
2678  0,0,0,0,5,2,24,16,0,0,20,25,4,17,0,0,0,12,0,21,22,13,19,0,1,7,11,0,14,0,
2679  0,0,0,3,8,0,14,0,28,0,16,26,0,29,30,11,0,21,23,6,0,10,0,1,25,0,0,27,12,0,
2680  0,4,12,11,0,30,21,19,0,25,29,0,7,0,13,18,0,0,0,0,0,27,26,3,0,8,17,1,6,0,
2681  22,0,0,0,24,0,28,0,15,13,3,11,0,1,2,9,10,0,18,0,12,0,0,0,0,4,26,16,0,27,
2682  6,2,20,10,0,8,17,0,0,29,13,24,0,0,21,0,16,3,0,12,30,0,0,0,0,14,22,0,4,0,
2683  0,0,0,26,9,0,8,6,19,0,1,5,3,28,7,27,0,20,0,0,0,0,12,29,15,0,0,24,2,18,
2684  0,10,13,0,12,15,23,0,0,0,2,4,21,0,0,24,18,28,20,29,3,25,7,17,0,30,0,0,0,0,
2685  0,30,27,14,3,0,0,18,16,26,0,20,29,7,12,0,0,1,0,2,0,8,6,0,0,0,10,0,0,19,
2686  19,3,0,2,28,0,22,0,0,0,11,10,0,21,0,16,0,14,0,0,7,20,0,0,4,23,6,15,24,13,
2687  0,8,25,0,0,18,16,17,24,0,0,15,11,10,0,20,28,0,6,19,4,29,30,0,5,0,13,0,0,0,
2688  0,13,0,15,21,9,4,26,0,11,0,0,18,0,0,6,19,24,27,7,16,0,0,14,0,20,0,0,0,29,
2689  15,0,17,0,0,27,0,0,10,2,26,0,14,0,0,23,25,18,0,22,13,11,0,5,0,0,29,30,0,24,
2690  16,28,18,0,0,10,13,0,11,0,0,30,26,25,24,0,29,0,19,14,23,0,0,0,17,21,0,0,7,0,
2691  0,27,30,6,10,0,0,4,9,7,0,0,2,20,0,15,21,0,17,28,0,0,16,0,22,25,0,0,11,23,
2692  0,0,0,5,2,12,30,0,7,27,0,0,17,0,1,4,0,0,21,26,6,0,8,0,0,19,15,13,22,10,
2693  5,1,0,0,29,0,0,21,0,10,0,12,0,24,8,14,22,11,15,4,20,0,0,0,28,0,0,17,25,6,
2694  28,0,6,0,11,0,0,5,3,19,0,0,0,23,15,30,0,7,22,0,18,26,0,9,0,17,20,0,0,1
2695  };
2696 
2697  const int d30_375_27[] = {
2698  30,
2699  22,15,19,0,0,0,21,28,0,29,0,20,8,0,11,0,2,10,0,9,18,0,0,0,16,6,30,27,0,4,
2700  4,0,12,5,24,18,0,9,17,20,21,30,0,0,0,25,0,0,26,0,29,0,15,7,0,13,0,3,0,16,
2701  0,0,0,15,12,0,14,0,23,27,0,6,2,10,26,0,0,0,16,22,21,0,3,18,9,0,11,30,0,0,
2702  12,9,13,0,0,6,8,27,0,0,24,0,0,0,28,18,0,4,11,23,26,0,2,20,0,5,0,0,0,21,
2703  0,27,0,14,11,15,30,0,0,0,5,2,0,0,17,10,21,25,0,0,28,9,0,1,3,19,0,12,0,0,
2704  0,0,0,10,28,21,2,7,20,0,0,5,0,1,12,6,23,0,14,16,0,29,0,24,13,0,0,0,26,0,
2705  0,21,0,8,6,0,9,0,24,0,0,25,0,16,29,27,0,15,0,0,14,5,10,0,1,30,17,23,3,0,
2706  0,0,7,0,19,0,4,25,3,2,0,0,0,0,6,5,20,0,13,24,0,18,0,28,0,21,8,0,11,1,
2707  5,0,0,27,0,0,16,0,1,0,19,17,21,29,0,24,25,26,0,8,0,28,30,14,7,2,0,0,0,22,
2708  17,0,9,4,0,22,0,13,27,19,18,3,1,0,21,23,26,0,0,0,2,0,0,0,0,16,5,10,0,14,
2709  0,29,6,28,25,0,0,0,0,0,22,15,3,0,10,0,14,0,12,0,17,4,0,0,26,7,13,8,5,2,
2710  0,4,0,0,26,0,18,19,0,14,3,13,0,20,0,12,29,17,7,21,15,8,11,0,22,0,0,2,0,0,
2711  6,0,0,9,7,8,0,0,0,0,17,12,18,22,27,0,10,0,0,15,0,14,4,0,0,28,29,11,20,23,
2712  0,0,10,0,8,11,25,17,4,13,0,0,29,2,16,15,19,20,0,0,23,0,0,0,30,0,3,0,1,0,
2713  9,25,0,0,0,29,0,22,0,7,16,0,27,12,15,0,0,8,20,0,0,24,21,11,5,0,0,0,23,26,
2714  15,10,20,22,0,1,5,14,29,0,0,16,26,17,0,11,0,0,24,30,12,0,19,0,0,0,27,0,0,0,
2715  0,0,24,0,2,19,0,0,28,16,15,23,0,0,3,22,4,13,0,0,8,0,14,21,0,0,1,29,10,0,
2716  21,19,22,3,0,30,1,5,0,26,0,0,0,0,4,0,18,12,0,0,7,0,0,13,6,27,16,0,24,8,
2717  13,18,8,26,0,16,0,0,0,23,27,0,15,7,0,0,0,6,4,0,0,20,0,0,2,0,25,28,9,24,
2718  2,0,17,0,0,0,26,0,16,22,7,0,5,9,14,3,0,0,29,0,0,0,23,8,21,0,24,6,0,30,
2719  29,24,0,18,5,0,0,0,0,0,25,0,0,0,0,0,7,22,23,27,0,26,16,0,8,1,2,17,30,28,
2720  0,8,16,0,0,7,0,23,11,15,0,0,14,0,0,0,0,0,5,4,0,1,6,2,17,9,26,18,28,0,
2721  30,3,0,17,14,0,0,0,22,0,0,1,24,0,19,8,12,21,0,25,0,0,13,23,27,29,0,0,16,20,
2722  19,0,26,0,22,0,7,20,14,0,9,0,13,11,0,1,24,0,0,0,0,23,27,6,0,8,0,4,12,15,
2723  7,22,0,0,0,0,27,15,2,0,10,9,17,18,0,16,28,29,30,6,24,0,0,0,25,0,0,5,13,0,
2724  0,2,0,11,20,13,0,0,25,10,30,0,0,19,0,14,0,23,0,26,6,17,0,3,24,0,28,7,0,27,
2725  25,0,4,6,9,26,0,10,8,11,0,0,0,28,2,0,0,0,1,3,16,0,17,19,0,0,18,0,29,0,
2726  0,12,2,0,0,4,0,29,0,1,0,19,23,6,9,0,0,24,27,11,30,10,18,0,0,14,0,0,25,13,
2727  0,30,25,0,0,20,3,0,5,24,4,8,28,14,0,29,11,9,19,0,0,7,0,22,0,17,0,0,0,0,
2728  23,0,18,29,1,0,28,12,0,5,14,0,11,0,0,0,8,16,2,7,0,6,26,0,0,22,19,0,0,10
2729  };
2730 
2731  const int d30_375_28[] = {
2732  30,
2733  0,22,21,0,18,17,5,10,1,0,0,0,11,0,0,19,0,24,8,0,27,15,14,0,0,2,29,6,0,0,
2734  3,14,16,28,23,15,29,0,0,10,0,0,0,2,12,6,0,0,4,13,0,19,5,0,8,0,24,0,0,0,
2735  27,6,0,0,0,18,24,0,14,0,0,0,0,0,1,0,25,16,13,15,2,12,0,11,20,0,10,8,28,30,
2736  0,0,9,10,5,26,0,18,28,1,14,2,4,22,6,29,8,0,0,25,0,0,0,0,0,0,23,0,19,27,
2737  0,10,4,0,0,28,23,26,0,7,0,20,27,0,25,8,22,6,0,0,0,0,0,0,30,5,15,9,2,29,
2738  0,23,12,24,0,25,13,0,18,0,0,6,14,20,0,15,3,17,0,29,0,16,4,1,0,0,26,0,22,0,
2739  22,0,0,25,14,20,0,12,19,0,0,16,0,24,0,23,29,0,0,5,9,0,30,3,0,26,0,10,0,1,
2740  0,0,10,0,0,3,8,17,0,24,12,27,22,23,0,21,13,0,0,0,11,29,6,16,4,0,19,15,0,0,
2741  9,3,6,15,8,0,16,0,27,19,4,25,0,0,0,0,0,10,0,18,0,26,0,24,0,21,28,30,20,0,
2742  0,5,8,0,24,0,28,19,20,0,25,0,0,16,7,0,30,0,0,17,4,11,22,6,0,0,12,0,1,2,
2743  18,0,0,27,0,6,7,13,0,0,8,22,0,0,0,25,9,23,16,0,0,0,0,12,2,20,0,19,14,21,
2744  25,0,11,0,30,23,20,0,17,0,0,0,0,0,19,7,0,21,5,24,22,13,0,0,0,16,9,14,0,12,
2745  0,24,0,4,0,0,0,5,2,21,16,7,13,26,0,0,28,0,0,0,25,30,0,20,14,0,11,29,0,8,
2746  1,30,0,0,19,0,10,0,5,23,0,0,0,8,11,0,0,13,28,0,0,27,0,9,29,18,0,12,7,6,
2747  0,11,0,5,0,0,25,0,8,14,9,4,18,21,0,17,0,30,20,7,0,0,10,0,6,28,27,0,3,0,
2748  17,0,23,0,12,0,0,28,13,22,15,14,16,0,20,2,26,25,0,11,1,0,29,0,0,0,0,0,21,0,
2749  24,29,15,3,0,0,0,11,21,0,0,0,20,6,18,0,0,4,0,16,0,28,25,23,12,17,0,26,30,0,
2750  10,0,18,7,16,8,0,0,0,26,0,19,0,13,24,0,20,0,30,27,23,0,15,0,11,0,0,25,17,28,
2751  11,0,0,23,4,30,0,3,0,0,0,28,10,29,21,0,12,26,0,2,7,18,13,0,0,0,25,0,0,9,
2752  0,2,0,0,6,10,9,14,0,0,21,0,0,25,5,0,15,20,27,0,0,3,24,0,0,7,17,11,0,18,
2753  0,20,30,0,0,4,17,0,0,0,28,0,15,0,10,0,0,7,22,0,5,1,11,21,13,25,16,3,8,0,
2754  0,4,0,19,29,12,30,0,0,2,0,26,23,0,8,1,0,14,17,3,24,9,0,0,0,13,0,0,25,20,
2755  28,0,20,1,2,9,0,27,0,0,19,8,5,11,0,18,24,0,0,0,6,0,0,0,3,0,22,13,15,0,
2756  0,16,14,0,0,0,0,0,11,18,10,21,30,0,26,12,0,27,0,0,13,0,7,29,15,4,0,22,0,17,
2757  7,25,0,20,22,0,0,0,4,0,26,17,2,0,0,9,0,11,21,28,19,0,8,5,18,15,0,0,10,0,
2758  19,0,1,29,27,0,0,23,22,20,5,18,0,0,3,26,16,0,14,30,0,0,21,4,7,11,0,0,0,0,
2759  0,7,0,0,0,0,18,25,16,6,2,0,9,12,0,0,0,29,3,10,0,22,0,30,1,0,0,17,5,4,
2760  4,12,22,14,1,0,0,16,0,15,6,0,7,3,0,0,0,0,18,23,26,0,9,28,0,0,2,0,0,25,
2761  26,0,0,8,0,27,6,0,0,13,24,0,25,0,16,22,18,0,7,0,0,14,0,0,19,30,21,0,29,10,
2762  12,0,0,9,0,16,22,20,0,28,18,29,0,15,0,0,14,0,10,0,30,7,19,2,26,27,0,0,0,5
2763  };
2764 
2765  const int d30_375_29[] = {
2766  30,
2767  27,0,3,26,14,0,0,17,0,0,0,0,1,2,10,20,28,11,0,0,0,30,23,0,0,13,16,15,4,12,
2768  0,0,30,19,0,11,0,0,0,13,0,0,0,23,26,0,20,14,17,0,16,29,22,9,3,5,0,21,0,7,
2769  0,12,0,0,29,5,11,20,0,17,0,1,21,9,15,2,0,22,0,0,0,28,27,14,0,19,3,13,0,0,
2770  1,20,4,18,16,13,0,0,0,23,9,14,26,0,0,0,0,0,0,10,6,0,28,0,0,0,30,7,22,11,
2771  20,0,7,0,3,24,17,14,0,11,1,28,4,8,0,0,0,0,5,18,15,0,0,19,30,0,2,23,0,0,
2772  8,10,5,13,6,0,0,0,25,16,0,0,0,18,28,1,19,17,21,11,0,0,0,0,26,0,0,14,9,23,
2773  0,8,11,0,18,0,0,0,0,12,30,0,0,14,13,9,22,0,0,19,0,24,4,2,28,17,10,16,15,0,
2774  3,26,6,2,0,0,0,27,15,21,7,0,0,0,20,0,1,16,0,23,28,22,18,0,0,12,9,25,0,0,
2775  18,1,0,0,24,0,0,0,0,29,19,25,0,10,0,0,0,0,2,0,3,4,8,13,0,28,11,26,16,22,
2776  10,19,1,0,20,6,0,24,2,0,18,0,25,0,0,7,0,0,0,5,0,0,3,0,23,9,26,0,27,13,
2777  0,0,17,6,0,18,8,7,23,0,3,0,2,1,11,4,30,0,0,0,13,0,0,28,22,0,25,0,0,14,
2778  4,22,0,0,12,0,29,10,0,1,28,0,0,16,0,5,0,21,23,9,24,15,0,26,0,2,6,0,0,8,
2779  5,2,0,0,28,0,13,19,0,0,0,29,27,11,0,15,26,0,24,17,21,0,0,0,7,22,0,10,6,9,
2780  0,0,21,25,0,15,20,0,5,0,0,0,7,0,9,0,4,26,0,27,19,11,0,16,14,29,0,30,28,0,
2781  0,29,28,0,10,1,25,0,0,30,20,24,19,0,0,3,21,23,8,0,14,0,0,0,15,0,0,22,0,26,
2782  6,0,0,0,11,0,15,0,3,2,5,23,16,0,12,27,0,10,19,0,0,0,0,0,29,14,0,17,13,20,
2783  15,30,29,23,0,0,26,0,17,0,0,21,0,6,27,0,8,18,3,13,12,0,9,5,0,0,0,0,7,16,
2784  19,16,0,0,0,0,0,26,28,0,0,9,0,0,21,23,3,7,0,22,30,14,11,27,25,0,0,1,5,24,
2785  11,13,0,29,25,12,0,28,0,26,0,0,9,22,16,18,0,0,7,3,2,0,0,15,0,24,0,0,30,4,
2786  0,0,0,22,7,4,5,6,0,0,21,0,0,13,0,19,17,27,15,0,0,23,25,0,24,16,8,0,29,18,
2787  0,4,0,21,0,2,22,13,24,0,14,11,6,0,25,0,0,3,0,7,0,0,0,0,18,1,0,27,23,29,
2788  16,0,10,20,0,22,18,30,21,0,0,17,0,0,0,0,5,1,27,14,4,0,2,0,8,0,15,24,0,0,
2789  0,0,13,0,30,21,2,0,18,0,26,0,0,28,7,14,25,0,12,15,0,27,24,3,17,0,5,0,10,0,
2790  0,0,15,24,0,9,27,1,10,22,17,6,23,0,5,0,0,4,0,12,0,3,0,20,2,0,18,0,25,0,
2791  0,0,0,30,0,0,24,15,6,14,27,20,3,0,0,13,18,0,26,0,29,9,0,7,16,23,21,0,0,0,
2792  29,6,0,5,0,26,1,8,7,0,25,10,22,0,3,0,0,0,11,0,0,21,20,23,0,0,28,18,0,0,
2793  0,11,16,0,15,25,0,4,30,10,13,7,14,27,0,0,0,0,20,29,17,0,0,0,9,18,0,3,12,0,
2794  14,28,24,0,0,0,7,0,26,27,0,5,30,12,0,6,2,0,0,20,0,18,1,10,0,11,0,0,0,15,
2795  0,0,18,8,9,27,0,0,4,6,0,0,15,29,0,21,0,24,28,0,25,19,12,30,0,0,13,0,14,0,
2796  7,18,0,1,2,0,0,25,0,0,22,12,0,24,14,26,9,28,29,0,0,5,10,21,0,0,17,0,0,0
2797  };
2798 
2799  const int d30_375_30[] = {
2800  30,
2801  0,25,6,26,2,0,0,23,7,21,0,11,0,17,0,0,0,0,3,18,0,15,0,0,13,9,22,0,14,1,
2802  19,0,12,17,26,0,18,0,10,0,0,28,3,0,4,21,0,20,0,6,2,0,24,27,14,0,25,0,9,0,
2803  0,20,9,23,16,0,0,0,19,8,10,0,6,0,18,22,0,0,4,0,0,11,29,12,1,30,0,15,0,14,
2804  0,0,0,3,12,0,7,18,0,0,16,0,2,9,28,1,0,11,0,29,23,0,0,0,27,22,10,19,8,30,
2805  15,0,0,22,27,24,0,28,8,1,0,21,11,0,0,0,18,0,7,0,0,6,23,0,30,13,9,0,16,0,
2806  5,7,0,0,0,0,20,6,0,15,0,13,0,23,0,30,8,10,0,11,0,9,27,29,0,1,2,18,0,0,
2807  13,14,0,0,0,0,28,4,21,0,0,29,26,0,1,0,30,25,2,8,0,3,0,0,12,0,5,24,6,10,
2808  8,21,15,1,0,30,5,0,0,2,29,0,0,26,0,0,0,0,27,19,17,24,25,0,0,3,13,0,22,11,
2809  6,29,0,7,30,15,14,0,0,0,24,0,8,21,17,23,5,16,20,0,26,0,0,3,0,0,0,22,0,27,
2810  0,3,27,0,17,0,0,0,16,0,7,2,0,15,26,25,14,0,0,10,22,29,0,0,0,0,20,1,13,4,
2811  28,26,20,0,0,3,30,0,0,0,17,4,0,22,14,0,6,24,0,9,1,0,18,25,0,7,0,21,0,0,
2812  30,0,0,10,1,8,0,7,13,28,0,0,0,27,20,16,0,0,15,0,0,22,6,14,24,23,0,0,25,5,
2813  0,6,29,0,0,26,23,0,0,7,3,22,0,30,27,18,0,8,16,17,0,19,10,0,0,28,0,5,2,0,
2814  24,13,19,11,0,12,27,0,28,0,23,0,0,8,0,0,17,0,21,7,0,2,5,26,22,0,0,0,0,18,
2815  0,0,0,0,8,20,10,22,12,18,0,0,24,0,0,2,27,15,29,0,16,21,3,0,9,11,0,23,0,0,
2816  22,0,0,16,0,0,0,27,14,12,0,0,5,2,0,9,26,7,17,1,0,20,21,11,0,0,3,0,24,19,
2817  1,4,30,0,18,19,0,2,0,16,0,8,12,13,23,0,7,6,0,0,10,0,17,0,0,26,28,0,0,9,
2818  18,24,23,0,0,0,0,0,0,26,20,6,0,19,2,8,0,0,14,28,13,0,7,22,5,0,11,29,27,0,
2819  2,22,26,8,0,0,0,0,23,0,28,1,0,0,30,7,21,13,18,0,0,0,0,10,4,0,24,16,0,29,
2820  29,0,0,0,0,14,4,9,0,0,13,0,23,3,22,20,0,0,0,0,15,18,2,24,10,16,12,30,0,0,
2821  0,0,22,24,15,1,25,0,0,0,30,0,0,20,0,29,0,18,8,12,0,27,0,21,0,17,0,4,19,26,
2822  0,0,3,0,6,2,0,12,29,9,22,7,30,1,21,0,0,26,0,15,14,0,8,17,0,0,0,0,5,25,
2823  10,30,0,12,25,0,21,0,4,29,11,16,19,0,0,0,0,1,0,0,8,23,0,9,6,0,7,20,0,0,
2824  0,0,5,25,20,0,0,17,0,4,0,15,10,0,29,0,24,9,0,22,0,0,13,0,8,18,21,0,11,3,
2825  20,0,0,29,10,7,0,0,15,11,0,0,17,0,3,27,1,0,6,25,28,4,0,0,16,19,18,0,0,0,
2826  25,12,0,2,14,0,6,29,0,13,9,3,22,0,0,24,0,0,0,0,5,0,0,4,18,0,0,27,20,21,
2827  0,28,25,0,7,5,8,3,24,23,18,0,0,0,0,15,22,0,0,16,9,0,11,0,20,0,6,0,1,13,
2828  0,1,2,19,0,4,24,10,20,30,0,0,15,28,0,5,9,23,13,21,0,26,0,0,0,0,0,14,29,0,
2829  12,0,28,14,0,29,0,24,27,0,26,5,18,0,6,0,16,2,11,0,25,0,30,19,0,10,23,0,0,0,
2830  0,0,0,0,9,21,26,20,6,0,0,18,14,0,19,0,3,4,0,0,11,16,0,5,29,27,0,2,0,24
2831  };
2832 
2833  const int d30_375_31[] = {
2834  30,
2835  14,0,4,13,17,0,8,21,0,23,0,0,1,24,26,0,20,7,9,16,0,6,11,0,0,0,5,0,0,12,
2836  0,17,11,22,29,30,0,23,0,3,0,0,0,21,14,0,19,0,0,0,10,27,28,0,2,0,24,5,12,18,
2837  0,0,0,7,25,5,0,0,16,26,15,23,30,0,0,12,27,13,0,0,0,0,0,17,18,3,14,28,29,0,
2838  9,12,24,0,0,29,22,19,0,0,25,0,21,27,1,15,30,0,28,0,0,14,8,0,5,16,0,10,0,0,
2839  20,14,0,6,19,8,30,0,21,0,16,0,4,22,25,7,0,0,23,0,0,10,0,24,0,26,0,0,13,29,
2840  16,6,19,0,21,0,0,7,4,29,0,30,0,5,22,0,8,3,10,2,18,0,15,0,0,0,25,0,0,0,
2841  0,26,5,27,0,10,0,0,0,0,1,0,0,16,8,9,0,25,0,0,13,20,18,21,15,17,28,30,0,0,
2842  8,0,0,0,0,14,19,0,0,0,17,24,7,0,0,29,26,22,13,0,3,1,6,0,28,0,23,25,9,0,
2843  7,0,14,0,20,27,0,0,22,0,12,3,0,0,23,25,17,26,0,15,0,0,24,6,4,29,0,0,0,9,
2844  2,15,0,0,0,21,9,0,23,20,0,16,29,14,18,0,0,0,3,0,27,4,0,22,0,0,19,0,8,6,
2845  0,0,7,0,0,0,21,8,17,16,0,13,22,26,0,2,18,20,0,0,28,0,0,0,29,11,0,14,24,19,
2846  6,0,0,0,0,0,29,0,30,18,20,0,27,0,2,11,0,21,17,23,0,16,0,0,22,19,9,7,0,3,
2847  12,0,0,25,14,7,0,30,29,22,10,0,3,15,0,0,1,19,0,4,0,0,16,11,24,0,0,0,28,2,
2848  19,0,30,1,11,0,17,16,0,14,2,0,0,3,15,0,0,0,7,29,9,0,4,0,25,0,12,0,22,24,
2849  13,24,0,0,6,0,28,5,15,0,0,18,0,9,0,0,0,0,16,17,1,11,12,3,30,0,2,26,4,0,
2850  0,21,13,18,9,0,23,10,0,7,0,0,25,6,27,0,0,0,11,8,12,3,0,30,17,24,4,0,0,0,
2851  0,0,0,20,18,11,0,0,8,19,30,10,2,7,6,0,0,24,0,0,0,0,14,27,0,0,3,29,17,23,
2852  21,22,0,0,30,0,16,27,7,0,26,0,0,0,10,0,24,0,0,25,20,28,5,14,12,6,0,17,1,0,
2853  0,27,0,15,13,18,14,29,0,0,0,11,28,2,24,26,0,0,22,0,30,0,17,12,0,0,16,8,0,0,
2854  0,13,23,17,0,3,18,0,0,28,6,5,0,0,0,16,0,30,0,20,0,0,0,9,1,15,0,12,2,22,
2855  0,20,6,3,0,0,15,9,0,27,11,0,10,29,0,4,16,18,1,7,0,0,21,2,13,0,0,0,25,0,
2856  0,3,1,2,0,6,4,0,0,8,28,0,26,13,20,0,0,9,0,0,0,5,22,18,27,23,0,0,11,15,
2857  0,0,27,5,0,2,0,12,9,0,13,19,11,0,0,6,10,17,29,3,26,0,0,8,0,20,30,0,0,28,
2858  23,11,25,10,3,0,2,0,0,0,0,20,5,0,0,13,22,8,15,18,6,19,0,0,0,0,21,9,27,0,
2859  15,19,20,0,1,0,27,3,12,0,0,26,13,0,9,22,0,0,0,6,5,25,23,0,0,7,0,11,0,0,
2860  1,0,0,0,28,9,0,22,3,24,0,14,0,0,0,30,13,23,0,0,16,0,19,25,6,18,27,0,0,4,
2861  10,7,0,0,24,0,20,0,1,21,9,0,0,11,0,0,25,0,2,22,17,29,27,0,0,28,0,15,0,8,
2862  18,29,15,26,0,19,0,6,24,0,3,12,0,0,0,0,28,0,4,1,11,0,0,5,0,25,0,23,30,14,
2863  11,0,8,0,0,0,0,0,0,6,22,7,15,0,0,23,2,27,0,12,29,9,0,28,14,0,0,19,16,21,
2864  0,0,9,8,0,16,0,28,20,17,0,15,0,23,21,18,3,14,25,19,0,13,0,0,0,5,29,0,7,0
2865  };
2866 
2867  const int d30_375_32[] = {
2868  30,
2869  23,3,1,17,0,19,0,13,11,12,0,8,16,0,28,0,7,0,5,0,0,25,30,0,0,26,21,0,0,24,
2870  0,16,3,0,26,0,10,2,28,1,0,0,12,0,29,0,27,4,0,9,0,0,15,0,0,20,6,11,7,0,
2871  21,8,0,0,4,15,14,12,0,0,16,17,9,19,10,0,0,7,0,0,18,0,0,11,0,27,20,26,6,0,
2872  0,7,0,0,0,11,19,0,0,0,21,6,8,17,0,0,30,28,15,0,0,9,18,5,20,1,0,24,23,0,
2873  22,19,23,6,8,28,0,3,10,15,0,0,2,30,26,0,11,0,0,0,27,24,0,0,0,0,0,0,4,18,
2874  13,0,15,20,0,2,0,9,0,0,22,0,0,0,19,11,8,24,21,14,0,0,17,26,23,0,0,12,27,0,
2875  0,17,16,0,0,0,0,19,13,5,3,22,7,24,0,0,0,26,25,8,0,28,0,10,0,30,23,29,0,0,
2876  0,24,0,0,16,0,6,22,17,0,11,3,0,0,7,0,28,2,4,0,30,27,25,0,14,0,0,9,21,19,
2877  0,6,11,0,12,9,1,16,0,0,0,0,0,0,0,26,29,20,0,4,24,17,0,30,22,0,3,8,14,21,
2878  26,0,20,0,0,0,0,0,21,22,10,27,17,0,2,23,3,5,0,25,0,29,0,8,9,18,30,19,0,0,
2879  3,0,18,1,13,0,26,0,24,23,0,0,28,10,0,20,21,0,11,17,0,2,0,0,4,12,29,0,0,8,
2880  0,12,0,25,3,24,11,0,0,17,0,23,0,6,5,19,0,9,1,28,0,0,7,18,0,8,0,0,0,10,
2881  29,0,0,30,14,0,23,0,3,9,2,25,0,16,0,27,1,0,19,0,13,18,4,0,21,0,0,10,24,0,
2882  0,15,28,7,0,0,16,20,5,6,0,0,11,0,23,0,17,0,8,0,22,0,0,3,0,4,18,14,0,13,
2883  8,23,0,14,7,13,0,0,0,2,26,0,0,4,0,25,24,17,0,0,12,6,1,0,19,0,27,0,0,11,
2884  4,0,0,9,30,10,18,0,23,21,8,20,0,0,0,0,0,11,27,13,6,0,0,17,16,0,5,0,0,29,
2885  0,0,4,10,0,17,5,0,0,0,0,0,0,8,30,21,12,18,14,0,2,13,6,22,0,29,1,27,0,15,
2886  27,1,0,0,0,12,3,17,18,29,13,21,0,0,22,5,0,0,28,0,7,0,0,23,24,16,0,0,25,4,
2887  6,0,5,0,20,0,8,26,4,0,17,1,13,22,16,24,18,0,0,30,0,0,12,21,25,0,0,0,0,0,
2888  0,4,0,29,0,14,0,24,26,0,0,5,0,9,20,0,0,10,6,0,21,30,8,12,15,3,11,0,0,25,
2889  11,0,21,22,0,27,20,0,9,0,0,19,23,15,18,10,16,0,0,0,0,0,3,0,26,0,2,30,0,17,
2890  17,0,8,27,0,0,0,1,0,0,0,4,10,5,0,18,0,12,0,22,0,14,0,15,6,9,0,23,3,16,
2891  0,20,26,11,22,0,21,25,0,0,24,28,0,29,0,8,14,23,30,0,4,0,5,0,2,0,0,0,9,7,
2892  0,26,27,0,5,0,0,30,22,24,28,0,21,0,0,12,0,0,23,7,19,0,10,25,0,2,14,16,8,0,
2893  14,11,30,0,0,8,0,29,25,7,5,0,1,0,0,28,6,0,0,26,0,3,16,9,0,15,0,13,20,0,
2894  0,0,2,12,27,0,17,28,0,16,18,7,15,0,1,4,0,0,0,11,25,0,29,14,3,0,0,0,5,20,
2895  12,13,0,15,28,7,4,8,0,0,9,2,26,20,0,0,0,0,3,5,0,16,14,0,1,23,0,0,0,0,
2896  1,0,0,18,11,23,24,0,6,4,0,14,3,13,25,0,0,27,0,20,8,5,0,0,0,0,9,17,15,0,
2897  0,0,7,0,2,21,0,0,0,30,19,0,25,0,24,9,0,0,0,27,14,0,0,16,13,5,8,6,29,26,
2898  30,5,0,21,0,22,0,0,0,26,0,0,0,11,3,15,20,19,2,29,28,8,0,0,0,0,10,0,13,14
2899  };
2900 
2901  const int d30_375_33[] = {
2902  30,
2903  7,0,0,17,0,28,9,0,30,0,3,0,27,11,0,0,8,0,0,18,4,12,14,0,1,2,0,10,29,22,
2904  4,6,18,12,22,7,10,0,0,0,13,0,0,8,0,0,0,0,20,0,19,0,16,1,0,27,5,3,30,2,
2905  0,20,25,0,14,0,22,16,4,23,17,0,12,0,5,18,29,0,0,0,0,0,0,19,0,0,6,24,2,7,
2906  0,0,0,7,26,20,11,0,0,12,0,30,0,25,0,0,10,24,14,13,8,0,0,4,16,23,29,0,0,28,
2907  3,9,0,0,0,0,29,0,13,28,0,0,15,21,0,20,0,27,0,1,23,5,0,0,22,0,11,30,19,26,
2908  29,23,7,30,11,3,4,18,27,0,0,0,8,0,0,5,0,9,2,0,0,0,0,24,0,12,16,0,0,1,
2909  22,1,28,0,0,8,16,0,7,0,30,3,13,0,0,10,2,6,0,29,0,14,9,26,18,0,0,0,0,0,
2910  0,0,0,5,1,0,13,29,28,0,2,14,0,0,27,17,0,15,6,30,0,20,26,0,0,25,3,0,9,12,
2911  0,29,17,15,10,0,12,0,6,2,0,21,14,7,23,8,0,0,0,0,26,0,22,3,27,20,0,0,5,0,
2912  1,0,26,0,0,19,0,0,0,22,24,10,0,0,30,12,0,21,11,5,20,25,13,17,0,7,8,0,0,14,
2913  16,13,27,11,19,0,0,21,24,29,18,22,0,9,0,0,0,20,0,6,3,15,23,0,0,0,0,0,28,25,
2914  0,0,23,0,0,25,0,27,0,9,5,8,30,3,0,6,19,0,0,22,0,0,0,13,2,21,24,26,15,0,
2915  8,14,9,16,23,29,0,17,0,4,15,0,0,0,20,0,5,0,0,0,18,13,0,6,0,10,19,1,0,0,
2916  25,16,0,1,0,26,0,28,8,0,0,0,0,0,11,19,7,18,27,20,0,2,0,15,0,30,14,0,6,13,
2917  17,27,0,6,0,21,0,10,12,0,7,26,18,19,0,0,0,0,3,24,0,16,0,0,13,0,1,25,23,0,
2918  0,0,0,0,20,18,0,5,0,21,11,19,28,0,15,0,1,16,26,10,0,0,3,22,6,29,0,17,0,0,
2919  0,21,19,0,0,0,1,0,0,8,9,13,16,20,17,0,4,2,0,0,0,30,0,0,12,18,15,29,7,23,
2920  0,0,3,0,0,17,0,0,2,24,19,25,0,0,10,15,0,4,7,0,13,0,1,0,8,16,26,5,21,18,
2921  0,0,0,25,6,13,7,0,22,0,12,28,4,23,9,0,27,30,5,0,29,18,8,0,11,0,0,0,0,16,
2922  0,15,0,23,9,2,26,1,0,0,0,17,0,4,0,21,0,5,19,28,0,0,24,0,0,14,0,7,16,10,
2923  11,5,12,8,0,24,0,9,10,16,0,0,21,2,14,25,3,26,29,15,0,0,0,0,30,0,0,18,0,0,
2924  10,0,20,0,0,0,27,15,0,0,16,0,1,24,26,0,14,28,0,3,9,17,0,8,5,11,0,6,25,0,
2925  6,19,0,0,0,0,0,22,16,5,0,0,24,30,0,4,0,0,10,2,28,27,17,20,26,0,0,21,14,0,
2926  0,12,15,28,24,0,0,0,9,20,14,0,0,29,0,13,6,10,0,0,25,11,2,0,21,4,0,27,0,3,
2927  28,0,6,24,4,0,30,0,21,15,0,20,0,0,12,0,11,0,17,19,5,22,25,0,29,0,2,16,0,0,
2928  0,0,0,0,0,0,15,0,5,0,0,16,3,6,1,24,20,14,12,23,30,0,21,11,0,0,7,0,13,19,
2929  26,18,14,0,8,23,0,3,0,10,25,6,0,0,0,29,0,0,0,0,12,28,0,2,0,0,4,11,22,17,
2930  0,28,0,19,3,0,24,7,0,11,0,5,25,10,16,0,15,0,13,0,14,4,6,9,20,0,23,0,0,0,
2931  5,0,24,0,17,16,14,6,1,0,4,0,0,12,19,27,25,23,8,0,0,3,10,0,0,26,0,0,0,0,
2932  14,25,29,27,28,12,6,11,0,0,0,0,2,0,3,30,16,0,0,17,0,0,0,10,4,0,21,9,0,0
2933  };
2934 
2935  const int d30_375_34[] = {
2936  30,
2937  8,30,0,0,0,11,0,0,19,0,28,13,0,9,27,22,20,0,26,7,0,0,12,25,10,4,1,0,0,3,
2938  0,21,2,15,25,8,18,24,22,11,0,16,0,0,12,0,29,0,0,26,0,6,0,7,0,0,9,0,19,0,
2939  9,0,23,26,0,0,0,3,0,6,30,0,22,0,13,24,2,16,19,0,4,28,0,0,18,0,12,5,11,0,
2940  26,19,8,27,22,29,0,0,0,1,0,28,13,6,0,25,0,21,7,0,0,0,11,0,12,0,0,18,0,9,
2941  0,28,15,20,12,5,0,21,0,0,0,0,29,26,6,0,11,1,25,4,0,2,24,30,0,0,13,0,0,0,
2942  0,0,0,2,19,0,11,15,16,0,3,0,5,4,0,8,0,23,28,25,0,0,0,24,1,6,7,0,22,0,
2943  7,1,0,0,15,14,0,0,26,29,10,0,0,12,22,0,0,11,0,0,2,23,13,0,16,17,5,0,20,8,
2944  0,0,6,13,18,26,12,28,15,10,0,0,0,0,0,14,19,8,0,0,0,7,5,29,17,16,0,3,24,0,
2945  29,20,27,24,0,0,25,7,11,23,8,0,21,10,0,0,0,19,0,0,12,9,1,15,0,18,0,16,0,0,
2946  5,11,1,8,4,0,0,14,20,0,0,24,3,2,0,0,0,7,15,6,19,0,17,0,0,28,16,23,0,0,
2947  0,8,0,9,0,28,0,22,0,3,23,0,0,0,14,0,0,0,27,13,7,4,0,17,25,2,0,11,6,26,
2948  0,26,0,0,10,2,0,0,7,0,21,0,23,13,15,9,27,29,0,8,0,14,6,18,0,24,0,0,0,4,
2949  30,0,12,4,0,23,22,8,0,0,2,1,0,0,0,27,13,0,0,20,29,3,0,0,0,5,28,0,10,14,
2950  0,6,0,0,17,0,19,0,27,24,18,15,30,0,8,13,22,26,0,0,0,21,20,0,14,10,0,0,1,7,
2951  13,0,22,0,0,25,0,1,0,0,0,3,28,0,17,30,0,2,24,16,0,15,14,0,21,0,8,26,0,20,
2952  20,15,0,17,14,0,13,19,0,4,0,0,0,28,0,21,8,9,10,27,25,1,23,0,0,0,6,0,0,16,
2953  12,0,13,0,0,17,0,5,1,18,25,10,9,0,0,0,6,0,0,11,16,0,0,3,4,0,30,15,28,0,
2954  19,27,10,30,2,0,20,12,0,0,0,0,0,0,7,5,4,15,0,24,0,0,0,0,0,13,14,25,21,17,
2955  0,0,0,0,0,30,15,0,13,0,5,8,18,23,1,28,9,14,21,29,20,0,0,6,0,11,2,0,0,0,
2956  27,10,0,18,0,13,17,0,0,19,0,11,7,21,0,1,0,25,12,28,3,16,29,0,0,0,15,0,0,30,
2957  0,0,19,0,13,3,26,20,0,15,6,25,4,16,0,0,21,10,0,9,22,0,0,0,0,0,0,17,18,1,
2958  28,0,0,0,24,21,10,9,0,27,0,0,14,7,11,0,3,22,29,0,6,0,0,0,30,1,25,0,23,18,
2959  1,17,30,0,0,0,29,0,0,12,0,7,10,3,21,2,0,27,5,0,13,0,4,0,0,22,0,14,9,0,
2960  14,0,7,0,0,0,0,18,24,0,22,27,19,0,25,0,26,0,1,0,9,17,30,4,3,0,0,29,8,6,
2961  0,24,14,29,1,6,4,0,0,0,0,12,0,8,19,0,0,0,0,15,18,0,0,20,13,21,26,10,7,25,
2962  6,0,28,0,21,0,0,26,4,5,27,20,0,19,0,0,0,0,3,14,0,30,0,9,7,0,11,8,29,0,
2963  0,0,16,6,0,24,7,0,10,17,9,18,0,0,4,12,0,0,23,0,5,19,25,28,20,0,27,21,0,0,
2964  0,18,3,1,20,16,5,4,14,25,0,2,0,22,0,6,23,0,0,0,0,0,7,10,11,0,0,24,0,21,
2965  25,0,0,23,16,0,9,0,3,0,14,29,0,0,20,11,0,0,8,18,15,13,0,19,5,7,0,0,0,2,
2966  3,22,0,19,0,0,0,0,29,16,26,0,17,0,0,23,12,0,13,0,10,27,8,14,0,15,0,2,4,24
2967  };
2968 
2969  const int d30_375_35[] = {
2970  30,
2971  0,17,23,0,20,26,0,19,24,12,0,5,0,0,27,3,25,0,8,14,7,29,2,0,0,0,0,28,15,0,
2972  0,19,0,3,27,0,25,5,28,29,23,0,6,0,21,26,0,2,4,0,17,1,7,0,0,0,16,10,0,0,
2973  0,0,0,0,25,17,1,0,23,0,8,0,10,28,0,0,21,24,12,0,0,3,26,13,20,30,15,9,0,19,
2974  20,0,27,0,3,0,4,24,0,7,0,1,0,12,5,29,17,23,0,15,0,8,0,11,26,14,19,0,0,0,
2975  0,14,0,0,1,0,0,0,4,0,19,24,22,0,0,25,0,0,0,0,11,6,17,29,23,5,26,2,7,8,
2976  11,7,0,0,0,0,6,30,0,24,4,25,0,26,1,0,13,28,16,2,0,0,0,15,21,10,0,0,20,23,
2977  16,0,0,26,22,23,0,7,8,0,11,0,0,9,30,0,18,3,13,0,0,0,27,4,28,0,12,15,21,0,
2978  28,10,17,0,0,0,0,23,19,27,0,9,0,6,0,0,11,29,0,0,26,5,20,18,0,7,30,12,0,4,
2979  15,9,4,8,0,27,3,29,0,18,0,20,0,0,0,23,12,0,0,0,0,0,19,26,16,0,14,11,28,13,
2980  0,0,5,2,15,9,0,21,7,16,0,0,8,0,18,1,6,20,25,0,13,0,0,0,11,0,10,23,0,29,
2981  0,0,18,28,13,0,19,0,29,23,16,0,0,24,0,0,20,30,0,6,0,0,3,0,10,26,17,7,25,0,
2982  0,0,0,24,0,4,0,14,0,17,27,3,18,0,28,20,0,21,22,29,0,26,0,12,6,9,2,0,0,0,
2983  22,0,28,17,6,3,15,0,0,0,0,0,0,2,0,11,7,14,0,26,4,0,12,27,0,0,0,21,16,24,
2984  0,27,22,13,17,6,11,0,0,21,0,0,5,0,0,15,26,16,0,10,12,30,29,0,19,0,24,0,0,14,
2985  5,0,19,0,21,20,2,0,26,10,0,13,0,7,0,0,1,0,0,28,0,0,16,0,14,18,4,0,17,12,
2986  18,26,0,5,0,0,20,0,14,0,24,0,23,1,16,0,0,7,10,0,21,15,25,0,9,0,0,17,0,30,
2987  0,2,26,0,0,0,21,4,0,14,0,22,17,3,9,0,0,0,29,19,0,27,10,0,15,0,8,5,6,20,
2988  23,24,0,0,12,0,0,0,20,11,0,19,30,13,6,14,0,0,9,0,18,0,1,7,0,29,0,0,27,16,
2989  0,22,0,0,0,0,23,12,17,0,1,0,2,0,0,30,0,19,3,16,5,28,0,20,8,11,0,13,18,0,
2990  0,8,2,6,18,15,0,17,9,0,0,27,21,29,4,0,3,0,1,12,30,0,0,0,0,24,0,0,0,7,
2991  21,0,0,18,7,24,0,22,0,0,10,15,0,17,20,0,19,0,0,4,0,25,14,5,0,27,0,0,29,9,
2992  0,0,0,1,0,19,5,0,6,15,28,0,0,10,24,22,9,8,7,20,0,14,0,25,17,0,0,0,0,26,
2993  8,0,0,16,11,2,14,0,0,20,17,30,1,0,0,0,0,22,15,0,9,19,0,3,0,13,5,4,10,0,
2994  29,30,16,21,0,0,13,11,10,3,6,8,7,0,0,18,0,0,0,0,14,0,0,24,0,20,1,0,22,0,
2995  2,6,0,29,4,18,7,9,0,28,0,0,0,22,25,16,0,0,0,5,0,24,8,0,30,15,3,0,0,1,
2996  13,4,20,0,0,0,0,6,25,0,15,12,26,0,29,19,0,10,0,0,27,0,28,17,18,23,22,0,11,0,
2997  0,21,11,22,24,7,0,0,0,6,29,0,19,0,0,0,8,18,27,3,28,0,15,0,0,0,0,20,13,25,
2998  3,28,13,0,16,0,0,20,27,0,14,21,0,25,7,2,10,0,19,17,8,11,0,30,0,0,0,18,0,0,
2999  14,3,24,15,0,13,10,0,0,0,21,17,28,16,26,9,0,0,0,0,25,12,0,0,1,0,0,30,8,0,
3000  27,0,1,11,0,21,0,0,0,0,5,0,25,0,22,6,0,17,2,8,15,0,0,23,0,12,13,26,4,0
3001  };
3002 
3003  const int d30_375_36[] = {
3004  30,
3005  8,0,11,0,0,0,0,23,0,5,21,9,0,0,28,22,0,0,14,0,2,7,13,29,0,26,6,1,18,24,
3006  0,11,0,23,28,0,0,30,21,0,3,7,16,4,0,14,0,5,15,29,0,0,1,13,9,18,0,12,0,0,
3007  12,0,1,14,7,10,9,8,29,16,0,0,0,24,0,0,0,2,0,5,22,13,0,0,0,11,0,0,17,23,
3008  23,17,5,0,8,6,1,0,0,15,0,30,9,11,0,0,28,0,27,0,0,0,0,14,4,0,13,2,0,20,
3009  0,25,0,8,26,0,12,18,0,0,13,0,15,1,4,30,16,20,0,27,0,0,0,7,0,10,0,9,21,0,
3010  2,15,18,22,0,9,0,0,0,7,0,14,0,23,0,0,0,21,3,0,0,17,16,20,5,0,4,28,0,1,
3011  0,9,0,0,16,0,0,0,26,0,22,0,28,0,13,10,15,4,0,19,3,30,0,17,0,12,27,0,29,2,
3012  29,12,10,0,3,19,2,0,0,0,4,6,27,25,0,0,1,0,13,7,0,21,5,0,20,24,0,0,0,9,
3013  6,24,27,15,0,0,0,20,13,0,17,0,0,9,0,11,0,10,28,23,0,25,4,0,18,0,0,16,3,19,
3014  0,30,16,28,1,11,27,0,0,0,20,0,12,8,15,26,0,19,5,0,0,0,0,23,13,3,22,0,25,0,
3015  14,0,26,0,9,20,3,22,0,24,15,0,0,0,7,5,13,0,0,0,6,0,11,0,17,0,0,25,8,12,
3016  0,0,0,16,18,0,0,19,0,13,14,2,0,5,12,28,3,26,10,0,0,8,30,27,22,0,21,0,0,0,
3017  0,16,14,24,0,0,21,10,0,3,0,12,23,29,25,17,27,28,0,6,0,0,26,1,0,22,8,0,0,0,
3018  28,1,21,30,10,26,0,0,24,0,0,18,0,0,29,2,6,11,0,13,0,27,0,3,0,23,12,0,0,14,
3019  0,0,0,0,30,0,13,3,5,0,24,15,0,28,1,12,0,14,2,25,26,0,0,0,27,0,10,7,23,0,
3020  1,0,20,17,0,13,22,0,18,4,0,0,0,27,16,0,19,0,25,26,30,28,6,0,0,0,2,0,9,0,
3021  15,0,0,0,19,16,0,0,22,21,0,13,20,26,0,24,0,30,18,0,0,4,29,0,1,0,28,0,2,25,
3022  18,4,23,0,20,22,0,0,0,12,16,29,26,0,10,13,0,0,0,1,14,0,0,24,25,27,0,15,0,6,
3023  27,23,0,0,0,4,0,14,0,0,30,24,0,7,0,0,5,6,21,16,1,2,19,0,10,0,29,26,13,0,
3024  0,10,0,0,0,0,19,7,3,0,28,23,24,13,30,27,17,0,4,11,5,0,0,12,0,1,18,20,0,0,
3025  0,21,15,12,0,29,0,0,1,27,0,0,25,0,3,0,0,0,11,0,17,22,14,2,8,16,23,0,5,0,
3026  4,19,0,2,0,0,24,25,0,14,0,0,0,0,9,8,23,12,17,10,0,1,21,0,0,29,0,30,6,15,
3027  0,0,7,1,0,15,26,4,10,2,0,0,13,0,0,0,12,18,19,0,0,24,23,25,11,0,0,3,0,21,
3028  0,0,3,7,13,0,16,0,2,23,26,1,6,0,0,0,9,8,0,0,10,0,20,0,14,19,0,24,15,18,
3029  26,29,2,5,0,0,0,27,4,9,11,21,0,30,18,6,0,22,0,8,13,0,28,16,0,0,0,23,0,0,
3030  11,0,9,25,0,0,15,13,0,22,27,0,19,0,0,23,0,0,12,14,16,18,0,0,0,28,26,0,7,29,
3031  30,0,0,0,27,12,29,0,28,0,0,25,11,0,0,15,20,0,0,9,4,0,2,10,16,14,24,5,22,0,
3032  20,0,0,19,14,25,5,26,23,0,12,0,4,0,0,0,11,15,0,17,27,9,0,6,7,0,1,18,0,0,
3033  0,13,0,0,0,21,23,0,8,26,29,28,14,22,5,0,2,0,6,0,15,16,0,0,0,17,0,0,11,10,
3034  22,0,28,26,17,24,0,15,27,0,0,20,30,14,2,0,21,0,0,0,11,23,9,0,0,0,0,0,1,3
3035  };
3036 
3037  const int d30_375_37[] = {
3038  30,
3039  24,0,0,0,0,30,29,28,4,7,0,0,14,26,0,0,25,2,0,13,5,21,27,16,11,20,0,6,0,0,
3040  28,7,0,24,0,10,0,0,0,0,0,18,25,3,19,12,8,0,1,5,0,20,0,4,2,14,0,0,0,23,
3041  27,14,15,3,0,17,0,0,2,5,21,0,0,23,8,0,0,0,13,28,9,10,26,0,7,0,0,29,0,1,
3042  18,0,17,0,0,25,3,0,16,30,10,15,0,0,14,0,0,23,0,12,1,29,0,0,0,2,24,26,0,22,
3043  20,0,30,23,0,9,8,26,0,0,7,0,0,0,0,1,18,22,25,2,15,0,10,19,27,0,0,0,14,0,
3044  0,5,0,0,0,21,0,0,14,9,27,17,0,30,13,0,0,12,28,0,0,6,29,7,16,0,4,19,23,20,
3045  1,0,24,0,6,27,0,21,22,0,0,0,12,18,17,0,15,0,2,0,0,13,0,0,19,7,11,0,28,5,
3046  6,0,10,0,23,0,27,13,0,0,2,25,0,4,12,3,0,5,0,9,0,11,21,18,22,26,0,0,29,0,
3047  0,1,21,0,17,0,24,10,9,27,8,19,4,12,0,18,0,0,0,0,0,22,0,28,23,25,7,0,11,0,
3048  0,0,0,0,0,15,0,22,0,8,4,13,24,0,16,20,0,14,0,23,28,1,25,0,0,17,5,30,0,26,
3049  0,15,13,25,27,0,0,0,29,6,11,24,7,0,0,30,0,0,19,17,23,16,12,0,0,9,0,1,22,0,
3050  13,0,0,0,10,22,18,5,15,4,16,2,27,21,0,11,0,26,0,0,0,0,0,17,12,6,20,0,0,19,
3051  0,19,6,2,0,0,17,11,18,10,0,0,28,29,0,8,0,30,0,20,0,25,0,24,0,4,15,5,7,0,
3052  0,11,3,26,0,16,0,0,21,12,19,6,10,0,0,22,7,0,0,14,29,0,2,0,17,0,0,18,0,28,
3053  3,0,0,28,12,0,15,24,0,11,26,0,29,19,2,0,0,0,5,10,0,0,0,20,6,18,16,0,0,30,
3054  0,18,8,7,0,0,28,6,0,0,12,20,22,0,0,4,0,21,14,0,2,0,0,5,30,10,25,0,1,0,
3055  29,0,7,22,0,0,25,20,5,18,17,14,26,24,23,0,21,0,4,1,0,19,11,0,0,0,0,0,9,0,
3056  19,4,0,0,22,0,0,0,30,29,28,0,0,0,20,6,1,11,17,0,14,0,24,25,0,0,18,21,5,0,
3057  22,0,0,17,18,20,19,0,13,26,24,0,30,0,11,29,23,8,0,15,7,0,0,0,0,0,9,14,12,0,
3058  0,6,28,20,3,1,23,7,10,0,0,5,0,0,0,24,16,0,8,18,0,0,22,0,0,0,12,15,30,0,
3059  4,23,14,19,1,0,2,0,0,0,3,28,0,16,0,15,12,0,18,0,22,26,6,30,0,29,0,0,0,9,
3060  15,3,0,13,14,0,12,0,0,16,0,26,0,0,18,0,9,24,0,0,30,0,0,27,29,0,28,4,25,17,
3061  0,0,1,14,20,26,30,0,27,0,0,0,5,11,0,0,22,0,0,0,0,4,3,29,21,16,17,23,0,8,
3062  5,13,9,0,8,23,1,12,0,0,0,29,16,7,30,0,6,10,0,0,19,0,0,0,0,11,0,27,15,25,
3063  26,20,0,18,9,28,16,0,0,0,0,10,0,5,21,7,0,25,30,0,3,8,0,1,13,0,0,0,0,4,
3064  0,0,0,15,0,0,26,1,0,25,0,0,0,14,28,13,29,6,23,8,0,2,9,0,18,21,30,0,10,24,
3065  0,0,19,12,15,0,0,8,7,0,0,11,13,6,0,0,30,0,21,16,4,0,0,2,20,0,26,25,18,0,
3066  0,12,0,27,21,18,0,9,8,2,0,0,11,0,0,0,14,13,0,6,24,0,30,0,0,19,0,22,17,3,
3067  30,16,20,0,24,0,0,0,0,0,14,4,17,22,27,25,26,19,9,0,8,18,5,0,0,0,0,0,6,12,
3068  23,28,0,0,0,6,0,16,20,1,0,0,0,0,5,0,2,29,27,0,10,15,18,8,24,30,13,11,0,0
3069  };
3070 
3071  const int d30_375_38[] = {
3072  30,
3073  0,0,0,0,1,18,8,0,17,4,5,16,6,20,30,0,0,0,26,0,23,0,22,0,15,0,0,3,9,14,
3074  9,0,0,8,0,0,12,0,21,16,0,25,0,0,18,14,0,4,24,0,2,15,5,19,0,20,0,29,10,0,
3075  12,15,29,25,27,28,0,4,13,1,21,22,30,0,0,0,5,0,11,0,0,0,19,2,23,0,0,0,0,0,
3076  11,22,14,1,16,23,28,0,0,0,27,21,0,2,13,0,0,0,7,0,0,0,0,0,30,12,15,24,26,4,
3077  20,28,16,27,0,25,21,0,11,15,0,0,0,22,0,18,19,29,30,0,0,9,0,3,0,0,8,12,14,0,
3078  1,30,13,0,0,0,18,7,0,23,0,0,20,0,26,28,0,0,16,4,14,0,0,12,8,0,0,6,25,11,
3079  8,0,0,6,0,0,2,3,15,0,14,13,23,0,5,0,27,30,0,0,9,17,0,4,0,11,12,0,20,0,
3080  0,3,0,0,12,0,19,15,0,21,7,0,4,28,2,16,24,11,5,17,0,0,9,0,6,18,0,0,0,10,
3081  27,0,0,0,11,0,0,0,0,18,15,30,25,17,8,0,0,0,29,22,5,21,0,10,14,1,3,0,0,16,
3082  0,21,18,7,17,0,0,29,0,6,23,10,0,24,0,0,28,0,0,5,8,11,20,22,16,0,9,27,0,0,
3083  0,0,0,0,0,6,0,10,27,22,0,8,29,14,19,0,20,17,25,2,16,13,21,18,0,0,26,0,0,0,
3084  0,25,8,3,28,0,0,0,26,0,4,18,24,0,11,6,10,0,23,7,0,20,0,0,9,19,0,22,0,2,
3085  19,0,20,5,0,29,15,24,0,17,0,23,0,0,16,8,0,0,0,0,26,1,10,11,0,27,4,7,6,0,
3086  0,0,0,11,7,0,6,25,10,0,0,0,22,0,28,2,9,3,21,16,27,12,14,0,20,0,0,0,0,17,
3087  29,16,22,14,8,0,0,0,9,11,0,0,7,23,0,5,1,25,0,15,0,18,30,17,0,6,28,0,0,0,
3088  0,29,3,12,0,21,0,0,6,7,8,2,13,0,0,0,11,27,0,30,4,10,24,0,0,0,14,16,22,0,
3089  2,8,1,16,23,24,0,19,4,5,29,26,0,12,0,0,25,0,0,0,0,0,0,7,0,0,21,15,27,0,
3090  0,0,9,22,0,14,0,28,0,0,20,0,8,16,6,11,2,13,0,18,19,0,1,26,0,24,0,23,0,15,
3091  15,0,0,0,9,16,20,0,1,28,0,0,0,30,0,4,0,0,27,10,0,23,18,0,21,0,24,19,29,8,
3092  28,7,0,0,14,3,17,2,30,0,10,4,0,0,0,0,16,22,0,27,24,26,13,0,29,0,0,0,23,6,
3093  13,14,0,0,0,26,0,6,3,0,22,28,0,18,0,25,23,21,0,12,0,29,0,24,0,30,7,0,0,20,
3094  0,0,26,29,0,0,30,17,0,0,0,0,0,11,24,13,0,28,20,19,25,0,0,23,1,2,10,0,3,18,
3095  17,11,27,18,0,19,4,9,16,0,2,0,0,0,0,10,0,0,22,0,0,14,6,8,25,0,13,26,0,12,
3096  0,0,24,0,0,0,14,0,23,0,25,27,28,26,0,7,0,20,1,8,21,0,12,0,2,5,0,17,18,22,
3097  5,24,30,0,0,27,0,0,0,25,17,0,26,13,1,0,4,0,0,0,11,16,3,0,10,9,0,0,7,19,
3098  0,27,0,10,4,20,5,0,0,0,0,9,15,29,21,26,0,14,6,0,28,24,0,0,19,8,16,30,0,0,
3099  10,0,2,21,20,1,11,16,7,0,0,0,27,4,0,23,14,6,0,0,15,0,0,5,0,22,0,0,28,9,
3100  0,1,17,0,18,0,9,14,0,8,0,0,0,0,7,15,22,19,28,24,0,6,29,0,0,23,2,0,11,0,
3101  18,0,0,0,6,11,27,21,0,24,30,0,9,0,20,0,0,12,14,3,0,0,0,0,7,4,0,2,8,26,
3102  7,12,4,20,24,2,0,0,0,27,0,5,0,10,17,0,26,9,0,0,30,0,28,21,0,16,22,8,0,0
3103  };
3104 
3105  const int d30_375_39[] = {
3106  30,
3107  19,14,11,16,1,0,0,0,0,10,0,18,5,13,27,0,2,0,17,26,12,0,0,0,15,30,0,0,0,3,
3108  0,0,23,7,0,4,3,0,0,6,14,0,19,12,0,11,27,17,24,13,2,0,0,9,0,8,0,5,26,0,
3109  11,3,10,0,30,0,0,15,6,22,27,0,0,2,0,0,7,9,12,0,0,26,20,4,23,0,28,0,0,1,
3110  0,0,13,21,0,0,4,19,0,0,15,24,22,6,16,2,0,0,7,30,0,0,5,0,12,0,9,28,0,26,
3111  1,26,0,23,0,29,14,0,19,0,0,22,7,0,28,10,30,15,0,11,0,27,0,0,16,0,6,9,3,0,
3112  15,0,29,0,0,0,0,3,18,12,9,14,20,0,22,0,0,11,25,0,4,5,7,0,0,16,0,26,8,23,
3113  0,0,0,0,0,5,17,0,10,1,26,21,9,0,25,20,4,0,0,6,0,0,3,14,30,0,19,13,28,15,
3114  18,27,25,4,17,8,0,2,0,0,23,0,21,26,20,0,0,0,30,19,15,10,29,0,0,0,0,7,0,0,
3115  0,24,0,19,0,9,7,12,23,17,0,0,0,0,2,0,0,27,4,10,0,13,28,11,25,29,0,8,0,20,
3116  0,1,0,0,0,0,15,0,0,29,17,5,0,8,12,0,0,26,27,24,21,30,18,0,0,0,4,2,20,10,
3117  12,0,0,1,27,0,13,24,0,26,0,28,0,4,0,0,17,30,20,25,0,3,0,6,0,9,23,18,0,22,
3118  26,0,0,0,16,0,6,27,29,20,3,15,0,10,30,5,0,12,0,0,0,0,24,17,8,28,0,0,21,0,
3119  5,13,28,27,0,22,25,0,17,0,0,0,0,16,15,12,21,0,0,0,18,0,23,10,4,19,0,0,0,9,
3120  7,16,26,28,25,21,18,0,0,15,4,0,0,3,0,0,29,0,8,0,9,22,0,20,11,1,0,0,10,0,
3121  0,5,9,25,28,0,0,20,0,0,2,3,12,0,23,0,14,4,0,17,0,0,11,0,0,15,1,6,18,30,
3122  30,8,0,9,0,6,0,0,0,24,12,0,0,28,29,14,22,2,0,20,26,0,0,0,3,23,0,19,17,0,
3123  8,0,2,15,21,0,30,28,20,18,0,0,6,0,0,23,0,0,0,0,19,17,27,12,0,14,22,0,24,0,
3124  25,23,14,0,12,0,22,7,0,0,29,11,0,21,24,9,0,6,5,0,3,0,8,15,18,0,0,0,0,19,
3125  0,18,0,5,0,0,0,21,13,0,0,25,0,27,10,0,23,7,0,0,8,11,15,2,1,0,14,22,19,0,
3126  0,0,0,14,18,23,0,30,15,0,8,19,28,7,0,26,0,5,29,0,0,0,0,16,20,0,27,24,11,6,
3127  16,0,22,20,14,24,19,0,0,0,0,0,29,0,13,8,11,0,26,0,0,0,17,0,0,10,25,27,30,21,
3128  0,2,0,0,8,17,0,11,0,21,0,12,1,0,0,18,6,23,0,3,22,25,0,19,26,20,15,0,13,0,
3129  2,11,30,0,29,10,0,18,16,4,0,6,26,5,0,15,0,0,21,0,7,8,0,0,0,0,3,0,9,0,
3130  13,0,0,0,6,19,0,0,9,8,16,20,0,0,14,24,0,29,15,2,0,23,30,0,10,7,26,0,0,18,
3131  0,25,24,30,3,15,9,0,5,0,0,0,23,0,0,0,18,0,13,0,11,12,10,22,0,26,20,0,14,0,
3132  0,21,0,29,0,2,0,13,0,23,30,16,11,24,0,0,3,0,0,7,0,9,4,28,0,27,0,15,0,25,
3133  0,30,20,0,0,3,0,0,27,0,0,0,4,0,7,22,12,21,0,18,13,28,25,8,6,11,16,0,0,5,
3134  0,0,27,0,0,11,24,0,4,13,28,10,0,0,0,0,9,0,18,16,25,1,0,5,22,0,29,20,12,0,
3135  20,17,16,0,15,0,28,6,1,0,19,0,14,29,5,21,0,13,0,0,0,0,0,7,0,0,30,11,0,24,
3136  10,0,15,8,4,0,26,1,21,9,0,0,3,0,0,27,24,0,0,29,14,0,0,0,17,18,0,25,2,16
3137  };
3138 
3139  const int d30_375_40[] = {
3140  30,
3141  0,18,10,0,7,0,9,1,17,14,24,25,13,0,0,19,0,0,28,0,5,8,0,0,23,0,0,15,26,12,
3142  0,0,23,3,14,7,0,11,0,9,10,0,0,15,25,1,0,0,26,0,8,0,27,30,12,0,22,6,21,0,
3143  0,0,25,19,2,0,0,0,21,0,30,28,15,0,1,3,0,12,8,6,14,0,0,0,20,0,27,24,17,10,
3144  15,17,3,0,16,0,22,14,0,1,0,0,26,30,0,0,21,0,6,28,0,13,0,0,25,18,29,23,2,0,
3145  5,0,30,14,15,0,21,23,24,7,6,0,8,0,28,0,3,19,0,0,0,11,0,29,0,0,0,22,16,18,
3146  0,20,27,22,0,0,6,0,16,30,29,0,2,11,0,5,0,26,1,0,12,0,17,4,13,0,0,0,0,15,
3147  12,23,4,28,0,24,0,9,0,0,13,14,0,0,17,27,0,25,0,1,0,26,0,8,0,20,10,0,11,0,
3148  26,0,22,0,13,23,15,0,7,21,0,0,19,10,0,17,0,0,30,12,4,18,20,0,1,8,0,0,0,3,
3149  0,0,0,0,0,6,5,12,0,0,0,16,0,9,10,14,20,17,23,4,0,30,7,0,11,19,3,0,25,2,
3150  11,12,0,0,0,15,0,0,4,20,0,13,5,0,0,0,1,0,17,18,2,0,0,25,26,14,24,16,6,8,
3151  24,0,17,0,25,22,23,0,0,0,1,0,0,13,0,7,6,0,21,0,16,20,3,19,0,2,28,27,0,5,
3152  7,5,26,0,0,0,19,0,0,25,28,0,24,0,15,0,0,8,20,2,6,10,18,12,4,0,0,0,23,0,
3153  0,8,16,0,0,1,0,22,18,4,0,0,0,0,29,12,2,7,0,24,0,0,10,26,0,25,13,0,28,14,
3154  0,0,14,26,0,29,16,0,12,0,0,2,0,0,30,28,27,9,15,7,24,0,23,0,0,4,8,0,0,20,
3155  0,30,24,0,21,18,14,5,22,0,17,0,28,12,19,0,7,0,0,10,0,0,9,0,27,16,0,11,0,0,
3156  28,29,0,0,5,0,0,2,30,0,0,12,25,14,0,4,16,20,24,27,0,0,21,0,0,13,19,0,0,23,
3157  0,26,0,30,11,0,0,0,20,8,0,1,0,29,2,0,10,24,0,9,28,19,0,18,21,3,0,0,13,4,
3158  6,0,9,16,4,30,13,15,0,18,11,27,23,0,26,24,0,0,0,0,0,21,0,5,0,0,20,0,3,22,
3159  30,14,0,10,22,0,0,24,13,0,0,0,29,18,4,0,9,5,0,0,17,0,0,23,0,0,15,8,27,7,
3160  3,13,20,21,0,0,30,8,15,22,7,0,18,5,0,0,17,10,16,0,0,14,11,0,0,28,0,0,24,0,
3161  21,0,6,0,12,10,0,20,0,2,8,11,0,0,22,0,0,0,0,3,1,9,26,27,7,0,0,0,29,19,
3162  0,0,0,1,30,19,10,17,27,24,3,0,0,26,0,0,25,23,9,14,0,15,2,0,0,0,16,28,0,0,
3163  13,0,0,0,28,4,0,0,0,3,25,8,1,0,9,0,0,21,0,23,27,16,15,20,29,12,30,0,0,6,
3164  0,11,0,5,8,14,0,3,28,0,19,7,0,24,27,18,13,0,0,0,26,29,22,21,0,0,23,25,0,0,
3165  27,0,5,4,0,8,12,0,10,0,0,30,0,19,20,9,0,22,7,11,0,0,0,2,0,21,1,17,18,0,
3166  0,2,0,11,0,5,0,0,0,26,0,10,0,0,18,6,19,15,4,8,0,28,0,3,16,9,0,29,20,0,
3167  0,28,0,13,9,0,3,27,26,15,0,23,0,25,0,0,0,4,11,0,19,5,0,6,0,30,0,10,0,21,
3168  8,0,0,0,18,28,0,6,0,0,4,0,16,23,0,22,14,0,12,0,10,0,13,9,30,7,5,19,0,0,
3169  18,4,8,27,0,13,17,0,0,19,0,26,21,28,6,0,24,0,0,0,20,25,0,0,22,10,0,12,0,0
3170  };
3171 
3172  /*
3173  * Instances taken from examples that ship with the generator
3174  * "lsencode" by Carla Gomes <gomes@cs.cornell.edu>.
3175  */
3176 
3177  const int d33_381[] = {
3178  // Size: 33 x 33
3179  33,
3180  // Pre-assigned fields
3181  0,0,2,3,28,19,14,33,21,17,0,15,0,0,0,26,4,8,32,16,20,6,29,31,0,0,25,11,0,0,0,0,10,
3182  19,0,0,24,26,9,21,30,0,12,20,0,0,10,33,14,32,0,6,0,11,0,0,28,0,0,23,7,4,0,18,16,22,
3183  0,1,28,0,18,0,19,20,0,5,8,17,0,12,27,0,24,23,0,9,0,32,0,22,10,7,0,29,0,31,3,26,16,
3184  7,16,9,14,27,0,32,0,0,0,31,0,0,5,0,6,25,33,0,0,10,2,0,30,19,0,0,26,12,13,1,22,18,
3185  11,10,4,31,25,0,8,24,0,30,27,0,0,0,19,0,29,32,17,0,18,28,22,6,7,9,0,20,15,0,0,0,0,
3186  24,0,3,9,33,0,5,21,16,31,0,6,25,22,29,0,30,0,10,0,0,11,18,0,1,26,28,0,0,4,0,15,19,
3187  31,32,20,5,0,29,23,0,33,3,17,4,26,19,16,0,22,0,15,0,28,0,0,12,24,6,7,30,13,0,0,0,0,
3188  5,0,6,0,0,2,26,13,10,0,1,24,11,30,4,31,33,29,0,0,19,25,0,16,32,14,0,21,0,0,22,3,0,
3189  0,0,0,0,10,17,12,23,32,18,14,33,19,8,0,3,0,26,0,22,21,1,11,0,0,0,20,27,31,0,9,13,6,
3190  32,33,0,8,5,0,0,4,28,22,24,0,15,0,0,10,31,21,0,26,0,0,7,0,6,1,13,0,30,19,17,29,9,
3191  0,29,0,19,2,31,3,6,12,9,18,0,4,0,21,17,7,0,26,33,32,0,0,8,0,0,22,23,0,20,0,10,0,
3192  1,15,0,0,0,33,24,18,11,19,2,22,29,0,31,32,16,5,27,0,23,7,12,0,25,0,0,9,0,8,0,0,14,
3193  25,24,12,0,15,13,0,0,18,20,0,0,21,33,32,2,14,0,28,0,9,29,6,19,0,0,0,0,0,22,16,8,31,
3194  30,11,18,33,29,0,0,0,0,21,28,14,10,2,13,0,0,0,5,31,7,0,19,26,16,22,27,4,0,1,6,0,0,
3195  0,22,26,27,0,4,0,0,29,0,30,0,5,11,0,0,0,24,16,6,12,0,25,18,31,8,0,28,19,3,13,2,0,
3196  14,23,0,0,0,10,0,12,0,2,26,0,3,0,7,18,0,31,0,17,29,27,30,0,20,32,15,19,6,28,0,9,0,
3197  4,27,19,0,31,0,6,28,3,0,0,16,17,0,22,0,8,13,0,32,0,18,2,0,0,0,0,24,21,12,15,33,25,
3198  15,0,0,12,7,25,20,8,22,23,0,0,0,21,10,0,26,2,0,29,5,0,24,17,0,0,6,13,14,11,0,0,27,
3199  8,4,0,21,12,11,31,0,15,0,0,30,0,9,20,0,0,1,23,0,13,10,3,14,26,0,24,0,22,27,2,5,0,
3200  0,0,0,29,0,28,18,1,9,25,11,19,6,15,0,33,12,10,0,0,0,5,26,32,0,2,30,0,17,21,31,0,20,
3201  0,7,0,0,4,18,0,0,30,0,25,32,20,29,24,0,17,0,14,2,27,15,0,21,0,12,9,0,8,0,10,19,3,
3202  20,25,31,11,0,0,0,26,14,0,7,0,1,13,12,0,21,0,8,3,0,0,0,5,29,0,4,15,2,10,24,32,17,
3203  0,0,10,0,0,6,11,22,0,13,0,21,16,20,23,4,0,3,2,14,0,0,33,0,15,29,32,25,18,17,0,31,0,
3204  0,0,16,0,20,1,0,32,24,0,0,27,22,0,0,21,23,4,33,28,31,0,14,11,17,15,3,10,29,0,8,0,0,
3205  27,0,14,0,6,15,25,10,0,32,22,3,13,17,0,20,1,0,18,0,0,8,9,0,23,31,5,0,16,26,0,0,0,
3206  18,30,0,7,22,26,4,19,27,0,0,25,8,0,0,5,0,17,21,12,0,16,28,0,0,13,2,33,0,0,20,14,0,
3207  0,12,0,26,13,16,30,0,1,0,0,0,0,0,8,7,0,0,3,15,22,33,32,20,9,5,0,0,11,29,19,27,21,
3208  13,0,8,30,0,14,0,0,31,16,21,18,0,32,9,1,0,7,0,20,0,3,0,27,12,10,0,0,33,23,25,0,4,
3209  0,0,27,16,11,0,0,15,0,33,0,5,0,25,0,24,0,22,1,30,3,9,17,13,0,4,12,8,10,0,26,18,29,
3210  16,20,22,32,0,0,10,2,0,15,6,7,0,27,0,23,0,0,11,18,25,13,0,0,33,21,1,0,3,30,0,0,26,
3211  3,26,21,15,1,5,0,0,2,11,9,29,18,28,0,30,0,12,31,0,0,19,0,23,14,0,0,32,0,0,4,7,8,
3212  10,2,17,0,9,0,29,0,0,1,3,0,0,0,5,12,27,0,0,11,15,20,4,33,0,16,31,0,28,25,30,21,13,
3213  17,31,5,10,0,0,0,27,23,0,15,12,9,0,6,29,11,25,13,19,24,0,8,0,2,33,18,0,0,0,0,20,30
3214  };
3215 
3216  const int d35_405[] = {
3217  // Size: 35 x 35
3218  35,
3219  // Pre-assigned fields
3220  1,2,3,0,5,6,0,8,9,10,11,12,13,14,0,16,17,0,0,20,0,22,23,0,25,0,27,28,29,30,31,32,33,0,0,
3221  2,3,4,5,0,0,8,9,10,11,12,0,14,0,16,0,18,19,20,21,22,23,24,25,0,27,28,29,0,31,32,33,34,0,1,
3222  0,4,5,0,7,8,0,10,11,0,13,14,15,16,0,0,0,0,21,0,23,24,25,26,27,0,29,0,31,32,33,34,35,1,2,
3223  0,5,0,7,0,9,0,11,0,13,0,0,16,0,18,0,20,0,22,23,0,0,0,27,0,29,30,31,32,33,34,0,0,2,3,
3224  5,6,7,8,0,10,11,12,13,0,15,16,17,0,19,20,21,22,0,24,25,26,27,28,29,30,0,32,0,34,35,1,2,0,4,
3225  6,7,8,9,10,11,12,13,14,15,16,17,18,19,0,21,0,23,24,0,26,27,28,29,0,0,32,33,34,35,1,0,0,4,5,
3226  7,0,0,0,0,12,13,14,0,16,0,0,19,20,21,22,0,24,25,0,27,0,29,30,31,0,0,0,35,1,2,0,0,5,6,
3227  0,0,0,0,12,13,14,0,0,0,18,0,20,21,22,23,24,0,0,27,28,29,30,31,32,33,34,0,1,0,3,4,0,6,7,
3228  9,0,11,12,13,0,0,16,0,18,19,20,21,0,23,24,25,26,27,28,29,30,31,32,33,0,35,0,2,3,4,0,0,7,8,
3229  10,11,12,0,14,0,16,17,0,0,20,0,0,23,0,25,26,27,28,0,30,31,32,33,34,0,1,0,3,0,5,0,7,8,9,
3230  11,0,13,0,15,0,17,0,19,0,0,22,0,24,0,26,27,0,29,30,31,32,33,34,35,1,2,3,0,5,0,7,8,9,10,
3231  12,13,14,0,16,17,18,0,20,21,22,0,0,25,26,27,28,29,30,31,32,33,34,35,1,2,3,0,5,6,7,0,9,0,0,
3232  13,14,15,16,17,0,19,20,21,0,0,0,25,26,0,28,29,30,31,0,0,34,0,1,2,3,0,0,6,0,8,9,10,11,0,
3233  14,0,16,17,18,19,20,21,22,23,0,0,26,27,0,29,0,0,32,0,34,35,1,2,3,4,5,6,7,8,9,10,11,0,0,
3234  0,16,17,0,19,0,21,22,23,0,0,26,27,28,29,30,31,32,0,34,35,1,0,3,4,5,0,7,8,9,10,0,12,0,14,
3235  16,17,18,19,20,21,22,0,0,25,0,27,0,29,0,31,0,0,34,0,0,0,0,4,0,0,7,8,9,10,11,12,0,14,15,
3236  0,18,19,20,0,22,0,24,0,0,27,0,29,30,31,32,33,34,0,0,0,0,0,5,0,7,8,9,10,11,0,0,14,15,16,
3237  18,19,20,21,22,0,24,25,26,0,28,0,0,31,32,33,0,35,1,0,0,0,0,0,7,8,9,10,11,12,13,14,15,16,0,
3238  19,0,0,22,23,0,25,26,27,28,29,30,0,32,33,34,35,1,2,3,4,0,6,0,8,0,10,11,12,0,0,0,0,0,18,
3239  0,0,22,23,24,0,0,27,28,29,0,31,32,0,34,35,0,0,0,4,0,0,7,8,9,0,11,0,0,14,15,16,0,0,19,
3240  21,22,23,0,25,0,27,28,29,0,0,0,33,0,35,1,2,0,4,0,6,7,0,9,0,0,0,0,0,0,0,0,0,19,0,
3241  0,0,24,0,0,27,28,29,30,0,32,0,0,35,1,2,3,4,0,6,7,0,9,10,11,12,13,14,0,16,17,18,0,0,21,
3242  0,24,0,26,27,0,29,30,0,32,33,34,0,1,2,3,4,5,0,0,0,9,0,11,12,13,14,15,0,0,0,0,20,0,22,
3243  24,25,0,0,28,0,30,0,32,0,34,35,1,2,3,4,0,6,7,0,9,0,11,0,13,0,0,16,0,18,19,0,21,22,23,
3244  25,0,27,28,0,30,0,32,33,0,35,0,0,3,0,5,0,0,0,9,10,11,12,0,14,15,16,17,18,19,20,0,22,23,24,
3245  26,27,28,29,0,0,0,33,0,35,1,2,3,0,0,0,0,8,0,0,11,12,0,0,15,16,17,18,19,20,21,22,23,24,25,
3246  27,0,0,30,0,32,33,34,35,1,2,3,4,5,6,7,0,9,0,11,12,0,14,0,16,17,18,0,0,21,22,23,24,25,26,
3247  0,29,0,0,32,0,0,35,1,2,0,4,5,6,0,0,9,0,11,12,0,14,15,16,17,18,0,0,0,0,23,0,25,26,27,
3248  29,30,31,32,33,0,0,1,2,3,0,5,6,7,8,0,10,0,0,13,0,15,0,17,18,0,20,21,22,0,24,25,26,0,0,
3249  30,31,0,33,34,35,0,0,3,0,0,6,7,0,9,10,0,12,13,0,0,16,0,0,19,0,21,22,23,0,25,0,27,28,29,
3250  0,32,33,0,35,1,2,3,4,5,0,7,8,9,10,0,0,13,14,15,16,17,18,0,0,21,22,23,24,0,26,0,0,29,30,
3251  0,33,34,35,1,0,3,0,5,6,7,8,9,0,11,12,13,14,15,16,17,0,19,20,21,22,0,0,25,26,27,28,0,0,0,
3252  33,0,0,1,0,0,4,5,6,7,0,9,10,11,12,0,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,0,30,31,32,
3253  0,35,0,2,0,0,5,6,7,8,9,10,11,12,0,0,15,0,0,18,19,20,21,0,23,24,25,0,27,28,0,0,31,32,0,
3254  35,1,2,3,4,5,6,0,0,0,10,11,0,13,14,15,16,0,18,19,20,21,22,23,24,0,0,27,28,29,30,31,32,33,34
3255  };
3256 
3257  const int d40_528[] = {
3258  // Size: 40 x 40
3259  40,
3260  // Pre-assigned fields
3261  1,2,3,4,5,0,7,8,9,10,0,0,0,0,15,0,0,0,19,0,21,22,0,0,0,26,27,28,0,0,31,32,0,0,35,0,0,0,39,0,
3262  2,3,0,5,6,7,0,9,0,11,12,13,14,15,16,17,18,19,20,21,22,23,24,0,26,0,0,29,30,0,32,33,34,0,0,0,38,39,0,1,
3263  3,4,0,6,7,8,9,0,0,0,0,0,0,16,0,0,0,0,21,22,23,24,25,26,27,28,29,30,0,0,0,34,35,0,37,38,39,40,1,2,
3264  0,5,6,0,8,9,10,0,12,0,14,0,16,17,18,19,0,0,0,0,24,25,0,27,28,29,0,31,32,33,0,35,36,0,38,0,0,1,2,0,
3265  5,6,7,0,9,0,11,12,13,14,15,16,17,0,19,0,21,0,23,24,25,26,27,28,0,30,0,32,33,0,35,0,37,38,0,40,1,0,0,4,
3266  6,7,8,9,0,11,12,13,14,15,0,17,18,0,20,21,22,0,24,25,0,27,0,29,30,31,0,33,34,35,0,37,38,39,0,1,2,0,0,5,
3267  7,8,0,10,0,0,0,14,15,16,17,18,19,20,21,0,23,24,25,0,27,28,29,30,31,32,33,34,35,36,37,38,39,0,1,2,3,4,5,6,
3268  0,9,10,0,12,13,14,15,16,17,0,19,20,0,0,23,24,25,26,27,28,29,0,31,32,33,0,0,36,37,0,39,40,1,0,0,0,5,0,0,
3269  9,10,11,12,13,14,0,0,17,18,19,0,21,22,23,24,25,0,0,28,29,0,0,0,33,34,0,0,37,38,39,0,1,2,0,0,5,0,7,8,
3270  10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,0,0,29,30,31,0,0,0,35,36,37,38,39,40,1,0,3,4,5,6,0,8,9,
3271  11,12,0,14,15,16,17,18,19,0,0,0,23,24,25,26,27,28,0,0,31,0,33,0,35,0,0,38,39,40,0,2,0,4,5,6,7,0,9,10,
3272  0,13,14,15,0,17,0,0,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,0,36,37,0,39,40,0,0,3,4,5,6,0,0,0,10,0,
3273  0,0,15,16,0,18,19,20,0,0,23,24,25,26,0,28,29,0,31,0,0,34,35,36,37,38,39,0,0,2,3,0,0,6,7,8,9,10,11,0,
3274  14,15,16,0,18,19,0,21,22,23,24,25,26,27,28,0,30,31,32,33,34,0,36,37,38,39,0,1,0,3,4,0,6,0,0,9,10,11,12,13,
3275  15,16,17,0,0,20,21,22,23,0,25,26,27,28,29,30,31,32,33,0,35,36,37,0,0,40,0,2,3,4,0,6,7,8,0,10,11,12,13,0,
3276  0,0,0,19,20,21,0,0,24,25,26,0,28,29,30,31,32,0,34,35,36,0,0,39,40,1,2,0,0,5,0,7,0,9,10,11,0,13,0,15,
3277  17,18,19,0,21,22,23,0,0,26,27,0,29,30,31,32,33,34,0,36,0,38,0,40,1,2,3,0,5,6,0,8,0,0,11,12,0,14,15,16,
3278  18,0,0,21,22,23,24,0,26,0,28,0,0,31,0,0,34,0,0,37,38,39,40,1,2,3,4,0,6,7,8,9,0,11,12,0,14,0,16,0,
3279  0,20,21,22,0,24,0,0,0,28,29,30,31,32,33,34,0,36,37,38,0,0,1,2,3,0,0,6,7,8,0,10,0,12,13,0,0,0,17,0,
3280  0,0,22,23,0,25,0,27,28,29,0,31,0,33,34,35,36,37,0,39,40,0,2,3,4,5,6,7,8,9,10,0,0,13,0,0,16,17,0,0,
3281  21,22,23,24,25,26,27,0,29,30,31,0,33,34,35,36,37,0,39,40,1,2,3,4,0,6,7,8,0,0,0,12,13,14,0,16,0,18,19,20,
3282  0,23,0,0,0,0,28,29,30,31,32,33,34,35,36,37,38,0,0,0,2,0,0,5,6,0,0,0,10,11,12,13,14,15,0,17,18,0,20,21,
3283  23,0,25,26,27,28,29,30,31,32,33,34,35,0,0,0,39,40,0,2,3,4,5,6,0,0,0,10,0,0,13,14,0,16,17,18,0,20,21,22,
3284  24,0,0,27,28,0,0,0,0,33,0,35,0,0,0,39,40,1,2,3,4,0,6,7,8,9,10,11,12,13,14,15,0,0,0,19,20,21,0,23,
3285  0,26,27,28,0,30,0,32,33,34,0,0,37,38,0,40,1,2,3,4,5,6,7,8,0,0,0,12,13,14,0,0,0,0,19,20,21,0,23,24,
3286  26,27,28,0,0,0,32,0,34,35,0,37,0,39,0,1,2,0,4,0,0,7,0,9,0,0,0,13,14,0,16,0,0,0,20,0,22,23,0,25,
3287  0,28,0,30,31,0,33,34,35,0,37,0,0,40,1,0,3,4,0,6,7,0,9,10,11,0,0,0,15,16,17,18,19,20,21,0,0,24,25,0,
3288  28,29,0,31,32,0,34,0,0,0,38,39,0,0,2,3,4,0,6,7,8,9,10,11,12,13,14,0,16,17,18,19,20,21,0,23,24,25,26,27,
3289  0,0,0,32,33,34,0,0,37,38,0,40,1,0,0,0,5,6,7,8,9,0,0,12,13,14,0,16,0,0,0,20,21,22,23,24,25,26,27,0,
3290  30,0,32,33,0,35,36,37,38,39,0,1,2,0,0,0,0,0,0,0,0,11,12,0,14,15,16,0,18,0,0,0,22,0,24,0,26,0,28,29,
3291  0,0,0,0,35,36,37,0,0,40,1,2,3,4,0,6,7,8,0,10,11,0,0,0,0,0,17,0,0,20,21,0,23,24,0,26,27,28,0,30,
3292  32,0,34,0,36,0,0,39,40,1,2,3,4,5,6,0,8,9,10,11,0,13,14,0,0,17,18,0,20,0,0,23,0,25,0,27,28,0,30,31,
3293  0,0,35,36,37,38,39,40,0,0,0,4,5,6,7,8,9,10,0,12,13,14,15,16,17,18,19,0,0,22,23,24,25,26,27,28,0,30,31,0,
3294  0,35,36,0,38,39,40,1,2,0,4,0,0,7,8,0,10,11,12,0,14,15,16,17,18,0,20,0,0,23,24,25,26,27,28,29,30,31,32,33,
3295  35,36,37,38,0,40,1,2,3,0,5,6,7,8,9,10,11,12,0,14,15,16,17,18,19,20,21,22,23,24,0,0,0,0,29,30,31,32,0,34,
3296  0,37,0,39,40,0,0,3,0,0,6,0,8,9,0,11,0,13,0,15,0,0,18,19,0,21,22,23,0,25,26,27,28,29,30,31,32,33,0,35,
3297  0,38,39,40,1,2,0,4,5,0,0,0,0,10,0,0,13,14,15,16,17,18,19,0,21,22,0,0,0,0,0,28,0,30,31,32,33,34,35,36,
3298  38,39,40,1,2,3,4,5,6,0,8,0,0,11,12,0,14,0,16,0,18,0,0,0,22,23,0,0,26,27,28,0,30,31,32,33,34,0,36,37,
3299  0,40,1,2,3,4,0,6,7,8,0,10,11,12,13,14,15,16,17,18,19,20,21,22,0,0,0,26,0,28,0,30,31,0,33,0,35,36,37,38,
3300  40,1,2,3,0,5,0,7,8,9,10,0,12,13,14,15,0,17,18,19,0,0,0,23,0,25,0,0,28,29,30,31,0,33,34,35,0,37,0,39
3301  };
3302 
3303  const int d40_544[] = {
3304  // Size: 40 x 40
3305  40,
3306  // Pre-assigned fields
3307  15,0,2,0,34,30,26,29,18,0,35,37,4,13,6,0,14,25,21,20,0,9,0,24,38,3,16,0,40,0,28,23,33,11,10,17,39,22,31,5,
3308  27,22,7,26,17,40,0,1,13,28,12,0,31,0,30,8,20,5,33,38,10,0,29,23,0,0,2,0,37,18,24,4,14,32,0,9,25,21,0,0,
3309  0,10,0,4,0,32,14,26,0,0,18,0,36,9,0,0,27,11,1,35,0,16,33,37,0,31,8,0,0,40,0,0,6,5,29,34,3,7,24,30,
3310  1,0,34,10,39,0,0,0,6,0,23,35,25,0,27,0,9,3,5,24,29,37,0,0,0,0,30,22,0,2,13,31,26,0,32,38,11,15,0,0,
3311  34,0,5,22,1,19,38,0,0,18,0,0,32,2,36,11,0,16,0,12,33,30,0,29,21,23,15,0,0,27,10,0,24,0,0,7,31,4,28,13,
3312  0,29,27,13,0,24,22,0,0,0,16,3,10,34,19,4,33,30,15,9,20,0,0,6,7,36,40,0,39,17,0,0,21,14,31,18,26,2,11,23,
3313  0,32,4,0,0,22,25,34,0,26,0,27,0,0,40,2,11,29,0,0,16,3,8,1,19,18,20,14,0,21,5,0,0,9,0,0,35,6,0,0,
3314  11,0,38,17,2,31,0,36,0,5,0,25,40,4,16,10,19,0,37,18,0,0,0,32,9,7,33,23,0,0,0,0,39,12,0,0,24,0,29,21,
3315  35,0,30,0,0,39,0,38,28,6,0,23,0,0,31,33,36,0,27,29,3,12,20,0,18,0,37,21,15,24,16,0,0,8,2,0,1,17,25,0,
3316  25,0,15,6,9,29,0,18,21,23,26,28,16,30,24,37,0,17,14,22,0,5,11,0,10,0,34,0,0,0,31,2,36,4,1,32,0,19,0,0,
3317  0,0,0,0,38,0,0,0,39,16,22,24,13,6,0,0,12,18,2,11,28,0,1,0,31,0,0,0,0,30,32,0,34,36,26,0,4,5,15,19,
3318  7,1,10,21,40,35,9,0,0,0,3,34,12,36,0,13,8,0,0,27,32,17,25,0,39,0,23,26,6,0,0,24,0,0,0,20,15,37,0,0,
3319  6,20,39,0,0,26,4,30,0,40,0,0,29,14,0,1,0,7,0,8,0,38,2,28,5,0,32,0,0,11,25,37,0,0,22,0,10,12,27,36,
3320  0,27,8,0,0,2,0,25,32,29,36,15,0,11,21,17,1,9,19,4,18,34,5,0,23,0,12,0,22,0,38,35,7,28,14,0,37,24,0,26,
3321  0,0,0,29,0,11,0,20,14,25,0,0,26,40,38,28,6,0,0,13,34,24,16,22,0,0,0,0,35,33,9,0,0,31,8,1,0,18,0,39,
3322  0,0,0,16,11,21,7,39,29,0,34,4,1,0,25,24,32,0,3,0,6,33,0,5,36,0,22,35,18,19,0,26,38,0,13,0,9,30,0,0,
3323  3,38,24,0,14,36,0,2,12,10,11,19,0,8,0,39,4,6,40,16,15,1,27,0,30,37,0,17,0,0,0,22,29,0,0,26,0,23,0,35,
3324  21,23,18,19,29,25,10,6,24,0,1,14,15,5,35,0,0,0,13,28,0,26,0,34,0,0,4,38,0,16,12,30,37,17,0,40,20,36,0,22,
3325  40,0,0,0,22,0,32,8,35,0,25,20,0,0,7,18,37,38,29,30,0,14,0,0,4,0,0,33,2,39,0,0,16,10,0,23,6,0,26,17,
3326  16,15,14,18,0,0,12,0,0,0,0,32,0,0,26,40,34,28,0,37,35,8,30,39,33,5,6,19,0,0,0,0,10,3,38,0,29,20,17,25,
3327  0,12,29,15,32,34,39,0,0,0,30,0,0,26,33,0,31,40,35,3,17,0,21,27,14,2,0,25,24,4,0,1,0,18,36,28,38,16,9,37,
3328  9,17,20,0,24,1,0,19,0,35,32,40,5,37,0,0,0,0,36,21,31,10,4,26,0,33,29,3,16,25,0,38,22,2,18,13,0,0,0,6,
3329  10,13,26,12,0,0,40,0,0,4,0,0,21,0,28,0,3,0,17,0,30,0,37,14,2,22,0,0,23,32,39,27,18,34,6,29,16,8,1,0,
3330  20,0,16,34,28,0,21,27,40,0,2,36,0,0,15,29,0,37,10,31,13,0,3,35,0,6,0,7,0,14,1,0,17,23,5,19,30,39,0,32,
3331  33,37,19,23,25,17,0,35,31,30,0,5,24,39,0,0,22,32,0,40,0,21,7,0,27,12,38,36,29,0,15,0,0,0,20,16,28,26,0,11,
3332  14,34,11,33,0,12,3,37,19,20,9,0,6,32,17,30,0,23,31,1,0,4,0,0,0,13,27,2,0,35,0,29,15,22,39,0,0,38,5,16,
3333  32,18,17,36,0,4,0,0,33,2,40,26,0,0,8,0,21,14,11,7,37,28,6,0,0,15,39,9,34,13,0,0,0,20,12,22,5,10,38,1,
3334  39,0,33,2,0,5,0,28,34,0,38,0,11,25,0,6,0,0,7,0,36,0,0,18,0,24,0,8,20,0,17,19,23,0,27,0,40,35,30,3,
3335  17,24,23,9,0,14,5,31,25,0,28,11,0,38,0,0,16,35,32,19,0,7,0,12,0,0,18,0,0,37,3,0,13,0,0,0,22,0,0,29,
3336  2,0,0,37,18,10,1,0,0,9,0,31,3,27,5,21,29,0,6,39,0,0,22,0,11,28,35,13,0,15,19,0,25,38,0,8,7,0,34,20,
3337  30,11,21,35,0,33,24,32,10,31,5,0,8,0,0,0,25,12,0,14,0,18,39,38,0,0,0,27,19,0,29,0,0,7,0,0,0,13,16,40,
3338  4,19,40,14,26,0,0,22,0,0,0,21,35,0,0,9,5,27,0,15,0,6,13,2,3,25,0,30,12,0,34,0,31,33,17,0,32,29,18,24,
3339  13,40,37,0,27,0,0,9,30,0,33,0,14,0,0,38,0,0,28,6,11,0,24,0,1,0,26,0,0,23,7,16,0,0,21,3,12,34,19,31,
3340  23,25,3,0,8,28,0,7,16,27,0,17,20,15,13,22,2,33,12,0,19,31,36,0,6,10,1,0,26,38,14,34,40,0,0,24,18,9,35,0,
3341  22,31,0,7,37,6,0,15,27,0,0,0,18,0,1,5,38,0,0,0,24,11,0,8,0,30,13,4,32,34,33,12,20,0,0,10,14,28,0,0,
3342  29,5,12,40,0,37,33,16,0,36,8,39,27,0,3,26,18,0,38,0,1,0,14,0,0,4,19,32,13,0,35,0,9,24,0,25,23,31,21,28,
3343  36,0,6,0,15,16,2,12,3,13,0,0,0,21,0,0,30,0,22,0,0,19,0,9,37,14,0,24,33,29,0,0,1,35,4,27,0,25,0,18,
3344  0,0,22,0,0,0,11,13,38,34,0,0,0,0,0,35,39,0,0,2,4,0,40,31,17,16,0,29,10,12,0,32,8,26,25,5,0,1,20,27,
3345  26,30,0,0,20,0,0,17,7,19,0,6,0,0,0,16,0,0,8,33,0,39,38,0,12,35,36,0,0,3,4,0,32,0,37,2,0,27,14,0,
3346  0,2,0,8,0,0,0,3,36,22,0,33,34,0,23,14,15,13,25,5,38,0,0,20,0,0,28,0,9,31,26,21,0,16,35,4,19,0,0,12
3347  };
3348 
3349  const int d40_560[] = {
3350  // Size: 40 x 40
3351  40,
3352  // Pre-assigned fields
3353  15,36,2,27,0,0,26,0,18,32,35,37,4,13,0,12,0,0,21,20,8,0,19,0,38,3,16,0,40,7,0,0,33,11,0,17,39,0,31,5,
3354  27,0,7,26,0,0,36,0,13,28,12,16,31,3,30,8,20,5,33,0,0,0,29,23,35,0,0,0,37,18,24,4,14,32,0,0,25,0,6,34,
3355  0,0,0,4,19,32,14,26,17,12,0,0,36,9,20,0,27,11,0,35,0,0,33,37,0,31,0,0,21,40,0,0,6,0,29,34,0,7,24,30,
3356  1,33,34,10,39,0,20,4,6,0,23,35,0,12,0,19,9,3,5,24,29,37,0,0,40,17,30,0,14,2,0,0,26,21,32,38,11,0,36,8,
3357  0,39,0,22,1,19,38,0,26,0,0,0,0,2,36,11,35,16,0,12,33,30,0,29,0,23,0,0,17,27,0,14,24,25,0,7,31,0,28,13,
3358  38,0,0,13,12,24,22,5,8,1,16,0,10,34,0,4,33,30,15,9,20,0,35,6,7,0,40,28,0,0,37,0,0,14,0,0,26,0,11,23,
3359  0,0,4,38,33,22,25,34,0,26,0,0,17,0,40,2,11,0,0,36,0,0,0,0,19,18,20,14,28,0,5,15,0,9,23,31,35,6,13,0,
3360  0,8,38,17,2,31,13,36,20,0,27,0,40,0,16,10,0,22,37,18,0,0,34,32,0,7,0,23,1,28,30,6,39,12,15,14,0,3,0,21,
3361  35,9,0,32,0,39,34,38,28,0,13,23,22,0,31,33,36,0,27,29,3,12,0,7,18,0,0,21,15,0,16,40,0,8,0,0,0,17,25,14,
3362  0,0,15,6,9,29,8,18,0,23,0,28,0,30,0,37,40,17,14,22,0,5,0,3,10,38,34,12,27,20,0,2,0,4,1,32,13,0,0,33,
3363  37,7,0,0,0,3,23,21,39,0,22,24,13,6,0,0,0,18,2,11,28,40,1,33,0,0,0,10,0,30,32,17,34,0,26,35,4,5,15,19,
3364  0,1,10,21,40,0,0,0,0,33,3,0,12,0,0,13,0,0,16,27,32,17,25,0,39,19,23,26,0,5,18,24,28,0,30,20,0,0,22,38,
3365  6,0,39,0,0,0,4,0,9,0,15,0,0,0,0,1,0,7,0,0,23,38,0,28,0,0,32,0,0,0,0,37,0,0,22,0,10,12,0,0,
3366  0,27,8,3,13,2,6,0,0,29,36,15,30,0,21,17,1,0,19,4,0,34,5,40,23,20,12,16,22,10,38,0,7,28,14,39,37,0,33,26,
3367  0,21,0,29,7,11,0,20,14,0,0,0,26,0,0,28,6,4,23,13,0,0,16,0,0,32,3,37,35,33,9,0,0,31,8,1,0,0,0,39,
3368  8,14,0,16,11,21,0,39,0,37,34,4,0,31,0,0,32,0,3,17,6,33,0,5,0,0,0,0,0,19,2,26,38,0,13,0,9,30,10,0,
3369  0,38,0,0,14,36,0,0,12,0,11,19,7,8,18,39,0,6,0,16,0,0,27,25,0,0,21,17,5,0,20,22,0,0,0,26,33,23,32,35,
3370  21,23,18,19,29,25,10,6,0,0,1,14,15,5,0,0,7,2,0,0,9,26,32,34,0,0,4,0,11,16,12,30,0,17,33,0,20,36,3,22,
3371  40,3,31,0,22,0,0,8,35,15,25,0,0,0,0,0,0,38,0,30,0,14,12,19,4,34,0,33,0,0,36,13,16,0,24,23,6,0,0,17,
3372  16,0,0,18,21,0,12,0,1,24,0,0,2,23,26,0,0,28,9,37,35,0,30,39,33,5,0,19,31,22,27,7,10,3,38,0,29,0,0,25,
3373  0,0,29,15,32,34,39,10,11,8,0,22,23,26,0,20,31,0,35,3,0,0,0,27,14,2,7,0,0,4,0,0,0,0,36,0,38,16,0,37,
3374  9,0,0,30,24,0,27,19,0,0,0,0,5,0,12,0,0,0,36,21,31,10,0,26,28,0,29,3,16,25,11,0,22,0,0,13,34,14,39,6,
3375  10,13,26,12,35,0,40,33,5,4,19,0,0,0,28,36,0,15,17,0,0,20,0,14,2,22,31,11,0,32,0,27,18,0,6,0,16,8,0,0,
3376  20,4,0,34,28,9,21,27,40,11,2,36,0,0,15,0,26,0,10,0,13,0,3,35,0,0,24,0,38,14,0,0,0,23,5,19,30,0,0,32,
3377  33,37,19,23,25,0,18,35,0,30,6,5,0,0,0,0,0,0,34,40,0,21,0,13,27,12,38,36,29,0,15,9,0,1,20,16,0,26,4,0,
3378  14,34,0,33,0,12,3,0,19,0,9,18,6,0,0,0,28,23,31,1,25,0,26,36,24,13,0,2,0,0,0,0,0,22,0,21,0,38,5,16,
3379  32,18,0,0,31,0,29,0,33,0,40,26,19,35,8,25,0,14,11,7,0,0,6,30,16,0,39,0,34,0,0,0,0,20,12,0,5,10,0,1,
3380  39,16,33,0,4,5,31,28,34,0,0,12,11,25,29,6,0,21,7,26,0,0,10,18,32,0,9,8,20,1,17,0,23,37,27,0,0,35,30,3,
3381  0,24,23,0,36,14,5,0,0,21,0,0,0,38,2,34,0,35,32,19,27,7,15,12,26,0,18,20,4,37,3,10,0,6,40,30,22,33,0,0,
3382  0,26,0,37,18,10,1,23,4,0,0,31,3,0,5,0,0,24,6,39,0,36,22,17,11,28,35,13,0,15,0,33,0,38,16,0,7,40,0,20,
3383  0,11,0,35,23,0,0,0,0,0,5,0,8,20,0,15,0,12,4,14,22,0,39,38,34,9,0,27,0,26,29,36,3,7,28,6,2,13,0,40,
3384  4,19,40,0,0,0,16,22,23,0,20,21,35,0,11,0,5,0,39,15,0,6,13,2,0,25,0,0,12,36,0,0,31,0,17,37,0,0,18,24,
3385  13,0,37,25,27,0,0,9,30,17,33,2,14,22,32,38,10,0,28,6,11,29,24,4,1,8,26,18,0,23,0,16,0,15,21,3,12,0,19,31,
3386  23,25,3,39,8,28,37,7,16,0,0,17,0,15,13,22,2,33,12,32,0,0,36,21,6,10,0,0,26,38,0,34,0,30,11,24,18,9,0,4,
3387  0,0,0,7,37,6,0,15,27,3,21,29,18,16,1,0,38,36,26,23,0,0,17,8,25,0,13,4,0,0,33,0,0,39,9,0,14,28,40,2,
3388  29,5,12,0,30,37,33,16,22,36,8,39,27,17,3,0,0,34,0,10,1,2,14,0,20,4,0,0,13,0,0,11,0,24,0,25,0,0,21,28,
3389  36,28,0,0,15,0,2,12,3,13,0,10,0,21,39,0,30,0,0,0,40,19,0,0,0,14,11,0,0,29,8,20,0,35,0,27,0,25,23,0,
3390  0,0,0,28,0,0,0,0,38,0,24,7,37,33,0,35,39,19,30,0,0,23,0,31,0,16,14,29,10,0,0,32,8,26,0,0,36,1,0,0,
3391  0,30,13,11,20,23,15,17,7,19,31,6,28,29,0,16,24,1,8,0,5,0,38,10,0,35,0,34,25,3,0,18,0,40,37,0,0,0,0,0,
3392  24,2,1,8,6,7,0,3,0,22,17,33,34,0,0,0,15,13,25,0,0,27,0,20,0,39,28,40,9,0,0,21,11,16,0,4,19,32,0,12
3393  };
3394 
3395  const int d50_750_bal[] = {
3396  // Size: 50 x 50
3397  50,
3398  // Pre-assigned fields
3399  43,28,49,45,17,31,9,0,19,26,0,29,18,41,15,14,32,0,0,0,3,13,50,8,0,10,2,1,0,25,27,11,0,39,47,0,20,0,36,12,0,5,0,44,37,0,0,40,4,0,
3400  26,18,14,0,43,24,6,17,9,38,0,2,0,12,0,46,47,0,44,15,0,0,0,0,42,8,48,41,30,32,4,25,37,33,19,0,0,34,11,35,40,0,10,23,0,39,50,0,0,5,
3401  5,38,10,32,18,23,21,31,41,16,17,0,36,0,50,0,33,37,0,40,48,25,2,0,0,49,0,0,3,7,14,29,30,44,0,46,43,0,0,0,24,0,15,0,0,22,1,8,27,12,
3402  18,0,2,36,26,48,0,27,22,0,0,20,41,0,30,25,11,7,9,28,0,39,21,37,0,15,24,40,0,3,35,0,14,10,0,0,4,0,8,34,0,23,43,29,5,32,0,0,31,6,
3403  11,36,0,14,37,0,7,10,0,30,38,0,4,1,0,18,22,6,32,2,20,50,0,29,39,31,3,12,0,0,42,0,0,34,26,41,25,8,19,44,13,0,35,0,0,46,5,0,49,0,
3404  40,0,33,29,16,0,0,1,0,36,0,0,0,0,31,0,0,0,5,27,0,6,8,49,2,0,4,34,35,20,24,32,46,47,25,22,38,0,50,23,19,13,30,45,15,0,14,11,7,3,
3405  0,0,25,0,30,27,50,45,0,0,31,42,13,4,10,35,0,40,28,19,15,11,49,36,0,0,17,8,16,34,21,6,7,0,0,0,47,0,0,29,0,0,5,3,38,44,37,9,14,32,
3406  45,0,0,15,6,44,0,37,43,50,13,8,0,33,19,36,7,23,20,5,30,38,1,40,29,0,0,9,32,0,0,0,0,46,0,26,17,0,35,4,21,0,48,16,0,0,3,18,42,47,
3407  0,30,11,16,14,33,42,15,0,10,44,0,17,7,0,49,0,4,0,22,37,26,0,45,34,47,5,50,13,24,0,48,8,23,20,27,9,0,0,0,0,25,0,28,39,6,19,0,0,2,
3408  0,12,24,19,42,6,49,0,0,31,43,27,0,37,45,17,0,0,3,8,21,36,34,15,0,44,0,10,5,41,33,2,50,22,0,48,29,14,28,0,0,9,16,0,0,0,0,46,18,1,
3409  19,48,4,13,0,1,40,11,49,23,0,0,35,34,20,0,9,17,26,43,0,44,25,18,46,0,21,0,0,5,0,12,16,29,28,0,15,47,0,27,0,24,0,37,0,10,8,42,0,14,
3410  33,5,39,50,24,12,20,6,10,0,30,18,0,16,26,0,27,0,0,4,0,40,41,31,36,48,25,0,0,21,0,7,0,14,0,2,44,32,37,45,0,3,29,38,1,0,0,22,34,0,
3411  7,3,0,47,0,42,0,21,37,0,15,24,34,31,36,1,0,33,0,11,10,12,0,32,25,6,0,49,48,14,8,0,0,27,17,43,0,0,23,16,26,0,0,46,40,41,18,38,0,50,
3412  34,7,19,33,0,0,30,49,47,11,16,36,9,14,4,41,0,0,0,26,6,0,31,10,40,18,45,32,0,37,0,23,0,25,50,0,13,39,44,0,0,0,0,2,27,0,12,5,46,17,
3413  3,32,36,2,23,0,16,0,21,22,35,33,7,0,0,0,37,0,34,31,50,0,0,12,0,1,0,44,4,0,17,0,49,45,0,0,10,24,9,6,5,30,28,0,43,19,13,20,40,26,
3414  46,39,0,0,12,0,8,0,0,49,20,1,24,0,41,16,40,0,0,0,26,0,47,44,11,2,36,28,23,0,45,0,21,19,35,3,22,6,32,18,9,50,0,0,7,17,0,48,15,25,
3415  48,9,46,34,49,0,33,28,44,42,19,0,32,0,27,10,0,0,0,3,0,16,11,23,0,13,29,14,20,15,7,17,25,0,45,36,40,18,31,38,1,22,0,0,47,0,24,0,0,0,
3416  38,37,1,27,20,0,0,35,12,0,4,13,6,8,0,0,23,9,0,0,44,17,14,0,0,33,0,43,46,16,0,45,36,21,0,32,34,48,0,22,7,18,0,26,29,5,41,24,0,10,
3417  37,47,0,30,4,25,0,0,36,3,46,0,40,20,0,6,34,49,15,10,0,31,28,35,5,7,16,39,1,0,9,0,44,0,23,0,33,29,41,0,0,0,12,11,24,0,42,45,26,0,
3418  36,0,32,31,0,15,12,8,0,0,0,23,39,42,25,0,44,35,11,0,0,0,0,30,45,41,49,0,27,40,0,38,6,16,9,13,21,2,34,0,37,33,14,18,26,3,0,19,0,43,
3419  32,0,22,48,0,0,0,14,0,39,24,31,0,40,35,13,0,36,27,44,23,34,37,47,38,0,7,0,42,49,19,18,0,0,16,29,0,26,5,0,3,4,8,9,17,43,0,12,6,0,
3420  25,19,15,0,28,0,0,39,20,5,0,0,21,0,0,50,42,45,7,35,16,32,13,17,33,0,0,4,22,46,18,36,40,24,49,47,0,44,0,2,0,38,11,30,0,12,0,0,9,34,
3421  0,33,30,39,32,11,0,23,28,8,21,49,0,38,0,0,31,15,18,0,25,37,19,24,44,22,34,42,6,0,36,43,12,17,0,9,0,0,3,7,4,0,0,0,0,0,29,35,48,45,
3422  0,40,0,9,45,29,28,48,4,0,5,0,0,3,0,15,0,0,19,39,17,0,23,22,14,0,0,47,25,42,41,35,2,1,18,6,32,36,0,8,0,46,37,24,16,30,11,0,0,20,
3423  12,0,47,7,0,18,25,36,0,0,40,38,5,49,1,0,35,27,50,33,13,41,0,0,37,0,42,11,39,28,29,16,0,0,0,10,23,0,0,0,2,14,9,21,8,31,0,17,20,46,
3424  0,14,0,37,7,0,4,29,24,0,26,0,0,36,0,43,0,25,42,0,8,35,3,6,15,11,13,33,0,0,16,44,39,28,0,21,50,38,27,0,0,40,22,31,32,45,49,30,23,0,
3425  44,8,0,0,15,38,0,30,32,9,6,0,0,47,34,0,45,20,21,12,0,0,10,39,31,16,23,18,24,4,0,0,17,35,41,0,0,0,42,14,28,36,46,49,33,0,27,0,25,22,
3426  9,50,28,23,25,14,43,0,0,34,48,21,49,0,0,33,46,0,0,17,0,0,15,0,0,27,47,19,29,0,0,41,35,0,38,44,16,30,45,42,36,20,7,0,0,1,32,31,37,40,
3427  0,46,38,25,29,22,36,0,40,13,0,10,0,0,44,7,39,0,24,14,42,2,0,0,0,0,35,20,37,17,30,5,23,0,4,12,45,41,1,43,48,11,18,6,0,0,9,0,33,0,
3428  50,29,0,0,0,13,35,16,8,25,12,32,44,46,49,0,0,14,4,0,28,7,5,2,20,36,0,38,17,43,39,10,0,3,21,19,30,40,0,0,15,0,0,0,45,11,23,0,0,37,
3429  39,6,0,3,0,0,47,9,45,18,0,34,0,0,13,37,50,16,23,7,0,5,0,42,48,17,31,0,12,0,22,4,0,36,15,25,41,11,0,21,14,19,49,20,10,29,0,26,0,0,
3430  27,0,42,21,3,34,0,0,33,29,32,46,30,0,0,0,36,0,10,0,0,1,4,7,16,23,37,17,26,13,12,0,15,2,31,14,0,43,0,24,44,49,6,19,0,9,20,0,8,0,
3431  0,0,20,42,2,0,0,0,29,27,50,0,31,21,0,23,8,18,30,32,33,46,40,0,0,12,43,0,0,0,25,9,0,15,34,17,0,37,14,10,41,47,26,0,13,24,28,44,5,39,
3432  0,0,45,0,5,16,34,13,46,0,18,41,38,26,0,9,0,28,0,0,47,0,20,0,49,30,33,0,0,8,32,27,31,42,10,1,37,3,22,36,11,21,19,25,44,35,17,0,0,0,
3433  17,34,0,0,8,20,32,0,0,0,2,22,1,23,6,21,18,0,45,36,29,0,39,46,10,0,0,35,0,27,0,24,0,41,5,33,0,15,38,30,31,37,42,12,19,13,0,47,28,0,
3434  23,10,5,0,0,46,44,0,27,40,0,16,15,0,17,30,0,34,41,0,11,21,35,0,9,38,22,37,19,0,0,0,0,31,7,45,49,0,18,32,47,2,39,36,0,26,43,14,3,0,
3435  0,0,0,38,0,0,29,32,42,7,0,19,14,15,47,0,30,41,0,1,0,24,48,0,22,45,46,0,21,44,0,28,11,0,8,4,3,12,40,39,20,0,2,13,6,18,31,37,0,16,
3436  42,27,0,28,36,32,13,7,18,4,45,39,2,5,43,48,24,50,0,0,49,15,0,0,0,0,30,0,11,0,44,0,22,0,0,0,0,25,20,9,34,41,47,33,14,23,40,10,0,35,
3437  4,0,8,0,0,2,0,0,6,32,0,15,43,9,40,28,19,39,25,23,34,18,0,16,0,0,38,48,33,30,3,22,41,0,29,5,0,27,0,13,0,35,17,0,12,50,0,1,47,36,
3438  24,22,0,0,1,0,26,0,7,0,0,4,37,0,18,0,15,44,14,21,36,0,16,13,0,28,50,23,10,47,34,3,20,48,43,35,0,46,6,0,38,0,40,0,11,33,39,0,45,31,
3439  15,35,26,22,44,50,37,18,0,12,36,48,0,27,3,8,0,32,43,0,24,0,0,14,17,0,19,0,0,45,0,0,38,20,39,11,31,10,49,5,0,6,0,40,9,0,0,41,1,7,
3440  0,4,0,0,0,35,46,26,0,1,0,14,33,28,24,44,49,42,40,30,41,0,36,0,32,5,0,45,15,9,38,19,13,0,0,0,6,16,0,25,12,31,23,0,20,8,0,43,39,21,
3441  0,45,17,0,40,26,23,42,3,24,11,25,22,10,14,5,0,29,46,0,38,49,27,0,43,9,32,36,0,0,50,20,47,0,0,0,8,21,0,31,39,15,0,4,0,0,44,7,19,0,
3442  0,0,37,46,13,0,18,34,5,14,39,17,0,0,28,38,3,11,35,9,22,0,42,50,41,43,0,0,7,1,0,15,0,0,33,30,36,0,2,40,16,0,0,8,31,4,0,21,29,19,
3443  0,0,31,0,0,41,5,2,0,21,1,37,27,32,11,19,10,48,6,29,39,33,45,20,13,0,0,0,8,38,23,0,34,40,14,0,24,4,12,0,50,0,3,0,42,0,46,0,44,18,
3444  41,0,9,20,0,7,38,4,13,0,14,0,46,0,39,0,16,19,36,0,43,30,12,5,24,3,1,0,34,31,10,0,29,26,27,0,0,28,17,0,0,8,0,0,35,42,47,32,50,15,
3445  0,43,35,0,19,36,27,0,23,0,34,0,16,22,46,24,26,38,0,18,14,0,0,25,47,32,41,3,0,0,37,31,0,0,48,42,0,0,15,33,17,1,21,50,49,20,10,13,0,28,
3446  28,20,6,8,21,5,0,0,0,0,10,0,29,11,33,26,2,13,1,50,0,23,0,0,0,4,0,31,14,39,0,37,45,0,0,24,46,0,30,17,27,0,32,35,18,49,15,36,16,42,
3447  10,13,23,18,0,30,0,20,50,17,0,5,3,45,37,39,12,0,0,42,0,19,44,0,7,34,0,29,0,6,31,14,33,4,46,0,2,9,24,0,8,32,38,0,22,16,36,0,0,0,
3448  1,15,3,41,48,4,24,22,14,37,9,35,0,43,0,32,17,5,33,0,19,42,0,27,6,0,8,0,0,0,49,0,18,38,36,34,0,20,0,0,25,44,0,10,0,0,16,23,21,13
3449  };
3450 
3451  const int d50_825_bal[] = {
3452  // Size: 50 x 50
3453  50,
3454  // Pre-assigned fields
3455  0,2,3,4,0,0,7,0,9,10,11,0,13,14,0,16,17,18,19,20,0,22,23,24,25,0,0,0,29,30,0,32,33,0,35,36,0,0,0,40,41,42,43,44,0,0,47,48,49,50,
3456  0,3,4,5,6,0,8,9,10,11,0,13,14,0,16,0,0,19,20,0,22,23,24,0,0,27,28,29,30,0,32,0,34,35,36,0,38,0,40,41,0,0,0,45,46,47,48,49,50,1,
3457  3,0,0,6,7,8,9,0,11,12,13,14,15,16,0,0,0,20,21,0,23,0,25,26,27,0,29,0,31,32,0,34,0,36,37,0,39,0,41,42,0,44,45,0,47,48,49,50,1,0,
3458  4,5,6,7,8,9,10,0,12,0,14,0,16,0,18,19,20,0,22,23,0,0,26,0,0,29,30,31,0,33,0,0,36,37,38,39,0,41,42,43,44,45,46,0,0,0,0,1,2,3,
3459  0,6,7,8,9,10,0,12,0,14,15,16,17,18,19,20,0,0,23,24,25,0,27,28,29,30,31,32,33,0,0,36,37,0,0,40,0,0,43,44,45,46,47,0,49,0,0,0,3,4,
3460  0,7,8,9,10,0,12,13,0,15,16,17,0,0,0,21,22,23,24,0,26,0,28,0,30,31,32,33,34,35,36,37,0,0,0,41,0,43,44,45,46,47,48,0,50,0,2,3,0,5,
3461  7,0,9,10,0,12,13,14,15,16,0,0,19,20,0,0,23,24,25,26,27,0,0,30,0,32,33,34,35,0,37,38,39,40,41,0,0,44,45,0,47,0,0,0,1,2,0,4,5,6,
3462  8,9,10,0,12,0,0,15,16,17,0,0,0,0,22,23,24,25,26,0,0,29,30,31,32,0,34,35,36,37,0,39,40,0,42,0,44,45,46,47,48,0,50,0,2,3,4,5,6,0,
3463  9,0,0,0,0,14,15,0,17,18,19,20,0,0,23,24,25,0,27,0,29,30,31,32,33,34,35,0,37,0,0,40,41,0,43,44,0,46,47,48,49,50,1,0,0,4,0,6,7,8,
3464  10,0,12,13,14,0,16,0,0,19,20,21,22,23,24,25,26,27,0,0,30,31,32,0,0,0,0,0,38,39,0,41,42,43,44,45,46,0,48,0,50,0,2,3,4,5,6,7,0,9,
3465  0,12,0,0,15,16,17,18,0,0,0,22,23,24,25,26,27,0,0,30,31,32,33,34,0,36,0,38,39,40,0,42,43,44,45,46,0,48,49,0,1,2,0,4,0,6,7,8,0,10,
3466  12,13,14,15,16,17,0,19,0,21,22,0,24,0,26,27,28,0,0,0,0,33,0,35,36,37,38,39,40,41,42,43,44,0,0,47,48,0,0,1,0,3,4,5,6,7,0,0,0,11,
3467  0,14,15,16,0,0,0,20,0,22,23,24,0,26,0,0,29,30,31,0,33,0,35,36,0,38,0,0,0,42,43,44,45,46,47,48,49,50,1,2,3,4,0,6,7,0,9,10,0,12,
3468  0,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,0,34,35,36,0,0,0,40,41,42,0,44,0,0,0,48,0,0,1,0,3,4,0,0,7,8,0,10,11,12,0,
3469  15,16,0,18,0,20,0,22,23,24,0,0,27,28,29,0,31,32,0,34,35,0,0,38,39,40,0,42,0,0,45,46,47,0,49,0,0,2,3,4,5,6,7,8,9,0,0,12,13,14,
3470  0,0,18,19,20,21,0,23,24,25,26,0,0,29,30,31,32,0,0,35,0,37,0,0,40,41,0,43,44,45,46,0,48,49,50,1,0,3,0,5,0,7,8,0,0,11,12,13,14,15,
3471  17,18,19,20,0,22,23,24,25,26,0,28,29,30,31,0,0,34,35,0,0,0,39,40,41,42,0,0,0,0,47,48,49,50,1,2,3,4,0,0,7,8,9,0,0,0,13,14,0,16,
3472  18,19,20,0,22,0,0,25,0,0,28,29,30,31,32,33,34,35,0,37,38,39,40,41,42,43,44,0,0,47,48,49,50,1,0,0,4,5,0,7,0,9,0,0,0,13,0,0,16,17,
3473  0,20,21,22,23,24,25,26,0,0,29,30,31,0,0,34,0,0,0,38,39,40,41,42,0,44,0,46,0,48,49,50,1,0,0,4,5,6,0,8,9,10,11,12,13,0,15,16,0,18,
3474  20,21,22,23,0,0,0,27,0,29,0,0,32,33,0,0,36,0,38,39,40,41,42,43,0,45,46,47,48,49,0,1,2,3,0,5,6,7,8,9,10,11,12,0,14,15,0,17,0,0,
3475  21,22,23,0,25,26,0,0,29,30,31,0,33,0,35,36,0,38,39,40,41,42,43,44,45,0,0,48,0,0,1,0,0,4,5,6,7,8,9,0,11,0,13,0,0,16,17,18,19,20,
3476  22,23,0,25,26,27,0,0,30,31,32,33,0,35,36,0,0,0,40,41,42,43,0,45,0,47,48,49,50,1,0,0,0,0,6,0,8,9,10,11,0,13,14,15,0,17,18,0,20,21,
3477  23,0,25,0,27,28,29,0,31,0,33,34,0,36,37,0,0,40,41,42,0,0,0,0,47,48,49,0,0,2,3,4,5,6,7,8,9,10,11,12,0,14,15,0,17,18,0,0,21,22,
3478  24,25,26,27,28,29,30,31,0,33,34,35,0,0,0,39,0,41,42,43,0,45,46,47,0,49,50,0,2,3,4,5,0,0,8,0,10,11,0,13,0,15,16,17,0,0,20,0,22,0,
3479  25,26,27,28,0,30,31,32,33,0,35,36,37,38,39,0,0,42,43,44,0,46,0,0,49,50,1,2,3,4,0,0,0,8,0,0,0,12,13,14,15,16,17,18,19,20,21,0,0,0,
3480  0,27,0,29,0,0,32,33,34,0,36,37,0,39,40,0,0,43,44,45,46,47,48,49,0,1,2,3,4,5,6,7,0,9,10,11,12,0,0,0,0,17,18,0,20,21,22,23,24,0,
3481  27,0,29,0,31,0,33,0,35,0,37,0,39,0,41,42,43,44,45,46,0,48,0,50,1,2,3,4,0,6,7,8,0,10,0,12,13,14,0,0,17,0,19,20,0,22,23,24,25,26,
3482  28,29,30,31,0,33,34,35,36,37,0,39,40,41,0,0,44,0,46,47,48,0,50,0,2,3,4,5,0,7,8,0,10,11,12,0,14,0,16,17,0,19,20,0,0,0,24,25,0,0,
3483  29,30,0,32,0,34,35,0,37,0,39,40,41,42,43,0,45,0,0,0,0,0,0,2,3,4,5,6,7,8,9,10,0,12,13,14,0,0,17,18,19,20,21,0,23,24,25,0,27,28,
3484  30,0,32,33,34,0,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,1,0,3,4,0,0,0,8,0,0,11,12,13,0,15,16,0,18,0,20,21,22,23,24,0,0,0,0,0,
3485  31,32,33,0,35,36,0,38,39,40,0,42,0,0,45,46,47,48,49,0,0,2,3,4,0,6,7,0,0,10,11,12,13,14,15,16,17,0,0,0,21,22,0,24,25,0,27,28,29,0,
3486  32,33,34,35,0,0,38,39,40,0,0,0,44,45,0,47,48,49,0,0,0,0,0,5,6,0,8,9,10,0,12,13,14,15,16,17,18,19,0,21,22,23,24,25,26,0,28,29,30,0,
3487  33,34,35,0,37,38,39,40,41,42,43,0,45,46,47,0,0,50,0,2,3,4,5,0,7,0,9,0,11,12,13,14,15,0,17,0,0,0,21,22,23,0,0,26,0,28,29,0,31,32,
3488  34,35,36,37,0,0,40,0,42,43,0,45,46,47,48,49,0,0,0,3,4,0,0,7,8,9,0,0,12,0,14,0,16,17,18,19,20,0,0,23,24,0,26,27,28,0,30,31,32,33,
3489  35,0,37,38,39,0,0,0,43,0,0,46,47,48,0,50,1,2,3,4,0,0,7,8,9,10,11,12,13,14,15,0,17,0,19,0,0,0,23,0,25,0,27,28,29,30,31,32,33,34,
3490  0,37,0,0,0,41,42,43,0,45,0,47,48,49,50,1,2,0,4,5,6,7,8,9,10,0,12,13,0,0,16,0,18,19,20,21,22,0,24,25,26,0,0,29,30,31,0,0,34,35,
3491  0,0,39,40,41,0,43,44,0,46,47,0,0,50,1,2,3,4,0,0,7,8,0,0,11,0,0,14,15,16,17,18,0,20,21,22,23,24,0,26,0,0,29,30,31,32,0,34,35,36,
3492  38,0,0,41,0,43,44,45,46,0,48,49,50,1,0,3,4,0,0,7,8,9,0,11,12,13,14,0,16,17,0,19,20,21,22,23,0,25,0,27,28,0,0,31,0,33,0,35,36,0,
3493  0,0,41,42,0,44,0,46,0,0,49,50,0,0,0,4,5,6,0,0,9,10,11,12,13,0,15,0,17,18,19,20,0,0,23,24,25,26,27,28,0,30,31,32,33,34,35,0,37,38,
3494  40,0,42,0,44,45,0,47,0,49,50,1,2,3,4,5,0,7,8,9,10,11,0,0,0,15,0,17,0,19,20,0,22,23,0,25,26,27,28,0,0,0,32,33,34,35,0,37,38,39,
3495  41,42,0,0,45,46,47,48,0,0,1,2,3,0,5,6,0,8,9,10,11,12,0,0,15,0,17,18,19,20,0,0,0,24,25,0,27,28,29,0,31,32,0,34,35,36,0,38,0,40,
3496  0,43,0,0,46,0,48,49,50,1,0,3,4,5,6,7,8,9,0,11,12,13,14,15,0,0,18,0,0,21,22,23,0,25,26,0,28,0,30,0,32,33,0,35,36,37,38,39,0,41,
3497  0,44,45,46,47,48,49,0,1,0,3,4,0,6,0,0,0,0,11,12,13,0,15,16,17,18,0,20,21,0,23,0,25,0,0,28,29,30,31,32,33,34,35,0,37,38,39,40,41,0,
3498  44,45,0,0,48,49,0,0,0,0,4,5,0,7,0,9,10,11,12,0,14,15,16,0,0,0,20,21,0,23,24,25,26,27,28,29,30,31,32,33,34,35,0,37,38,39,40,0,0,0,
3499  45,46,0,0,49,50,1,0,3,4,5,6,0,0,9,10,11,0,13,14,0,16,17,18,19,20,0,22,23,24,0,26,0,0,0,0,31,32,33,0,0,36,0,38,39,40,41,42,43,44,
3500  46,0,48,0,0,0,0,3,4,5,6,7,0,0,10,11,12,13,14,15,16,17,18,0,20,21,22,23,0,25,26,0,28,29,0,31,0,33,34,0,0,0,38,39,0,41,42,43,0,45,
3501  47,48,0,50,1,2,0,4,5,6,0,0,9,10,11,0,13,14,0,16,0,18,19,20,21,22,23,24,25,0,27,28,29,30,0,32,33,34,35,36,0,38,0,40,0,0,0,0,0,0,
3502  48,0,0,1,2,3,4,5,6,0,0,0,0,11,0,13,14,15,16,17,18,0,20,21,22,23,24,0,26,27,0,0,0,0,32,33,34,35,36,37,38,39,0,41,42,0,44,0,46,47,
3503  49,50,1,2,3,4,5,0,7,8,0,10,11,0,13,14,15,0,0,0,19,0,0,22,23,0,25,26,27,0,29,30,31,32,0,34,0,36,0,0,0,0,41,42,43,44,45,46,47,0,
3504  0,0,0,3,4,5,6,7,0,9,10,0,12,13,14,15,0,17,18,19,0,21,22,0,0,0,0,27,28,0,0,31,32,33,0,35,36,37,38,0,40,41,42,43,44,45,0,0,48,49
3505  };
3506 
3507  const int d60_1080_bal[] = {
3508  // Size: 60 x 60
3509  60,
3510  // Pre-assigned fields
3511  8,0,44,0,0,25,0,26,48,6,57,0,0,7,29,40,0,0,31,36,50,21,32,52,38,49,13,56,37,51,0,0,45,59,1,27,15,9,0,0,47,0,16,33,18,0,39,46,0,0,42,17,54,20,11,0,0,23,53,60,
3512  34,31,17,0,39,0,12,0,3,52,25,55,0,0,16,43,0,0,57,0,30,0,48,13,15,7,49,10,45,60,0,22,11,51,5,29,6,53,19,0,36,0,0,0,58,1,35,33,37,0,47,41,0,0,44,28,0,42,56,24,
3513  0,45,18,44,58,11,53,41,0,35,26,23,0,0,0,49,17,57,1,0,7,19,31,43,21,0,9,54,38,36,4,51,0,39,29,22,60,25,24,0,50,0,0,42,47,0,32,14,0,0,12,0,0,30,13,55,34,20,0,0,
3514  1,0,33,46,20,17,41,49,34,26,35,21,3,13,44,0,0,47,0,0,40,36,38,0,31,27,0,42,30,32,48,2,4,43,8,0,0,24,0,0,58,0,9,7,29,50,51,18,45,0,0,0,39,0,6,0,5,60,57,0,
3515  35,4,10,59,0,57,56,9,60,34,0,0,5,25,38,46,33,0,21,29,53,37,11,42,36,32,0,58,0,0,0,50,43,0,3,13,0,6,0,28,40,18,0,1,19,8,23,16,14,26,0,39,0,0,7,0,49,0,52,0,
3516  45,10,49,0,16,0,14,48,0,0,37,17,57,52,0,3,51,0,0,58,4,0,0,7,8,0,33,29,42,5,28,54,23,21,20,0,0,0,43,0,30,0,18,15,0,46,0,0,25,22,32,60,13,40,2,39,44,9,35,34,
3517  27,21,16,0,23,37,0,0,35,45,0,30,51,9,50,20,36,54,0,34,0,25,17,0,22,0,58,13,59,0,0,0,52,4,0,0,0,15,46,0,31,49,44,0,10,33,29,47,0,53,7,18,55,0,5,41,39,48,28,56,
3518  32,0,1,41,18,0,49,23,7,13,15,22,43,0,0,12,0,16,30,45,21,44,8,50,19,0,0,26,0,2,59,11,6,0,47,35,28,55,5,25,34,29,0,46,0,0,0,42,27,3,0,0,0,17,58,0,4,0,39,40,
3519  0,60,9,3,29,53,0,33,50,54,22,52,37,0,0,6,0,40,55,23,8,26,58,36,56,1,0,14,57,10,30,47,28,20,0,0,11,48,31,4,59,19,0,0,0,42,0,0,44,0,0,46,41,39,25,0,0,15,0,17,
3520  60,56,37,0,55,5,10,59,40,8,48,12,21,0,43,22,15,25,45,42,0,7,0,0,0,0,57,0,27,0,23,44,31,52,4,49,9,51,41,0,0,1,24,0,26,16,0,0,58,30,20,11,0,0,14,19,50,54,0,0,
3521  31,55,0,0,47,29,15,1,0,57,0,0,0,35,10,8,3,33,14,0,32,0,20,30,40,59,0,16,0,9,11,52,7,54,0,0,12,49,0,27,4,5,0,22,0,58,19,37,34,44,36,0,56,51,28,50,0,0,2,23,
3522  12,58,36,50,0,13,0,35,51,0,39,4,0,27,0,0,6,0,0,0,0,5,42,0,23,28,43,0,21,20,45,0,46,11,55,44,33,38,25,15,56,48,19,9,2,0,0,7,0,47,0,59,49,54,0,14,30,18,10,1,
3523  54,0,28,31,4,42,58,0,0,16,47,0,48,0,0,7,0,9,0,0,14,32,0,53,0,46,26,35,0,13,10,49,0,0,33,43,3,0,40,55,22,56,51,19,44,5,37,24,17,39,6,25,60,15,0,45,57,0,0,52,
3524  38,0,6,26,60,0,0,30,8,46,7,9,13,56,35,58,0,48,11,1,0,0,0,23,32,34,0,43,54,29,17,0,21,10,37,0,40,3,52,36,0,0,15,18,51,0,0,20,0,0,4,0,25,41,0,24,42,2,19,59,
3525  49,52,0,45,0,0,35,51,10,9,4,0,23,0,12,33,44,27,28,17,0,40,56,1,37,22,38,0,7,57,0,0,25,0,0,0,30,32,11,39,19,3,0,13,42,0,60,0,0,58,55,16,34,0,26,2,20,0,48,14,
3526  26,0,0,0,0,10,51,52,17,0,9,8,36,55,32,18,50,0,39,37,29,0,53,24,34,6,31,0,0,0,7,59,0,45,21,0,0,0,54,12,35,23,13,0,56,0,0,5,15,57,16,42,0,19,49,33,46,27,60,30,
3527  19,0,55,0,48,0,60,46,0,17,0,0,29,14,0,0,0,0,24,18,35,0,0,11,52,45,25,38,32,28,36,15,30,42,23,50,49,0,9,5,0,12,39,37,41,44,40,51,7,27,0,4,22,57,3,6,47,0,0,0,
3528  36,6,34,52,0,0,0,17,0,41,32,0,20,39,9,0,24,13,0,31,22,18,5,35,0,57,0,44,15,33,0,30,0,55,0,40,38,2,58,60,0,0,43,0,1,0,25,28,53,49,0,45,46,7,48,42,54,0,14,16,
3529  41,27,3,0,5,49,0,58,0,48,6,14,18,26,15,2,60,0,52,40,44,0,55,0,17,29,0,53,0,11,54,37,0,8,31,34,0,45,36,24,20,39,21,25,0,0,13,19,0,28,56,0,42,0,0,0,59,0,51,33,
3530  6,25,0,37,53,22,19,0,52,0,46,24,14,2,21,0,20,42,0,15,23,0,0,39,26,31,54,34,0,0,27,0,0,5,44,1,10,0,13,7,48,43,11,60,0,0,41,56,3,0,29,0,0,4,0,30,38,12,50,57,
3531  0,17,0,5,0,9,38,57,0,20,13,0,0,16,49,24,41,34,0,0,47,0,0,31,0,0,56,40,18,0,0,25,19,15,0,11,52,0,29,51,45,42,55,0,7,53,33,12,26,59,2,36,30,48,8,0,32,3,43,28,
3532  42,30,57,0,2,41,54,0,18,51,40,0,0,3,19,0,39,28,0,0,0,15,0,60,16,38,17,4,46,0,0,32,8,14,6,10,5,47,33,48,7,44,1,43,27,23,0,31,0,35,21,0,37,11,0,25,0,13,0,0,
3533  0,39,0,23,0,0,7,0,0,53,14,0,49,38,55,34,0,58,16,0,5,45,59,37,0,41,0,0,19,15,40,31,17,0,32,0,48,22,60,50,26,0,6,56,33,57,4,44,21,11,18,0,36,27,10,0,0,29,25,12,
3534  5,49,45,33,40,0,0,37,15,32,27,59,34,0,4,30,0,0,42,0,11,60,0,56,55,0,52,21,0,12,29,16,35,24,54,0,1,0,20,23,2,0,36,53,6,0,0,0,46,17,58,50,0,0,22,48,9,14,0,18,
3535  0,0,12,32,8,36,22,0,31,11,19,33,0,54,37,60,14,21,0,16,0,0,13,47,43,15,20,28,39,18,34,0,49,2,56,9,58,26,0,0,6,4,30,0,50,24,42,0,51,40,0,48,0,0,29,7,25,0,0,0,
3536  50,38,0,8,57,24,0,0,0,0,59,0,22,32,13,0,0,41,27,47,25,43,6,0,14,10,0,2,26,0,44,29,0,7,52,42,45,46,0,31,18,54,17,21,34,60,0,9,20,0,0,0,23,12,1,40,0,11,3,19,
3537  15,50,4,54,51,23,47,0,0,28,18,7,46,58,0,0,26,17,9,11,60,0,0,33,41,0,0,6,29,0,35,0,37,1,0,14,0,59,0,0,12,2,3,0,0,21,53,10,39,45,49,31,0,25,43,5,13,19,24,0,
3538  57,44,0,0,19,30,0,0,36,0,58,13,0,0,1,17,22,23,0,6,0,10,26,21,9,20,59,8,25,7,16,0,53,31,0,3,0,27,0,46,0,0,2,49,4,56,14,52,0,42,40,24,28,32,60,0,55,43,5,0,
3539  0,40,53,29,33,1,26,27,20,0,52,0,24,50,42,39,16,38,43,0,46,8,4,15,0,21,14,0,5,48,41,0,18,0,35,17,55,0,49,0,0,57,0,0,54,51,58,2,0,60,0,22,45,0,0,0,36,31,34,11,
3540  22,33,50,0,15,51,0,10,43,36,17,53,19,6,25,0,47,0,60,54,0,0,0,4,0,3,23,1,2,56,57,14,0,0,39,0,41,0,18,0,16,28,38,11,8,45,0,0,0,9,27,0,7,0,31,49,26,44,30,55,
3541  2,54,0,20,0,40,31,11,0,0,0,0,0,29,7,25,19,52,35,49,48,0,28,6,5,23,24,3,16,8,15,0,41,34,36,37,47,0,4,26,0,17,53,14,55,13,43,0,50,32,44,0,57,0,0,0,0,0,59,58,
3542  25,42,39,11,38,56,1,45,0,60,30,0,54,8,0,0,55,6,49,41,15,24,0,0,3,12,16,20,13,0,0,0,0,50,48,21,0,40,53,18,27,7,10,31,46,0,52,0,0,0,0,44,0,58,0,47,35,59,17,32,
3543  0,19,0,21,43,7,39,0,29,12,42,54,2,0,0,31,34,55,37,33,1,59,0,0,44,0,3,11,4,0,0,27,36,0,18,30,0,0,32,13,0,35,58,40,28,0,5,45,0,41,53,57,20,16,0,52,17,0,8,10,
3544  0,13,27,25,59,14,0,22,16,49,20,46,0,60,47,0,54,44,40,0,0,0,35,2,51,36,18,0,0,26,53,12,0,0,7,39,4,0,3,0,21,34,28,0,45,15,0,0,33,6,11,19,0,38,32,56,52,0,29,31,
3545  7,0,0,0,0,34,46,0,56,44,41,26,40,20,60,21,57,36,32,25,0,42,19,45,0,58,48,0,0,50,0,6,55,30,24,31,51,39,12,0,0,0,4,3,23,35,15,59,29,0,52,5,1,53,0,43,0,49,0,0,
3546  0,0,59,42,45,6,37,39,1,0,31,32,12,47,0,52,18,0,0,38,36,17,10,0,20,44,46,33,51,0,0,7,0,0,15,23,29,58,14,35,57,8,0,34,0,0,49,13,11,54,0,40,0,0,55,0,16,4,22,9,
3547  0,36,60,16,22,3,0,0,55,24,0,51,50,33,11,0,0,35,7,2,57,38,47,34,59,0,40,12,9,0,19,0,0,0,14,48,0,0,0,30,52,26,37,0,25,6,44,58,49,31,0,8,0,46,20,32,29,56,0,13,
3548  0,0,21,38,0,19,4,56,25,0,0,49,53,31,17,32,42,0,0,50,24,34,18,29,33,0,8,0,0,35,0,23,0,0,26,5,0,57,10,9,28,40,0,45,22,39,59,11,0,15,0,54,0,37,46,36,27,1,6,20,
3549  16,7,25,55,0,32,50,6,33,0,0,0,52,37,14,0,29,12,5,8,28,11,44,48,0,2,0,49,10,3,0,0,20,17,13,36,0,30,0,19,60,0,0,58,40,41,0,35,54,34,46,27,18,22,0,59,0,0,0,4,
3550  53,20,32,34,0,43,57,42,0,0,0,36,9,0,30,56,48,11,58,0,0,0,0,51,0,13,47,0,44,1,52,41,54,29,16,46,35,14,17,21,0,0,26,0,5,37,6,0,40,0,0,7,31,8,19,0,2,45,4,3,
3551  14,0,7,58,0,0,18,24,0,43,0,42,56,45,59,28,0,1,33,35,55,52,0,0,50,0,34,17,0,39,49,40,22,3,10,54,21,16,0,38,0,53,0,44,37,0,47,48,31,0,13,2,0,6,4,15,8,36,0,0,
3552  0,5,0,0,41,0,40,16,0,15,24,11,44,0,0,45,30,0,38,53,27,14,1,0,49,39,0,32,3,21,25,0,29,0,0,7,46,52,57,2,51,0,31,47,20,59,18,0,12,10,50,0,6,55,34,0,43,37,0,48,
3553  4,0,41,43,7,0,0,60,26,5,8,58,0,44,20,9,0,0,22,27,0,54,0,14,0,56,2,0,33,47,13,19,59,6,0,18,57,0,0,3,0,25,29,30,0,0,0,0,23,37,24,35,17,31,39,53,12,28,15,42,
3554  0,29,5,10,46,12,11,55,4,0,21,16,32,0,45,35,1,60,2,57,58,0,37,44,28,17,50,0,0,0,0,39,15,0,9,0,14,31,7,49,0,41,0,0,0,36,54,27,30,33,38,26,59,0,0,0,56,34,20,0,
3555  0,0,0,0,0,47,16,40,0,0,43,2,58,0,0,11,49,29,13,9,31,48,52,0,27,0,0,18,0,41,6,26,50,44,0,15,59,36,28,33,55,0,12,51,3,34,7,53,32,8,39,30,10,0,0,22,14,46,0,5,
3556  40,51,58,15,26,0,6,29,24,0,55,0,59,41,0,53,0,5,36,7,0,57,54,0,0,18,1,0,0,0,37,45,16,33,0,25,27,0,8,0,0,21,56,0,35,20,9,34,60,0,22,28,3,43,38,17,48,0,49,47,
3557  30,0,0,35,42,0,34,19,11,50,60,31,47,15,56,36,53,49,4,10,54,1,21,27,7,9,0,22,48,24,39,0,14,0,57,0,0,0,23,58,0,59,8,2,0,17,28,0,0,0,41,20,16,0,12,38,0,33,0,0,
3558  18,0,2,51,52,0,23,0,14,0,0,57,28,0,22,1,25,0,0,0,17,4,43,0,12,53,30,39,6,16,3,48,42,56,0,0,7,41,45,0,29,10,0,26,31,38,0,0,59,50,19,15,58,0,24,46,0,35,13,37,
3559  39,32,19,60,49,0,52,18,44,4,0,0,15,46,40,23,0,31,29,14,2,0,7,25,10,0,11,0,1,0,5,42,0,53,50,47,37,0,6,0,8,51,0,57,0,12,36,22,56,0,3,0,26,21,0,13,0,16,9,0,
3560  10,41,24,4,37,28,0,31,59,2,0,25,0,5,26,55,0,7,0,0,20,0,30,0,0,48,0,0,34,17,47,38,44,0,53,58,0,13,0,22,0,6,46,8,14,54,3,0,52,43,9,12,27,18,0,0,23,57,40,49,
3561  28,18,11,6,0,44,9,15,32,19,53,38,0,0,51,37,7,2,20,0,10,16,50,55,48,0,0,24,31,0,0,36,0,41,46,0,54,12,0,29,49,0,0,5,0,0,17,0,43,23,0,0,47,56,57,60,45,8,33,26,
3562  17,34,0,53,0,16,33,3,0,37,0,10,27,4,46,0,40,15,18,44,0,29,0,58,0,52,55,23,56,19,0,43,9,0,0,41,0,50,47,8,11,31,32,39,21,28,20,0,0,0,5,0,0,49,35,57,6,38,7,0,
3563  46,43,0,40,30,39,13,0,45,21,56,35,0,10,27,26,59,18,19,28,0,55,3,17,4,0,5,0,52,0,38,20,32,0,12,60,23,0,0,53,0,24,0,41,0,7,0,1,0,48,57,0,8,33,9,51,22,58,0,0,
3564  0,2,0,14,0,26,0,50,12,22,0,0,55,57,0,44,35,53,25,19,0,56,24,0,0,5,4,48,43,58,60,0,51,49,0,59,42,28,1,0,0,32,41,54,0,30,27,15,36,7,23,0,38,52,0,20,0,6,37,39,
3565  0,0,0,7,25,50,0,43,2,10,0,27,0,0,23,57,0,0,3,0,6,13,14,54,60,0,44,59,0,53,8,46,0,9,0,52,32,20,0,41,24,58,45,29,11,0,48,38,22,0,31,49,5,28,51,0,15,17,42,21,
3566  0,0,42,28,44,15,20,0,58,33,0,60,7,48,2,0,9,56,51,13,26,39,57,46,0,14,12,0,0,49,55,8,0,22,30,0,31,29,0,0,3,0,34,0,0,11,1,43,0,25,0,21,32,24,0,18,41,40,16,50,
3567  58,22,23,39,10,0,0,25,57,7,44,5,0,30,0,0,12,50,0,20,0,49,0,0,2,16,41,46,60,40,43,13,48,38,19,56,0,42,0,52,54,14,33,0,9,47,0,6,28,0,0,32,11,34,37,0,0,0,36,45,
3568  0,37,20,0,6,0,28,54,53,27,0,41,0,17,0,47,45,4,23,43,51,9,46,0,0,60,39,0,0,42,0,34,12,16,0,0,13,33,56,11,5,52,59,35,0,48,0,29,2,21,1,3,15,0,40,44,0,0,18,22,
3569  29,15,26,0,54,21,30,0,41,0,36,48,4,0,0,0,43,0,0,22,56,47,23,49,58,50,0,25,11,46,20,28,0,12,59,0,0,17,38,6,14,0,40,16,60,55,45,8,57,13,51,34,0,1,27,35,0,0,0,0,
3570  56,47,43,0,32,52,5,0,9,0,29,18,16,34,41,0,46,0,0,0,13,6,22,12,0,0,36,57,58,30,31,0,26,60,0,33,17,44,37,42,39,11,0,0,0,25,2,55,1,19,14,51,21,35,50,23,0,0,0,0
3571  };
3572 
3573  const int d60_1152_bal[] = {
3574  // Size: 60 x 60
3575  60,
3576  // Pre-assigned fields
3577  8,14,44,0,35,25,0,26,0,6,57,0,41,7,0,40,0,0,31,36,50,0,0,52,38,49,0,56,37,51,24,58,45,59,1,0,15,9,34,43,47,22,16,33,18,19,39,0,10,0,42,0,54,0,0,0,28,23,0,0,
3578  0,0,17,9,0,0,0,0,3,0,25,55,38,59,16,43,0,14,57,26,0,2,48,13,15,7,0,10,45,0,18,22,11,0,0,29,6,53,0,54,36,46,0,50,58,1,35,33,37,20,47,41,0,23,44,0,21,0,56,0,
3579  59,45,18,44,58,11,0,41,28,0,26,23,0,0,3,49,0,57,1,48,7,0,31,43,0,37,9,54,38,0,0,0,10,39,0,22,60,25,24,0,50,0,0,42,47,0,32,0,0,16,12,0,33,30,13,0,34,20,46,0,
3580  1,12,0,46,20,0,41,0,34,26,0,21,3,13,0,19,23,0,0,56,0,36,0,22,31,27,0,42,30,32,48,2,0,43,8,55,0,24,15,37,58,16,9,7,0,0,51,18,0,0,59,10,39,14,0,0,5,60,57,0,
3581  35,0,10,0,31,0,0,0,0,34,0,15,5,25,38,46,33,0,21,29,53,37,11,0,36,32,27,58,41,0,51,50,43,48,3,13,24,0,0,28,40,18,20,1,19,0,23,16,14,0,0,0,12,0,7,0,49,30,52,0,
3582  45,10,0,27,0,59,14,48,6,0,37,17,0,52,31,3,51,0,0,0,0,53,36,0,8,26,33,29,42,5,28,54,23,21,0,0,50,19,0,47,0,55,0,0,0,46,11,0,0,22,32,60,13,40,2,39,0,9,0,34,
3583  27,0,16,0,23,37,8,14,0,0,0,30,51,9,50,20,36,0,6,0,12,25,17,57,22,0,58,13,59,38,1,60,52,4,43,2,0,15,0,40,31,49,44,32,10,0,29,47,24,53,0,0,0,42,5,0,0,0,0,0,
3584  0,24,0,0,18,38,49,0,7,13,15,22,43,36,33,0,52,16,0,45,21,44,8,0,0,54,0,26,0,0,0,11,0,57,47,35,28,55,5,25,34,29,0,46,53,9,56,42,0,0,60,37,48,17,0,31,0,51,0,40,
3585  0,60,0,0,29,53,32,33,0,54,22,52,37,24,5,6,2,0,55,0,8,0,0,0,56,1,45,0,57,10,30,47,28,0,38,16,11,0,31,4,59,19,35,0,13,0,0,49,44,18,43,46,41,39,0,34,7,0,0,0,
3586  0,0,37,13,55,0,10,0,0,8,0,0,0,18,0,22,15,0,45,42,34,7,39,3,0,33,0,0,27,6,23,44,0,0,0,49,9,51,41,17,0,1,0,28,0,16,46,36,58,0,20,11,29,2,14,19,50,54,38,35,
3587  31,0,0,0,0,29,15,0,21,57,38,39,0,35,10,8,3,33,14,0,0,0,20,30,0,0,60,0,0,9,0,52,0,54,25,45,12,49,0,0,4,5,42,22,24,58,19,37,34,44,36,0,56,51,28,50,18,26,0,23,
3588  0,58,36,50,17,13,0,0,0,29,39,4,0,27,57,41,0,0,8,32,37,5,42,0,23,0,43,31,21,20,0,53,46,11,55,44,33,38,25,15,0,0,19,0,0,3,0,7,0,0,34,0,0,54,52,14,30,18,10,1,
3589  54,0,28,31,4,0,0,21,23,16,47,20,48,11,0,0,0,0,34,30,14,0,2,0,29,46,26,35,12,0,10,49,27,0,0,43,0,8,40,0,22,56,51,19,44,0,0,0,17,39,0,25,60,15,41,45,0,50,1,52,
3590  38,57,0,26,0,27,0,30,8,46,7,0,0,56,0,58,0,48,11,0,39,31,45,23,32,34,22,0,54,29,17,0,0,10,37,12,40,0,52,36,53,33,15,18,0,49,0,20,47,0,4,14,0,0,16,24,42,0,0,59,
3591  49,0,15,45,0,0,35,51,10,0,4,29,23,0,12,33,44,0,28,0,43,40,0,1,37,22,0,50,7,57,46,0,25,47,41,0,0,32,0,39,0,3,54,13,0,31,0,0,8,58,55,16,0,59,26,2,20,0,48,14,
3592  26,48,40,2,11,10,51,52,17,0,9,0,36,0,32,0,0,20,39,0,29,58,53,24,0,6,31,0,0,44,0,0,1,45,21,28,25,0,54,0,0,23,13,4,56,22,0,5,15,0,16,42,0,19,0,33,46,0,60,30,
3593  19,8,0,56,48,0,60,46,13,17,54,34,29,14,58,0,31,0,0,18,35,20,0,11,0,0,25,38,32,28,0,0,30,0,23,50,49,0,9,5,0,0,39,37,0,44,0,51,7,0,0,4,22,57,0,6,47,21,26,53,
3594  0,6,0,52,0,4,0,17,19,41,32,50,20,0,9,27,24,13,0,31,22,18,5,35,11,57,29,0,15,0,56,30,3,55,51,40,38,0,58,60,23,37,0,0,1,0,25,28,0,49,0,45,46,0,0,0,0,0,14,0,
3595  0,27,3,0,5,49,0,58,47,0,6,14,18,26,15,2,60,46,52,40,44,35,55,10,17,29,7,0,22,11,0,0,0,0,31,34,0,0,36,24,20,0,21,0,57,4,0,19,9,0,0,23,0,50,30,0,59,32,51,0,
3596  6,0,47,37,53,22,19,0,52,58,46,24,14,2,21,51,0,42,17,0,23,0,0,39,26,31,54,0,49,0,27,0,40,5,44,1,0,0,13,7,48,43,11,60,16,32,0,0,0,36,29,0,35,0,0,30,0,12,50,0,
3597  0,17,14,5,50,0,0,57,39,20,0,1,10,0,0,24,41,34,46,60,47,23,0,31,54,35,56,0,0,0,21,0,19,0,22,11,52,0,29,51,45,42,55,0,0,0,33,0,26,59,0,36,30,0,8,58,32,3,43,28,
3598  0,0,0,49,0,0,54,20,0,51,40,0,26,0,19,50,0,28,59,52,45,15,12,60,16,0,17,0,46,34,22,0,0,0,6,10,0,47,33,0,7,44,1,43,27,23,0,31,55,35,21,9,37,0,36,0,0,13,58,29,
3599  43,39,46,23,13,54,7,0,0,0,14,0,49,38,55,0,8,58,16,51,5,45,59,37,0,41,42,9,0,0,40,31,17,0,0,0,48,0,60,0,26,20,6,56,0,57,0,44,21,0,18,52,36,0,10,0,3,29,0,12,
3600  5,49,45,33,40,0,25,0,15,0,27,59,34,0,4,30,13,51,0,39,11,60,0,0,55,47,0,21,28,12,0,0,35,0,54,8,1,0,20,0,2,38,0,53,6,10,57,26,46,17,58,0,19,3,0,48,9,0,0,0,
3601  3,1,12,0,8,0,22,0,31,0,19,33,35,0,37,60,14,0,0,16,38,0,0,47,0,0,20,0,39,0,34,57,0,2,56,9,58,26,59,0,6,0,30,52,50,0,42,17,51,40,0,48,53,10,29,7,25,0,23,46,
3602  0,38,35,0,57,0,0,28,49,55,59,0,22,32,13,48,58,41,27,0,25,43,6,5,0,0,51,0,26,4,44,29,0,0,0,0,0,0,16,0,18,54,17,21,34,0,30,9,20,56,15,0,23,12,1,40,33,11,3,0,
3603  0,50,4,0,51,0,47,34,38,28,18,7,46,58,0,16,26,17,9,0,0,22,40,33,0,55,32,6,29,0,0,56,0,1,42,14,20,0,44,0,12,0,3,0,30,21,53,10,39,45,49,0,52,0,0,0,13,0,0,8,
3604  57,44,0,47,19,30,29,12,0,0,0,13,11,51,1,17,22,23,48,0,0,0,26,0,9,20,59,0,25,0,0,35,53,31,45,3,34,0,0,46,0,15,2,49,4,56,14,52,0,42,0,24,28,32,60,37,0,43,0,0,
3605  13,40,0,29,0,1,26,27,20,47,0,0,0,50,42,39,0,38,0,12,46,8,0,15,30,0,14,7,5,48,41,3,18,28,0,0,0,23,0,0,0,57,25,59,54,51,58,0,19,60,0,22,45,0,56,9,36,31,0,11,
3606  22,33,50,24,15,0,0,10,43,0,17,53,19,0,0,29,47,37,0,0,52,0,34,4,42,3,23,0,0,56,57,14,13,32,0,20,41,21,18,59,16,28,38,0,0,45,12,0,35,9,27,0,0,5,0,0,26,0,30,55,
3607  0,54,0,20,0,40,31,11,46,0,33,45,42,29,0,25,19,52,0,49,0,12,28,6,5,23,24,3,0,0,15,21,41,34,0,37,0,56,0,26,0,0,53,14,0,13,43,39,0,32,44,38,57,9,18,27,0,0,0,58,
3608  25,42,39,11,38,56,1,0,5,60,0,19,54,0,34,14,55,6,0,41,15,24,33,0,3,0,0,20,13,22,26,9,0,50,48,0,0,0,53,0,0,0,0,0,46,43,52,57,4,29,37,44,0,0,23,47,35,0,17,32,
3609  24,19,22,21,43,7,39,38,29,0,42,54,0,49,6,31,0,55,37,0,1,59,0,0,0,51,0,11,4,0,0,0,36,46,0,30,56,60,32,13,0,35,0,40,0,14,5,45,0,41,53,57,0,16,0,52,17,25,8,0,
3610  9,13,27,0,59,0,17,22,16,49,20,46,0,0,0,0,54,0,40,55,0,50,35,2,51,36,0,5,24,26,53,0,57,58,0,39,0,37,0,1,21,34,28,0,45,15,8,0,33,6,11,19,43,0,32,0,0,41,0,31,
3611  0,0,38,0,28,34,46,13,56,0,41,26,0,20,0,0,0,36,32,25,9,0,0,45,18,0,48,0,8,0,33,0,55,30,24,31,51,39,12,0,17,47,4,0,23,0,0,59,29,0,52,5,1,53,54,43,0,49,27,2,
3612  21,28,0,42,45,6,37,39,1,56,31,32,12,47,0,0,18,0,26,38,0,0,0,0,0,44,46,33,0,0,2,7,0,25,15,23,0,58,14,35,0,8,5,34,48,27,49,0,11,54,30,40,50,0,55,0,0,0,22,9,
3613  0,36,60,16,22,3,42,53,55,24,10,0,50,0,11,15,0,35,7,0,57,38,0,0,59,43,40,12,9,45,19,0,5,27,14,0,0,54,39,0,52,0,37,0,25,0,44,58,0,31,28,0,0,46,20,0,29,56,0,13,
3614  0,0,21,38,3,19,4,56,25,0,12,49,53,0,0,0,0,43,47,50,24,0,18,0,33,0,0,51,55,35,0,23,60,13,26,5,2,57,10,9,0,0,0,45,22,39,59,11,41,0,48,54,44,0,0,36,27,1,6,0,
3615  16,0,25,55,56,32,0,6,33,42,1,47,0,37,14,38,29,0,0,8,0,11,44,48,57,0,53,0,0,3,9,24,20,0,0,36,43,30,21,0,60,0,23,58,40,41,26,0,54,0,0,27,18,22,0,59,51,39,0,0,
3616  53,0,32,0,0,43,0,42,22,59,23,0,0,28,30,56,0,11,58,24,18,33,49,0,39,0,47,0,0,1,0,0,54,0,16,46,35,14,17,21,15,0,26,0,5,37,0,60,40,12,25,7,31,0,19,10,2,45,0,3,
3617  14,26,7,0,0,0,18,24,0,43,0,0,0,45,59,0,32,1,33,35,0,0,60,19,0,25,34,17,0,39,49,40,22,3,10,0,0,16,30,38,0,53,0,44,37,29,0,48,0,46,13,0,9,6,0,15,8,36,11,51,
3618  0,5,8,36,0,60,0,0,0,15,24,0,44,0,0,0,30,22,0,53,0,14,0,9,49,0,35,32,0,21,25,17,29,19,58,0,46,52,57,0,51,13,31,47,20,0,18,4,0,10,50,56,6,55,34,26,43,0,54,48,
3619  0,46,0,0,0,48,21,60,26,5,0,0,0,44,0,9,10,32,0,27,49,54,51,14,0,56,0,52,0,47,13,19,59,6,11,18,57,34,0,0,38,0,29,30,36,0,16,0,23,37,24,35,0,31,0,53,12,28,15,42,
3620  0,29,5,10,46,12,0,55,0,18,0,16,32,0,45,35,1,0,2,57,58,0,37,44,28,17,0,19,40,52,42,39,0,23,9,51,14,0,0,49,25,0,0,0,0,36,54,0,30,33,38,0,0,13,53,8,0,34,20,6,
3621  20,0,0,57,24,47,16,40,0,25,0,2,58,0,0,0,49,29,0,9,31,48,52,0,27,4,0,18,35,41,6,26,0,44,0,15,59,36,0,33,55,60,0,51,3,34,0,53,0,0,0,30,10,45,42,22,0,46,21,5,
3622  40,51,58,0,26,46,0,29,0,23,0,0,59,41,39,53,11,5,36,7,0,57,54,0,13,18,1,30,0,31,37,0,16,33,0,25,27,10,0,0,0,21,56,0,35,20,9,34,0,0,0,28,3,43,38,0,48,52,49,0,
3623  30,3,52,35,0,0,34,19,11,50,0,31,47,15,56,0,0,49,0,10,54,1,0,27,7,9,6,22,48,24,0,18,0,0,57,0,44,5,0,58,46,59,0,0,32,17,28,0,0,51,41,20,16,0,12,38,0,33,0,0,
3624  18,9,2,0,0,0,23,47,14,40,49,0,28,21,22,0,0,8,44,5,17,0,0,20,12,53,30,39,6,16,0,48,42,56,27,0,7,0,0,34,29,10,60,0,31,0,55,0,59,0,0,0,58,36,24,46,11,0,13,37,
3625  39,32,19,60,49,55,52,18,44,0,0,0,15,46,40,23,27,0,29,14,2,30,7,25,10,0,0,45,0,54,5,0,34,53,0,47,0,35,6,20,8,0,0,0,59,0,0,0,56,38,0,0,26,21,0,13,58,16,9,41,
3626  10,0,0,4,37,28,0,0,0,2,0,25,39,5,0,0,56,7,50,21,0,51,30,16,0,48,15,60,0,17,0,0,0,0,53,0,0,13,42,22,1,6,46,8,14,54,3,32,52,43,9,12,0,0,33,29,0,57,40,49,
3627  28,18,0,6,34,44,9,0,0,19,0,38,0,42,51,0,7,2,20,59,10,0,50,0,48,40,21,24,31,25,14,36,58,41,0,0,54,12,27,29,0,0,22,5,0,0,0,3,0,23,35,13,0,56,0,60,45,8,33,0,
3628  17,0,0,53,14,16,33,3,0,37,51,10,27,0,46,0,40,15,18,44,59,0,25,0,45,52,55,23,56,0,12,43,9,26,0,0,0,0,47,8,11,0,0,39,21,0,20,0,42,2,5,1,0,49,35,57,0,38,7,0,
3629  46,43,31,0,0,0,13,36,45,21,56,0,0,10,27,26,59,18,19,0,0,0,3,17,4,0,0,15,52,14,38,20,32,0,12,60,23,11,0,53,44,24,0,0,0,7,34,1,6,0,57,0,8,0,9,51,0,58,47,54,
3630  11,2,29,14,9,26,3,50,0,0,16,0,55,57,8,44,35,0,25,0,0,56,24,18,0,5,0,48,0,58,0,10,0,0,0,59,42,28,1,0,13,32,0,54,0,0,27,15,36,0,23,47,38,52,21,0,31,6,37,39,
3631  47,35,30,0,25,50,55,43,2,0,34,27,0,12,23,0,37,0,3,4,6,0,0,54,60,19,44,0,36,0,0,0,0,0,40,52,32,20,26,41,0,58,45,29,0,18,48,38,22,1,0,0,5,28,0,16,0,17,42,21,
3632  37,0,42,0,0,15,20,0,0,33,45,60,7,48,2,5,9,56,51,0,0,0,57,46,0,0,12,27,0,49,55,8,47,22,30,0,31,29,35,10,0,0,0,23,52,11,0,43,0,25,0,21,0,24,59,18,41,40,16,50,
3633  58,0,0,39,10,35,27,25,57,7,0,5,17,0,18,4,12,50,0,0,0,49,0,59,0,16,41,0,0,0,43,13,48,0,0,0,0,42,51,52,54,14,33,55,9,47,31,6,28,24,26,32,11,34,0,21,1,0,0,45,
3634  55,37,20,30,0,58,0,0,53,27,0,41,0,0,0,47,0,4,0,43,0,9,46,8,0,60,39,36,14,42,0,34,12,16,49,57,13,33,56,11,0,52,0,35,0,48,10,0,2,21,0,3,0,0,40,0,19,7,18,22,
3635  0,15,0,18,0,21,30,0,41,31,36,48,0,19,0,0,0,3,10,22,56,47,23,0,58,0,0,25,11,46,20,28,0,12,59,0,39,17,0,6,14,9,40,16,60,55,0,0,0,13,51,34,0,1,27,0,24,0,32,7,
3636  56,0,43,48,32,52,5,0,0,38,29,0,16,34,41,54,0,59,0,0,13,6,22,12,24,0,0,57,58,30,0,4,26,60,28,0,17,0,0,42,39,0,49,20,0,25,2,55,1,19,0,0,21,35,50,0,40,0,45,27
3637  };
3638 
3639  const int d60_1440[] = {
3640  // Size: 60 x 60
3641  60,
3642  // Pre-assigned fields
3643  0,14,44,0,35,0,2,26,48,0,0,0,41,0,0,40,0,30,31,36,50,0,32,52,0,0,0,56,37,51,0,58,45,0,1,0,0,0,34,43,47,22,16,33,18,19,0,46,10,0,0,17,0,20,11,4,0,23,53,0,
3644  34,31,0,9,39,8,12,0,3,0,0,55,38,59,0,43,0,14,57,0,0,0,0,13,0,0,49,10,45,60,0,22,0,0,0,0,6,53,19,0,0,46,0,50,0,0,35,0,37,0,0,41,40,23,0,28,21,0,56,0,
3645  59,0,0,44,0,11,53,41,28,35,26,0,0,0,3,0,17,0,1,48,0,19,0,43,21,37,0,54,38,36,4,51,10,39,29,22,60,0,24,56,50,27,52,0,47,0,32,14,0,16,12,0,33,30,0,55,34,20,0,15,
3646  0,0,33,46,20,17,41,49,34,0,0,21,3,0,44,19,23,47,54,0,40,36,38,0,31,0,28,42,30,32,0,2,4,43,8,55,53,24,0,0,0,16,0,7,29,0,0,18,45,52,0,10,0,14,6,11,0,0,57,0,
3647  0,4,0,59,31,0,56,9,0,0,2,0,5,25,38,46,33,45,21,29,53,0,11,0,36,32,27,58,41,0,0,50,0,48,3,0,24,6,0,28,40,0,20,1,19,8,23,16,0,26,17,39,0,0,0,54,49,0,52,44,
3648  0,10,49,27,16,0,0,48,0,0,0,17,0,52,31,0,51,24,56,0,0,53,0,7,0,26,0,29,0,5,28,54,0,0,20,38,0,19,43,47,30,55,18,0,12,46,11,41,25,0,32,60,13,0,0,0,44,9,35,34,
3649  27,21,0,19,23,37,0,14,35,0,3,30,51,9,50,20,36,54,6,0,12,25,17,57,22,11,58,13,59,0,1,60,0,0,0,2,26,0,0,40,31,49,44,0,10,0,0,47,0,53,7,18,0,42,5,0,0,48,0,56,
3650  32,24,0,0,18,38,49,0,7,0,15,0,0,0,33,12,0,0,0,45,0,44,8,50,19,0,0,26,0,2,59,0,6,0,0,35,0,55,0,25,34,0,14,46,0,0,0,0,27,3,0,37,48,17,58,31,0,0,39,40,
3651  51,0,9,3,29,0,0,33,0,0,0,0,0,24,0,0,0,0,0,23,8,26,0,36,0,1,0,14,0,0,0,47,28,20,38,16,0,48,0,4,0,19,35,27,13,42,21,49,44,0,43,46,41,0,0,0,7,15,12,0,
3652  0,56,37,0,55,5,10,59,40,0,0,12,21,18,0,0,15,0,45,0,34,0,0,0,0,33,0,0,0,6,23,44,0,0,4,49,9,51,0,17,32,1,24,0,26,0,46,0,0,0,0,0,0,2,14,0,50,0,38,35,
3653  31,55,13,0,47,29,0,1,21,0,0,0,6,0,10,8,3,0,14,0,32,41,20,30,0,59,60,0,53,9,11,0,7,54,25,45,0,0,0,27,0,5,0,0,24,58,19,37,0,0,0,43,0,51,0,50,18,26,0,23,
3654  12,58,36,50,17,13,24,35,0,29,39,0,0,27,57,0,6,0,8,0,37,0,0,0,23,28,0,0,21,20,45,0,0,0,0,44,33,38,25,0,0,48,19,9,2,0,22,7,0,0,34,59,49,54,52,14,30,0,10,1,
3655  54,0,28,0,0,42,0,21,23,0,47,20,48,11,0,0,38,9,34,30,0,32,2,53,29,46,26,35,0,0,0,49,27,18,0,43,0,0,40,55,0,56,51,0,0,5,0,24,17,0,6,25,60,15,0,0,0,0,1,0,
3656  38,0,6,26,60,0,44,30,0,46,7,0,0,0,35,58,28,0,11,1,39,0,0,23,32,34,0,0,54,0,17,55,21,0,37,0,0,3,0,0,0,33,0,18,51,49,50,0,0,5,0,0,0,0,16,0,0,0,19,0,
3657  49,52,15,0,0,0,35,0,10,9,0,0,0,0,0,0,44,0,0,17,43,0,0,0,37,22,0,0,7,0,0,0,25,47,0,6,0,32,11,39,19,0,54,13,42,31,60,21,0,58,0,16,34,0,0,2,0,0,48,14,
3658  26,48,0,0,11,0,0,52,0,3,9,8,36,0,32,0,0,0,39,37,0,0,0,0,34,6,0,41,47,44,0,59,1,0,21,0,0,43,54,12,35,0,0,4,0,22,38,0,0,0,0,0,14,0,49,0,46,27,60,0,
3659  0,8,55,0,0,2,60,46,13,17,0,34,29,14,58,59,31,10,0,0,35,20,16,11,52,0,0,38,0,28,0,15,30,42,23,50,0,1,0,5,43,0,0,37,0,44,0,51,0,27,33,0,0,57,3,0,47,21,26,53,
3660  0,6,0,52,21,4,0,0,19,0,32,50,20,39,0,0,24,13,12,0,22,18,5,35,11,57,29,44,0,33,56,0,3,55,51,40,38,2,58,60,23,37,0,0,1,26,0,0,53,49,8,45,0,7,0,42,0,47,0,16,
3661  0,27,3,1,0,49,43,58,47,48,0,14,18,26,15,2,0,46,0,40,0,0,55,10,17,0,7,0,22,11,0,37,0,0,31,34,0,0,36,0,0,0,0,25,0,0,13,19,9,28,56,0,42,0,0,0,59,32,0,33,
3662  6,0,0,37,53,22,0,8,52,0,46,24,14,2,0,0,20,42,17,15,23,0,9,0,26,31,54,34,0,0,27,0,40,5,0,0,10,18,0,7,48,0,11,60,0,0,41,56,3,36,29,55,35,4,0,30,38,0,50,57,
3663  44,0,0,0,0,0,38,0,0,20,13,1,10,0,49,0,41,0,46,60,47,23,0,31,54,35,56,40,0,0,21,0,19,15,22,11,0,0,29,51,45,0,0,0,7,0,33,12,26,59,2,36,30,48,8,58,0,0,0,0,
3664  42,30,57,49,0,41,54,20,18,0,40,0,0,0,19,50,0,28,0,52,0,0,12,0,16,38,0,4,0,34,0,0,8,14,0,10,0,47,33,48,7,44,0,0,27,23,24,31,55,35,21,9,0,11,0,25,53,13,58,0,
3665  0,0,46,0,13,0,7,2,0,53,14,0,49,38,55,0,0,58,0,0,5,45,0,37,47,41,42,9,19,0,40,0,0,0,0,0,0,22,60,0,0,0,6,56,0,57,0,0,0,11,0,52,0,27,0,1,0,0,25,12,
3666  5,49,45,33,0,31,0,37,15,32,0,0,34,43,0,0,0,0,42,0,0,60,0,0,55,0,52,0,0,12,0,0,0,0,54,8,1,7,20,23,0,38,36,0,0,0,57,26,46,17,0,50,19,3,22,0,9,14,44,0,
3667  3,1,12,32,8,0,0,0,31,0,19,0,35,0,0,60,14,0,41,0,38,0,0,47,43,15,20,0,39,0,0,0,49,2,0,9,0,26,0,0,0,4,0,0,0,0,42,17,51,40,45,48,53,10,29,7,25,55,23,0,
3668  0,38,35,8,57,24,36,28,0,55,59,37,22,32,0,48,0,41,27,47,25,43,6,5,0,0,0,2,0,4,44,29,0,0,0,42,45,46,16,0,18,54,0,21,0,60,30,9,20,0,0,0,23,12,0,40,33,11,0,19,
3669  0,0,0,0,51,0,0,34,38,28,0,0,46,58,48,16,26,17,0,11,60,22,40,0,0,0,32,6,29,0,0,56,0,1,42,0,20,59,0,0,0,0,3,36,0,0,0,0,39,0,0,31,52,25,43,5,13,19,0,8,
3670  57,44,54,0,19,30,29,0,36,0,58,0,0,51,0,17,0,23,48,6,41,10,0,21,0,20,0,8,25,7,16,35,53,0,45,0,34,27,50,0,33,15,0,49,0,56,0,0,0,42,0,24,0,0,0,0,55,0,0,38,
3671  0,40,53,29,33,1,26,27,0,47,0,6,0,50,42,0,16,0,43,12,0,0,0,0,0,0,0,0,5,0,0,3,18,28,35,17,55,23,49,32,37,57,25,59,0,0,58,0,19,60,10,0,0,44,0,9,0,31,34,11,
3672  0,33,50,0,0,0,48,10,43,36,17,53,0,0,0,29,0,0,60,54,52,0,0,4,42,0,23,0,2,0,0,0,0,0,39,20,0,21,0,59,0,28,38,0,0,45,12,0,0,9,0,0,7,0,31,0,26,44,30,0,
3673  2,54,51,20,1,40,31,0,0,30,0,45,0,29,7,0,19,52,35,0,0,0,0,0,5,23,24,0,0,8,15,21,41,0,0,0,47,56,4,26,0,0,53,0,55,0,43,39,0,32,44,0,57,9,18,0,60,22,59,58,
3674  25,0,0,0,0,0,1,45,5,0,30,0,0,0,34,0,55,6,0,0,15,24,33,28,0,0,0,0,13,22,0,9,0,50,0,21,0,0,0,0,0,7,10,0,46,43,0,57,4,0,37,44,51,58,23,47,35,0,17,32,
3675  0,0,22,21,43,0,39,0,29,12,42,0,2,49,0,31,0,55,37,33,1,0,15,26,44,0,0,11,4,0,50,27,36,46,18,30,0,0,32,0,0,35,58,40,0,14,5,45,48,0,0,0,20,16,47,52,17,25,8,0,
3676  9,13,27,0,59,0,0,0,16,49,20,46,0,0,47,10,0,0,0,55,42,50,35,0,0,36,0,5,24,0,0,0,57,58,7,0,0,0,3,0,21,34,28,48,45,15,8,23,33,0,0,0,43,0,32,56,0,0,29,31,
3677  0,11,38,22,0,34,46,13,56,0,41,0,40,20,60,21,0,36,0,0,9,0,0,45,18,58,48,0,0,0,33,0,0,30,24,0,51,39,12,16,0,47,0,0,0,0,15,59,29,14,0,5,1,0,54,43,10,0,27,0,
3678  21,28,0,42,0,6,37,0,0,0,31,32,0,0,0,0,0,19,0,38,0,17,10,0,0,0,0,33,0,43,2,7,24,0,15,0,29,0,14,35,0,0,0,34,48,27,0,13,11,0,0,0,0,60,55,3,16,4,0,9,
3679  23,0,60,0,0,0,42,0,0,0,0,51,50,33,0,0,0,35,0,2,0,0,47,34,59,43,0,0,9,45,19,0,5,27,14,0,0,54,0,0,52,26,0,0,25,0,44,58,49,31,0,8,4,46,20,0,29,0,41,0,
3680  0,16,21,38,0,0,4,56,25,14,12,49,0,0,17,0,42,0,47,50,24,0,18,0,33,30,8,51,0,0,58,23,60,13,0,5,2,0,0,9,28,0,7,45,0,39,0,11,0,0,48,0,44,37,0,36,27,0,6,0,
3681  16,0,0,55,0,32,50,0,33,0,0,0,0,37,0,0,0,12,0,8,0,11,44,0,0,2,53,0,10,3,9,0,0,17,13,0,0,30,0,0,60,45,0,58,0,41,0,35,0,34,46,27,18,0,0,0,51,39,0,0,
3682  53,20,32,34,27,0,57,42,0,59,0,36,0,0,30,56,0,11,0,24,18,33,0,0,0,13,47,55,0,0,52,41,0,0,0,46,35,14,17,0,0,50,0,38,0,37,0,60,40,12,25,0,31,8,0,0,0,0,0,3,
3683  0,0,0,0,0,0,18,24,0,0,0,42,56,0,0,0,32,1,33,0,55,0,0,19,0,25,34,0,0,39,0,40,22,3,0,54,0,16,30,38,41,53,0,0,37,0,47,48,0,46,13,0,9,0,0,15,0,0,11,51,
3684  33,0,8,36,0,0,40,16,0,15,0,11,0,23,0,45,30,22,0,0,0,14,0,9,49,0,0,0,0,21,0,17,0,19,58,0,46,52,0,2,0,13,31,47,20,0,0,4,0,0,0,0,0,55,34,0,43,0,0,0,
3685  0,0,0,43,0,0,0,0,26,5,0,0,45,0,0,0,0,32,0,27,49,54,51,14,0,56,2,0,0,47,13,19,59,6,11,18,0,34,55,0,0,0,0,30,0,40,0,50,23,0,0,35,17,0,39,53,12,28,15,42,
3686  48,29,5,10,46,0,11,55,4,0,21,16,32,0,0,35,0,60,0,0,58,3,37,44,0,0,50,19,0,0,0,39,0,0,9,0,0,31,7,0,25,0,47,24,0,36,0,0,0,33,38,26,0,13,0,0,0,34,0,6,
3687  20,23,56,57,0,0,16,40,0,25,0,2,58,0,54,11,49,0,13,9,0,0,52,38,0,4,19,0,35,41,6,26,50,44,0,15,59,0,0,33,0,60,0,0,3,34,7,53,0,0,39,0,10,0,42,22,14,46,21,5,
3688  40,51,58,15,0,46,0,29,24,23,55,44,59,41,0,0,11,5,0,0,19,0,54,32,13,18,1,30,50,0,0,45,16,0,2,0,27,10,0,14,0,0,56,0,0,0,9,34,60,4,22,0,3,0,0,17,48,0,49,0,
3689  30,3,52,35,0,0,0,19,11,0,60,31,47,0,56,0,0,0,0,0,54,1,21,0,0,9,6,0,48,24,39,0,0,0,57,0,0,5,23,0,46,59,0,2,32,17,0,25,0,51,0,0,0,0,0,38,37,0,55,0,
3690  18,0,0,51,52,0,23,47,0,40,0,0,28,0,22,1,25,0,44,0,0,4,43,0,12,0,30,39,6,16,0,48,42,0,0,32,0,41,45,34,29,10,0,0,31,38,55,0,0,50,19,15,58,36,24,0,11,35,13,37,
3691  39,0,19,0,49,55,52,18,0,4,28,0,15,46,40,23,27,31,0,14,2,0,7,25,10,0,0,45,1,54,5,42,0,53,0,0,0,35,6,20,8,51,0,0,0,12,36,22,56,38,3,33,26,21,17,13,58,0,9,41,
3692  10,0,24,0,37,0,45,31,0,2,11,25,39,0,26,55,0,7,0,21,0,51,30,0,35,0,15,60,34,17,0,38,44,36,53,58,19,0,42,22,0,0,0,8,14,54,0,32,0,0,0,0,27,18,33,29,0,0,40,49,
3693  0,18,0,6,0,44,0,15,0,19,53,38,1,42,0,0,0,0,20,0,10,16,50,0,48,40,0,24,31,0,0,36,58,0,46,4,0,12,0,29,49,0,22,5,0,0,17,3,43,0,0,0,47,56,0,60,45,0,33,26,
3694  17,34,0,53,14,16,0,0,54,37,51,10,0,0,46,13,40,0,0,0,59,29,25,58,45,0,55,23,0,0,0,0,9,26,60,41,22,50,47,0,0,31,32,39,21,28,20,0,42,2,5,1,0,0,35,57,6,38,7,36,
3695  46,43,0,0,0,39,0,36,0,0,56,35,25,10,27,0,0,18,19,28,16,0,0,17,4,0,0,15,52,14,38,20,32,37,0,60,23,11,2,0,0,0,0,41,49,7,0,0,6,0,57,29,8,33,0,51,0,58,47,54,
3696  0,2,29,0,9,26,0,50,0,0,16,0,0,57,8,44,0,53,25,19,33,0,24,18,0,5,0,48,43,58,0,0,51,0,34,0,42,0,1,45,13,32,0,54,0,30,27,0,36,7,23,47,38,0,21,20,31,6,37,39,
3697  47,0,30,0,25,50,55,43,0,10,34,0,0,0,0,0,0,0,0,4,6,0,0,0,60,19,44,0,0,53,0,0,56,0,0,52,32,20,0,0,24,58,0,29,11,18,48,38,0,1,0,0,5,28,51,16,0,0,42,21,
3698  37,53,42,0,0,15,20,4,0,0,45,0,7,0,0,5,0,56,51,13,26,39,57,46,0,14,12,27,17,49,55,8,0,0,30,19,0,0,35,10,3,36,34,23,52,11,0,0,0,25,0,21,0,24,0,18,41,0,16,50,
3699  0,22,23,39,10,0,0,0,57,7,44,5,0,30,18,4,12,50,15,0,0,0,29,59,2,16,41,46,60,0,43,13,48,38,19,0,8,42,0,52,54,0,0,55,9,47,0,6,28,24,26,32,11,34,37,0,1,53,36,45,
3700  55,37,20,0,6,58,28,0,0,27,50,41,31,0,24,47,45,0,0,43,51,0,46,0,25,60,39,0,0,42,32,34,12,16,0,57,0,0,56,0,5,52,0,35,38,48,10,0,0,0,1,3,15,0,40,44,0,0,0,0,
3701  29,0,0,18,0,0,30,44,0,0,0,48,0,19,52,0,0,3,10,0,0,47,0,49,58,0,0,0,11,0,20,28,33,12,0,53,0,0,38,6,14,9,40,0,0,0,45,8,57,13,0,34,2,1,27,35,24,5,32,0,
3702  56,47,0,0,32,52,0,0,0,38,29,18,16,0,41,54,46,0,0,0,13,6,0,12,0,0,0,0,58,0,31,4,0,60,28,33,0,44,37,42,39,11,0,0,0,25,2,55,0,19,0,51,0,35,0,23,0,10,45,27
3703  };
3704 
3705  const int d60_1620[] = {
3706  // Size: 60 x 60
3707  60,
3708  // Pre-assigned fields
3709  0,14,0,12,0,25,0,0,48,6,57,3,41,0,29,40,0,0,0,0,50,21,32,0,38,49,13,56,0,0,0,58,45,59,0,0,0,0,0,0,47,0,0,0,18,19,39,46,10,55,42,17,0,20,11,4,0,23,0,60,
3710  0,31,0,9,39,8,12,0,0,0,25,55,38,59,0,0,4,0,57,0,30,2,48,0,0,7,49,0,0,60,0,0,11,0,5,29,0,0,19,0,36,0,27,0,58,0,35,33,0,20,47,41,40,23,44,0,21,0,0,24,
3711  59,45,18,0,0,11,53,0,0,35,26,0,8,0,3,49,17,57,0,48,7,19,31,0,0,0,0,0,38,36,0,0,10,0,29,22,60,25,0,0,0,27,0,0,47,0,32,14,0,16,12,6,0,0,0,55,0,20,0,0,
3712  1,0,0,46,20,17,41,49,0,26,0,21,0,0,0,19,23,47,0,0,0,36,38,0,0,0,28,42,0,32,48,0,0,43,8,55,0,0,15,37,0,16,0,0,29,0,51,0,0,52,0,10,0,0,0,11,0,60,57,0,
3713  0,4,10,59,0,57,0,0,60,34,0,0,5,25,38,0,33,0,0,29,53,0,0,42,36,0,27,0,41,0,51,50,0,48,3,13,24,6,22,28,40,18,20,1,19,8,23,16,14,26,17,39,12,47,0,54,49,30,52,0,
3714  0,10,49,0,0,59,0,48,6,1,0,17,57,0,31,3,51,0,56,0,4,53,36,7,8,26,0,29,0,5,28,0,23,21,20,38,50,19,43,0,30,0,0,0,12,46,0,41,0,22,0,60,0,40,0,39,44,0,35,34,
3715  0,0,16,19,0,37,8,0,35,45,3,30,0,0,0,0,0,0,0,34,0,25,0,57,22,0,58,0,0,38,0,0,52,4,0,2,0,15,0,0,0,49,0,0,10,33,29,47,24,53,0,0,55,0,0,0,0,48,28,56,
3716  0,24,1,0,18,38,0,0,0,13,15,22,43,36,0,12,52,16,30,0,21,44,8,50,0,0,10,26,20,2,59,0,0,0,0,0,28,55,5,25,34,29,14,46,53,0,0,0,0,3,60,37,0,17,58,31,4,0,39,40,
3717  51,60,9,3,0,53,32,0,0,54,22,52,37,24,5,0,0,40,55,0,0,0,58,0,56,0,0,0,57,0,30,47,0,20,38,0,0,48,31,4,0,19,0,0,0,0,21,49,44,18,43,0,0,39,25,0,7,15,0,17,
3718  60,56,37,0,0,5,0,0,40,0,0,12,0,18,43,0,15,0,45,42,34,0,39,3,53,0,57,0,0,0,0,44,31,52,0,0,0,0,0,17,32,0,24,28,26,16,0,0,58,0,20,11,0,0,0,19,50,0,38,35,
3719  31,55,13,0,47,29,0,0,0,0,38,0,6,35,10,0,0,0,14,46,0,0,20,30,40,0,60,0,0,9,11,0,0,0,25,45,0,0,48,0,4,0,0,22,24,0,19,0,34,0,36,43,0,51,28,50,18,26,0,0,
3720  0,58,0,0,0,0,24,0,0,29,39,4,60,0,0,0,6,26,8,0,37,0,42,40,0,28,43,31,21,20,45,53,0,0,0,44,0,38,0,15,56,48,19,9,0,0,22,7,0,0,34,59,0,0,0,14,30,18,0,0,
3721  54,59,28,31,0,0,0,21,23,16,47,0,48,0,36,7,38,0,34,0,14,0,2,53,29,0,26,35,12,13,10,49,27,0,33,43,3,8,0,0,0,0,0,19,44,5,0,24,17,39,6,0,60,0,41,0,0,50,0,52,
3722  38,0,0,26,0,0,44,30,8,46,7,0,13,56,35,0,28,48,11,1,0,0,45,23,32,0,0,43,0,29,0,55,0,0,0,12,40,0,52,36,53,33,15,0,0,49,50,20,47,0,4,0,0,41,16,24,0,2,19,59,
3723  49,52,0,45,36,18,0,0,10,9,4,0,0,53,0,33,44,27,0,17,43,40,0,0,37,0,0,0,7,57,46,0,25,0,0,6,0,32,0,39,0,3,0,13,42,31,60,21,0,58,0,16,34,59,26,2,20,0,0,0,
3724  26,0,40,2,11,0,0,52,17,3,0,8,36,0,32,0,0,20,0,0,29,58,0,0,0,6,0,41,47,44,7,59,1,0,0,0,0,43,54,0,0,23,0,0,56,22,0,5,0,0,0,0,14,19,49,33,46,0,60,0,
3725  19,0,0,56,0,2,0,46,13,17,54,0,0,0,58,59,31,0,24,0,0,20,0,11,52,45,0,0,32,0,0,15,30,42,23,50,49,1,0,5,43,12,39,0,41,0,40,51,7,27,33,4,0,0,0,6,47,0,0,53,
3726  0,0,0,0,21,0,59,0,19,0,32,50,20,39,0,27,24,0,12,0,0,0,5,35,0,57,0,0,0,33,56,30,3,0,51,40,38,0,0,0,0,37,43,10,1,0,25,0,0,49,8,0,46,7,48,0,54,0,14,16,
3727  41,27,0,1,0,0,0,58,47,48,6,0,0,0,0,0,60,46,52,0,44,35,55,0,17,0,7,53,0,11,0,37,38,8,0,34,16,0,36,0,0,0,21,25,57,4,0,19,9,28,0,0,0,50,0,0,59,32,0,33,
3728  0,25,47,0,53,0,0,8,52,58,0,24,14,2,0,0,0,42,0,15,23,0,0,0,0,31,0,0,0,59,0,33,40,5,44,0,0,0,0,7,48,43,0,0,16,32,41,0,0,0,29,55,35,4,45,30,38,12,0,0,
3729  0,0,0,5,0,9,38,0,39,20,13,0,0,0,0,0,0,34,0,0,47,23,0,0,54,35,0,40,0,0,0,0,0,0,22,11,52,4,29,51,0,42,0,0,7,53,33,12,0,0,2,0,0,0,8,58,32,0,0,28,
3730  42,0,57,0,0,41,54,0,18,0,0,56,26,0,19,50,0,28,59,0,45,15,12,0,16,0,0,0,0,34,22,0,0,14,0,10,5,47,33,48,7,44,0,43,27,23,0,31,55,35,0,9,37,11,36,0,0,0,0,29,
3731  0,0,46,0,0,54,7,0,0,53,0,0,49,0,55,0,0,58,16,0,0,45,0,37,0,41,42,9,0,0,40,31,17,35,0,0,0,22,0,0,26,20,0,56,0,57,0,0,0,11,0,0,0,27,10,0,3,29,25,0,
3732  5,49,0,33,0,0,0,37,0,32,27,59,34,43,4,0,0,51,42,39,11,60,41,0,55,0,0,0,0,0,0,16,0,0,54,8,0,0,20,0,2,0,36,53,6,10,57,0,46,0,0,0,0,0,0,48,0,14,44,18,
3733  3,1,12,32,0,36,0,0,0,0,0,33,35,54,37,0,0,0,0,0,0,27,13,47,0,0,0,28,0,18,0,57,0,0,0,0,0,26,59,44,6,0,30,52,50,24,0,0,0,40,45,48,0,0,0,7,0,55,23,46,
3734  50,0,0,8,57,24,0,0,49,55,0,0,22,32,13,48,0,41,27,47,25,43,0,5,0,10,51,2,26,0,44,0,39,7,52,0,45,0,16,31,0,0,0,21,0,60,30,0,20,56,0,53,23,12,1,40,0,0,3,19,
3735  15,50,4,0,51,0,0,34,0,28,18,0,46,58,0,0,0,17,9,0,60,0,0,0,0,0,32,0,29,27,0,56,0,1,0,14,20,59,0,0,0,0,3,0,30,21,53,0,0,45,49,0,0,0,43,5,13,19,0,0,
3736  57,44,54,0,19,30,0,12,36,39,58,13,0,0,1,17,22,0,48,6,0,10,0,0,9,20,59,8,25,7,0,0,0,31,45,0,34,27,0,46,0,0,0,0,4,0,14,52,18,42,0,24,0,32,60,37,55,43,5,38,
3737  0,40,0,0,0,1,0,0,0,0,0,6,0,0,42,39,0,38,43,0,46,8,4,15,0,21,0,0,0,48,0,0,0,28,35,17,0,0,0,0,37,57,0,59,0,0,58,2,19,60,10,0,0,44,56,9,36,0,34,0,
3738  0,33,0,0,0,0,48,10,43,36,0,0,19,6,0,29,47,37,0,54,0,0,0,0,0,0,23,1,2,0,0,14,0,32,0,0,41,21,0,59,16,28,38,0,0,0,0,0,0,0,27,0,0,5,0,0,0,44,30,0,
3739  0,0,0,20,1,0,31,11,0,30,0,0,42,29,7,0,19,52,35,49,48,0,0,6,5,0,24,0,16,0,15,21,41,0,36,0,47,56,4,26,10,0,53,14,0,0,0,39,50,0,0,0,57,0,0,0,60,22,59,0,
3740  0,42,39,11,0,56,1,45,0,0,30,0,54,8,0,14,55,0,0,0,15,0,0,28,0,12,16,20,13,22,26,9,0,0,0,0,0,0,53,0,27,0,10,0,46,43,0,0,4,29,0,44,0,0,23,0,35,0,0,32,
3741  0,19,0,21,43,7,0,38,29,12,0,54,0,0,0,0,34,55,0,0,1,0,15,0,44,0,0,0,0,23,0,27,0,0,0,30,0,60,0,13,9,35,58,0,0,14,5,0,48,0,0,57,0,0,0,0,17,0,8,0,
3742  9,0,27,0,0,0,17,22,16,49,20,46,0,0,0,10,0,44,0,0,0,50,35,2,51,0,18,5,0,0,0,0,57,58,0,0,0,0,0,0,0,34,28,0,45,15,8,23,33,0,11,19,43,0,32,0,0,41,0,0,
3743  0,0,38,22,28,34,0,0,56,44,0,26,40,0,0,0,0,0,32,25,0,42,0,45,0,0,0,0,0,0,0,0,55,30,24,0,51,0,0,0,17,0,0,0,23,35,15,0,29,0,0,5,0,0,0,43,10,49,0,2,
3744  0,28,59,42,0,0,37,39,1,0,0,32,0,47,0,0,0,0,26,0,36,17,10,41,20,0,0,0,0,0,0,7,24,0,15,23,0,58,0,35,57,8,5,34,0,27,0,0,0,54,30,0,0,60,55,3,0,4,0,0,
3745  23,36,0,0,22,3,0,53,55,0,10,51,0,33,0,15,0,35,7,2,57,38,0,34,0,43,0,12,0,45,19,0,0,0,14,0,0,0,0,30,52,26,37,17,25,6,44,0,0,0,28,0,4,0,20,32,0,0,41,0,
3746  52,16,21,0,3,19,4,56,0,14,0,49,53,31,0,32,0,43,47,0,0,0,0,0,0,30,0,0,55,0,0,0,0,0,0,0,0,0,10,9,0,0,7,45,22,39,59,11,0,0,0,0,0,0,46,0,27,0,6,0,
3747  16,0,25,55,0,0,50,0,0,42,0,0,52,37,14,38,0,12,0,8,28,0,0,48,57,0,0,0,0,0,9,24,0,17,0,36,0,30,0,0,0,0,23,58,40,0,0,35,54,0,46,0,18,22,15,59,0,0,31,0,
3748  53,20,0,0,0,43,57,42,22,59,23,36,9,28,30,0,48,11,0,24,0,0,0,51,39,13,0,55,44,1,0,0,54,0,0,46,0,0,17,0,15,50,26,38,0,0,0,60,40,12,25,7,0,8,0,0,0,45,4,3,
3749  14,26,7,58,12,20,18,24,0,43,5,42,0,0,59,28,0,0,0,0,55,0,0,19,0,0,34,17,23,39,49,40,22,3,10,54,21,0,0,38,0,0,57,44,0,29,47,48,31,46,0,2,9,6,0,15,0,36,11,51,
3750  33,0,8,0,41,0,0,16,42,0,0,11,44,23,28,0,30,22,0,53,27,14,0,0,49,0,35,0,0,21,25,17,0,0,0,7,0,0,0,0,0,13,31,47,0,0,18,0,0,0,50,0,0,0,0,26,43,37,54,48,
3751  0,46,41,43,7,0,21,0,26,5,0,58,0,44,0,0,0,32,22,0,49,0,51,0,1,56,2,52,33,47,13,0,59,6,11,18,0,34,0,3,38,25,29,30,0,40,0,50,23,37,24,35,0,31,39,53,12,28,15,42,
3752  0,29,5,0,46,0,11,55,0,18,21,16,32,0,45,35,1,60,2,0,58,3,37,44,28,0,0,0,0,52,42,0,0,23,9,0,14,0,0,49,0,0,47,24,43,36,54,27,30,0,38,0,59,0,0,8,56,0,20,0,
3753  0,0,56,57,24,0,0,40,37,0,0,2,0,0,54,0,49,29,13,0,31,48,52,0,27,0,19,0,35,0,6,26,0,0,17,0,0,0,0,33,0,60,12,51,0,34,0,0,0,8,0,30,0,45,0,22,0,46,21,5,
3754  40,0,58,15,0,46,0,29,0,0,0,44,59,41,0,53,11,5,36,0,19,57,54,32,13,0,1,30,50,31,0,45,16,33,0,0,27,10,0,14,0,0,0,12,0,0,0,0,0,4,22,28,0,0,0,17,0,0,49,47,
3755  0,3,52,35,0,0,0,0,11,50,0,31,47,0,56,36,0,49,4,0,54,0,21,0,0,9,6,22,48,0,39,0,14,0,57,26,44,5,23,0,46,59,0,0,0,0,28,25,0,0,41,20,16,29,12,0,37,33,55,0,
3756  0,0,2,51,0,33,0,0,0,40,49,0,28,0,22,1,0,8,44,0,0,0,43,20,0,53,30,0,6,0,3,48,0,0,0,32,7,41,0,0,0,10,0,0,31,0,0,54,59,0,0,0,0,36,24,0,11,0,0,37,
3757  39,32,0,0,49,0,0,0,0,0,28,0,15,46,0,23,27,31,0,14,0,30,0,0,0,24,0,45,1,54,5,42,34,0,50,0,0,0,0,20,8,51,0,0,59,0,0,22,0,38,0,33,0,21,0,0,0,16,9,0,
3758  0,41,24,0,37,0,45,0,0,0,0,0,39,5,0,55,0,7,50,21,20,51,30,16,0,0,0,0,0,17,47,38,0,36,0,58,19,0,42,22,0,0,0,8,0,54,3,0,52,0,9,0,0,0,0,29,0,0,0,49,
3759  0,18,11,6,0,0,0,15,32,0,53,0,1,42,51,0,0,0,20,59,10,0,50,0,0,0,21,24,31,0,14,0,0,41,46,0,0,12,0,29,49,30,22,0,0,0,17,3,0,0,0,13,0,0,57,60,45,8,0,0,
3760  17,34,48,0,0,16,33,3,54,0,51,10,27,4,46,13,40,0,0,0,0,29,0,0,0,52,0,0,56,0,0,0,0,0,0,41,22,50,47,0,11,31,32,0,0,0,20,0,0,0,5,0,24,0,0,0,6,38,7,36,
3761  0,0,0,0,30,0,13,36,0,21,56,35,25,0,0,0,59,18,19,0,16,55,0,17,0,42,5,0,52,14,38,0,0,37,12,60,0,11,2,0,44,0,50,41,0,7,34,0,6,48,57,0,8,33,9,0,0,0,47,0,
3762  0,2,29,0,0,0,0,50,0,22,16,40,0,0,8,44,35,0,25,0,33,0,24,18,46,0,4,48,43,58,60,0,0,49,0,0,0,0,0,0,13,0,0,54,0,30,0,15,36,7,0,0,38,0,0,20,31,6,37,39,
3763  47,35,30,0,0,50,55,0,2,0,34,0,33,12,0,0,37,0,0,0,6,13,14,54,60,19,44,0,36,53,8,0,56,0,40,52,0,20,0,0,0,0,0,29,11,18,0,38,0,1,0,49,5,28,51,0,15,17,42,21,
3764  37,53,42,28,44,15,0,4,58,33,0,60,0,0,0,0,0,0,0,13,26,0,57,0,0,0,0,0,17,49,0,8,47,22,30,19,0,29,35,0,3,36,0,0,52,0,1,43,38,0,54,21,32,0,0,0,0,0,16,0,
3765  58,22,23,39,10,0,0,25,0,0,44,5,17,0,0,4,12,0,0,0,0,0,29,59,2,16,0,46,60,0,0,0,48,0,0,0,8,0,0,52,0,14,33,0,0,47,31,0,0,0,26,32,11,34,0,21,0,53,0,45,
3766  55,0,0,30,0,0,0,0,53,27,50,41,31,17,24,0,45,0,0,0,51,9,46,0,25,0,0,36,14,0,0,0,12,16,0,57,13,33,0,11,5,0,0,35,38,0,10,29,2,21,1,3,0,0,40,0,0,0,0,0,
3767  29,0,26,0,0,0,0,0,41,31,0,48,4,0,52,42,0,3,0,0,0,47,0,49,58,0,37,0,11,0,20,28,33,12,0,53,0,17,0,0,0,9,40,16,60,55,45,8,57,13,51,0,2,1,27,0,0,5,0,7,
3768  0,47,0,48,0,0,0,0,9,0,0,0,16,34,0,54,0,0,53,0,0,6,22,12,0,0,36,57,0,0,0,0,26,60,28,33,0,0,0,42,0,11,49,0,15,0,0,0,1,19,0,0,21,35,0,23,40,0,0,27
3769  };
3770 
3771  const int d70_2450[] = {
3772  // Size: 70 x 70
3773  70,
3774  // Pre-assigned fields
3775  0,50,0,38,15,28,51,42,19,52,62,61,0,0,1,0,0,0,64,0,18,10,59,13,0,0,26,0,70,0,0,66,39,9,54,69,0,44,0,55,32,30,58,0,48,0,12,0,22,0,3,0,0,65,0,68,14,0,67,45,0,53,4,8,0,0,0,25,0,0,
3776  0,40,31,11,66,65,42,48,64,0,3,0,0,0,0,26,0,0,0,0,0,5,9,0,69,8,6,0,19,0,0,46,0,34,10,18,0,0,47,36,22,0,0,0,58,0,70,15,0,30,23,0,0,55,41,63,68,0,57,0,32,0,45,2,0,0,0,59,44,33,
3777  8,49,0,0,0,0,60,33,0,0,67,0,47,0,0,52,0,0,3,0,41,11,0,22,48,69,0,6,15,10,0,0,65,0,42,0,0,0,0,0,0,0,0,62,68,0,0,43,0,66,18,0,17,23,0,54,0,30,0,0,28,0,7,36,0,0,32,0,29,1,
3778  0,0,0,0,33,4,2,0,0,7,61,0,0,0,0,5,0,13,32,0,34,0,0,0,0,1,0,0,0,20,65,0,0,0,0,10,60,48,0,67,0,44,54,11,0,69,24,50,0,0,47,0,70,0,12,15,37,0,39,0,43,0,0,27,40,0,0,0,23,62,
3779  16,0,0,0,0,8,0,0,2,18,5,0,48,0,0,49,15,40,0,66,0,0,23,24,59,44,50,0,32,62,0,0,22,0,0,0,0,0,9,0,0,46,0,0,0,0,29,64,6,33,4,10,0,25,0,51,69,7,58,14,0,60,0,34,0,0,0,0,0,53,
3780  70,0,45,65,34,0,0,0,7,66,59,18,33,0,23,19,0,36,21,63,0,17,0,0,25,0,0,0,0,41,52,24,0,0,31,3,12,9,0,44,38,0,62,0,5,13,64,39,10,0,0,0,51,56,0,60,0,0,0,35,61,22,0,57,68,1,2,0,0,14,
3781  67,4,7,0,0,0,65,0,0,24,0,64,19,0,0,15,38,0,0,0,0,20,8,0,62,13,0,0,49,0,0,0,0,42,22,0,0,0,10,0,0,27,0,53,0,0,16,0,0,63,54,0,11,66,0,47,52,0,59,0,0,21,0,14,30,0,0,0,1,50,
3782  0,32,33,4,16,39,69,44,0,27,57,15,29,0,0,0,0,30,0,0,0,0,0,7,0,17,0,59,63,31,0,8,26,0,0,0,0,0,43,0,35,0,70,41,0,55,50,2,0,0,58,5,47,0,0,46,13,21,0,49,0,48,12,51,0,0,68,0,0,0,
3783  66,0,17,0,0,0,0,3,61,49,4,0,0,45,36,28,0,0,0,0,0,54,21,0,11,0,64,0,25,0,38,44,14,0,0,0,37,41,0,0,0,67,0,0,29,58,0,27,1,0,0,0,20,9,0,30,0,0,40,0,0,23,0,0,16,62,53,0,35,34,
3784  19,26,6,0,46,1,28,43,0,0,0,0,24,52,60,0,48,59,0,38,0,13,0,0,0,0,8,67,17,33,47,51,27,31,0,0,0,0,4,0,55,2,45,0,0,50,62,69,14,0,0,0,49,0,40,39,0,65,37,44,0,32,3,15,58,56,10,0,63,9,
3785  0,6,0,0,0,23,0,0,0,0,7,0,0,58,0,0,52,25,48,32,8,14,0,0,0,0,31,64,43,67,0,36,5,10,0,0,17,28,42,62,0,41,0,66,0,0,38,0,49,0,30,47,0,0,0,19,21,0,15,24,69,0,0,13,0,0,51,29,22,12,
3786  0,0,0,59,31,0,18,63,0,0,0,58,0,56,47,34,51,0,0,54,0,0,3,0,5,0,0,0,0,0,0,57,13,29,19,0,45,55,20,0,62,0,0,24,66,0,0,70,12,0,0,0,0,60,0,0,0,0,43,16,0,11,0,50,0,44,0,0,8,0,
3787  26,0,9,0,50,32,37,0,0,0,0,0,31,57,0,0,0,2,56,47,0,0,48,61,0,0,0,63,0,49,21,0,0,0,20,6,0,8,38,70,4,0,19,0,1,0,22,52,5,0,0,17,0,40,0,27,45,15,0,29,60,65,39,10,0,0,0,0,0,59,
3788  0,53,0,0,38,0,0,65,50,3,43,55,0,41,34,58,0,67,0,21,0,0,39,18,12,0,0,0,2,28,30,63,25,0,0,57,0,0,0,0,0,9,6,0,33,0,0,13,0,22,1,0,45,49,0,14,0,5,0,8,0,0,0,0,19,0,0,62,37,52,
3789  0,0,13,26,0,15,0,0,28,0,23,0,69,31,0,1,36,0,0,10,62,0,0,0,44,40,0,16,7,0,0,11,0,0,48,61,0,63,0,27,12,0,4,0,0,0,25,0,0,0,45,0,14,0,19,0,0,0,0,0,57,8,37,53,39,2,60,0,0,0,
3790  0,0,69,10,0,0,15,57,0,58,32,21,0,11,67,16,0,0,70,0,0,0,0,43,38,0,65,0,37,0,0,0,66,35,0,0,47,0,12,45,39,0,56,0,0,18,60,49,61,0,0,0,0,0,0,20,0,0,52,0,0,26,62,0,63,0,22,28,51,0,
3791  51,0,19,0,25,70,33,49,0,56,69,0,0,0,0,0,62,57,0,24,65,12,0,0,0,2,23,0,14,36,5,53,59,16,55,0,26,54,48,6,0,45,15,47,10,41,0,0,50,27,38,0,31,0,22,11,46,0,0,28,34,35,40,66,0,0,64,0,42,61,
3792  0,2,35,46,0,0,0,0,0,0,25,14,0,66,0,0,0,0,0,12,0,0,51,0,0,0,61,29,0,32,0,47,0,7,45,23,64,17,0,21,28,0,16,0,0,48,18,0,0,0,65,0,0,0,24,0,0,63,3,53,0,0,0,41,0,0,52,70,0,0,
3793  2,0,5,0,27,61,0,0,3,0,30,32,50,0,45,62,69,24,41,15,0,18,17,48,52,0,37,0,66,42,0,49,29,47,43,0,0,68,1,0,0,40,65,0,0,0,8,0,0,0,63,21,7,59,0,0,11,58,6,0,0,38,0,20,0,0,4,0,33,13,
3794  15,41,0,0,47,52,59,1,21,13,34,57,0,25,63,0,22,0,45,26,0,0,0,62,36,29,0,14,55,0,3,42,0,8,24,0,23,0,58,20,10,0,0,4,0,30,11,0,38,19,2,0,0,32,0,66,0,50,0,0,56,17,16,35,0,53,0,33,60,0,
3795  7,0,0,21,22,24,0,0,58,65,0,0,0,0,0,0,0,0,16,0,0,66,0,68,51,0,0,0,0,0,0,50,0,0,0,0,29,0,0,12,0,57,0,0,45,0,0,33,0,40,13,3,0,47,0,62,0,0,0,60,37,0,0,0,41,23,43,0,69,0,
3796  0,52,0,0,0,63,19,58,0,9,68,0,0,2,0,0,53,0,0,0,0,36,40,0,15,18,0,0,54,0,29,0,62,0,21,70,50,5,0,0,43,0,0,0,61,0,0,0,0,60,0,1,69,13,3,0,24,0,0,0,0,25,56,33,0,0,0,0,28,46,
3797  17,19,0,2,0,64,41,61,0,0,0,0,43,18,0,59,0,47,11,0,0,39,42,9,0,32,49,0,0,0,0,0,33,0,0,38,0,60,0,0,0,0,0,0,44,7,0,0,66,56,0,51,0,0,1,0,0,0,22,0,25,0,27,0,4,0,0,12,0,30,
3798  47,0,37,0,17,22,0,19,0,10,0,20,44,14,0,40,0,5,0,30,0,69,0,0,67,0,0,70,0,0,0,43,3,0,0,0,1,0,31,68,36,0,0,0,12,60,0,0,11,15,0,0,0,0,42,0,25,0,50,0,49,0,0,62,0,26,63,41,0,21,
3799  0,0,0,62,70,0,38,8,0,14,0,7,15,0,0,66,0,37,55,67,36,0,0,30,22,0,39,56,0,0,0,64,0,23,0,2,0,20,0,40,31,0,60,59,0,0,0,54,29,16,44,24,0,0,0,0,0,11,17,0,47,3,0,0,0,0,34,10,0,0,
3800  0,0,49,0,13,12,67,6,0,43,22,0,0,39,0,0,0,0,2,0,0,0,26,0,28,24,0,0,0,57,0,18,0,3,0,0,0,38,0,0,9,0,33,0,0,53,32,41,0,14,15,0,59,30,61,0,62,0,0,4,23,0,0,0,64,0,0,69,0,17,
3801  52,34,4,0,0,2,47,14,0,0,13,0,16,0,58,60,57,0,0,48,25,42,0,0,66,49,29,0,0,17,11,61,0,0,30,0,10,0,53,0,0,54,0,0,0,0,37,0,0,0,36,0,9,0,0,22,59,33,46,0,0,0,0,0,5,0,0,32,0,23,
3802  63,0,0,48,51,0,6,64,0,0,0,24,0,27,0,54,39,0,0,42,0,8,0,29,0,16,36,0,52,0,49,0,0,0,40,0,0,0,0,0,15,43,41,45,0,56,65,10,0,17,19,18,0,0,0,0,61,0,4,0,5,7,0,37,0,67,0,20,34,26,
3803  3,0,52,44,42,60,0,0,46,67,0,0,49,48,0,0,0,12,35,0,55,0,0,1,0,7,19,33,0,0,0,17,47,39,0,16,9,51,15,0,65,69,36,18,0,64,0,6,21,10,0,57,63,0,45,53,28,31,0,38,0,66,0,29,70,27,0,0,0,0,
3804  62,0,22,0,0,0,9,0,66,0,50,33,0,0,0,0,0,65,0,0,19,63,0,3,0,0,52,0,1,0,0,55,43,0,23,59,18,53,0,0,54,0,0,39,8,16,49,4,0,0,0,0,67,26,32,61,36,45,0,2,11,41,60,0,69,70,0,40,25,37,
3805  45,0,0,61,5,59,17,66,37,0,0,0,0,0,0,31,0,6,47,0,0,0,0,0,0,0,0,0,27,0,40,0,4,53,0,32,0,18,0,15,0,0,57,0,65,36,0,28,41,62,0,0,0,2,29,0,26,44,0,0,0,0,0,0,0,10,0,0,0,60,
3806  48,58,0,0,61,45,66,31,0,0,0,6,55,59,0,25,0,0,62,0,0,0,0,0,0,0,40,0,47,0,41,39,36,26,0,0,5,52,0,0,0,0,10,3,53,28,0,0,63,0,14,44,33,0,0,0,0,24,0,0,0,0,42,68,54,0,0,0,0,0,
3807  0,13,0,0,0,0,62,45,0,34,0,1,3,0,0,0,47,0,0,9,53,35,0,0,0,26,46,0,64,0,54,58,40,0,0,0,0,59,0,52,6,4,39,0,0,0,68,0,0,29,0,11,0,43,0,0,0,32,44,0,42,0,38,16,0,69,48,5,0,0,
3808  37,0,0,0,0,20,70,52,8,0,0,0,0,24,0,21,0,48,38,0,2,43,15,33,0,0,55,0,35,61,56,6,0,0,51,39,28,0,60,10,0,0,0,68,0,0,0,1,58,36,32,49,0,5,16,0,47,66,0,67,0,0,0,0,0,0,18,0,57,0,
3809  0,0,0,0,67,0,0,11,0,0,37,0,0,35,39,56,31,66,0,14,0,45,0,0,0,0,0,0,0,0,17,0,0,21,0,0,0,40,0,0,1,48,0,12,0,44,27,53,0,0,62,0,0,16,0,0,58,68,0,6,0,43,0,0,0,0,0,0,49,57,
3810  0,0,0,0,0,0,0,55,0,30,2,48,0,70,0,11,33,0,51,46,0,37,0,0,53,0,0,26,0,0,69,0,0,65,61,56,44,0,52,0,0,17,20,21,0,25,0,5,0,0,40,0,0,0,34,13,50,0,18,0,0,0,0,45,12,0,16,64,39,0,
3811  0,0,0,15,0,0,27,0,0,70,51,0,0,0,18,0,0,0,0,16,28,0,25,0,0,38,0,61,58,0,0,0,0,69,44,0,0,0,36,65,0,0,0,0,0,0,0,29,0,0,33,0,0,57,0,0,0,0,1,12,0,52,21,47,31,3,0,13,0,45,
3812  0,0,0,0,0,56,45,10,69,29,0,0,57,0,0,0,0,0,0,35,0,0,0,0,0,5,0,49,23,0,0,67,17,0,50,0,34,30,0,0,37,0,0,0,27,32,0,0,51,12,0,14,68,28,0,0,0,0,0,47,44,54,15,52,20,24,55,0,0,0,
3813  0,0,0,13,0,0,0,0,0,53,0,16,0,17,0,14,0,0,0,0,0,55,54,19,70,0,0,0,0,0,0,0,0,44,38,0,0,0,25,64,0,15,3,5,52,0,0,56,0,42,26,63,22,0,0,50,0,2,9,0,0,49,0,24,0,0,58,27,48,20,
3814  0,0,18,0,0,0,29,0,63,0,0,0,0,10,0,47,25,0,0,0,51,26,0,0,0,0,28,0,0,15,0,0,0,0,0,68,0,0,5,0,0,0,49,0,0,1,0,42,70,0,0,23,37,0,31,0,20,0,0,0,0,67,0,0,36,0,19,16,0,0,
3815  59,64,16,0,0,0,1,4,10,0,52,0,18,0,22,13,55,28,0,0,32,0,0,0,23,56,47,0,0,3,0,33,2,0,0,48,41,21,24,7,5,66,0,57,0,0,39,61,60,58,69,0,0,6,27,67,63,0,0,0,65,0,0,43,0,0,45,54,0,35,
3816  0,39,26,0,45,38,0,30,0,69,54,0,0,0,21,0,0,0,29,40,3,0,66,0,42,0,0,43,6,0,20,5,34,0,12,41,65,0,44,23,61,0,50,28,64,0,0,0,46,0,37,0,57,0,0,4,0,56,35,18,58,15,0,67,49,0,59,53,0,0,
3817  43,0,0,30,0,0,23,9,38,60,31,68,0,0,0,22,1,17,5,44,0,32,57,0,0,0,0,54,11,0,51,0,12,0,0,0,0,0,0,0,27,70,35,25,0,0,63,58,0,59,0,0,0,0,66,69,4,0,64,10,0,0,34,0,18,0,61,0,0,39,
3818  0,0,29,37,56,58,0,7,26,11,0,0,42,65,12,35,18,0,40,0,50,0,0,0,61,46,0,32,0,1,2,38,24,0,28,0,0,19,22,0,0,0,8,0,13,63,0,17,0,0,64,0,0,69,39,9,54,14,0,20,70,0,0,21,47,0,41,60,0,0,
3819  0,30,3,7,0,0,35,0,47,0,0,36,0,21,70,0,0,52,4,53,0,64,16,0,0,0,59,11,10,9,12,31,8,0,34,0,20,27,0,0,0,0,0,65,54,61,42,0,0,25,39,0,41,0,0,56,0,67,69,0,0,0,0,28,14,22,0,6,68,0,
3820  0,54,0,0,30,0,25,0,0,5,10,13,51,28,0,50,49,0,14,0,35,29,43,0,0,33,0,3,60,44,0,0,0,0,0,58,0,32,23,63,0,16,0,0,0,0,0,0,36,55,9,26,56,52,70,0,38,0,12,0,67,0,0,61,0,0,0,0,0,0,
3821  42,27,68,33,57,0,0,0,0,0,0,0,0,7,44,38,0,29,0,0,1,0,61,0,24,0,0,0,53,0,28,0,19,0,37,55,0,0,51,0,30,36,0,2,0,70,0,11,0,0,49,0,46,31,0,65,23,0,45,62,8,16,25,0,0,0,54,15,0,10,
3822  0,0,12,22,2,35,68,69,24,42,46,59,14,0,0,0,32,45,0,0,0,0,50,66,40,39,3,47,34,0,4,21,57,38,65,51,8,25,55,0,63,56,44,0,43,0,61,62,0,0,0,0,19,17,26,0,41,0,0,5,9,0,48,0,10,0,49,58,67,0,
3823  0,70,0,16,28,0,0,62,5,0,0,0,0,1,0,4,54,26,0,36,0,47,0,0,0,0,0,69,45,0,9,0,38,20,0,11,0,29,59,17,48,0,40,0,0,6,58,14,0,0,61,0,27,0,33,23,0,25,0,37,39,0,32,49,0,0,67,0,0,0,
3824  0,0,0,56,0,17,10,0,22,0,0,39,0,0,0,43,0,33,0,70,21,0,49,51,0,36,0,0,41,26,0,0,53,60,35,30,0,0,63,0,0,38,0,0,0,0,0,0,0,8,55,9,3,0,0,0,0,47,0,0,0,0,0,0,0,0,25,0,0,24,
3825  0,68,0,3,0,0,11,29,0,41,49,0,0,0,15,69,35,53,8,0,9,0,19,0,0,0,56,13,12,0,62,0,23,0,0,34,0,33,0,0,0,42,0,0,0,54,67,59,7,0,0,0,40,0,0,0,65,0,47,63,0,58,0,0,57,66,14,39,0,0,
3826  13,0,53,18,0,0,39,0,0,0,0,0,0,0,5,63,60,41,0,0,46,0,0,59,0,19,0,4,0,14,33,62,0,0,0,0,0,0,0,0,44,49,43,0,0,40,0,24,65,48,11,58,0,0,30,64,56,0,70,21,0,28,51,0,0,35,0,0,0,16,
3827  58,8,0,0,0,7,48,26,42,0,0,53,13,37,0,29,0,54,27,0,15,57,0,0,9,0,0,0,3,0,0,0,0,51,0,0,0,0,0,0,24,0,2,0,63,0,0,0,0,18,0,0,0,22,0,31,0,28,38,0,40,0,0,0,52,65,0,30,0,0,
3828  0,0,62,0,21,33,0,41,49,25,66,11,0,67,48,24,0,0,36,0,61,16,6,15,68,20,0,0,57,0,19,0,50,0,0,0,46,22,8,0,69,0,37,40,0,0,34,0,42,0,0,55,0,10,0,7,0,0,28,32,0,0,30,54,0,0,0,0,0,0,
3829  0,0,0,0,0,0,12,0,70,1,44,38,0,20,6,17,0,64,0,39,0,4,52,0,3,61,0,42,0,55,31,69,0,14,0,49,33,0,56,13,60,53,0,26,2,59,47,0,57,9,0,0,0,0,15,21,10,19,0,48,0,0,36,7,0,0,0,0,0,8,
3830  0,0,0,63,0,0,30,0,0,0,58,0,0,61,35,6,8,10,53,51,0,0,0,44,0,65,38,0,0,0,0,0,16,0,0,0,2,0,11,0,0,0,66,0,0,0,0,22,0,0,24,68,0,1,5,0,0,0,54,55,0,0,0,70,0,0,3,0,0,0,
3831  25,0,0,8,0,44,14,27,54,0,0,26,45,0,55,3,66,0,0,43,0,0,0,0,37,0,0,12,30,0,0,0,0,1,0,0,15,0,0,0,29,64,0,0,0,0,5,18,48,0,51,41,0,0,0,0,7,0,63,69,0,0,0,4,0,0,62,0,40,0,
3832  0,0,47,0,23,27,0,0,0,40,0,0,34,32,0,0,0,0,25,0,6,0,0,0,64,54,63,0,21,0,45,22,0,0,5,0,4,0,46,0,0,24,13,0,15,51,0,0,0,20,0,0,8,0,35,57,29,36,2,52,0,0,0,0,0,49,70,0,0,0,
3833  38,12,59,36,53,41,0,28,0,64,0,35,30,0,0,0,0,0,42,0,47,51,4,63,0,0,33,25,20,39,55,0,7,0,0,22,0,0,0,60,21,26,48,9,0,29,0,0,0,32,0,61,2,34,0,0,0,23,10,0,0,57,0,0,43,0,0,0,11,0,
3834  0,0,32,68,0,0,20,0,56,0,70,54,66,33,19,23,0,0,0,0,0,0,0,35,8,0,45,0,28,0,6,26,61,0,46,0,22,47,17,49,0,10,67,31,4,0,0,55,13,0,0,0,0,0,0,34,2,0,0,64,62,59,43,39,0,0,12,0,15,7,
3835  21,0,0,47,0,18,40,24,15,55,8,0,65,0,0,44,42,58,0,0,0,33,28,0,17,10,32,23,0,11,0,48,0,0,4,0,0,50,13,0,0,1,29,0,31,22,0,25,54,0,67,0,39,0,0,0,0,52,0,30,0,12,59,0,61,19,35,14,0,0,
3836  9,22,44,51,0,55,0,0,29,20,47,52,0,0,0,30,0,0,0,0,0,0,0,0,50,60,34,41,13,19,0,10,31,0,59,0,40,0,0,0,53,39,11,64,0,15,0,48,2,21,0,45,0,70,37,0,32,6,0,0,18,0,5,0,0,0,0,36,0,66,
3837  10,0,63,0,0,49,53,0,68,0,55,0,58,0,0,0,59,0,17,0,33,21,0,0,0,0,0,0,51,0,0,0,56,46,0,0,0,0,0,0,18,28,0,29,7,0,45,23,24,52,0,0,0,0,0,26,12,0,14,0,48,0,0,64,32,30,65,57,19,43,
3838  31,0,0,17,41,36,0,60,0,33,0,29,62,0,0,12,0,0,0,7,54,0,44,0,0,0,0,0,0,40,42,0,52,43,70,14,27,0,45,0,66,0,0,46,0,9,35,47,26,0,68,53,25,18,21,32,30,0,0,0,55,0,0,0,67,11,0,49,0,15,
3839  30,0,14,52,36,0,57,0,0,0,0,67,28,6,46,32,70,0,0,0,0,38,0,45,0,3,0,0,18,64,23,0,51,17,0,43,0,0,0,31,7,33,27,15,0,37,48,65,62,0,0,12,0,0,25,0,44,0,55,0,20,0,0,0,66,0,0,0,0,0,
3840  0,24,0,20,0,0,32,67,0,45,19,12,0,43,0,0,0,9,60,0,0,27,0,46,0,0,0,0,0,70,48,0,0,22,41,0,0,0,28,0,0,0,47,0,0,0,4,0,25,0,10,65,18,0,0,0,0,0,68,61,0,37,29,0,0,0,57,8,0,0,
3841  0,5,0,39,11,14,0,0,25,17,0,4,63,0,27,0,0,62,12,0,0,70,60,64,2,0,0,8,24,58,1,0,28,0,0,47,69,0,65,0,0,0,38,0,0,0,44,0,3,45,52,0,0,46,53,48,51,0,0,9,0,0,61,0,26,59,0,0,0,0,
3842  0,0,41,25,68,13,63,20,33,0,21,37,0,3,17,0,12,0,59,55,14,23,35,0,47,48,2,0,26,0,8,28,0,5,67,0,0,65,0,0,0,0,0,61,0,0,0,30,9,54,0,60,24,0,0,0,31,22,66,34,36,39,0,0,0,57,40,43,0,18,
3843  0,21,0,57,0,48,0,0,18,12,0,0,0,68,0,0,0,70,1,0,60,0,47,39,45,62,35,65,16,0,0,20,58,25,69,67,0,0,26,29,49,0,0,0,0,0,0,0,4,28,43,0,0,0,0,0,0,34,13,0,0,0,41,0,0,0,56,0,10,5,
3844  0,66,0,0,35,10,46,53,0,2,33,0,17,19,0,0,26,7,50,0,11,31,13,65,27,51,0,24,0,52,22,9,42,0,0,0,0,0,0,8,0,0,23,0,0,4,0,0,69,37,21,54,5,48,43,0,0,0,0,0,0,55,1,0,34,20,44,0,62,0
3845  };
3846 
3847  const int d70_2940[] = {
3848  // Size: 70 x 70
3849  70,
3850  // Pre-assigned fields
3851  0,0,40,38,0,0,51,0,0,0,0,61,0,0,0,0,0,0,0,33,18,0,59,0,0,0,0,2,70,0,0,0,0,0,0,69,57,44,0,55,0,0,0,0,0,0,0,34,22,0,0,31,6,0,63,0,0,0,0,0,46,0,0,0,0,0,47,25,20,0,
3852  56,40,31,11,66,0,0,0,64,0,0,0,0,0,52,26,0,0,24,0,4,0,0,0,0,8,0,0,19,43,13,0,0,0,0,0,0,0,47,36,22,0,25,16,0,0,0,15,0,30,0,0,0,55,41,63,0,0,57,17,0,0,0,0,0,28,27,0,44,0,
3853  0,0,0,9,12,26,0,0,0,0,0,31,47,34,0,52,0,0,3,20,0,11,0,0,48,0,0,6,15,10,58,0,0,50,0,0,13,4,2,19,56,0,0,0,0,0,0,0,45,0,0,40,0,23,0,0,0,0,27,25,28,24,7,0,59,0,0,0,0,0,
3854  0,0,30,35,33,4,0,0,52,0,0,0,6,0,0,0,0,13,0,56,0,0,41,0,0,1,0,17,38,0,0,45,0,49,57,0,60,0,0,0,0,44,54,0,0,69,24,0,0,0,47,42,70,0,12,15,0,0,39,59,43,0,0,0,0,0,26,0,0,62,
3855  16,65,11,0,55,8,0,0,2,0,0,70,48,0,0,0,0,40,0,0,38,0,0,0,59,0,50,0,0,62,0,19,0,0,52,0,0,0,9,0,0,0,0,56,0,0,29,64,0,0,0,0,0,25,0,0,0,0,58,0,35,60,0,0,0,0,17,21,0,0,
3856  70,0,0,0,0,0,58,37,7,66,59,0,0,0,0,0,0,0,21,63,0,17,0,6,0,27,16,20,0,0,52,24,0,0,31,0,0,0,40,44,0,29,0,43,0,0,64,39,0,0,0,0,0,0,0,0,8,26,49,0,61,22,46,0,68,1,2,55,47,0,
3857  0,0,7,0,29,0,0,70,0,24,0,64,19,0,31,0,38,0,34,0,0,0,0,0,0,13,0,0,49,0,18,0,0,0,0,0,35,36,0,0,0,0,0,0,32,0,0,0,0,0,54,37,11,0,0,47,52,0,59,26,68,0,0,0,0,0,0,9,0,0,
3858  34,0,0,0,0,0,69,44,53,27,0,0,0,38,65,61,28,0,0,0,45,62,24,0,10,0,66,59,0,31,0,8,0,0,3,0,0,0,43,1,0,0,0,41,0,0,0,2,0,0,0,5,47,0,0,0,13,0,0,0,0,0,0,0,9,0,0,0,56,0,
3859  0,48,0,0,0,0,26,0,0,0,4,0,0,0,0,28,0,0,52,50,0,54,21,0,0,15,0,10,25,0,38,0,14,0,0,0,37,41,0,51,0,67,18,0,29,58,0,0,0,0,0,0,0,0,0,0,0,42,40,0,0,23,70,0,16,62,53,0,35,0,
3860  19,26,0,5,0,0,28,0,0,16,29,66,24,52,0,36,48,0,7,38,70,0,18,57,34,12,0,0,0,33,0,0,0,0,0,0,30,42,0,0,0,0,0,20,0,0,0,69,14,0,0,0,0,68,0,0,0,0,37,0,0,0,0,0,0,0,0,0,63,9,
3861  0,0,0,0,18,0,0,0,44,0,0,56,0,0,0,0,52,25,0,0,8,14,0,0,1,0,31,64,43,67,0,0,5,0,0,0,17,28,0,62,50,0,0,0,0,0,38,0,49,0,0,0,61,20,0,0,0,0,15,24,0,0,0,0,0,39,0,29,22,12,
3862  0,0,61,0,31,0,18,63,0,38,0,0,53,0,47,0,51,0,30,0,0,0,3,0,5,0,0,0,67,0,0,0,13,0,19,0,0,0,20,0,62,0,0,24,0,0,0,0,12,23,35,0,0,60,0,0,9,0,0,0,0,0,52,0,0,44,1,37,0,0,
3863  26,0,9,41,0,32,0,0,0,0,0,0,31,0,0,33,64,0,0,0,0,0,0,61,14,0,0,0,0,49,0,0,0,11,20,6,0,0,0,70,4,0,0,30,0,23,0,0,5,0,42,17,53,0,13,0,45,15,0,29,0,65,0,0,0,54,0,3,0,0,
3864  29,53,0,0,38,0,16,65,0,3,0,55,0,0,34,0,0,67,0,21,17,0,0,0,0,0,0,46,0,28,30,63,0,48,0,57,70,10,0,0,59,0,6,0,33,0,26,0,0,0,0,32,0,0,7,0,35,0,60,8,0,40,0,11,0,31,0,62,0,0,
3865  5,0,13,0,6,15,55,0,0,50,0,0,0,0,0,1,0,43,0,0,62,9,0,0,0,0,18,0,7,0,0,0,0,32,0,0,0,0,54,0,12,0,4,0,70,21,25,66,68,35,0,0,14,51,0,0,67,64,65,41,0,0,37,0,39,0,60,0,0,0,
3866  64,0,0,10,24,19,15,0,34,0,0,21,0,0,0,16,6,55,70,0,31,0,36,0,38,0,0,27,0,54,0,0,0,0,1,44,0,0,0,0,39,0,56,0,25,0,0,49,0,41,0,0,48,42,0,20,0,0,52,0,0,26,62,0,0,0,0,0,0,0,
3867  51,43,0,0,0,70,0,0,0,0,0,0,52,0,0,7,0,0,0,0,65,0,0,0,18,2,23,60,0,0,5,0,59,16,0,0,0,0,0,0,20,0,0,0,10,41,0,0,50,27,38,0,0,0,0,0,0,0,0,0,0,0,40,66,0,4,0,0,0,0,
3868  0,0,0,0,0,42,0,0,13,26,0,14,5,0,0,0,0,0,15,12,0,59,0,0,0,30,0,0,62,0,60,0,67,0,0,0,64,0,57,0,0,0,16,37,0,48,0,0,0,34,65,0,58,0,0,38,19,63,0,0,0,0,0,41,0,43,0,0,0,0,
3869  0,0,0,0,0,61,36,0,3,28,0,32,50,53,45,0,0,0,0,0,23,0,17,0,0,25,37,0,0,42,0,49,0,0,43,0,16,68,1,0,0,0,0,0,56,31,0,0,39,0,0,0,0,59,0,0,0,58,6,0,26,38,0,20,55,12,0,0,0,0,
3870  15,0,0,0,0,0,0,0,0,13,0,0,0,25,0,0,22,61,45,26,40,46,0,0,0,29,0,14,0,18,3,0,69,8,24,0,0,49,0,20,0,0,31,0,9,30,0,51,0,19,2,48,43,0,0,0,0,50,0,0,56,17,0,35,0,53,37,33,60,0,
3871  0,0,67,21,22,0,0,17,58,0,0,28,0,0,38,18,0,15,0,8,27,66,0,0,0,0,0,52,0,0,0,50,20,0,0,0,29,0,0,12,42,0,9,0,0,19,0,0,0,0,0,3,30,0,36,62,55,0,0,0,37,4,35,25,0,0,43,56,0,0,
3872  0,0,23,34,20,0,0,0,0,0,0,0,59,2,0,0,53,49,67,0,7,0,0,47,0,0,14,0,54,0,0,27,0,6,0,0,50,0,37,0,43,0,0,35,0,0,0,0,55,0,0,0,0,0,0,45,0,0,41,0,0,0,0,0,48,64,42,0,0,0,
3873  0,19,0,0,58,0,0,0,0,0,0,0,43,0,14,59,10,0,0,13,0,39,42,9,0,0,0,0,0,34,36,0,33,28,0,38,0,60,0,0,68,0,0,0,44,7,0,0,0,56,50,0,0,0,0,0,16,70,22,0,0,0,27,0,0,0,23,0,0,0,
3874  0,55,0,0,0,0,0,0,0,10,0,20,44,14,13,0,23,0,0,0,0,69,0,0,67,0,0,0,65,0,0,43,0,0,0,8,1,16,31,68,0,61,0,0,0,0,0,0,0,0,34,0,28,0,0,33,0,0,0,54,49,0,0,0,0,26,63,41,66,0,
3875  0,0,0,0,0,5,0,0,57,0,45,0,15,0,42,0,0,0,55,0,36,52,0,0,22,0,39,56,4,48,0,64,63,0,0,2,61,20,0,40,31,0,0,0,0,65,0,54,29,16,44,24,0,0,0,0,0,0,17,27,0,3,0,0,0,68,34,10,0,0,
3876  0,51,0,0,0,0,0,0,36,43,22,0,25,39,0,0,0,0,0,65,0,58,0,0,0,24,0,0,0,0,0,18,0,3,0,0,21,38,66,34,9,31,0,0,40,0,32,41,0,0,0,0,59,0,0,44,62,0,0,0,23,46,0,0,64,0,11,0,55,17,
3877  0,0,0,0,3,0,0,14,0,0,0,0,0,12,0,60,57,0,43,0,0,42,0,0,0,0,29,45,0,0,0,0,35,0,30,27,0,0,0,24,0,0,1,0,62,38,37,0,67,0,0,0,0,0,0,22,0,0,46,0,0,0,0,69,0,0,50,0,0,23,
3878  63,0,0,48,51,0,0,0,14,0,0,0,0,0,3,0,0,11,68,0,0,8,0,0,32,0,36,0,0,0,0,0,0,0,40,0,38,0,0,25,15,43,0,0,0,56,0,10,0,0,0,0,44,33,0,70,0,0,0,0,0,7,2,0,1,0,9,0,0,26,
3879  3,59,0,0,42,60,0,0,0,0,14,0,49,0,20,0,0,12,35,0,55,0,0,1,54,7,19,33,50,37,0,0,0,0,0,0,0,51,15,0,0,0,0,18,0,0,40,6,0,10,22,57,0,8,45,0,0,0,26,0,0,0,13,29,70,27,0,4,0,0,
3880  0,10,0,27,44,0,9,0,0,0,50,0,12,30,0,0,0,0,28,29,19,63,0,0,0,6,0,0,0,35,24,0,0,0,0,59,0,0,0,46,54,0,17,0,0,16,0,0,0,13,0,0,0,26,32,0,36,45,42,2,0,0,60,0,69,0,7,40,25,0,
3881  45,0,0,61,5,0,17,0,0,0,38,0,70,55,8,0,68,6,0,25,0,0,0,0,0,14,69,0,0,7,0,0,4,0,0,0,63,0,19,0,0,0,57,0,0,36,51,0,0,62,12,0,0,0,0,0,0,0,0,0,0,0,0,23,35,0,20,0,16,0,
3882  48,0,0,0,61,45,66,31,0,0,0,6,0,0,0,25,0,51,0,60,0,0,0,0,0,0,0,0,0,22,0,39,36,0,32,21,5,52,30,69,23,11,0,3,53,0,0,0,63,0,14,0,33,0,0,0,18,24,29,0,0,0,42,68,54,7,0,0,0,2,
3883  0,0,57,0,0,0,62,0,0,0,41,0,0,0,61,51,47,14,0,0,0,0,63,70,0,26,0,0,64,0,54,0,0,0,0,25,24,0,67,0,6,0,39,33,19,2,0,0,30,0,66,0,21,0,10,55,27,32,44,22,0,20,0,0,0,0,0,0,0,0,
3884  37,0,0,53,9,20,70,0,0,46,27,0,0,24,7,0,0,0,38,0,0,0,15,33,0,0,55,0,0,61,0,0,0,0,0,39,0,0,0,10,40,63,14,0,0,0,59,0,58,0,0,0,0,5,16,0,47,66,31,0,3,0,0,0,0,0,0,0,57,0,
3885  55,38,0,0,0,3,0,0,0,0,37,0,0,35,39,0,0,0,0,14,22,0,2,8,29,0,0,0,59,0,0,65,0,0,60,0,0,0,0,0,1,48,63,0,42,0,0,0,0,0,0,52,0,16,0,41,58,0,0,0,30,0,23,0,0,0,69,0,49,57,
3886  35,3,1,0,0,0,0,55,0,30,2,0,60,70,0,11,0,32,0,46,63,0,0,0,0,4,7,0,0,0,0,0,15,65,0,0,44,0,52,9,47,0,20,0,0,0,0,0,19,0,0,28,0,0,34,0,0,0,0,36,0,0,68,0,12,0,0,0,0,67,
3887  0,0,0,15,0,0,0,0,40,70,0,42,20,22,0,0,41,50,37,0,28,48,25,17,35,38,24,0,0,0,0,0,0,0,44,0,0,0,0,65,0,62,0,34,0,26,56,0,64,0,0,19,0,0,0,2,0,0,1,12,66,52,21,0,31,0,0,0,30,45,
3888  0,0,0,0,0,0,0,0,0,29,0,0,57,0,43,70,46,0,19,35,0,0,58,26,0,0,0,0,0,0,66,0,17,0,50,0,0,30,0,0,0,0,0,0,0,32,2,0,51,12,6,14,0,0,4,0,0,0,61,47,0,54,0,0,20,0,0,48,9,38,
3889  41,0,0,13,10,0,0,39,59,53,0,16,11,17,4,14,0,8,0,61,0,55,54,19,70,47,57,0,0,0,35,1,0,0,0,40,0,0,25,0,0,0,3,0,0,0,30,0,0,42,0,63,22,21,0,50,66,0,0,0,0,0,0,24,0,0,58,0,0,0,
3890  0,0,18,24,0,0,0,0,63,54,64,50,0,0,0,47,25,0,0,0,0,0,56,0,13,58,28,53,0,0,57,7,0,0,0,0,0,46,0,0,0,6,0,0,34,0,0,0,70,0,60,0,0,14,31,35,20,27,21,0,0,67,0,0,0,0,0,0,59,0,
3891  59,0,0,40,0,0,1,0,0,0,52,0,0,0,0,13,0,28,0,0,32,30,0,0,23,0,47,0,42,0,0,33,0,0,0,0,41,21,0,0,0,0,53,57,0,0,0,0,60,0,0,0,26,0,0,0,63,0,0,50,0,44,31,43,0,0,0,0,17,35,
3892  0,39,26,31,0,38,13,30,11,69,0,0,0,0,0,0,0,0,0,40,0,2,0,16,0,0,0,0,0,0,20,0,34,0,12,0,65,0,44,0,61,47,50,28,0,0,0,0,0,0,0,0,0,0,68,4,0,56,35,0,0,0,0,67,0,60,59,0,0,0,
3893  43,0,48,30,0,0,23,0,0,60,31,0,56,0,0,0,0,17,0,0,0,0,57,0,0,0,20,54,0,0,51,15,0,0,0,0,52,3,0,0,27,70,0,0,0,0,0,58,40,59,29,13,55,53,66,69,0,0,0,0,0,0,0,0,18,0,0,0,6,0,
3894  49,0,0,37,56,58,0,7,26,0,15,0,0,65,0,0,18,44,0,34,0,0,0,0,61,0,0,0,0,0,2,38,24,0,0,52,0,19,22,0,25,0,8,48,0,63,0,0,0,0,64,67,0,0,39,0,54,14,0,0,0,62,0,21,0,0,41,60,0,0,
3895  0,0,3,7,26,0,35,0,0,0,0,0,0,0,0,0,5,0,4,0,0,64,0,58,0,63,0,0,0,0,0,0,0,0,0,0,0,27,0,0,0,51,0,0,54,0,42,0,0,25,0,0,41,0,0,0,17,0,69,0,15,0,0,0,14,22,0,0,68,0,
3896  0,54,8,0,30,0,0,0,0,0,0,13,0,0,0,0,49,0,14,0,35,29,0,0,4,0,0,0,60,0,0,0,0,0,0,0,0,0,0,63,17,16,0,27,41,0,0,20,0,55,0,0,0,0,0,40,38,0,0,0,67,19,0,0,22,0,0,0,31,0,
3897  0,0,68,33,57,0,4,0,12,63,60,0,67,0,0,0,0,29,0,0,0,6,61,20,0,0,9,0,0,0,0,0,0,0,37,0,0,0,0,0,0,36,0,2,0,70,0,11,0,26,0,22,46,0,0,0,0,0,45,0,8,0,25,0,0,0,0,0,32,0,
3898  0,37,0,0,2,0,0,0,24,0,46,0,14,0,0,64,0,0,31,6,0,0,50,0,0,39,0,47,34,0,0,21,0,38,0,0,0,25,0,0,0,56,44,0,0,20,61,0,52,0,7,0,19,0,0,29,0,0,16,5,9,0,48,0,0,0,49,0,67,0,
3899  0,0,0,16,28,0,34,62,0,0,35,0,46,0,51,0,0,0,63,36,0,47,55,53,0,68,21,69,0,50,9,41,0,0,0,0,42,0,0,17,0,0,40,22,0,0,58,14,0,0,61,8,27,0,33,23,60,25,0,0,0,10,0,49,2,13,0,52,65,64,
3900  0,0,46,56,0,17,0,0,0,59,40,39,0,50,62,43,0,33,0,70,21,0,49,51,0,36,0,0,41,0,0,0,0,60,0,0,67,11,63,0,0,38,0,0,28,42,0,0,0,8,0,0,3,29,52,0,0,47,48,57,0,0,69,12,6,16,25,0,2,24,
3901  0,68,27,3,0,0,11,29,0,0,0,0,0,64,0,69,0,0,8,28,9,0,0,0,0,45,56,0,12,0,0,0,0,0,0,34,36,33,0,38,0,0,55,50,51,0,67,0,7,0,0,0,0,0,0,37,0,61,0,0,0,58,22,0,0,0,14,0,26,0,
3902  0,15,53,0,54,6,0,47,0,31,42,9,0,0,0,63,60,41,23,68,0,61,0,0,0,19,0,0,8,14,0,0,0,0,36,1,0,45,0,0,44,49,0,55,0,40,3,24,0,48,0,0,34,0,30,0,56,29,0,21,0,0,51,0,0,0,0,67,52,16,
3903  58,0,0,43,32,0,0,26,42,0,0,53,13,37,0,29,0,54,0,0,0,0,0,0,9,21,0,35,0,16,0,34,0,51,0,0,0,0,0,0,0,0,0,19,0,12,0,60,0,18,5,0,0,0,62,0,0,28,38,0,0,0,0,17,52,0,0,0,0,0,
3904  0,0,62,0,21,33,0,41,0,25,66,11,0,0,48,0,58,0,0,0,61,0,6,0,68,0,0,0,57,0,19,2,50,18,0,0,0,0,0,0,0,65,0,0,0,47,0,0,0,0,0,0,0,0,59,0,43,35,0,0,53,0,0,0,51,0,29,0,64,63,
3905  0,0,28,67,0,0,12,0,70,1,0,0,40,20,6,0,0,0,66,0,16,4,52,0,3,0,0,0,0,0,31,0,41,0,0,0,0,58,0,13,0,0,30,0,0,0,47,0,0,0,0,35,65,0,0,0,0,0,62,0,0,0,0,0,27,0,0,0,0,0,
3906  57,45,0,63,0,0,30,32,27,0,58,0,0,61,0,0,0,0,53,0,0,50,20,0,60,65,0,0,0,0,7,0,16,0,0,0,2,0,11,0,41,19,66,0,0,14,31,22,0,0,0,0,23,1,0,0,0,49,0,0,0,0,0,0,0,0,0,0,21,0,
3907  25,57,0,0,0,0,0,27,0,68,36,0,0,23,0,3,66,0,61,0,0,56,0,0,0,0,60,12,30,0,0,52,0,1,2,0,0,34,0,0,29,0,42,0,0,0,0,18,48,0,0,0,0,0,65,0,7,0,0,0,0,9,0,4,17,0,0,22,0,31,
3908  11,0,0,0,23,0,3,0,0,0,56,0,34,0,0,0,0,39,25,17,0,60,53,0,0,0,0,0,0,0,0,0,18,67,0,0,4,31,0,37,0,0,13,0,15,0,0,26,0,20,0,0,0,61,0,57,0,0,0,0,0,0,0,48,0,49,0,0,50,0,
3909  0,0,0,0,0,0,0,0,62,64,0,0,0,0,0,8,27,0,42,0,0,0,0,63,65,52,33,25,20,39,55,70,7,0,14,0,0,15,49,0,21,0,0,9,0,29,0,0,0,0,17,0,0,0,0,16,1,23,0,0,0,57,0,0,43,0,31,66,11,0,
3910  0,0,0,0,0,11,20,0,0,21,0,0,0,0,0,0,63,42,0,0,52,53,14,0,0,9,45,1,28,24,0,0,0,27,0,29,22,47,17,0,0,10,67,0,4,0,0,0,0,69,48,16,0,0,0,0,0,0,30,64,0,0,0,39,65,25,0,38,15,0,
3911  0,0,51,0,0,0,0,24,0,0,0,0,0,26,53,44,0,58,9,57,20,0,0,0,17,0,32,0,0,11,0,48,0,2,0,0,0,0,13,5,16,0,29,0,0,22,43,25,54,70,67,0,0,0,0,0,64,0,34,0,0,0,59,46,0,0,0,0,0,0,
3912  0,22,44,51,4,0,0,0,0,20,0,0,8,0,0,0,0,0,0,23,56,0,62,67,0,60,34,0,0,19,0,0,31,0,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,27,0,0,70,0,28,32,0,7,65,18,0,0,0,0,58,0,36,3,0,
3913  10,0,63,0,37,49,0,54,0,0,55,0,0,40,9,0,59,0,0,1,0,0,22,60,0,0,0,36,0,0,0,0,0,0,0,0,0,0,70,0,0,28,0,0,0,0,0,23,0,0,0,20,35,0,47,0,0,62,0,0,0,0,0,64,0,30,65,57,19,0,
3914  0,23,50,0,0,0,0,0,0,0,0,0,0,4,0,12,0,0,10,7,0,0,0,0,6,34,0,38,61,0,0,0,0,0,0,14,0,0,0,22,66,0,0,0,0,9,35,47,26,0,0,0,0,18,0,0,0,0,51,0,0,56,0,63,0,11,0,0,0,0,
3915  30,0,0,52,36,0,0,59,1,0,0,67,0,0,0,0,0,60,0,0,0,38,29,45,19,3,0,0,0,0,23,0,51,0,8,0,68,56,16,0,0,0,0,15,0,0,48,65,0,0,0,12,0,0,25,0,44,0,0,11,20,42,0,58,0,0,21,0,13,0,
3916  0,24,2,0,0,0,32,0,23,0,0,0,0,0,0,0,21,9,0,11,0,27,33,0,0,66,30,34,0,0,0,13,44,22,0,0,0,35,28,16,0,52,47,0,50,0,0,0,25,49,0,0,0,0,55,59,0,0,68,0,0,0,0,0,0,0,57,8,36,0,
3917  0,0,0,39,11,14,21,0,0,0,0,4,0,0,0,67,40,0,0,0,68,70,60,64,2,37,0,8,0,0,0,0,0,0,0,0,0,0,0,18,34,35,38,0,0,49,0,0,0,45,0,0,0,0,0,0,51,0,0,0,10,0,61,55,0,0,0,0,0,42,
3918  0,62,0,0,0,13,63,0,0,0,0,0,7,0,17,0,0,0,0,0,0,0,35,0,0,0,0,0,26,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,45,0,0,9,0,70,60,0,0,0,42,0,22,0,34,36,0,0,38,0,0,0,43,4,0,
3919  0,0,0,57,52,48,0,0,0,0,17,2,0,0,54,0,7,0,1,0,0,0,47,39,45,62,35,0,0,0,0,20,0,25,0,67,59,0,26,0,49,55,22,0,0,0,0,0,4,0,43,0,66,0,38,8,53,34,0,0,31,0,0,0,0,6,0,0,0,0,
3920  61,66,0,6,0,0,46,0,0,0,0,30,0,0,0,0,0,7,0,45,11,31,13,65,0,51,41,24,40,52,0,0,42,0,0,0,32,12,3,0,70,0,23,0,0,0,0,0,0,37,0,54,5,0,0,0,0,39,36,0,0,0,1,59,0,0,0,0,62,0
3921  };
3922 
3923 
3924  const int* qcp[] = {
3925  &d10_67_0[0], &d10_67_1[0], &d10_67_2[0], &d10_67_3[0], &d10_67_4[0],
3926  &d10_67_5[0], &d10_67_6[0], &d10_67_7[0], &d10_67_8[0], &d10_67_9[0],
3927  &d10_67_10[0], &d10_67_11[0], &d10_67_12[0], &d10_67_13[0], &d10_67_14[0],
3928 
3929  &d15_120_0[0], &d15_120_1[0], &d15_120_2[0], &d15_120_3[0], &d15_120_4[0],
3930  &d15_120_5[0], &d15_120_6[0], &d15_120_7[0], &d15_120_8[0], &d15_120_9[0],
3931  &d15_120_10[0], &d15_120_11[0], &d15_120_12[0], &d15_120_13[0], &d15_120_14[0],
3932 
3933  &d20_187_0[0], &d20_187_1[0], &d20_187_2[0], &d20_187_3[0], &d20_187_4[0],
3934  &d20_187_5[0], &d20_187_6[0], &d20_187_7[0], &d20_187_8[0], &d20_187_9[0],
3935  &d20_187_10[0], &d20_187_11[0], &d20_187_12[0], &d20_187_13[0], &d20_187_14[0],
3936 
3937  &d25_264_0[0], &d25_264_1[0], &d25_264_2[0], &d25_264_3[0], &d25_264_4[0],
3938  &d25_264_5[0], &d25_264_6[0], &d25_264_7[0], &d25_264_8[0], &d25_264_9[0],
3939  &d25_264_10[0], &d25_264_11[0], &d25_264_12[0], &d25_264_13[0], &d25_264_14[0],
3940 
3941  &d30_316[0], &d30_320[0],
3942 
3943  &d30_374_1[0], &d30_374_2[0], &d30_374_3[0], &d30_374_4[0], &d30_374_5[0],
3944  &d30_374_6[0], &d30_374_7[0], &d30_374_8[0], &d30_374_9[0], &d30_374_10[0],
3945  &d30_374_11[0], &d30_374_12[0], &d30_374_13[0], &d30_374_14[0], &d30_374_15[0],
3946  &d30_374_16[0], &d30_374_17[0], &d30_374_18[0], &d30_374_19[0], &d30_374_20[0],
3947  &d30_375_21[0], &d30_375_22[0], &d30_375_23[0], &d30_375_24[0], &d30_375_25[0],
3948  &d30_375_26[0], &d30_375_27[0], &d30_375_28[0], &d30_375_29[0], &d30_375_30[0],
3949  &d30_375_31[0], &d30_375_32[0], &d30_375_33[0], &d30_375_34[0], &d30_375_35[0],
3950  &d30_375_36[0], &d30_375_37[0], &d30_375_38[0], &d30_375_39[0], &d30_375_40[0],
3951 
3952  &d33_381[0],
3953  &d35_405[0],
3954  &d40_528[0], &d40_544[0], &d40_560[0],
3955  &d50_750_bal[0], &d50_825_bal[0],
3956  &d60_1080_bal[0], &d60_1152_bal[0], &d60_1440[0], &d60_1620[0],
3957  &d70_2450[0], &d70_2940[0]
3958  };
3959 
3960  const char* name[] = {
3961  "10-67-0", "10-67-1", "10-67-2", "10-67-3", "10-67-4",
3962  "10-67-5", "10-67-6", "10-67-7", "10-67-8", "10-67-9",
3963  "10-67-10", "10-67-11", "10-67-12", "10-67-13", "10-67-14",
3964 
3965  "15-120-0", "15-120-1", "15-120-2", "15-120-3", "15-120-4",
3966  "15-120-5", "15-120-6", "15-120-7", "15-120-8", "15-120-9",
3967  "15-120-10", "15-120-11", "15-120-12", "15-120-13", "15-120-14",
3968 
3969  "20-187-0", "20-187-1", "20-187-2", "20-187-3", "20-187-4",
3970  "20-187-5", "20-187-6", "20-187-7", "20-187-8", "20-187-9",
3971  "20-187-10", "20-187-11", "20-187-12", "20-187-13", "20-187-14",
3972 
3973  "25-264-0", "25-264-1", "25-264-2", "25-264-3", "25-264-4",
3974  "25-264-5", "25-264-6", "25-264-7", "25-264-8", "25-264-9",
3975  "25-264-10", "25-264-11", "25-264-12", "25-264-13", "25-264-14",
3976 
3977  "30-316", "30-320",
3978 
3979  "30-374-1", "30-374-2", "30-374-3", "30-374-4", "30-374-5",
3980  "30-374-6", "30-374-7", "30-374-8", "30-374-9", "30-374-10",
3981  "30-374-11", "30-374-12", "30-374-13", "30-374-14", "30-374-15",
3982  "30-374-16", "30-374-17", "30-374-18", "30-374-19", "30-374-20",
3983  "30-375-21", "30-375-22", "30-375-23", "30-375-24", "30-375-25",
3984  "30-375-26", "30-375-27", "30-375-28", "30-375-29", "30-375-30",
3985  "30-375-31", "30-375-32", "30-375-33", "30-375-34", "30-375-35",
3986  "30-375-36", "30-375-37", "30-375-38", "30-375-39", "30-375-40",
3987 
3988  "33-381",
3989  "35-405",
3990  "40-528", "40-544", "40-560",
3991  "50-750-bal", "50-825-bal",
3992  "60-1080-bal", "60-1152-bal", "60-1440", "60-1620",
3993  "70-2450", "70-2940",
3994  NULL
3995  };
3996 
3997 }
3998 
3999 // STATISTICS: example-any
4000 
struct Gecode::@602::NNF::@65::@66 b
For binary nodes (and, or, eqv)
NNF * l
Left subtree.
Definition: bool-expr.cpp:240
int n
Number of negative literals for node type.
Definition: bool-expr.cpp:234
NNF * r
Right subtree.
Definition: bool-expr.cpp:242
void parse(int &argc, char *argv[])
Parse options from arguments argv (number is argc)
Definition: options.cpp:548
void value(double v)
Set default value to v.
Definition: options.hpp:108
Parametric base-class for scripts.
Definition: driver.hh:729
Options for scripts with additional instance parameter
Definition: driver.hh:696
Integer variable array.
Definition: int.hh:763
Matrix-interface for arrays.
Definition: minimodel.hh:2161
Slice< A > col(int c) const
Access column c.
Definition: matrix.hpp:183
Slice< A > row(int r) const
Access row r.
Definition: matrix.hpp:177
Information passed by meta search engines.
Definition: core.hpp:1613
@ PORTFOLIO
Information is provided by a portfolio-based engine.
Definition: core.hpp:1620
unsigned int asset(void) const
Return number of asset in portfolio.
Definition: core.hpp:3111
Type type(void) const
Return type of information.
Definition: core.hpp:3082
void propagation(int v)
Set default propagation value.
Definition: options.hpp:203
void branching(int v)
Set default branching value.
Definition: options.hpp:225
void ipl(IntPropLevel i)
Set default integer propagation level.
Definition: options.hpp:216
Random number generator.
Definition: rnd.hpp:42
Computation spaces.
Definition: core.hpp:1742
void update(Space &home, VarArray< Var > &a)
Update array to be a clone of array a.
Definition: array.hpp:1013
Example: Quasigroup completion
Definition: qcp.cpp:142
QCP(QCP &s)
Constructor for cloning s.
Definition: qcp.cpp:250
int main(int argc, char *argv[])
Main-function.
Definition: qcp.cpp:281
QCP(const QCPOptions &opt0)
Actual model.
Definition: qcp.cpp:165
const QCPOptions & opt
Options.
Definition: qcp.cpp:145
virtual bool slave(const MetaInfo &mi)
Slave function for portfolio search.
Definition: qcp.cpp:215
const Spec spec
Specification.
Definition: qcp.cpp:147
virtual void print(std::ostream &os) const
Print solution.
Definition: qcp.cpp:261
IntVarArray e
Field elements e.
Definition: qcp.cpp:149
virtual Space * copy(void)
Copy during cloning.
Definition: qcp.cpp:256
double tbf
Tie-breaking factor.
Definition: qcp.cpp:151
@ PROP_BINARY
Use only binary disequality constraints.
Definition: qcp.cpp:155
@ PROP_DISTINCT
Use distinct constraints.
Definition: qcp.cpp:156
@ BRANCH_AFC_SIZE
Use largest AFC divided by domain size.
Definition: qcp.cpp:161
@ BRANCH_SIZE
Use smallest domain size first.
Definition: qcp.cpp:160
@ BRANCH_CBS_MAX_SD
Use maximum solution density.
Definition: qcp.cpp:162
void distinct(Home home, const IntVarArgs &x, IntPropLevel ipl)
Post propagator for for all .
Definition: distinct.cpp:46
void rel(Home home, FloatVar x0, FloatRelType frt, FloatVal n)
Propagates .
Definition: rel.cpp:43
@ IPL_DOM
Domain propagation Options: basic versus advanced propagation.
Definition: int.hh:979
IntValBranch INT_VAL_MIN(void)
Select smallest value.
Definition: val.hpp:55
IntVarBranch INT_VAR_AFC_SIZE_MAX(double d, BranchTbl tbl)
Select variable with largest accumulated failure count divided by domain size with decay factor d.
Definition: var.hpp:236
IntVarBranch INT_VAR_RND(Rnd r)
Select random variable (uniform distribution, for tie breaking)
Definition: var.hpp:101
IntVarBranch INT_VAR_SIZE_MIN(BranchTbl tbl)
Select variable with smallest domain size.
Definition: var.hpp:206
bool valid(const FloatVal &n)
Return whether float n is a valid number.
Definition: limits.hpp:39
bool assigned(View x, int v)
Whether x is assigned to value v.
Definition: single.hpp:43
unsigned int size(I &i)
Size of all ranges of range iterator i.
double tbl(const Gecode::Space &, double w, double b)
Test function for tie-break limit function.
Definition: branch.cpp:61
Gecode::IntArgs i({1, 2, 3, 4})
Gecode::IntSet d(v, 7)
LDSB< TieBreak > tiebreak("TieBreak")
Options opt
The options.
Definition: test.cpp:97