mapFolding 0.15.4__py3-none-any.whl → 0.16.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. easyRun/A000682.py +25 -0
  2. easyRun/A005316.py +21 -0
  3. easyRun/NOTcountingFolds.py +36 -0
  4. easyRun/__init__.py +0 -0
  5. easyRun/countFolds.py +41 -0
  6. easyRun/meanders.py +71 -0
  7. mapFolding/__init__.py +10 -55
  8. mapFolding/_dataPacking.py +68 -0
  9. mapFolding/_theSSOT.py +33 -36
  10. mapFolding/_theTypes.py +21 -4
  11. mapFolding/algorithms/daoOfMapFolding.py +1 -2
  12. mapFolding/algorithms/matrixMeanders.py +101 -348
  13. mapFolding/algorithms/matrixMeandersBeDry.py +264 -0
  14. mapFolding/algorithms/matrixMeandersNumPy.py +286 -0
  15. mapFolding/algorithms/matrixMeandersPandas.py +351 -0
  16. mapFolding/algorithms/oeisIDbyFormula.py +320 -76
  17. mapFolding/algorithms/zCuzDocStoopidoeisIDbyFormula.py +92 -0
  18. mapFolding/basecamp.py +261 -113
  19. mapFolding/beDRY.py +2 -30
  20. mapFolding/dataBaskets.py +120 -4
  21. mapFolding/oeis.py +13 -33
  22. mapFolding/reference/A000682facts.py +1276 -0
  23. mapFolding/reference/A005316facts.py +985 -0
  24. mapFolding/reference/matrixMeandersAnalysis/__init__.py +1 -0
  25. mapFolding/reference/matrixMeandersAnalysis/prefixNotationNotes.py +15 -0
  26. mapFolding/reference/meandersDumpingGround/A005316JavaPort.py +1 -1
  27. mapFolding/reference/meandersDumpingGround/A005316imperative.py +1 -1
  28. mapFolding/reference/meandersDumpingGround/matrixMeandersNumPyV1finalForm.py +424 -0
  29. mapFolding/someAssemblyRequired/A007822/A007822rawMaterials.py +54 -0
  30. mapFolding/someAssemblyRequired/A007822/__init__.py +0 -0
  31. mapFolding/someAssemblyRequired/A007822/makeA007822AsynchronousModules.py +197 -0
  32. mapFolding/someAssemblyRequired/A007822/makeA007822Modules.py +74 -0
  33. mapFolding/someAssemblyRequired/RecipeJob.py +4 -4
  34. mapFolding/someAssemblyRequired/__init__.py +9 -2
  35. mapFolding/someAssemblyRequired/_toolIfThis.py +4 -3
  36. mapFolding/someAssemblyRequired/_toolkitContainers.py +8 -8
  37. mapFolding/someAssemblyRequired/infoBooth.py +27 -30
  38. mapFolding/someAssemblyRequired/makeJobTheorem2Numba.py +6 -5
  39. mapFolding/someAssemblyRequired/makeJobTheorem2codon.py +6 -4
  40. mapFolding/someAssemblyRequired/makingModules_count.py +294 -0
  41. mapFolding/someAssemblyRequired/makingModules_doTheNeedful.py +117 -0
  42. mapFolding/someAssemblyRequired/mapFolding/__init__.py +0 -0
  43. mapFolding/someAssemblyRequired/mapFolding/makeMapFoldingModules.py +220 -0
  44. mapFolding/someAssemblyRequired/meanders/__init__.py +0 -0
  45. mapFolding/someAssemblyRequired/meanders/makeMeandersModules.py +64 -0
  46. mapFolding/someAssemblyRequired/toolkitMakeModules.py +152 -0
  47. mapFolding/someAssemblyRequired/toolkitNumba.py +1 -1
  48. mapFolding/someAssemblyRequired/transformationTools.py +1 -0
  49. mapFolding/syntheticModules/A007822/__init__.py +1 -0
  50. mapFolding/syntheticModules/{algorithmA007822.py → A007822/algorithm.py} +2 -3
  51. mapFolding/syntheticModules/{algorithmA007822Numba.py → A007822/algorithmNumba.py} +3 -6
  52. mapFolding/syntheticModules/A007822/asynchronous.py +148 -0
  53. mapFolding/syntheticModules/A007822/asynchronousAnnex.py +66 -0
  54. mapFolding/syntheticModules/A007822/asynchronousAnnexNumba.py +85 -0
  55. mapFolding/syntheticModules/A007822/asynchronousNumba.py +52 -0
  56. mapFolding/syntheticModules/A007822/asynchronousTheorem2.py +53 -0
  57. mapFolding/syntheticModules/A007822/asynchronousTrimmed.py +47 -0
  58. mapFolding/syntheticModules/{initializeStateA007822.py → A007822/initializeState.py} +1 -2
  59. mapFolding/syntheticModules/{theorem2A007822.py → A007822/theorem2.py} +1 -2
  60. mapFolding/syntheticModules/{theorem2A007822Numba.py → A007822/theorem2Numba.py} +6 -4
  61. mapFolding/syntheticModules/{theorem2A007822Trimmed.py → A007822/theorem2Trimmed.py} +1 -2
  62. mapFolding/syntheticModules/countParallelNumba.py +5 -2
  63. mapFolding/syntheticModules/daoOfMapFoldingNumba.py +4 -2
  64. mapFolding/syntheticModules/dataPacking.py +4 -2
  65. mapFolding/syntheticModules/dataPackingA007822.py +92 -26
  66. mapFolding/syntheticModules/meanders/__init__.py +1 -0
  67. mapFolding/syntheticModules/meanders/bigInt.py +62 -0
  68. mapFolding/syntheticModules/theorem2Numba.py +3 -2
  69. mapFolding/tests/conftest.py +28 -13
  70. mapFolding/tests/test_computations.py +69 -62
  71. mapFolding/tests/test_oeis.py +6 -6
  72. mapFolding/zCuzDocStoopid/__init__.py +4 -0
  73. mapFolding/zCuzDocStoopid/makeDocstrings.py +68 -0
  74. mapfolding-0.16.1.dist-info/METADATA +99 -0
  75. mapfolding-0.16.1.dist-info/RECORD +114 -0
  76. {mapfolding-0.15.4.dist-info → mapfolding-0.16.1.dist-info}/top_level.txt +1 -0
  77. mapFolding/someAssemblyRequired/A007822rawMaterials.py +0 -46
  78. mapFolding/someAssemblyRequired/makeAllModules.py +0 -764
  79. mapfolding-0.15.4.dist-info/METADATA +0 -78
  80. mapfolding-0.15.4.dist-info/RECORD +0 -78
  81. {mapfolding-0.15.4.dist-info → mapfolding-0.16.1.dist-info}/WHEEL +0 -0
  82. {mapfolding-0.15.4.dist-info → mapfolding-0.16.1.dist-info}/entry_points.txt +0 -0
  83. {mapfolding-0.15.4.dist-info → mapfolding-0.16.1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,985 @@
1
+ """A005316 facts."""
2
+
3
+ dictionary_nToBitWidthCrossings: dict[int, int] = {
4
+ 0: 1, 1: 1, 2: 1, 3: 2, 4: 2, 5: 4, 6: 4, 7: 6, 8: 7, 9: 9
5
+ , 10: 10, 11: 11, 12: 12, 13: 14, 14: 15, 15: 17, 16: 18, 17: 20, 18: 22, 19: 23
6
+ , 20: 25, 21: 27, 22: 28, 23: 30, 24: 31, 25: 33, 26: 34, 27: 36, 28: 38, 29: 40
7
+ , 30: 41, 31: 43, 32: 44, 33: 46, 34: 48, 35: 50, 36: 51, 37: 53, 38: 54, 39: 56
8
+ , 40: 58, 41: 60, 42: 61, 43: 63, 44: 64, 45: 67, 46: 68, 47: 70, 48: 71, 49: 73
9
+ , 50: 75, 51: 77, 52: 78, 53: 80, 54: 82, 55: 84}
10
+
11
+ listBitWidthIncreases: list[int] = [0, 0, 1, 0, 2, 0, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1, 2
12
+ , 2, 1, 2, 2, 1, 2, 1, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 1
13
+ , 3, 1, 2, 1, 2, 2, 2, 1, 2, 2, 2]
14
+ bitWidthIncreaseMaximum = 3
15
+ bitWidthIncreaseMean = 1.51
16
+ bitWidthIncreaseMedian = 2
17
+
18
+ bucketsIf_k_ODD_by_nLess_k: dict[int, int] = {
19
+ 1:2,
20
+ 2:7,
21
+ 3:16,
22
+ 4:42,
23
+ 5:81,
24
+ 6:207,
25
+ 7:382,
26
+ 8:974,
27
+ 9:1769,
28
+ 10:4522,
29
+ 11:8154,
30
+ 12:20903,
31
+ 13:37548,
32
+ 14:96475,
33
+ 15:172905,
34
+ 16:445014,
35
+ 17:796413,
36
+ 18:2052330,
37
+ 19:3669370,
38
+ 20:9464570,
39
+ }
40
+
41
+ bucketsIf_k_EVEN_by_nLess_k: dict[int, int] = {
42
+ 1:3,
43
+ 2:6,
44
+ 3:20,
45
+ 4:37,
46
+ 5:100,
47
+ 6:180,
48
+ 7:468,
49
+ 8:836,
50
+ 9:2156,
51
+ 10:3844,
52
+ 11:9903,
53
+ 12:17650,
54
+ 13:45494,
55
+ 14:81085,
56
+ 15:209157,
57
+ 16:372820,
58
+ 17:962310,
59
+ 18:1715463,
60
+ 19:4430191,
61
+ 20:7898072,
62
+ }
63
+
64
+ A005316_n_k_buckets: dict[int, dict[int, int]] = {2: {1: 1},
65
+ 3: {2: 3, 1: 2},
66
+ 4: {3: 2, 2: 4, 1: 3},
67
+ 5: {4: 3, 3: 7, 2: 9, 1: 3},
68
+ 6: {5: 2, 4: 6, 3: 13, 2: 10, 1: 3},
69
+ 7: {6: 3, 5: 7, 4: 20, 3: 23, 2: 12, 1: 3},
70
+ 8: {7: 2, 6: 6, 5: 16, 4: 31, 3: 30, 2: 12, 1: 3},
71
+ 9: {8: 3, 7: 7, 6: 20, 5: 42, 4: 61, 3: 36, 2: 12, 1: 3},
72
+ 10: {9: 2, 8: 6, 7: 16, 6: 37, 5: 71, 4: 77, 3: 38, 2: 12, 1: 3},
73
+ 11: {10: 3, 9: 7, 8: 20, 7: 42, 6: 100, 5: 138, 4: 104, 3: 40, 2: 12, 1: 3},
74
+ 12: {11: 2,
75
+ 10: 6,
76
+ 9: 16,
77
+ 8: 37,
78
+ 7: 81,
79
+ 6: 160,
80
+ 5: 188,
81
+ 4: 112,
82
+ 3: 40,
83
+ 2: 12,
84
+ 1: 3},
85
+ 13: {12: 3,
86
+ 11: 7,
87
+ 10: 20,
88
+ 9: 42,
89
+ 8: 100,
90
+ 7: 207,
91
+ 6: 329,
92
+ 5: 271,
93
+ 4: 125,
94
+ 3: 40,
95
+ 2: 12,
96
+ 1: 3},
97
+ 14: {13: 2,
98
+ 12: 6,
99
+ 11: 16,
100
+ 10: 37,
101
+ 9: 81,
102
+ 8: 180,
103
+ 7: 347,
104
+ 6: 451,
105
+ 5: 306,
106
+ 4: 125,
107
+ 3: 40,
108
+ 2: 12,
109
+ 1: 3},
110
+ 15: {14: 3,
111
+ 13: 7,
112
+ 12: 20,
113
+ 11: 42,
114
+ 10: 100,
115
+ 9: 207,
116
+ 8: 468,
117
+ 7: 723,
118
+ 6: 708,
119
+ 5: 367,
120
+ 4: 125,
121
+ 3: 40,
122
+ 2: 12,
123
+ 1: 3},
124
+ 16: {15: 2,
125
+ 14: 6,
126
+ 13: 16,
127
+ 12: 37,
128
+ 11: 81,
129
+ 10: 180,
130
+ 9: 382,
131
+ 8: 766,
132
+ 7: 1042,
133
+ 6: 834,
134
+ 5: 377,
135
+ 4: 125,
136
+ 3: 40,
137
+ 2: 12,
138
+ 1: 3},
139
+ 17: {16: 3,
140
+ 15: 7,
141
+ 14: 20,
142
+ 13: 42,
143
+ 12: 100,
144
+ 11: 207,
145
+ 10: 468,
146
+ 9: 974,
147
+ 8: 1653,
148
+ 7: 1739,
149
+ 6: 1083,
150
+ 5: 392,
151
+ 4: 125,
152
+ 3: 40,
153
+ 2: 12,
154
+ 1: 3},
155
+ 18: {17: 2,
156
+ 16: 6,
157
+ 15: 16,
158
+ 14: 37,
159
+ 13: 81,
160
+ 12: 180,
161
+ 11: 382,
162
+ 10: 836,
163
+ 9: 1643,
164
+ 8: 2409,
165
+ 7: 2148,
166
+ 6: 1143,
167
+ 5: 392,
168
+ 4: 125,
169
+ 3: 40,
170
+ 2: 12,
171
+ 1: 3},
172
+ 19: {18: 3,
173
+ 17: 7,
174
+ 16: 20,
175
+ 15: 42,
176
+ 14: 100,
177
+ 13: 207,
178
+ 12: 468,
179
+ 11: 974,
180
+ 10: 2156,
181
+ 9: 3599,
182
+ 8: 4267,
183
+ 7: 3023,
184
+ 6: 1254,
185
+ 5: 392,
186
+ 4: 125,
187
+ 3: 40,
188
+ 2: 12,
189
+ 1: 3},
190
+ 20: {19: 2,
191
+ 18: 6,
192
+ 17: 16,
193
+ 16: 37,
194
+ 15: 81,
195
+ 14: 180,
196
+ 13: 382,
197
+ 12: 836,
198
+ 11: 1769,
199
+ 10: 3592,
200
+ 9: 5428,
201
+ 8: 5494,
202
+ 7: 3311,
203
+ 6: 1254,
204
+ 5: 392,
205
+ 4: 125,
206
+ 3: 40,
207
+ 2: 12,
208
+ 1: 3},
209
+ 21: {20: 3,
210
+ 19: 7,
211
+ 18: 20,
212
+ 17: 42,
213
+ 16: 100,
214
+ 15: 207,
215
+ 14: 468,
216
+ 13: 974,
217
+ 12: 2156,
218
+ 11: 4522,
219
+ 10: 8056,
220
+ 9: 10072,
221
+ 8: 8323,
222
+ 7: 3891,
223
+ 6: 1254,
224
+ 5: 392,
225
+ 4: 125,
226
+ 3: 40,
227
+ 2: 12,
228
+ 1: 3},
229
+ 22: {21: 2,
230
+ 20: 6,
231
+ 19: 16,
232
+ 18: 37,
233
+ 17: 81,
234
+ 16: 180,
235
+ 15: 382,
236
+ 14: 836,
237
+ 13: 1769,
238
+ 12: 3844,
239
+ 11: 7692,
240
+ 10: 12271,
241
+ 9: 13497,
242
+ 8: 9502,
243
+ 7: 3961,
244
+ 6: 1254,
245
+ 5: 392,
246
+ 4: 125,
247
+ 3: 40,
248
+ 2: 12,
249
+ 1: 3},
250
+ 23: {22: 3,
251
+ 21: 7,
252
+ 20: 20,
253
+ 19: 42,
254
+ 18: 100,
255
+ 17: 207,
256
+ 16: 468,
257
+ 15: 974,
258
+ 14: 2156,
259
+ 13: 4522,
260
+ 12: 9903,
261
+ 11: 17472,
262
+ 10: 23726,
263
+ 9: 21880,
264
+ 8: 12055,
265
+ 7: 4087,
266
+ 6: 1254,
267
+ 5: 392,
268
+ 4: 125,
269
+ 3: 40,
270
+ 2: 12,
271
+ 1: 3},
272
+ 24: {23: 2,
273
+ 22: 6,
274
+ 21: 16,
275
+ 20: 37,
276
+ 19: 81,
277
+ 18: 180,
278
+ 17: 382,
279
+ 16: 836,
280
+ 15: 1769,
281
+ 14: 3844,
282
+ 13: 8154,
283
+ 12: 16726,
284
+ 11: 27264,
285
+ 10: 32863,
286
+ 9: 26078,
287
+ 8: 12573,
288
+ 7: 4087,
289
+ 6: 1254,
290
+ 5: 392,
291
+ 4: 125,
292
+ 3: 40,
293
+ 2: 12,
294
+ 1: 3},
295
+ 25: {24: 3,
296
+ 23: 7,
297
+ 22: 20,
298
+ 21: 42,
299
+ 20: 100,
300
+ 19: 207,
301
+ 18: 468,
302
+ 17: 974,
303
+ 16: 2156,
304
+ 15: 4522,
305
+ 14: 9903,
306
+ 13: 20903,
307
+ 12: 38631,
308
+ 11: 54528,
309
+ 10: 56405,
310
+ 9: 35729,
311
+ 8: 13623,
312
+ 7: 4087,
313
+ 6: 1254,
314
+ 5: 392,
315
+ 4: 125,
316
+ 3: 40,
317
+ 2: 12,
318
+ 1: 3},
319
+ 26: {25: 2,
320
+ 24: 6,
321
+ 23: 16,
322
+ 22: 37,
323
+ 21: 81,
324
+ 20: 180,
325
+ 19: 382,
326
+ 18: 836,
327
+ 17: 1769,
328
+ 16: 3844,
329
+ 15: 8154,
330
+ 14: 17650,
331
+ 13: 35832,
332
+ 12: 60768,
333
+ 11: 77851,
334
+ 10: 70133,
335
+ 9: 38473,
336
+ 8: 13623,
337
+ 7: 4087,
338
+ 6: 1254,
339
+ 5: 392,
340
+ 4: 125,
341
+ 3: 40,
342
+ 2: 12,
343
+ 1: 3},
344
+ 27: {26: 3,
345
+ 25: 7,
346
+ 24: 20,
347
+ 23: 42,
348
+ 22: 100,
349
+ 21: 207,
350
+ 20: 468,
351
+ 19: 974,
352
+ 18: 2156,
353
+ 17: 4522,
354
+ 16: 9903,
355
+ 15: 20903,
356
+ 14: 45494,
357
+ 13: 83606,
358
+ 12: 125113,
359
+ 11: 140580,
360
+ 10: 103352,
361
+ 9: 44417,
362
+ 8: 13623,
363
+ 7: 4087,
364
+ 6: 1254,
365
+ 5: 392,
366
+ 4: 125,
367
+ 3: 40,
368
+ 2: 12,
369
+ 1: 3},
370
+ 28: {27: 2,
371
+ 26: 6,
372
+ 25: 16,
373
+ 24: 37,
374
+ 23: 81,
375
+ 22: 180,
376
+ 21: 382,
377
+ 20: 836,
378
+ 19: 1769,
379
+ 18: 3844,
380
+ 17: 8154,
381
+ 16: 17650,
382
+ 15: 37548,
383
+ 14: 77653,
384
+ 13: 133841,
385
+ 12: 183064,
386
+ 11: 181838,
387
+ 10: 115570,
388
+ 9: 45005,
389
+ 8: 13623,
390
+ 7: 4087,
391
+ 6: 1254,
392
+ 5: 392,
393
+ 4: 125,
394
+ 3: 40,
395
+ 2: 12,
396
+ 1: 3},
397
+ 29: {28: 3,
398
+ 27: 7,
399
+ 26: 20,
400
+ 25: 42,
401
+ 24: 100,
402
+ 23: 207,
403
+ 22: 468,
404
+ 21: 974,
405
+ 20: 2156,
406
+ 19: 4522,
407
+ 18: 9903,
408
+ 17: 20903,
409
+ 16: 45494,
410
+ 15: 96475,
411
+ 14: 183418,
412
+ 13: 282471,
413
+ 12: 344639,
414
+ 11: 286404,
415
+ 10: 143477,
416
+ 9: 46181,
417
+ 8: 13623,
418
+ 7: 4087,
419
+ 6: 1254,
420
+ 5: 392,
421
+ 4: 125,
422
+ 3: 40,
423
+ 2: 12,
424
+ 1: 3},
425
+ 30: {29: 2,
426
+ 28: 6,
427
+ 27: 16,
428
+ 26: 37,
429
+ 25: 81,
430
+ 24: 180,
431
+ 23: 382,
432
+ 22: 836,
433
+ 21: 1769,
434
+ 20: 3844,
435
+ 19: 8154,
436
+ 18: 17650,
437
+ 17: 37548,
438
+ 16: 81085,
439
+ 15: 166470,
440
+ 14: 295535,
441
+ 13: 422612,
442
+ 12: 462019,
443
+ 11: 333177,
444
+ 10: 148433,
445
+ 9: 46181,
446
+ 8: 13623,
447
+ 7: 4087,
448
+ 6: 1254,
449
+ 5: 392,
450
+ 4: 125,
451
+ 3: 40,
452
+ 2: 12,
453
+ 1: 3},
454
+ 31: {30: 3,
455
+ 29: 7,
456
+ 28: 20,
457
+ 27: 42,
458
+ 26: 100,
459
+ 25: 207,
460
+ 24: 468,
461
+ 23: 974,
462
+ 22: 2156,
463
+ 21: 4522,
464
+ 20: 9903,
465
+ 19: 20903,
466
+ 18: 45494,
467
+ 17: 96475,
468
+ 16: 209157,
469
+ 15: 396395,
470
+ 14: 637022,
471
+ 13: 825471,
472
+ 12: 771569,
473
+ 11: 445084,
474
+ 10: 159137,
475
+ 9: 46181,
476
+ 8: 13623,
477
+ 7: 4087,
478
+ 6: 1254,
479
+ 5: 392,
480
+ 4: 125,
481
+ 3: 40,
482
+ 2: 12,
483
+ 1: 3},
484
+ 32: {31: 2,
485
+ 30: 6,
486
+ 29: 16,
487
+ 28: 37,
488
+ 27: 81,
489
+ 26: 180,
490
+ 25: 382,
491
+ 24: 836,
492
+ 23: 1769,
493
+ 22: 3844,
494
+ 21: 8154,
495
+ 20: 17650,
496
+ 19: 37548,
497
+ 18: 81085,
498
+ 17: 172905,
499
+ 16: 359950,
500
+ 15: 647118,
501
+ 14: 970381,
502
+ 13: 1142431,
503
+ 12: 934520,
504
+ 11: 473494,
505
+ 10: 159137,
506
+ 9: 46181,
507
+ 8: 13623,
508
+ 7: 4087,
509
+ 6: 1254,
510
+ 5: 392,
511
+ 4: 125,
512
+ 3: 40,
513
+ 2: 12,
514
+ 1: 3},
515
+ 33: {32: 3,
516
+ 31: 7,
517
+ 30: 20,
518
+ 29: 42,
519
+ 28: 100,
520
+ 27: 207,
521
+ 26: 468,
522
+ 25: 974,
523
+ 24: 2156,
524
+ 23: 4522,
525
+ 22: 9903,
526
+ 21: 20903,
527
+ 20: 45494,
528
+ 19: 96475,
529
+ 18: 209157,
530
+ 17: 445014,
531
+ 16: 865071,
532
+ 15: 1420971,
533
+ 14: 1953451,
534
+ 13: 2008683,
535
+ 12: 1340353,
536
+ 11: 538045,
537
+ 10: 159137,
538
+ 9: 46181,
539
+ 8: 13623,
540
+ 7: 4087,
541
+ 6: 1254,
542
+ 5: 392,
543
+ 4: 125,
544
+ 3: 40,
545
+ 2: 12,
546
+ 1: 3},
547
+ 34: {33: 2,
548
+ 32: 6,
549
+ 31: 16,
550
+ 30: 37,
551
+ 29: 81,
552
+ 28: 180,
553
+ 27: 382,
554
+ 26: 836,
555
+ 25: 1769,
556
+ 24: 3844,
557
+ 23: 8154,
558
+ 22: 17650,
559
+ 21: 37548,
560
+ 20: 81085,
561
+ 19: 172905,
562
+ 18: 372820,
563
+ 17: 772103,
564
+ 16: 1419716,
565
+ 15: 2200428,
566
+ 14: 2779663,
567
+ 13: 2528086,
568
+ 12: 1475275,
569
+ 11: 543589,
570
+ 10: 159137,
571
+ 9: 46181,
572
+ 8: 13623,
573
+ 7: 4087,
574
+ 6: 1254,
575
+ 5: 392,
576
+ 4: 125,
577
+ 3: 40,
578
+ 2: 12,
579
+ 1: 3},
580
+ 35: {34: 3,
581
+ 33: 7,
582
+ 32: 20,
583
+ 31: 42,
584
+ 30: 100,
585
+ 29: 207,
586
+ 28: 468,
587
+ 27: 974,
588
+ 26: 2156,
589
+ 25: 4522,
590
+ 24: 9903,
591
+ 23: 20903,
592
+ 22: 45494,
593
+ 21: 96475,
594
+ 20: 209157,
595
+ 19: 445014,
596
+ 18: 962310,
597
+ 17: 1867575,
598
+ 16: 3167211,
599
+ 15: 4550074,
600
+ 14: 5107533,
601
+ 13: 3870863,
602
+ 12: 1794752,
603
+ 11: 555469,
604
+ 10: 159137,
605
+ 9: 46181,
606
+ 8: 13623,
607
+ 7: 4087,
608
+ 6: 1254,
609
+ 5: 392,
610
+ 4: 125,
611
+ 3: 40,
612
+ 2: 12,
613
+ 1: 3},
614
+ 36: {35: 2,
615
+ 34: 6,
616
+ 33: 16,
617
+ 32: 37,
618
+ 31: 81,
619
+ 30: 180,
620
+ 29: 382,
621
+ 28: 836,
622
+ 27: 1769,
623
+ 26: 3844,
624
+ 25: 8154,
625
+ 24: 17650,
626
+ 23: 37548,
627
+ 22: 81085,
628
+ 21: 172905,
629
+ 20: 372820,
630
+ 19: 796413,
631
+ 18: 1666843,
632
+ 17: 3095876,
633
+ 16: 4970764,
634
+ 15: 6633729,
635
+ 14: 6663680,
636
+ 13: 4418190,
637
+ 12: 1845836,
638
+ 11: 555469,
639
+ 10: 159137,
640
+ 9: 46181,
641
+ 8: 13623,
642
+ 7: 4087,
643
+ 6: 1254,
644
+ 5: 392,
645
+ 4: 125,
646
+ 3: 40,
647
+ 2: 12,
648
+ 1: 3},
649
+ 37: {36: 3,
650
+ 35: 7,
651
+ 34: 20,
652
+ 33: 42,
653
+ 32: 100,
654
+ 31: 207,
655
+ 30: 468,
656
+ 29: 974,
657
+ 28: 2156,
658
+ 27: 4522,
659
+ 26: 9903,
660
+ 25: 20903,
661
+ 24: 45494,
662
+ 23: 96475,
663
+ 22: 209157,
664
+ 21: 445014,
665
+ 20: 962310,
666
+ 19: 2052330,
667
+ 18: 4060680,
668
+ 17: 7005499,
669
+ 16: 10508770,
670
+ 15: 12665465,
671
+ 14: 10821953,
672
+ 13: 5763380,
673
+ 12: 1961369,
674
+ 11: 555469,
675
+ 10: 159137,
676
+ 9: 46181,
677
+ 8: 13623,
678
+ 7: 4087,
679
+ 6: 1254,
680
+ 5: 392,
681
+ 4: 125,
682
+ 3: 40,
683
+ 2: 12,
684
+ 1: 3},
685
+ 38: {37: 2,
686
+ 36: 6,
687
+ 35: 16,
688
+ 34: 37,
689
+ 33: 81,
690
+ 32: 180,
691
+ 31: 382,
692
+ 30: 836,
693
+ 29: 1769,
694
+ 28: 3844,
695
+ 27: 8154,
696
+ 26: 17650,
697
+ 25: 37548,
698
+ 24: 81085,
699
+ 23: 172905,
700
+ 22: 372820,
701
+ 21: 796413,
702
+ 20: 1715463,
703
+ 19: 3576992,
704
+ 18: 6760789,
705
+ 17: 11131563,
706
+ 16: 15644708,
707
+ 15: 17071836,
708
+ 14: 12828903,
709
+ 13: 6074933,
710
+ 12: 1961369,
711
+ 11: 555469,
712
+ 10: 159137,
713
+ 9: 46181,
714
+ 8: 13623,
715
+ 7: 4087,
716
+ 6: 1254,
717
+ 5: 392,
718
+ 4: 125,
719
+ 3: 40,
720
+ 2: 12,
721
+ 1: 3},
722
+ 39: {38: 3,
723
+ 37: 7,
724
+ 36: 20,
725
+ 35: 42,
726
+ 34: 100,
727
+ 33: 207,
728
+ 32: 468,
729
+ 31: 974,
730
+ 30: 2156,
731
+ 29: 4522,
732
+ 28: 9903,
733
+ 27: 20903,
734
+ 26: 45494,
735
+ 25: 96475,
736
+ 24: 209157,
737
+ 23: 445014,
738
+ 22: 962310,
739
+ 21: 2052330,
740
+ 20: 4430191,
741
+ 19: 8759139,
742
+ 18: 15486485,
743
+ 17: 24006862,
744
+ 16: 30858030,
745
+ 15: 29210465,
746
+ 14: 17926722,
747
+ 13: 6807852,
748
+ 12: 1961369,
749
+ 11: 555469,
750
+ 10: 159137,
751
+ 9: 46181,
752
+ 8: 13623,
753
+ 7: 4087,
754
+ 6: 1254,
755
+ 5: 392,
756
+ 4: 125,
757
+ 3: 40,
758
+ 2: 12,
759
+ 1: 3},
760
+ 40: {39: 2,
761
+ 38: 6,
762
+ 37: 16,
763
+ 36: 37,
764
+ 35: 81,
765
+ 34: 180,
766
+ 33: 382,
767
+ 32: 836,
768
+ 31: 1769,
769
+ 30: 3844,
770
+ 29: 8154,
771
+ 28: 17650,
772
+ 27: 37548,
773
+ 26: 81085,
774
+ 25: 172905,
775
+ 24: 372820,
776
+ 23: 796413,
777
+ 22: 1715463,
778
+ 21: 3669370,
779
+ 20: 7713316,
780
+ 19: 14698138,
781
+ 18: 24860637,
782
+ 17: 36397455,
783
+ 16: 42829652,
784
+ 15: 35925397,
785
+ 14: 19484729,
786
+ 13: 6864480,
787
+ 12: 1961369,
788
+ 11: 555469,
789
+ 10: 159137,
790
+ 9: 46181,
791
+ 8: 13623,
792
+ 7: 4087,
793
+ 6: 1254,
794
+ 5: 392,
795
+ 4: 125,
796
+ 3: 40,
797
+ 2: 12,
798
+ 1: 3},
799
+ 41: {40: 3,
800
+ 39: 7,
801
+ 38: 20,
802
+ 37: 42,
803
+ 36: 100,
804
+ 35: 207,
805
+ 34: 468,
806
+ 33: 974,
807
+ 32: 2156,
808
+ 31: 4522,
809
+ 30: 9903,
810
+ 29: 20903,
811
+ 28: 45494,
812
+ 27: 96475,
813
+ 26: 209157,
814
+ 25: 445014,
815
+ 24: 962310,
816
+ 23: 2052330,
817
+ 22: 4430191,
818
+ 21: 9464570,
819
+ 20: 18994094,
820
+ 19: 34045550,
821
+ 18: 54515804,
822
+ 17: 73853223,
823
+ 16: 76708059,
824
+ 15: 53520920,
825
+ 14: 23273349,
826
+ 13: 6991893,
827
+ 12: 1961369,
828
+ 11: 555469,
829
+ 10: 159137,
830
+ 9: 46181,
831
+ 8: 13623,
832
+ 7: 4087,
833
+ 6: 1254,
834
+ 5: 392,
835
+ 4: 125,
836
+ 3: 40,
837
+ 2: 12,
838
+ 1: 3},
839
+ 42: {41: 2,
840
+ 40: 6,
841
+ 39: 16,
842
+ 38: 37,
843
+ 37: 81,
844
+ 36: 180,
845
+ 35: 382,
846
+ 34: 836,
847
+ 33: 1769,
848
+ 32: 3844,
849
+ 31: 8154,
850
+ 30: 17650,
851
+ 29: 37548,
852
+ 28: 81085,
853
+ 27: 172905,
854
+ 26: 372820,
855
+ 25: 796413,
856
+ 24: 1715463,
857
+ 23: 3669370,
858
+ 22: 7898072,
859
+ 21: 16557686,
860
+ 20: 31988766,
861
+ 19: 55177416,
862
+ 18: 83959724,
863
+ 17: 105195927,
864
+ 16: 97727456,
865
+ 15: 60149113,
866
+ 14: 23830191,
867
+ 13: 6991893,
868
+ 12: 1961369,
869
+ 11: 555469,
870
+ 10: 159137,
871
+ 9: 46181,
872
+ 8: 13623,
873
+ 7: 4087,
874
+ 6: 1254,
875
+ 5: 392,
876
+ 4: 125,
877
+ 3: 40,
878
+ 2: 12,
879
+ 1: 3},
880
+ 43: {42: 3,
881
+ 41: 7,
882
+ 40: 20,
883
+ 39: 42,
884
+ 38: 100,
885
+ 37: 207,
886
+ 36: 468,
887
+ 35: 974,
888
+ 34: 2156,
889
+ 33: 4522,
890
+ 32: 9903,
891
+ 31: 20903,
892
+ 30: 45494,
893
+ 29: 96475,
894
+ 28: 209157,
895
+ 27: 445014,
896
+ 26: 962310,
897
+ 25: 2052330,
898
+ 24: 4430191,
899
+ 23: 9464570,
900
+ 22: 20404957,
901
+ 21: 40943562,
902
+ 20: 74812320,
903
+ 19: 122844418,
904
+ 18: 174518576,
905
+ 17: 196080750,
906
+ 16: 154386778,
907
+ 15: 76768508,
908
+ 14: 25134208,
909
+ 13: 6991893,
910
+ 12: 1961369,
911
+ 11: 555469,
912
+ 10: 159137,
913
+ 9: 46181,
914
+ 8: 13623,
915
+ 7: 4087,
916
+ 6: 1254,
917
+ 5: 392,
918
+ 4: 125,
919
+ 3: 40},
920
+ 44: {43: 2,
921
+ 42: 6,
922
+ 41: 16,
923
+ 40: 37,
924
+ 39: 81,
925
+ 38: 180,
926
+ 37: 382,
927
+ 36: 836,
928
+ 35: 1769,
929
+ 34: 3844,
930
+ 33: 8154,
931
+ 32: 17650,
932
+ 31: 37548,
933
+ 30: 81085,
934
+ 29: 172905,
935
+ 28: 372820,
936
+ 27: 796413,
937
+ 26: 1715463,
938
+ 25: 3669370,
939
+ 24: 7898072,
940
+ 23: 16910402,
941
+ 22: 35674291,
942
+ 21: 69384848,
943
+ 20: 122221119,
944
+ 19: 191816100,
945
+ 18: 254319951,
946
+ 17: 258090741,
947
+ 16: 179755225,
948
+ 15: 80336072,
949
+ 14: 25134208,
950
+ 13: 6991893,
951
+ 12: 1961369,
952
+ 11: 555469,
953
+ 10: 159137,
954
+ 9: 46181,
955
+ 8: 13623,
956
+ 7: 4087,
957
+ 6: 1254,
958
+ 5: 392,
959
+ 4: 125,
960
+ 3: 40},
961
+ 45: {44: 3,
962
+ 43: 7,
963
+ 42: 20,
964
+ 41: 42,
965
+ 40: 100,
966
+ 39: 207,
967
+ 38: 468,
968
+ 37: 974,
969
+ 36: 2156,
970
+ 35: 4522,
971
+ 34: 9903,
972
+ 33: 20903,
973
+ 32: 45494,
974
+ 31: 96475,
975
+ 30: 209157,
976
+ 29: 445014,
977
+ 28: 962310,
978
+ 27: 2052330,
979
+ 26: 4430191,
980
+ 25: 9464570,
981
+ 24: 20404957,
982
+ 23: 43647717,
983
+ 22: 88608749,
984
+ 21: 163720027}
985
+ }