{"id":"circle-packing-square","name":"Equal circles in a square","family":"combinatorics","description":"Place n circles in the unit square [0, 1]² as large as possible (equal). Scored against the best-known Packomania records; anything above 1.0 on an n is a new record candidate.","metric":"record_ratio","direction":"maximize","tolerance":0.05,"eval_timeout_seconds":600,"agent_timeout_seconds":1800,"mutable":["pack.py"],"runtime":"python>=3.11, standard library only (math, random, itertools, functools, collections, heapq, time)","decomposable":true,"status":"active","captain":null,"parent_problem":null,"program_md":"# Equal circles in a square\n\n## Goal\n\n`pack.py` exposes `pack(n: int, time_budget: float, seed: int) -> list[tuple[float, ...]]`: the\ncentres of `n` circles inside the unit square [0, 1]² (2 coordinates each). All objects share one radius, which the eval derives as\n\n    r = min( distance of every centre to the boundary, half the smallest pairwise distance )\n\nYou do not return a radius; the eval derives the largest feasible one from your centres, so there\nis nothing to fudge. Make it as large as possible for every `n` you are handed.\n\n## Metric\n\nThe eval runs your `pack` on a fixed set of values, `n = 8, 13, 19, 26, 31, 37, 44, 52, 68, 85, 101, 120, 150, 200`, each with the given time\nbudget (12 s by default), validates the result, and reports\n\n    metric = mean over n of  value(n) / record(n)\n\nwhere `record(n)` is the best-known value on Packomania (Eckard Specht's table, maintained since\n2011; table `csq`, fetched 2026-09-06). `1.0` matches the record; above `1.0` is a new record\ncandidate, listed under `records_beaten`. A hub-verified one is worth reporting to Packomania\nwith your ledger entry as provenance.\n\nThe hub verifies with a different `seed`, so your method must be robust to its starting point.\nThe full records table (n up to 9996) is in `eval.py`.\n\n## Constraints\n\n- Standard library only. No numpy, no scipy, no subprocess. The eval rejects other imports.\n- Respect `time_budget` (seconds, per call). The eval kills the run if the whole set overruns.\n- Deterministic given `seed`: use `random.Random(seed)`, not the global RNG.\n- Every centre must lie inside the container. Objects may touch; they may not overlap.\n\n## Where the frontier is\n\nn <= 30 are proven optimal. Above that every entry is \"best known\", found by numerical search, and Packomania's\nhistory shows improvements landing mostly at larger `n`. Budget your time per `n` deliberately;\nthe O(n²) checks and the number of local optima both grow.\n\n## Ideas that are known to matter (check the journal before repeating one)\n\n- Energy minimisation: treat objects as repelling points, minimise a soft overlap penalty with\n  gradient descent, then polish by maximising the minimum scaled distance directly.\n- Basin hopping / perturb-and-repolish from the current best; keep a small population.\n- Start from structured arrangements (lattices, rings, shells) as well as random.\n- Identify the binding contacts and solve the equal-distance conditions exactly for the last digits.\n- Spend more of the budget on the `n` values whose ratio is lowest.\n\nWrite one honest line in `NOTES.md`: the idea, and which `n` it helped.\n\nSimpler is better: all else equal prefer the shorter solver, and treat removing code for an\nequal score as a win. Log every experiment, including discards, in your results.tsv.\n","eval_py":"\"\"\"Eval for circle-packing-square. Prints one JSON line: {\"metric\": record_ratio, ...}.\n\nGenerated by tools/packomania_import.py from https://packomania.com/csq/csq.html on 2026-09-06.\n\nEnv:\n  ZT_EVAL_SEED             seed handed to pack() (the n set is fixed so scores are comparable)\n  ZT_EVAL_NS               comma-separated n values (default \"8,13,19,26,31,37,44,52,68,85,101,120,150,200\")\n  ZT_EVAL_PER_N_SECONDS    time budget handed to pack() per n (default 12)\n\"\"\"\n\nfrom __future__ import annotations\n\nimport ast\nimport itertools\nimport json\nimport math\nimport os\nimport random\nimport sys\nimport time\nfrom pathlib import Path\n\nSEED = os.environ.get(\"ZT_EVAL_SEED\", \"dev-seed\")\nNS = [int(x) for x in os.environ.get(\"ZT_EVAL_NS\", \"8,13,19,26,31,37,44,52,68,85,101,120,150,200\").split(\",\")]\nBUDGET = float(os.environ.get(\"ZT_EVAL_PER_N_SECONDS\", \"12\"))\nSTDLIB_ALLOW = {\"math\", \"random\", \"itertools\", \"functools\", \"collections\", \"heapq\", \"time\", \"sys\", \"typing\", \"operator\"}\nEPS = 1e-9\nDIM = 2\n\n# Best-known values: equal objects in the unit square [0, 1]². Source: Packomania (E. Specht),\n# https://packomania.com/csq/csq.html, fetched 2026-09-06. n <= 30 are proven optimal.\nRECORDS = {\n    1: 0.500000000000, 2: 0.292893218813, 3: 0.254333095030, 4: 0.250000000000, 5: 0.207106781187,\n    6: 0.187680601147, 7: 0.174457630187, 8: 0.170540688701, 9: 0.166666666667, 10: 0.148204322565,\n    11: 0.142399237696, 12: 0.139958844038, 13: 0.133993513499, 14: 0.129331793710, 15: 0.127166547515,\n    16: 0.125000000000, 17: 0.117196742783, 18: 0.115521432464, 19: 0.112265437571, 20: 0.111382347512,\n    21: 0.106860212352, 22: 0.105665296757, 23: 0.102802323380, 24: 0.101381800432, 25: 0.100000000000,\n    26: 0.096362339010, 27: 0.095420001748, 28: 0.093672833833, 29: 0.092463144040, 30: 0.091671057986,\n    31: 0.089338333351, 32: 0.087858157088, 33: 0.087230014136, 34: 0.085270344351, 35: 0.084290712122,\n    36: 0.083333333333, 37: 0.082089766429, 38: 0.081709776125, 39: 0.081367527047, 40: 0.079186752517,\n    41: 0.078450210117, 42: 0.077801502898, 43: 0.076339810580, 44: 0.075781986018, 45: 0.074727343687,\n    46: 0.074272199909, 47: 0.073113151271, 48: 0.072432291280, 49: 0.071692681704, 50: 0.071377103865,\n    51: 0.071043138116, 52: 0.070957693073, 53: 0.069947252562, 54: 0.068645540105, 55: 0.068055360559,\n    56: 0.067532596322, 57: 0.067004873106, 58: 0.066232983746, 59: 0.065807496904, 60: 0.065030412648,\n    61: 0.064666268906, 62: 0.064252183294, 63: 0.064011528205, 64: 0.063458986813, 65: 0.063203957072,\n    66: 0.062862256903, 67: 0.062587429542, 68: 0.062520077998, 69: 0.061383571686, 70: 0.060596693631,\n    71: 0.060096531352, 72: 0.059801002127, 73: 0.059366050583, 74: 0.059082376337, 75: 0.058494535281,\n    76: 0.058198524936, 77: 0.057852577916, 78: 0.057702476735, 79: 0.057508497795, 80: 0.057370684147,\n    81: 0.056869921112, 82: 0.056512271650, 83: 0.056129373022, 84: 0.055856665888, 85: 0.055680181768,\n    86: 0.055572999412, 87: 0.054695259721, 88: 0.054406636913, 89: 0.053947040858, 90: 0.053749948307,\n    91: 0.053496719884, 92: 0.053317085176, 93: 0.052926433388, 94: 0.052795362727, 95: 0.052420366496,\n    96: 0.052275425470, 97: 0.052114795502, 98: 0.052032987703, 99: 0.051978606450, 100: 0.051401071774,\n    101: 0.051078356337, 102: 0.050774421024, 103: 0.050534497608, 104: 0.050348792812, 105: 0.050242948365,\n    106: 0.050015200426, 107: 0.049506166856, 108: 0.049243520787, 109: 0.049060056454, 110: 0.048779469321,\n    111: 0.048643936345, 112: 0.048445405903, 113: 0.048257588494, 114: 0.048167755522, 115: 0.047914247537,\n    116: 0.047775960994, 117: 0.047643526600, 118: 0.047572362680, 119: 0.047544646218, 120: 0.047529921591,\n    121: 0.046891999625, 122: 0.046626691142, 123: 0.046348795249, 124: 0.046099752157, 125: 0.045978336543,\n    126: 0.045828714873, 127: 0.045663869682, 128: 0.045473271987, 129: 0.045200351062, 130: 0.045043162020,\n    131: 0.044887232368, 132: 0.044746370935, 133: 0.044609641580, 134: 0.044564244207, 135: 0.044431198144,\n    136: 0.044353302578, 137: 0.044293023546, 138: 0.044032136193, 139: 0.043945742388, 140: 0.043804839098,\n    141: 0.043658469169, 142: 0.043576632733, 143: 0.043530511915, 144: 0.043003784109, 145: 0.042871356703,\n    146: 0.042651286119, 147: 0.042446991405, 148: 0.042330220755, 149: 0.042251862707, 150: 0.042145465901,\n    151: 0.041977097109, 152: 0.041779803129, 153: 0.041658665151, 154: 0.041551929851, 155: 0.041438039286,\n    156: 0.041299368525, 157: 0.041220349237, 158: 0.041159693497, 159: 0.041114183404, 160: 0.041044595831,\n    161: 0.041010347769, 162: 0.040799112620, 163: 0.040681204445, 164: 0.040525052369, 165: 0.040377544085,\n    166: 0.040237727637, 167: 0.040148441368, 168: 0.040102400734, 169: 0.039805392979, 170: 0.039599730392,\n    171: 0.039485746085, 172: 0.039363165909, 173: 0.039251533454, 174: 0.039179543023, 175: 0.039061099168,\n    176: 0.038990813447, 177: 0.038859553271, 178: 0.038730562461, 179: 0.038682568339, 180: 0.038620111853,\n    181: 0.038498170228, 182: 0.038417680974, 183: 0.038354807406, 184: 0.038281672786, 185: 0.038245248837,\n    186: 0.038233890381, 187: 0.038201064545, 188: 0.038188623136, 189: 0.037866552704, 190: 0.037695999979,\n    191: 0.037544127565, 192: 0.037444335367, 193: 0.037324052159, 194: 0.037262710676, 195: 0.037213368627,\n    196: 0.037047372945, 197: 0.036871672759, 198: 0.036771687172, 199: 0.036667425045, 200: 0.036612798904,\n    201: 0.036569597637, 202: 0.036484958827, 203: 0.036376075461, 204: 0.036332744313, 205: 0.036274927524,\n    206: 0.036166601952, 207: 0.036130676674, 208: 0.036087769962, 209: 0.035950107428, 210: 0.035886972622,\n    211: 0.035848467614, 212: 0.035786659661, 213: 0.035756041520, 214: 0.035738881275, 215: 0.035714978308,\n    216: 0.035714425579, 217: 0.035477482915, 218: 0.035215887578, 219: 0.035083486243, 220: 0.034989964326,\n    221: 0.034906486796, 222: 0.034856968841, 223: 0.034788749085, 224: 0.034733061830, 225: 0.034634791476,\n    226: 0.034509845369, 227: 0.034431481836, 228: 0.034348379320, 229: 0.034314247442, 230: 0.034262839200,\n    231: 0.034189747427, 232: 0.034092906035, 233: 0.034046705680, 234: 0.034014418544, 235: 0.033999152061,\n    236: 0.033917735259, 237: 0.033900239881, 238: 0.033865664989, 239: 0.033760033962, 240: 0.033708305252,\n    241: 0.033677882002, 242: 0.033610115015, 243: 0.033488851095, 244: 0.033430853621, 245: 0.033397151532,\n    246: 0.033369947187, 247: 0.033355868700, 248: 0.033130721202, 249: 0.032970267168, 250: 0.032879800210,\n    251: 0.032799128200, 252: 0.032728301742, 253: 0.032688906646, 254: 0.032648666515, 255: 0.032585607475,\n    256: 0.032547055183, 257: 0.032448112481, 258: 0.032371637883, 259: 0.032300362335, 260: 0.032282782667,\n    261: 0.032236732256, 262: 0.032193997556, 263: 0.032117966570, 264: 0.032053007180, 265: 0.032033301947,\n    266: 0.031996938875, 267: 0.031987707699, 268: 0.031958812290, 269: 0.031933820433, 270: 0.031917030449,\n    271: 0.031808929241, 272: 0.031692676456, 273: 0.031640534564, 274: 0.031571421328, 275: 0.031518203205,\n    276: 0.031411766166, 277: 0.031371952835, 278: 0.031351282721, 279: 0.031318428037, 280: 0.031270603954,\n    281: 0.031074447262, 282: 0.031010282927, 283: 0.030932031758, 284: 0.030891206806, 285: 0.030825286710,\n    286: 0.030813197608, 287: 0.030766801735, 288: 0.030701217079, 289: 0.030667569315, 290: 0.030656351559,\n    291: 0.030568677884, 292: 0.030514433105, 293: 0.030484322113, 294: 0.030462566339, 295: 0.030443975955,\n    296: 0.030358258838, 297: 0.030312058828, 298: 0.030280337791, 299: 0.030249270165, 300: 0.030219555704,\n    301: 0.030204920385, 302: 0.030198092777, 303: 0.030187228866, 304: 0.030181934822, 305: 0.029970950442,\n    306: 0.029909873741, 307: 0.029825674867, 308: 0.029778189994, 309: 0.029714980223, 310: 0.029667538377,\n    311: 0.029617500097, 312: 0.029585380812, 313: 0.029568610968, 314: 0.029530644576, 315: 0.029431366308,\n    316: 0.029354360881, 317: 0.029291802383, 318: 0.029230101481, 319: 0.029201597956, 320: 0.029157699142,\n    321: 0.029150995276, 322: 0.029100438285, 323: 0.029032681230, 324: 0.029011328645, 325: 0.028988936743,\n    326: 0.028959527897, 327: 0.028908769449, 328: 0.028878982557, 329: 0.028868354507, 330: 0.028847219816,\n    331: 0.028770919753, 332: 0.028743530230, 333: 0.028715443035, 334: 0.028695843589, 335: 0.028662482601,\n    336: 0.028634381355, 337: 0.028618729402, 338: 0.028592170345, 339: 0.028581805791, 340: 0.028577667513,\n    341: 0.028347534512, 342: 0.028288549062, 343: 0.028229027477, 344: 0.028173018409, 345: 0.028123175760,\n    346: 0.028077491848, 347: 0.028047896842, 348: 0.028022590105, 349: 0.027996363819, 350: 0.027955246163,\n    351: 0.027937896259, 352: 0.027842943258, 353: 0.027789511391, 354: 0.027772889615, 355: 0.027719586701,\n    356: 0.027702336233, 357: 0.027667185755, 358: 0.027656747488, 359: 0.027613568340, 360: 0.027551201637,\n    361: 0.027536056348, 362: 0.027509408819, 363: 0.027498838593, 364: 0.027496759927, 365: 0.027449222878,\n    366: 0.027435605764, 367: 0.027426520717, 368: 0.027415060274, 369: 0.027340937676, 370: 0.027309791000,\n    371: 0.027299513013, 372: 0.027251937959, 373: 0.027186402083, 374: 0.027129525451, 375: 0.027096038967,\n    376: 0.027075404874, 377: 0.027062542443, 378: 0.027053065465, 379: 0.026908224962, 380: 0.026842230420,\n    381: 0.026796758406, 382: 0.026760996746, 383: 0.026718604354, 384: 0.026680793128, 385: 0.026652246860,\n    386: 0.026628573993, 387: 0.026622659024, 388: 0.026577069065, 389: 0.026547583860, 390: 0.026527598557,\n    391: 0.026476212294, 392: 0.026429459107, 393: 0.026385580554, 394: 0.026364166235, 395: 0.026343336909,\n    396: 0.026332973577, 397: 0.026299700985, 398: 0.026278793875, 399: 0.026227153115, 400: 0.026202507077,\n    401: 0.026182872375, 402: 0.026170247489, 403: 0.026163882021, 404: 0.026150093746, 405: 0.026134174398,\n    406: 0.026132301429, 407: 0.026124675708, 408: 0.026042111908, 409: 0.025991208757, 410: 0.025934976580,\n    411: 0.025905893192, 412: 0.025859991857, 413: 0.025813635952, 414: 0.025758914801, 415: 0.025746403825,\n    416: 0.025721164520, 417: 0.025713998519, 418: 0.025698152553, 419: 0.025633120545, 420: 0.025536426715,\n    421: 0.025495958536, 422: 0.025448621093, 423: 0.025426728760, 424: 0.025393070737, 425: 0.025380826331,\n    426: 0.025374019749, 427: 0.025360723546, 428: 0.025315851417, 429: 0.025283982015, 430: 0.025268489244,\n    431: 0.025245482167, 432: 0.025214891203, 433: 0.025182960489, 434: 0.025156224969, 435: 0.025151763316,\n    436: 0.025137280789, 437: 0.025126198386, 438: 0.025076376038, 439: 0.025053974795, 440: 0.025035084179,\n    441: 0.025016911553, 442: 0.025003907110, 443: 0.024983709840, 444: 0.024964396854, 445: 0.024960936662,\n    446: 0.024958968179, 447: 0.024953884547, 448: 0.024952872272, 449: 0.024950873874, 450: 0.024795348186,\n    451: 0.024752261782, 452: 0.024684998971, 453: 0.024660016541, 454: 0.024607895226, 455: 0.024575989548,\n    456: 0.024562020390, 457: 0.024524984373, 458: 0.024515171644, 459: 0.024513371230, 460: 0.024486573769,\n    461: 0.024441428639, 462: 0.024391942590, 463: 0.024349975251, 464: 0.024296698441, 465: 0.024271440854,\n    466: 0.024255090232, 467: 0.024243556021, 468: 0.024236805709, 469: 0.024235213227, 470: 0.024184447848,\n    471: 0.024157540413, 472: 0.024143840639, 473: 0.024131514159, 474: 0.024119400159, 475: 0.024103874925,\n    476: 0.024077681166, 477: 0.024054689615, 478: 0.024048895761, 479: 0.024035830987, 480: 0.024028512031,\n    481: 0.023977380615, 482: 0.023957551945, 483: 0.023944174754, 484: 0.023934440014, 485: 0.023922803093,\n    486: 0.023893721972, 487: 0.023857161569, 488: 0.023845410070, 489: 0.023828586235, 490: 0.023820903874,\n    491: 0.023815903727, 492: 0.023813642711, 493: 0.023764621202, 494: 0.023629124104, 495: 0.023586537978,\n    496: 0.023554297005, 497: 0.023531293096, 498: 0.023503954793, 499: 0.023473661712, 500: 0.023455498994,\n    501: 0.023428674142, 502: 0.023428674142, 503: 0.023412863281, 504: 0.023392448423, 505: 0.023381269012,\n    506: 0.023313394223, 507: 0.023272252747, 508: 0.023245657171, 509: 0.023232476941, 510: 0.023215974842,\n    511: 0.023211176370, 512: 0.023202626663, 513: 0.023201641296, 514: 0.023189080109, 515: 0.023142054746,\n    516: 0.023107205410, 517: 0.023107205410, 518: 0.023087483654, 519: 0.023080842643, 520: 0.023063647836,\n    521: 0.023047056563, 522: 0.023041758644, 523: 0.023041149347, 524: 0.023032646779, 525: 0.023029125130,\n    526: 0.022969950492, 527: 0.022954745589, 528: 0.022949448069, 529: 0.022922741116, 530: 0.022901044711,\n    531: 0.022861038376, 532: 0.022821324194, 533: 0.022793607203, 534: 0.022773461611, 535: 0.022769965420,\n    536: 0.022759408254, 537: 0.022751675279, 538: 0.022749544274, 539: 0.022686500502, 540: 0.022588801954,\n    541: 0.022562764383, 542: 0.022539327063, 543: 0.022496992087, 544: 0.022488180751, 545: 0.022480271277,\n    546: 0.022462245725, 547: 0.022462077421, 548: 0.022434757177, 549: 0.022427445343, 550: 0.022404323829,\n    551: 0.022388036256, 552: 0.022379588704, 553: 0.022334001644, 554: 0.022304070378, 555: 0.022286962858,\n    556: 0.022266074863, 557: 0.022263280729, 558: 0.022259606503, 559: 0.022257231310, 560: 0.022233704196,\n    561: 0.022208890804, 562: 0.022187538886, 563: 0.022169923634, 564: 0.022158741869, 565: 0.022141959169,\n    566: 0.022136568571, 567: 0.022132787083, 568: 0.022121177733, 569: 0.022117531607, 570: 0.022116457958,\n    571: 0.022113457624, 572: 0.022111508169, 573: 0.021987106029, 574: 0.021965062350, 575: 0.021954765350,\n    576: 0.021946379522, 577: 0.021917861484, 578: 0.021892857779, 579: 0.021861232920, 580: 0.021836133061,\n    581: 0.021828271331, 582: 0.021811311071, 583: 0.021810167340, 584: 0.021791889317, 585: 0.021789742620,\n    586: 0.021760625233, 587: 0.021702032283, 588: 0.021655114661, 589: 0.021631334369, 590: 0.021608341570,\n    591: 0.021592965285, 592: 0.021577543719, 593: 0.021566293520, 594: 0.021563560733, 595: 0.021563409252,\n    596: 0.021549958406, 597: 0.021508782311, 598: 0.021498225137, 599: 0.021491273764, 600: 0.021479376754,\n    601: 0.021458665110, 602: 0.021446364265, 603: 0.021428184556, 604: 0.021411843560, 605: 0.021408008609,\n    606: 0.021402837092, 607: 0.021390472329, 608: 0.021390034473, 609: 0.021350223557, 610: 0.021331830854,\n    611: 0.021319992461, 612: 0.021314280153, 613: 0.021302790880, 614: 0.021290527138, 615: 0.021277444688,\n    616: 0.021273095430, 617: 0.021269070386, 618: 0.021267047925, 619: 0.021266007591, 620: 0.021265699935,\n    621: 0.021265291745, 622: 0.021127128010, 623: 0.021085869585, 624: 0.021064956712, 625: 0.021051161836,\n    626: 0.021030430930, 627: 0.021017576521, 628: 0.020994105259, 629: 0.020969505080, 630: 0.020969505080,\n    631: 0.020959318050, 632: 0.020935502333, 633: 0.020934774308, 634: 0.020913484384, 635: 0.020912613611,\n    636: 0.020879130118, 637: 0.020830132165, 638: 0.020813538089, 639: 0.020799876400, 640: 0.020782647960,\n    641: 0.020756037717, 642: 0.020747393642, 643: 0.020741713859, 644: 0.020738329196, 645: 0.020738319116,\n    646: 0.020703772903, 647: 0.020684792627, 648: 0.020662926049, 649: 0.020652829701, 650: 0.020648544504,\n    651: 0.020645802220, 652: 0.020637773745, 653: 0.020609031061, 654: 0.020605861685, 655: 0.020604878781,\n    656: 0.020604166853, 657: 0.020594273639, 658: 0.020590068151, 659: 0.020542609385, 660: 0.020534535567,\n    661: 0.020527337551, 662: 0.020523003813, 663: 0.020516662807, 664: 0.020476860675, 665: 0.020465670644,\n    666: 0.020447329211, 667: 0.020444799930, 668: 0.020436021456, 669: 0.020426299032, 670: 0.020419936137,\n    671: 0.020416464988, 672: 0.020415001312, 673: 0.020307142547, 674: 0.020264252866, 675: 0.020239102470,\n    676: 0.020221011990, 677: 0.020203327309, 678: 0.020194809421, 679: 0.020186840313, 680: 0.020161688472,\n    681: 0.020155345773, 682: 0.020153966359, 683: 0.020153913488, 684: 0.020152025262, 685: 0.020122730773,\n    686: 0.020112435108, 687: 0.020101831147, 688: 0.020070322193, 689: 0.020050776030, 690: 0.020031640732,\n    691: 0.020019129167, 692: 0.019999667234, 693: 0.019988195954, 694: 0.019982048949, 695: 0.019978476283,\n    696: 0.019977772691, 697: 0.019969366796, 698: 0.019945157017, 699: 0.019919281092, 700: 0.019903642828,\n    701: 0.019898772467, 702: 0.019892001125, 703: 0.019886303390, 704: 0.019884811113, 705: 0.019870507569,\n    706: 0.019864265515, 707: 0.019861212380, 708: 0.019860543412, 709: 0.019856229327, 710: 0.019855168965,\n    711: 0.019852804252, 712: 0.019798426783, 713: 0.019786635079, 714: 0.019778790877, 715: 0.019754598432,\n    716: 0.019744116577, 717: 0.019729498846, 718: 0.019680399826, 719: 0.019667163352, 720: 0.019653228001,\n    721: 0.019649219658, 722: 0.019638919375, 723: 0.019631162040, 724: 0.019630679662, 725: 0.019630440362,\n    726: 0.019559256364, 727: 0.019526603591, 728: 0.019507618009, 729: 0.019492348613, 730: 0.019478668457,\n    731: 0.019463751269, 732: 0.019449757077, 733: 0.019436243477, 734: 0.019428093192, 735: 0.019424543862,\n    736: 0.019424328974, 737: 0.019419993522, 738: 0.019386437786, 739: 0.019376899607, 740: 0.019365818519,\n    741: 0.019350948992, 742: 0.019334143487, 743: 0.019328546886, 744: 0.019315824158, 745: 0.019296883009,\n    746: 0.019288491861, 747: 0.019278594450, 748: 0.019278594450, 749: 0.019275366935, 750: 0.019274486934,\n    751: 0.019252152636, 752: 0.019231591163, 753: 0.019222253264, 754: 0.019213282440, 755: 0.019208394896,\n    756: 0.019198670491, 757: 0.019185844726, 758: 0.019180304690, 759: 0.019179175559, 760: 0.019176657283,\n    761: 0.019174270000, 762: 0.019171209734, 763: 0.019169468301, 764: 0.019168316788, 765: 0.019167470091,\n    766: 0.019099119667, 767: 0.019076724543, 768: 0.019044841423, 769: 0.019031360338, 770: 0.019018300494,\n    771: 0.019005946872, 772: 0.018988239392, 773: 0.018975558707, 774: 0.018956767970, 775: 0.018935577256,\n    776: 0.018931771549, 777: 0.018926211846, 778: 0.018913072059, 779: 0.018913072059, 780: 0.018913072059,\n    781: 0.018856776835, 782: 0.018835713503, 783: 0.018809364382, 784: 0.018781197240, 785: 0.018770901578,\n    791: 0.018749668727, 792: 0.018749663182, 793: 0.018735706824, 794: 0.018706188665, 795: 0.018698383352,\n    796: 0.018687461188, 797: 0.018685176046, 798: 0.018682263356, 799: 0.018666015597, 800: 0.018637592286,\n    801: 0.018635391208, 802: 0.018629369564, 803: 0.018629275945, 804: 0.018622072449, 805: 0.018621354161,\n    806: 0.018621354161, 807: 0.018588637410, 808: 0.018582143353, 809: 0.018575251061, 810: 0.018570788151,\n    811: 0.018563022541, 812: 0.018559333452, 813: 0.018552912033, 814: 0.018539792525, 815: 0.018534095420,\n    816: 0.018526265575, 817: 0.018525328999, 818: 0.018519792536, 819: 0.018519180311, 820: 0.018518667574,\n    821: 0.018518667574, 822: 0.018518667574, 823: 0.018416755547, 824: 0.018398955083, 825: 0.018375055083,\n    826: 0.018344305982, 827: 0.018344305982, 828: 0.018320904416, 829: 0.018314779467, 830: 0.018306211140,\n    831: 0.018288240318, 832: 0.018275594276, 833: 0.018270293209, 834: 0.018269433373, 835: 0.018267843164,\n    836: 0.018251564483, 837: 0.018251564483, 840: 0.018147055123, 842: 0.018146010881, 843: 0.018140276199,\n    844: 0.018131169971, 845: 0.018131169971, 846: 0.018124449049, 847: 0.018123646916, 848: 0.018123603968,\n    849: 0.018104171087, 850: 0.018084171323, 851: 0.018079434858, 852: 0.018071123461, 853: 0.018069122123,\n    854: 0.018060251919, 855: 0.018056671611, 856: 0.018046804744, 857: 0.018042202800, 858: 0.018042202800,\n    859: 0.018030310282, 860: 0.018022841819, 861: 0.018020066048, 862: 0.018016061040, 863: 0.018016060589,\n    864: 0.018013127153, 869: 0.017960738713, 870: 0.017957737177, 871: 0.017945258882, 872: 0.017917029375,\n    873: 0.017893817500, 874: 0.017882639785, 875: 0.017872135469, 876: 0.017868324323, 877: 0.017868157844,\n    880: 0.017864765743, 881: 0.017857282280, 882: 0.017763790806, 883: 0.017740970476, 884: 0.017734787714,\n    885: 0.017723199556, 886: 0.017718349805, 887: 0.017712506034, 888: 0.017690077964, 889: 0.017673837126,\n    890: 0.017673205784, 891: 0.017673205784, 892: 0.017661191013, 893: 0.017661051361, 894: 0.017657317903,\n    895: 0.017642908534, 896: 0.017639993169, 901: 0.017564894799, 902: 0.017552623587, 906: 0.017540748351,\n    907: 0.017540748351, 908: 0.017529951010, 909: 0.017475080280, 912: 0.017448731828, 918: 0.017446643672,\n    919: 0.017446643672, 920: 0.017446643672, 924: 0.017446643672, 928: 0.017336280204, 929: 0.017324327863,\n    930: 0.017293344705, 931: 0.017289414447, 935: 0.017263516563, 936: 0.017263516563, 940: 0.017263516563,\n    941: 0.017263516563, 942: 0.017241517285, 943: 0.017131519300, 944: 0.017122936569, 945: 0.017122936569,\n    946: 0.017109200810, 947: 0.017103881743, 948: 0.017089940455, 949: 0.017089940455, 950: 0.017089940455,\n    951: 0.017089940455, 952: 0.017089940455, 953: 0.017079170064, 954: 0.017079170064, 955: 0.017069112080,\n    956: 0.017068634303, 957: 0.017068634303, 958: 0.017045834023, 959: 0.017041353520, 960: 0.017037921377,\n    961: 0.017032750752, 962: 0.017022990888, 963: 0.017010440135, 964: 0.017005628862, 965: 0.017001385901,\n    966: 0.016998245526, 967: 0.016996855796, 968: 0.016996855796, 969: 0.016996855796, 970: 0.016969061306,\n    971: 0.016964851815, 972: 0.016957277400, 973: 0.016954325572, 974: 0.016946037943, 975: 0.016943158203,\n    976: 0.016939745285, 977: 0.016933711401, 978: 0.016923824211, 979: 0.016922491525, 980: 0.016921736239,\n    981: 0.016920815393, 982: 0.016917631480, 983: 0.016916758372, 984: 0.016916437949, 985: 0.016915710707,\n    986: 0.016915306733, 990: 0.016714637930, 991: 0.016714637930, 992: 0.016708005718, 998: 0.016708005718,\n    999: 0.016708005718, 1003: 0.016708005718, 1008: 0.016585694387, 1015: 0.016585694387, 1020: 0.016534106582,\n    1026: 0.016488244122, 1027: 0.016488244122, 1033: 0.016487402555, 1034: 0.016434106901, 1036: 0.016411994000,\n    1037: 0.016409207802, 1044: 0.016395351841, 1049: 0.016395351841, 1050: 0.016394884161, 1054: 0.016227613759,\n    1055: 0.016227613759, 1056: 0.016199847258, 1062: 0.016199330517, 1063: 0.016199330517, 1071: 0.016108449951,\n    1073: 0.016108449951, 1080: 0.016094512643, 1088: 0.016009708156, 1092: 0.016009708156, 1093: 0.016009708156,\n    1098: 0.016009708156, 1099: 0.015969687751, 1102: 0.015899133036, 1105: 0.015884270004, 1110: 0.015884270004,\n    1116: 0.015877260253, 1121: 0.015761163202, 1122: 0.015736554545, 1129: 0.015736554545, 1130: 0.015719348689,\n    1134: 0.015701655341, 1140: 0.015637205690, 1147: 0.015633860480, 1151: 0.015581628279, 1152: 0.015581628279,\n    1159: 0.015562096432, 1160: 0.015562096432, 1166: 0.015560719326, 1167: 0.015495650323, 1170: 0.015422254739,\n    1178: 0.015415157446, 1188: 0.015300057013, 1190: 0.015300057013, 1191: 0.015289595775, 1197: 0.015289595775,\n    1198: 0.015283455824, 1206: 0.015200733700, 1209: 0.015200733700, 1216: 0.015200733700, 1220: 0.015139219543,\n    1221: 0.015139219543, 1224: 0.015136750512, 1229: 0.015136750512, 1230: 0.015136750512, 1235: 0.015136750512,\n    1236: 0.015091582825, 1240: 0.014977202392, 1242: 0.014973717860, 1248: 0.014973717860, 1254: 0.014961127324,\n    1260: 0.014875467753, 1261: 0.014875467753, 1268: 0.014855630592, 1269: 0.014855630592, 1271: 0.014825680123,\n    1273: 0.014825680123, 1280: 0.014792361037, 1287: 0.014792361037, 1292: 0.014707818139, 1293: 0.014707818139,\n    1300: 0.014707818139, 1301: 0.014707818139, 1307: 0.014707818139, 1308: 0.014651518192, 1311: 0.014561607623,\n    1312: 0.014561607623, 1320: 0.014561607623, 1330: 0.014479922495, 1333: 0.014479922495, 1334: 0.014474173398,\n    1340: 0.014474173398, 1341: 0.014458755535, 1344: 0.014406927400, 1349: 0.014406927400, 1353: 0.014406927400,\n    1360: 0.014406927400, 1365: 0.014317852386, 1366: 0.014285914015, 1368: 0.014285914015, 1374: 0.014285914015,\n    1375: 0.014285748390, 1380: 0.014285748390, 1386: 0.014178261520, 1387: 0.014156481537, 1394: 0.014156481537,\n    1398: 0.014152140951, 1400: 0.014152140951, 1406: 0.014103395718, 1407: 0.014103395718, 1408: 0.014103395718,\n    1415: 0.014100738030, 1416: 0.014084918777, 1419: 0.014051197725, 1420: 0.014051197725, 1428: 0.014042777190,\n    1435: 0.014042777190, 1440: 0.013917670215, 1441: 0.013917670215, 1442: 0.013917097351, 1449: 0.013917097351,\n    1450: 0.013917097351, 1460: 0.013821801108, 1462: 0.013821801108, 1470: 0.013800540333, 1474: 0.013757609811,\n    1475: 0.013748030806, 1480: 0.013748030806, 1484: 0.013748030806, 1485: 0.013748030806, 1491: 0.013748030806,\n    1492: 0.013726600440, 1496: 0.013697017450, 1500: 0.013697017450, 1505: 0.013697017450, 1512: 0.013696648523,\n    1518: 0.013578739829, 1519: 0.013549096287, 1520: 0.013549096287, 1527: 0.013549096287, 1528: 0.013545161472,\n    1530: 0.013545161472, 1533: 0.013545161472, 1540: 0.013475582257, 1548: 0.013475582257, 1553: 0.013439406449,\n    1554: 0.013439406449, 1560: 0.013420608919, 1562: 0.013420608919, 1563: 0.013412793253, 1570: 0.013412793253,\n    1571: 0.013372357468, 1575: 0.013344864035, 1584: 0.013336398365, 1591: 0.013336398365, 1596: 0.013221261995,\n    1598: 0.013221261995, 1599: 0.013214602462, 1606: 0.013186571863, 1607: 0.013150206364, 1610: 0.013140563917,\n    1617: 0.013140563917, 1620: 0.013140563917, 1628: 0.013140563917, 1633: 0.013096244176, 1634: 0.013096244176,\n    1638: 0.013096244176, 1643: 0.013096244176, 1644: 0.013096244176, 1650: 0.013096244176, 1651: 0.013061432833,\n    1656: 0.012987012987, 1659: 0.012987012987, 1665: 0.012987012987, 1669: 0.012987012987, 1672: 0.012987012987,\n    1679: 0.012880098444, 1680: 0.012880098444, 1688: 0.012880098444, 1689: 0.012836609318, 1692: 0.012836609318,\n    1694: 0.012836609318, 1701: 0.012836609318, 1702: 0.012836609318, 1710: 0.012836609318, 1716: 0.012794684198,\n    1717: 0.012794684198, 1722: 0.012794684198, 1725: 0.012794684198, 1726: 0.012794684198, 1733: 0.012794684198,\n    1734: 0.012728318028, 1738: 0.012630351014, 1739: 0.012630351014, 1748: 0.012630351014, 1752: 0.012587675518,\n    1753: 0.012587675518, 1760: 0.012587675518, 1763: 0.012587675518, 1764: 0.012587675518, 1771: 0.012587675518,\n    1772: 0.012554848890, 1776: 0.012546504407, 1782: 0.012546504407, 1786: 0.012546504407, 1794: 0.012546504407,\n    1800: 0.012500156555, 1801: 0.012500156555, 1804: 0.012500156555, 1810: 0.012500156555, 1811: 0.012500156555,\n    1813: 0.012500156555, 1817: 0.012500156555, 1818: 0.012475520299, 1824: 0.012348772482, 1826: 0.012348772482,\n    1833: 0.012348772482, 1838: 0.012345679012, 1839: 0.012345679012, 1840: 0.012345679012, 1848: 0.012308349292,\n    1849: 0.012308349292, 1857: 0.012308349292, 1858: 0.012269316132, 1862: 0.012269316132, 1863: 0.012269316132,\n    1870: 0.012269316132, 1872: 0.012269316132, 1880: 0.012269316132, 1886: 0.012171444742, 1887: 0.012171444742,\n    1888: 0.012171444742, 1892: 0.012171444742, 1896: 0.012171444742, 1897: 0.012171444742, 1900: 0.012171444742,\n    1905: 0.012171444742, 1909: 0.012079595337, 1911: 0.012079595337, 1920: 0.012079595337, 1925: 0.012041251239,\n    1926: 0.012041251239, 1932: 0.012041251239, 1936: 0.012041251239, 1937: 0.012041251239, 1944: 0.012041251239,\n    1945: 0.012011470934, 1950: 0.012004194107, 1955: 0.012004194107, 1960: 0.012004194107, 1964: 0.012004194107,\n    1968: 0.012004194107, 1975: 0.011904761905, 1976: 0.011904761905, 1978: 0.011904761905, 1985: 0.011904761905,\n    1986: 0.011904761905, 1989: 0.011904761905, 1992: 0.011904761905, 2000: 0.011822009635, 2001: 0.011822009635,\n    2009: 0.011822009635, 2015: 0.011790530556, 2016: 0.011790530556, 2024: 0.011790530556, 2025: 0.011790530556,\n    2026: 0.011790530556, 2034: 0.011785588690, 2035: 0.011750361575, 2040: 0.011750361575, 2047: 0.011750361575,\n    2050: 0.011750361575, 2054: 0.011750361575, 2058: 0.011750361575, 2064: 0.011633271466, 2066: 0.011633271466,\n    2067: 0.011633271466, 2070: 0.011633271466, 2075: 0.011633271466, 2076: 0.011633271466, 2080: 0.011575275200,\n    2088: 0.011575275200, 2091: 0.011575275200, 2100: 0.011575275200, 2106: 0.011550489540, 2107: 0.011550489540,\n    2112: 0.011541314311, 2117: 0.011541314311, 2118: 0.011541314311, 2120: 0.011541314311, 2125: 0.011541314311,\n    2126: 0.011520501733, 2132: 0.011494838751, 2136: 0.011494838751, 2142: 0.011494838751, 2147: 0.011494838751,\n    2148: 0.011494838751, 2150: 0.011494838751, 2158: 0.011396323452, 2159: 0.011396323452, 2160: 0.011372774848,\n    2168: 0.011372774848, 2169: 0.011363636364, 2173: 0.011363636364, 2175: 0.011363636364, 2184: 0.011340177881,\n    2193: 0.011340177881, 2200: 0.011305730638, 2201: 0.011305730638, 2208: 0.011305730638, 2210: 0.011305730638,\n    2211: 0.011305730638, 2214: 0.011305730638, 2219: 0.011305730638, 2220: 0.011253709287, 2225: 0.011177645622,\n    2226: 0.011177645622, 2232: 0.011177645622, 2236: 0.011177645622, 2241: 0.011144152165, 2242: 0.011144152165,\n    2250: 0.011144152165, 2253: 0.011144152165, 2254: 0.011144152165, 2256: 0.011144152165, 2262: 0.011144152165,\n    2263: 0.011118387979, 2268: 0.011112180345, 2275: 0.011112180345, 2279: 0.011112180345, 2283: 0.011112180345,\n    2288: 0.011112180345, 2295: 0.011080260501, 2296: 0.011080260501, 2300: 0.011080260501, 2306: 0.011080260501,\n    2307: 0.011080260501, 2310: 0.011080260501, 2314: 0.011080260501, 2315: 0.011055425998, 2322: 0.010989010989,\n    2325: 0.010989010989, 2332: 0.010989010989, 2338: 0.010989010989, 2339: 0.010989010989, 2340: 0.010989010989,\n    2349: 0.010924620682, 2350: 0.010924620682, 2359: 0.010924620682, 2360: 0.010893674599, 2365: 0.010893674599,\n    2366: 0.010893674599, 2375: 0.010893674599, 2376: 0.010893674599, 2380: 0.010893674599, 2381: 0.010893674599,\n    2385: 0.010893674599, 2392: 0.010863664876, 2393: 0.010863664876, 2394: 0.010863664876, 2400: 0.010863664876,\n    2403: 0.010863664876, 2404: 0.010863664876, 2408: 0.010863664876, 2412: 0.010863664876, 2413: 0.010815974849,\n    2418: 0.010744100350, 2420: 0.010744100350, 2425: 0.010744100350, 2430: 0.010744100350, 2436: 0.010713643662,\n    2437: 0.010713643662, 2444: 0.010713643662, 2448: 0.010713643662, 2449: 0.010713643662, 2450: 0.010713643662,\n    2457: 0.010713643662, 2458: 0.010690014258, 2464: 0.010684097473, 2470: 0.010684097473, 2475: 0.010684097473,\n    2480: 0.010684097473, 2481: 0.010684097473, 2484: 0.010684097473, 2492: 0.010639564675, 2493: 0.010639564675,\n    2496: 0.010639564675, 2503: 0.010639564675, 2504: 0.010639564675, 2508: 0.010639564675, 2511: 0.010639564675,\n    2512: 0.010632633270, 2520: 0.010539816639, 2522: 0.010539816639, 2530: 0.010539816639, 2537: 0.010526315789,\n    2538: 0.010526315789, 2548: 0.010510726208, 2549: 0.010510726208, 2552: 0.010510726208, 2558: 0.010510726208,\n    2559: 0.010482549764, 2565: 0.010482549764, 2574: 0.010482549764, 2576: 0.010482549764, 2581: 0.010482549764,\n    2582: 0.010482549764, 2585: 0.010482549764, 2592: 0.010411257515, 2594: 0.010411257515, 2595: 0.010411257515,\n    2600: 0.010411257515, 2604: 0.010411257515, 2605: 0.010411257515, 2610: 0.010411257515, 2614: 0.010411257515,\n    2619: 0.010343225050, 2622: 0.010343225050, 2626: 0.010343225050, 2632: 0.010343225050, 2639: 0.010315411231,\n    2640: 0.010315411231, 2646: 0.010315411231, 2651: 0.010315411231, 2652: 0.010315411231, 2655: 0.010315411231,\n    2660: 0.010315411231, 2661: 0.010293661886, 2668: 0.010288423757, 2673: 0.010288423757, 2679: 0.010288423757,\n    2685: 0.010288423757, 2686: 0.010288423757, 2688: 0.010288423757, 2697: 0.010204081633, 2698: 0.010204081633,\n    2700: 0.010204081633, 2708: 0.010204081633, 2709: 0.010204081633, 2714: 0.010204081633, 2716: 0.010204081633,\n    2718: 0.010198913384, 2726: 0.010153895067, 2727: 0.010153895067, 2730: 0.010153895067, 2731: 0.010153895067,\n    2736: 0.010153895067, 2744: 0.010127574019, 2745: 0.010127574019, 2754: 0.010127574019, 2755: 0.010127574019,\n    2756: 0.010127574019, 2760: 0.010127574019, 2765: 0.010127574019, 2766: 0.010101030034, 2772: 0.010101030034,\n    2773: 0.010101030034, 2781: 0.010101030034, 2784: 0.010101030034, 2790: 0.010101030034, 2791: 0.010101030034,\n    2792: 0.010101030034, 2793: 0.010101025882, 2800: 0.009997656470, 2803: 0.009997656470, 2804: 0.009997656470,\n    2808: 0.009997656470, 2813: 0.009997656470, 2814: 0.009976898620, 2820: 0.009971428025, 2828: 0.009971428025,\n    2832: 0.009971428025, 2835: 0.009971428025, 2837: 0.009971428025, 2838: 0.009971428025, 2842: 0.009971428025,\n    2850: 0.009945928306, 2851: 0.009945928306, 2856: 0.009945928306, 2862: 0.009945928306, 2863: 0.009945928306,\n    2867: 0.009945928306, 2871: 0.009945928306, 2872: 0.009925843261, 2880: 0.009900990099, 2884: 0.009900990099,\n    2891: 0.009900990099, 2898: 0.009900990099, 2899: 0.009900990099, 2900: 0.009900990099, 2910: 0.009820588146,\n    2911: 0.009820588146, 2912: 0.009820588146, 2914: 0.009820588146, 2921: 0.009820588146, 2922: 0.009803921569,\n    2928: 0.009803921569, 2929: 0.009803921569, 2940: 0.009795454188, 2945: 0.009795454188, 2946: 0.009795454188,\n    2950: 0.009795454188, 2958: 0.009771004973, 2959: 0.009771004973, 2960: 0.009771004973, 2968: 0.009771004973,\n    2970: 0.009771004973, 2971: 0.009771004973, 2976: 0.009771004973, 2980: 0.009771004973, 2981: 0.009732278512,\n    2987: 0.009674510543, 2989: 0.009674510543, 2996: 0.009674510543, 3000: 0.009674510543, 3007: 0.009649736527,\n    3008: 0.009649736527, 3016: 0.009649736527, 3020: 0.009649736527, 3021: 0.009649736527, 3024: 0.009649736527,\n    3030: 0.009649736527, 3031: 0.009630532188, 3038: 0.009625630152, 3045: 0.009625630152, 3050: 0.009625630152,\n    3052: 0.009625630152, 3056: 0.009625630152, 3057: 0.009625630152, 3060: 0.009625630152, 3069: 0.009602168001,\n    3070: 0.009602168001, 3074: 0.009602168001, 3080: 0.009602168001, 3081: 0.009602168001, 3082: 0.009602168001,\n    3087: 0.009602168001, 3090: 0.009602168001, 3091: 0.009583563285, 3100: 0.009523809524, 3103: 0.009523809524,\n    3104: 0.009523809524, 3105: 0.009523809524, 3111: 0.009523809524, 3119: 0.009523809524, 3120: 0.009523809524,\n    3131: 0.009484776883, 3132: 0.009484776883, 3136: 0.009484776883, 3142: 0.009484776883, 3143: 0.009461636516,\n    3150: 0.009461636516, 3161: 0.009461636516, 3162: 0.009461636516, 3168: 0.009461636516, 3169: 0.009461636516,\n    3172: 0.009461636516, 3180: 0.009434118664, 3182: 0.009434118664, 3183: 0.009434118664, 3190: 0.009434118664,\n    3193: 0.009434118664, 3194: 0.009434118664, 3200: 0.009434118664, 3203: 0.009434118664, 3204: 0.009403182183,\n    3210: 0.009348230344, 3213: 0.009348230344, 3218: 0.009348230344, 3219: 0.009348230344, 3224: 0.009348230344,\n    3232: 0.009325406926, 3233: 0.009325406926, 3240: 0.009325406926, 3245: 0.009325406926, 3246: 0.009325406926,\n    3248: 0.009325406926, 3250: 0.009325406926, 3255: 0.009325406926, 3256: 0.009307588040, 3264: 0.009303175803,\n    3270: 0.009303175803, 3276: 0.009303175803, 3277: 0.009303175803, 3283: 0.009303175803, 3284: 0.009303175803,\n    3286: 0.009303175803, 3296: 0.009261878686, 3297: 0.009261878686, 3300: 0.009261878686, 3306: 0.009261878686,\n    3308: 0.009261878686, 3309: 0.009261878686, 3315: 0.009261878686, 3317: 0.009261878686, 3328: 0.009193278023,\n    3330: 0.009193278023, 3333: 0.009193278023, 3334: 0.009193278023, 3339: 0.009193278023, 3348: 0.009174311927,\n    3349: 0.009171344888, 3360: 0.009171344888, 3361: 0.009171344888, 3366: 0.009171344888, 3371: 0.009171344888,\n    3372: 0.009149970596, 3379: 0.009149970596, 3380: 0.009149970596, 3390: 0.009149970596, 3392: 0.009149970596,\n    3399: 0.009149970596, 3400: 0.009149970596, 3402: 0.009149970596, 3410: 0.009065061161, 3413: 0.009065061161,\n    3414: 0.009065061161, 3417: 0.009065061161, 3420: 0.009065061161, 3424: 0.009065061161, 3425: 0.009047980578,\n    3432: 0.009043421583, 3441: 0.009043421583, 3445: 0.009043421583, 3450: 0.009043421583, 3451: 0.009043421583,\n    3452: 0.009043421583, 3456: 0.009043421583, 3465: 0.009023037930, 3466: 0.009023037930, 3472: 0.009023037930,\n    3478: 0.009023037930, 3479: 0.009023037930, 3480: 0.009023037930, 3484: 0.009023037930, 3488: 0.009023037930,\n    3489: 0.009005749691, 3498: 0.009001762630, 3502: 0.009001762630, 3503: 0.009001762630, 3510: 0.009001762630,\n    3518: 0.009001762630, 3519: 0.009001762630, 3520: 0.009001762630, 3531: 0.008928571429, 3532: 0.008928571429,\n    3534: 0.008928571429, 3536: 0.008928571429, 3540: 0.008928571429, 3543: 0.008928571429, 3544: 0.008928571429,\n    3551: 0.008928571429, 3552: 0.008928571429, 3564: 0.008898411481, 3565: 0.008898411481, 3570: 0.008898411481,\n    3571: 0.008898411481, 3575: 0.008898411481, 3584: 0.008878109899, 3585: 0.008878109899, 3586: 0.008878109899,\n    3596: 0.008878109899, 3597: 0.008878109899, 3598: 0.008878109899, 3604: 0.008878109899, 3608: 0.008878109899,\n    3609: 0.008846038874, 3616: 0.008798600286, 3618: 0.008798600286, 3623: 0.008798600286, 3624: 0.008798600286,\n    3627: 0.008798600286, 3630: 0.008798600286, 3638: 0.008778055316, 3639: 0.008778055316, 3648: 0.008778055316,\n    3652: 0.008778055316, 3653: 0.008778055316, 3657: 0.008778055316, 3658: 0.008778055316, 3663: 0.008778055316,\n    3664: 0.008762140230, 3672: 0.008758014356, 3680: 0.008758014356, 3685: 0.008758014356, 3689: 0.008758014356,\n    3692: 0.008758014356, 3693: 0.008758014356, 3696: 0.008758014356, 3706: 0.008738461300, 3707: 0.008738461300,\n    3710: 0.008738461300, 3712: 0.008738461300, 3719: 0.008738461300, 3720: 0.008738461300, 3726: 0.008738461300,\n    3729: 0.008738461300, 3730: 0.008722998771, 3740: 0.008695652174, 3744: 0.008695652174, 3745: 0.008695652174,\n    3746: 0.008695652174, 3751: 0.008695652174, 3752: 0.008695652174, 3761: 0.008695652174, 3762: 0.008695652174,\n    3774: 0.008641318798, 3775: 0.008641318798, 3776: 0.008641318798, 3780: 0.008641318798, 3782: 0.008641318798,\n    3786: 0.008641318798, 3787: 0.008622011723, 3795: 0.008622011723, 3808: 0.008622011723, 3815: 0.008622011723,\n    3816: 0.008622011723, 3819: 0.008622011723, 3828: 0.008603178774, 3830: 0.008603178774, 3831: 0.008603178774,\n    3834: 0.008603178774, 3840: 0.008603178774, 3842: 0.008603178774, 3843: 0.008603178774, 3850: 0.008603178774,\n    3853: 0.008603178774, 3854: 0.008573220158, 3861: 0.008527875985, 3864: 0.008527875985, 3870: 0.008527875985,\n    3871: 0.008527875985, 3872: 0.008527875985, 3876: 0.008527875985, 3885: 0.008508811458, 3886: 0.008508811458,\n    3894: 0.008508811458, 3899: 0.008508811458, 3900: 0.008508811458, 3904: 0.008508811458, 3905: 0.008508811458,\n    3910: 0.008508811458, 3911: 0.008493946557, 3920: 0.008490198803, 3924: 0.008490198803, 3927: 0.008490198803,\n    3933: 0.008490198803, 3936: 0.008490198803, 3941: 0.008490198803, 3942: 0.008490198803, 3944: 0.008490198803,\n    3955: 0.008472024064, 3956: 0.008472024064, 3960: 0.008472024064, 3968: 0.008472024064, 3969: 0.008472024064,\n    3976: 0.008472024064, 3978: 0.008472024064, 3979: 0.008457568192, 3990: 0.008403361345, 3993: 0.008403361345,\n    3996: 0.008403361345, 3997: 0.008403361345, 4000: 0.008403361345, 4002: 0.008403361345, 4012: 0.008403361345,\n    4013: 0.008380338377, 4025: 0.008380338377, 4026: 0.008380338377, 4032: 0.008380338377, 4037: 0.008380338377,\n    4038: 0.008362383449, 4046: 0.008362383449, 4047: 0.008362383449, 4052: 0.008362383449, 4053: 0.008362383449,\n    4059: 0.008362383449, 4060: 0.008362383449, 4068: 0.008362383449, 4069: 0.008362383449, 4071: 0.008362383449,\n    4080: 0.008334256476, 4083: 0.008334256476, 4084: 0.008334256476, 4088: 0.008334256476, 4092: 0.008334256476,\n    4095: 0.008334256476, 4096: 0.008334256476, 4104: 0.008334256476, 4106: 0.008334256476, 4107: 0.008316817694,\n    4114: 0.008273454574, 4118: 0.008273454574, 4125: 0.008273454574, 4126: 0.008273454574, 4130: 0.008273454574,\n    4140: 0.008255716539, 4141: 0.008255716539, 4144: 0.008255716539, 4148: 0.008255716539, 4154: 0.008255716539,\n    4155: 0.008255716539, 4158: 0.008255716539, 4161: 0.008255716539, 4165: 0.008255716539, 4166: 0.008241801229,\n    4176: 0.008238385179, 4181: 0.008238385179, 4182: 0.008238385179, 4189: 0.008238385179, 4191: 0.008238385179,\n    4198: 0.008238385179, 4199: 0.008238385179, 4200: 0.008238385179, 4212: 0.008196721311, 4213: 0.008196721311,\n    4216: 0.008196721311, 4218: 0.008196721311, 4224: 0.008196721311, 4225: 0.008196721311, 4226: 0.008196721311,\n    4234: 0.008196721311, 4235: 0.008196721311, 4248: 0.008151899886, 4250: 0.008151899886, 4255: 0.008151899886,\n    4256: 0.008151899886, 4257: 0.008151899886, 4260: 0.008151899886, 4270: 0.008135094568, 4271: 0.008135094568,\n    4272: 0.008135094568, 4275: 0.008135094568, 4284: 0.008135094568, 4285: 0.008135094568, 4292: 0.008135094568,\n    4296: 0.008135094568, 4297: 0.008118034300, 4305: 0.008118034300, 4307: 0.008118034300, 4313: 0.008118034300,\n    4314: 0.008118034300, 4318: 0.008118034300, 4320: 0.008118034300, 4329: 0.008118034300, 4330: 0.008118034300,\n    4331: 0.008118034300, 4340: 0.008050816891, 4344: 0.008050816891, 4345: 0.008050816891, 4350: 0.008050816891,\n    4352: 0.008050816891, 4356: 0.008050816891, 4357: 0.008037413117, 4366: 0.008033893645, 4370: 0.008033893645,\n    4375: 0.008033893645, 4380: 0.008033893645, 4386: 0.008033893645, 4388: 0.008033893645, 4389: 0.008033893645,\n    4392: 0.008033893645, 4403: 0.008017348725, 4404: 0.008017348725, 4408: 0.008017348725, 4410: 0.008017348725,\n    4417: 0.008017348725, 4418: 0.008017348725, 4420: 0.008017348725, 4425: 0.008017348725, 4428: 0.008017348725,\n    4429: 0.008004294858, 4440: 0.008000043938, 4445: 0.008000043938, 4446: 0.008000043938, 4447: 0.008000043938,\n    4453: 0.008000043938, 4454: 0.008000043938, 4463: 0.008000043938, 4464: 0.008000037191, 4477: 0.007936507937,\n    4478: 0.007936507937, 4480: 0.007936507937, 4484: 0.007936507937, 4488: 0.007936507937, 4490: 0.007936507937,\n    4491: 0.007936507937, 4500: 0.007936507937, 4505: 0.007919561124, 4514: 0.007919561124, 4515: 0.007919561124,\n    4522: 0.007919561124, 4523: 0.007919561124, 4526: 0.007919561124, 4536: 0.007903312196, 4538: 0.007903312196,\n    4539: 0.007903312196, 4543: 0.007903312196, 4550: 0.007903312196, 4551: 0.007903312196, 4552: 0.007903312196,\n    4560: 0.007903312196, 4563: 0.007903312196, 4564: 0.007877941258, 4572: 0.007839891016, 4575: 0.007839891016,\n    4582: 0.007839891016, 4583: 0.007839891016, 4585: 0.007839891016, 4588: 0.007839891016, 4598: 0.007823728021,\n    4599: 0.007823728021, 4602: 0.007823728021, 4608: 0.007823728021, 4613: 0.007823728021, 4614: 0.007823728021,\n    4620: 0.007823728021, 4625: 0.007823728021, 4626: 0.007811139173, 4636: 0.007807917572, 4641: 0.007807917572,\n    4642: 0.007807917572, 4644: 0.007807917572, 4650: 0.007807917572, 4655: 0.007807917572, 4659: 0.007807917572,\n    4660: 0.007807917572, 4662: 0.007807917572, 4674: 0.007792449645, 4675: 0.007792449645, 4680: 0.007792449645,\n    4688: 0.007792449645, 4689: 0.007792449645, 4690: 0.007792449645, 4697: 0.007792449645, 4699: 0.007792449645,\n    4700: 0.007780179651, 4712: 0.007751937984, 4716: 0.007751937984, 4719: 0.007751937984, 4720: 0.007751937984,\n    4725: 0.007751937984, 4736: 0.007751937984, 4737: 0.007714959564, 4740: 0.007714959564, 4750: 0.007714959564,\n    4751: 0.007714959564, 4752: 0.007714959564, 4758: 0.007714959564, 4760: 0.007714959564, 4763: 0.007714959564,\n    4764: 0.007699664927, 4773: 0.007699664927, 4774: 0.007699664927, 4780: 0.007699664927, 4781: 0.007699664927,\n    4788: 0.007699664927, 4795: 0.007699664927, 4797: 0.007699664927, 4798: 0.007699664927, 4800: 0.007699664927,\n    4810: 0.007684697802, 4813: 0.007684697802, 4814: 0.007684697802, 4819: 0.007684697802, 4824: 0.007684697802,\n    4826: 0.007684697802, 4827: 0.007684697802, 4836: 0.007684697802, 4838: 0.007684697802, 4839: 0.007660850224,\n    4840: 0.007624320961, 4847: 0.007624320961, 4851: 0.007624320961, 4859: 0.007624320961, 4860: 0.007624320961,\n    4864: 0.007624320961, 4875: 0.007609197460, 4876: 0.007609197460, 4880: 0.007609197460, 4884: 0.007609197460,\n    4890: 0.007609197460, 4891: 0.007609197460, 4896: 0.007609197460, 4898: 0.007609197460, 4902: 0.007609197460,\n    4903: 0.007597351441, 4914: 0.007594462470, 4920: 0.007594462470, 4921: 0.007594462470, 4928: 0.007594462470,\n    4932: 0.007594462470, 4938: 0.007594462470, 4939: 0.007594462470, 4940: 0.007594462470, 4953: 0.007575913886,\n    4954: 0.007575913886, 4958: 0.007575913886, 4960: 0.007575913886, 4967: 0.007575913886, 4968: 0.007575913886,\n    4977: 0.007575913886, 4978: 0.007575913886, 4979: 0.007568346723, 4982: 0.007520958567, 4992: 0.007520958567,\n    4995: 0.007520958567, 5000: 0.007520958567, 5001: 0.007520958567, 5004: 0.007520958567, 5005: 0.007520958567,\n    5016: 0.007518796992, 5017: 0.007506317728, 5018: 0.007506317728, 5022: 0.007506317728, 5031: 0.007506317728,\n    5032: 0.007506317728, 5040: 0.007506317728, 5044: 0.007506317728, 5045: 0.007491981987, 5054: 0.007491981987,\n    5056: 0.007491981987, 5063: 0.007491981987, 5064: 0.007491981987, 5069: 0.007491981987, 5070: 0.007491981987,\n    5076: 0.007491981987, 5080: 0.007491981987, 5081: 0.007491981987, 5082: 0.007491981987, 5084: 0.007455468125,\n    5092: 0.007455468125, 5096: 0.007455468125, 5097: 0.007455468125, 5103: 0.007455468125, 5106: 0.007455468125,\n    5109: 0.007455468125, 5110: 0.007455468125, 5120: 0.007455468125, 5122: 0.007455468125, 5125: 0.007420384019,\n    5126: 0.007420384019, 5130: 0.007420384019, 5135: 0.007420384019, 5143: 0.007420384019, 5144: 0.007420384019,\n    5145: 0.007420384019, 5148: 0.007420384019, 5160: 0.007406934378, 5161: 0.007406934378, 5166: 0.007406934378,\n    5168: 0.007406934378, 5175: 0.007406934378, 5176: 0.007406934378, 5180: 0.007406934378, 5184: 0.007406934378,\n    5187: 0.007406934378, 5188: 0.007395036145, 5200: 0.007392344816, 5206: 0.007392344816, 5207: 0.007392344816,\n    5208: 0.007392344816, 5214: 0.007392344816, 5217: 0.007392344816, 5225: 0.007392344816, 5226: 0.007392344816,\n    5229: 0.007352941176, 5240: 0.007352941176, 5241: 0.007352941176, 5244: 0.007352941176, 5248: 0.007352941176,\n    5254: 0.007352941176, 5255: 0.007352941176, 5265: 0.007352941176, 5271: 0.007322485051, 5272: 0.007322485051,\n    5280: 0.007322485051, 5282: 0.007322485051, 5289: 0.007322485051, 5290: 0.007322485051, 5291: 0.007322485051,\n    5293: 0.007322485051, 5304: 0.007308742923, 5306: 0.007308742923, 5307: 0.007308742923, 5312: 0.007308742923,\n    5320: 0.007308742923, 5321: 0.007308742923, 5328: 0.007308742923, 5330: 0.007308742923, 5333: 0.007308742923,\n    5334: 0.007295279633, 5343: 0.007295279633, 5346: 0.007295279633, 5354: 0.007295279633, 5355: 0.007295279633,\n    5358: 0.007295279633, 5360: 0.007295279633, 5365: 0.007295279633, 5371: 0.007295279633, 5372: 0.007295279633,\n    5376: 0.007240751728, 5382: 0.007240751728, 5387: 0.007240751728, 5388: 0.007240751728, 5395: 0.007240751728,\n    5396: 0.007240751728, 5400: 0.007240751728, 5401: 0.007229953607, 5412: 0.007227155397, 5418: 0.007227155397,\n    5419: 0.007227155397, 5421: 0.007227155397, 5427: 0.007227155397, 5434: 0.007227155397, 5437: 0.007227155397,\n    5438: 0.007227155397, 5440: 0.007227155397, 5453: 0.007213832000, 5454: 0.007213832000, 5460: 0.007213832000,\n    5468: 0.007213832000, 5469: 0.007213832000, 5472: 0.007213832000, 5478: 0.007213832000, 5480: 0.007213832000,\n    5481: 0.007203287231, 5483: 0.007194244604, 5494: 0.007194244604, 5499: 0.007194244604, 5502: 0.007194244604,\n    5503: 0.007194244604, 5508: 0.007194244604, 5510: 0.007194244604, 5520: 0.007194244604, 5521: 0.007147478783,\n    5525: 0.007147478783, 5535: 0.007147478783, 5536: 0.007147478783, 5538: 0.007147478783, 5544: 0.007147478783,\n    5548: 0.007147478783, 5549: 0.007147478783, 5550: 0.007142857143, 5560: 0.007142857143, 5561: 0.007134294396,\n    5568: 0.007134294396, 5569: 0.007134294396, 5576: 0.007134294396, 5577: 0.007134294396, 5586: 0.007134294396,\n    5587: 0.007134294396, 5589: 0.007134294396, 5600: 0.007121370937, 5603: 0.007121370937, 5604: 0.007121370937,\n    5610: 0.007121370937, 5616: 0.007121370937, 5617: 0.007121370937, 5618: 0.007121370937, 5624: 0.007121370937,\n    5628: 0.007121370937, 5630: 0.007121370937, 5631: 0.007100834821, 5633: 0.007069644448, 5634: 0.007069644448,\n    5640: 0.007069644448, 5644: 0.007069644448, 5653: 0.007069644448, 5654: 0.007069644448, 5655: 0.007069644448,\n    5658: 0.007069644448, 5662: 0.007056597448, 5670: 0.007056597448, 5671: 0.007056597448, 5676: 0.007056597448,\n    5680: 0.007056597448, 5686: 0.007056597448, 5687: 0.007056597448, 5694: 0.007056597448, 5695: 0.007056597448,\n    5699: 0.007056597448, 5700: 0.007046391315, 5712: 0.007043806624, 5719: 0.007043806624, 5720: 0.007043806624,\n    5727: 0.007043806624, 5733: 0.007043806624, 5738: 0.007043806624, 5739: 0.007043806624, 5740: 0.007043806624,\n    5742: 0.007031265414, 5754: 0.007031265414, 5755: 0.007031265414, 5760: 0.007031265414, 5762: 0.007031265414,\n    5769: 0.007031265414, 5770: 0.007031265414, 5772: 0.007031265414, 5780: 0.007031265414, 5781: 0.007031265414,\n    5782: 0.007021292318, 5786: 0.006993006993, 5787: 0.006993006993, 5796: 0.006993006993, 5800: 0.006993006993,\n    5805: 0.006993006993, 5806: 0.006993006993, 5810: 0.006993006993, 5811: 0.006993006993, 5822: 0.006993006993,\n    5823: 0.006968016119, 5824: 0.006968016119, 5829: 0.006968016119, 5838: 0.006968016119, 5839: 0.006968016119,\n    5840: 0.006968016119, 5848: 0.006968016119, 5850: 0.006968016119, 5852: 0.006968016119, 5853: 0.006955601551,\n    5863: 0.006955601551, 5865: 0.006955601551, 5873: 0.006955601551, 5874: 0.006955601551, 5880: 0.006955601551,\n    5889: 0.006955601551, 5891: 0.006955601551, 5892: 0.006955601551, 5893: 0.006955601551, 5896: 0.006943425926,\n    5904: 0.006943425926, 5908: 0.006943425926, 5909: 0.006943425926, 5916: 0.006943425926, 5920: 0.006943425926,\n    5922: 0.006943425926, 5923: 0.006943425926, 5928: 0.006943425926, 5934: 0.006943425926, 5935: 0.006943425926,\n    5936: 0.006923989135, 5940: 0.006893937199, 5941: 0.006893937199, 5945: 0.006893937199, 5950: 0.006893937199,\n    5960: 0.006893937199, 5961: 0.006893937199, 5964: 0.006893937199, 5967: 0.006881647854, 5977: 0.006881647854,\n    5978: 0.006881647854, 5984: 0.006881647854, 5986: 0.006881647854, 5993: 0.006881647854, 5994: 0.006881647854,\n    6000: 0.006881647854, 6003: 0.006881647854, 6006: 0.006881647854, 6007: 0.006871986348, 6008: 0.006869593232,\n    6020: 0.006869593232, 6027: 0.006869593232, 6028: 0.006869593232, 6029: 0.006869593232, 6035: 0.006869593232,\n    6040: 0.006869593232, 6047: 0.006869593232, 6048: 0.006869593232, 6052: 0.006850048543, 6063: 0.006850048543,\n    6064: 0.006850048543, 6068: 0.006850048543, 6072: 0.006850048543, 6078: 0.006850048543, 6079: 0.006850048543,\n    6080: 0.006850048543, 6090: 0.006850048543, 6091: 0.006848322126, 6097: 0.006809345024, 6098: 0.006809345024,\n    6106: 0.006809345024, 6109: 0.006809345024, 6116: 0.006809345024, 6117: 0.006809345024, 6120: 0.006809345024,\n    6132: 0.006802721088, 6134: 0.006797745906, 6135: 0.006797745906, 6141: 0.006797745906, 6149: 0.006797745906,\n    6150: 0.006797745906, 6160: 0.006797745906, 6163: 0.006797745906, 6164: 0.006785700015, 6165: 0.006785700015,\n    6166: 0.006785700015, 6174: 0.006785700015, 6177: 0.006785700015, 6186: 0.006785700015, 6187: 0.006785700015,\n    6191: 0.006785700015, 6192: 0.006785700015, 6200: 0.006785700015, 6204: 0.006785700015, 6205: 0.006785700015,\n    6210: 0.006755785895, 6216: 0.006755785895, 6221: 0.006755785895, 6222: 0.006755785895, 6230: 0.006755785895,\n    6232: 0.006755785895, 6235: 0.006755785895, 6236: 0.006755785895, 6240: 0.006755785895, 6248: 0.006755785895,\n    6249: 0.006755785895, 6255: 0.006726819912, 6256: 0.006726819912, 6258: 0.006726819912, 6264: 0.006726819912,\n    6273: 0.006726819912, 6275: 0.006726819912, 6276: 0.006726819912, 6278: 0.006726819912, 6279: 0.006715224298,\n    6280: 0.006715224298, 6292: 0.006715224298, 6293: 0.006715224298, 6300: 0.006715224298, 6308: 0.006715224298,\n    6309: 0.006715224298, 6314: 0.006715224298, 6319: 0.006715224298, 6321: 0.006715224298, 6322: 0.006706064974,\n    6325: 0.006703844278, 6326: 0.006703844278, 6336: 0.006703844278, 6342: 0.006703844278, 6345: 0.006703844278,\n    6346: 0.006703844278, 6351: 0.006703844278, 6355: 0.006703844278, 6364: 0.006703844278, 6365: 0.006666666667,\n    6370: 0.006666666667, 6380: 0.006666666667, 6381: 0.006666666667, 6384: 0.006666666667, 6390: 0.006666666667,\n    6395: 0.006666666667, 6396: 0.006666666667, 6407: 0.006666666667, 6408: 0.006646286380, 6416: 0.006646286380,\n    6417: 0.006646286380, 6424: 0.006646286380, 6426: 0.006646286380, 6435: 0.006646286380, 6436: 0.006646286380,\n    6437: 0.006646286380, 6438: 0.006646286380, 6440: 0.006635015876, 6450: 0.006635015876, 6453: 0.006635015876,\n    6454: 0.006635015876, 6461: 0.006635015876, 6468: 0.006635015876, 6469: 0.006635015876, 6478: 0.006635015876,\n    6480: 0.006635015876, 6482: 0.006635015876, 6483: 0.006622554356, 6486: 0.006622554356, 6487: 0.006622554356,\n    6493: 0.006622554356, 6497: 0.006622554356, 6507: 0.006622554356, 6508: 0.006622554356, 6510: 0.006622554356,\n    6512: 0.006622554356, 6519: 0.006622554356, 6525: 0.006622554356, 6526: 0.006578834763, 6532: 0.006578834763,\n    6536: 0.006578834763, 6542: 0.006578834763, 6543: 0.006578834763, 6552: 0.006578834763, 6556: 0.006578834763,\n    6557: 0.006569950182, 6560: 0.006567672606, 6570: 0.006567672606, 6578: 0.006567672606, 6579: 0.006567672606,\n    6586: 0.006567672606, 6594: 0.006567672606, 6598: 0.006567672606, 6599: 0.006567672606, 6600: 0.006567672606,\n    6601: 0.006556739267, 6603: 0.006556739267, 6615: 0.006556739267, 6616: 0.006556739267, 6622: 0.006556739267,\n    6624: 0.006556739267, 6631: 0.006556739267, 6632: 0.006556739267, 6636: 0.006556739267, 6643: 0.006556739267,\n    6644: 0.006556739267, 6645: 0.006548018482, 6650: 0.006535947712, 6651: 0.006535947712, 6660: 0.006535947712,\n    6665: 0.006535947712, 6670: 0.006535947712, 6671: 0.006535947712, 6675: 0.006535947712, 6678: 0.006535947712,\n    6688: 0.006535947712, 6689: 0.006501765280, 6690: 0.006501765280, 6696: 0.006501765280, 6705: 0.006501765280,\n    6706: 0.006501765280, 6708: 0.006501765280, 6716: 0.006501765280, 6720: 0.006501765280, 6721: 0.006493506494,\n    6722: 0.006493506494, 6732: 0.006493506494, 6734: 0.006490910210, 6743: 0.006490910210, 6744: 0.006490910210,\n    6750: 0.006490910210, 6751: 0.006490910210, 6762: 0.006490910210, 6763: 0.006490910210, 6764: 0.006490910210,\n    6768: 0.006480264079, 6776: 0.006480264079, 6780: 0.006480264079, 6781: 0.006480264079, 6789: 0.006480264079,\n    6794: 0.006480264079, 6795: 0.006480264079, 6796: 0.006480264079, 6804: 0.006480264079, 6808: 0.006480264079,\n    6809: 0.006480264079, 6810: 0.006463274962, 6815: 0.006437246897, 6816: 0.006437246897, 6820: 0.006437246897,\n    6825: 0.006437246897, 6836: 0.006437246897, 6837: 0.006437246897, 6840: 0.006437246897, 6846: 0.006426494493,\n    6854: 0.006426494493, 6855: 0.006426494493, 6862: 0.006426494493, 6864: 0.006426494493, 6871: 0.006426494493,\n    6872: 0.006426494493, 6880: 0.006426494493, 6882: 0.006426494493, 6885: 0.006426494493, 6886: 0.006418053410,\n    6888: 0.006415934051, 6889: 0.006415934051, 6900: 0.006415934051, 6908: 0.006415934051, 6909: 0.006415934051,\n    6910: 0.006415934051, 6916: 0.006415934051, 6923: 0.006415934051, 6929: 0.006415934051, 6930: 0.006415934051,\n    6935: 0.006405562211, 6946: 0.006405562211, 6947: 0.006405562211, 6952: 0.006405562211, 6956: 0.006405562211,\n    6962: 0.006405562211, 6963: 0.006405562211, 6966: 0.006405562211, 6975: 0.006405562211, 6976: 0.006397295463,\n    6983: 0.006369426752, 6984: 0.006369426752, 6992: 0.006369426752, 6996: 0.006369426752, 7003: 0.006369426752,\n    7004: 0.006369426752, 7007: 0.006369426752, 7008: 0.006369426752, 7009: 0.006369426752, 7020: 0.006369426752,\n    7022: 0.006352959640, 7023: 0.006352959640, 7030: 0.006352959640, 7038: 0.006352959640, 7039: 0.006352959640,\n    7040: 0.006352959640, 7050: 0.006352959640, 7052: 0.006352959640, 7053: 0.006352959640, 7054: 0.006342758296,\n    7056: 0.006342758296, 7057: 0.006342758296, 7065: 0.006342758296, 7068: 0.006342758296, 7078: 0.006342758296,\n    7079: 0.006342758296, 7084: 0.006342758296, 7095: 0.006342758296, 7097: 0.006342758296, 7098: 0.006342758296,\n    7104: 0.006316438387, 7110: 0.006316438387, 7115: 0.006316438387, 7116: 0.006316438387, 7125: 0.006316438387,\n    7128: 0.006316438387, 7130: 0.006316438387, 7131: 0.006316438387, 7138: 0.006316438387, 7144: 0.006316438387,\n    7145: 0.006316438387, 7152: 0.006291284111, 7153: 0.006291284111, 7155: 0.006291284111, 7161: 0.006291284111,\n    7172: 0.006291284111, 7173: 0.006291284111, 7174: 0.006291284111, 7176: 0.006291284111, 7178: 0.006281846894,\n    7181: 0.006281846894, 7191: 0.006281846894, 7192: 0.006281846894, 7200: 0.006281846894, 7208: 0.006281846894,\n    7209: 0.006281846894, 7216: 0.006281846894, 7220: 0.006281846894, 7222: 0.006281846894, 7223: 0.006273070904,\n    7224: 0.006271094917, 7227: 0.006271094917, 7228: 0.006271094917, 7238: 0.006271094917, 7245: 0.006271094917,\n    7248: 0.006271094917, 7249: 0.006271094917, 7254: 0.006271094917, 7260: 0.006271094917, 7267: 0.006271094917,\n    7268: 0.006271094917, 7269: 0.006250000000, 7275: 0.006250000000, 7285: 0.006250000000, 7286: 0.006250000000,\n    7290: 0.006250000000, 7296: 0.006250000000, 7301: 0.006250000000, 7302: 0.006250000000, 7304: 0.006250000000,\n    7314: 0.006250000000, 7315: 0.006220776484, 7324: 0.006220776484, 7325: 0.006220776484, 7332: 0.006220776484,\n    7335: 0.006220776484, 7344: 0.006220776484, 7345: 0.006220776484, 7347: 0.006220776484, 7348: 0.006211180124,\n    7350: 0.006211180124, 7360: 0.006211180124, 7363: 0.006210861084, 7364: 0.006210861084, 7372: 0.006210861084,\n    7379: 0.006210861084, 7380: 0.006210861084, 7392: 0.006210861084, 7394: 0.006210861084, 7395: 0.006201116186,\n    7399: 0.006201116186, 7400: 0.006201116186, 7406: 0.006201116186, 7410: 0.006201116186, 7421: 0.006201116186,\n    7422: 0.006201116186, 7425: 0.006201116186, 7426: 0.006201116186, 7436: 0.006201116186, 7440: 0.006201116186,\n    7441: 0.006161669473, 7448: 0.006161669473, 7452: 0.006161669473, 7458: 0.006161669473, 7459: 0.006161669473,\n    7469: 0.006161669473, 7470: 0.006161669473, 7473: 0.006161669473, 7474: 0.006153865466, 7475: 0.006151843712,\n    7476: 0.006151843712, 7480: 0.006151843712, 7488: 0.006151843712, 7497: 0.006151843712, 7498: 0.006151843712,\n    7505: 0.006151843712, 7515: 0.006151843712, 7518: 0.006151843712, 7519: 0.006151843712, 7520: 0.006151843712,\n    7524: 0.006142185755, 7536: 0.006142185755, 7537: 0.006142185755, 7544: 0.006142185755, 7546: 0.006142185755,\n    7553: 0.006142185755, 7554: 0.006142185755, 7560: 0.006142185755, 7566: 0.006142185755, 7567: 0.006142185755,\n    7568: 0.006134537594, 7574: 0.006132691860, 7575: 0.006132691860, 7584: 0.006132691860, 7590: 0.006132691860,\n    7595: 0.006132691860, 7596: 0.006132691860, 7600: 0.006132691860, 7605: 0.006132691860, 7612: 0.006132691860,\n    7614: 0.006132691860, 7615: 0.006097560976, 7616: 0.006097560976, 7623: 0.006097560976, 7632: 0.006097560976,\n    7633: 0.006097560976, 7636: 0.006097560976, 7644: 0.006097560976, 7648: 0.006097560976, 7649: 0.006097560976,\n    7650: 0.006097560976, 7651: 0.006097560976, 7661: 0.006097560976, 7663: 0.006084433186, 7673: 0.006084433186,\n    7674: 0.006084433186, 7680: 0.006084433186, 7682: 0.006084433186, 7693: 0.006084433186, 7694: 0.006084433186,\n    7695: 0.006084433186, 7700: 0.006075022806, 7708: 0.006075022806, 7712: 0.006075022806, 7713: 0.006075022806,\n    7722: 0.006075022806, 7727: 0.006075022806, 7728: 0.006075022806, 7729: 0.006075022806, 7740: 0.006075022806,\n    7742: 0.006075022806, 7743: 0.006075022806, 7744: 0.006060965912, 7750: 0.006060965912, 7751: 0.006060965912,\n    7755: 0.006060965912, 7760: 0.006060965912, 7772: 0.006060965912, 7773: 0.006060965912, 7774: 0.006060965912,\n    7776: 0.006060965912, 7777: 0.006060965912, 7785: 0.006060965912, 7790: 0.006060965912, 7791: 0.006027822313,\n    7792: 0.006027822313, 7800: 0.006027822313, 7802: 0.006027822313, 7809: 0.006027822313, 7810: 0.006027822313,\n    7820: 0.006027822313, 7821: 0.006027822313, 7824: 0.006027822313, 7825: 0.006020384238, 7828: 0.006018494634,\n    7829: 0.006018494634, 7830: 0.006018494634, 7840: 0.006018494634, 7849: 0.006018494634, 7850: 0.006018494634,\n    7851: 0.006018494634, 7857: 0.006018494634, 7866: 0.006018494634, 7871: 0.006018494634, 7872: 0.006018494634,\n    7875: 0.006009322462, 7878: 0.006009322462, 7889: 0.006009322462, 7890: 0.006009322462, 7896: 0.006009322462,\n    7900: 0.006009322462, 7905: 0.006009322462, 7906: 0.006009322462, 7907: 0.006009322462, 7912: 0.006009322462,\n    7920: 0.006009322462, 7921: 0.006002029519, 7929: 0.005988023952, 7930: 0.005988023952, 7938: 0.005988023952,\n    7943: 0.005988023952, 7950: 0.005988023952, 7951: 0.005988023952, 7954: 0.005988023952, 7956: 0.005988023952,\n    7958: 0.005988023952, 7965: 0.005988023952, 7968: 0.005988023952, 7970: 0.005963072667, 7971: 0.005963072667,\n    7979: 0.005963072667, 7987: 0.005963072667, 7988: 0.005963072667, 7990: 0.005963072667, 8000: 0.005963072667,\n    8003: 0.005963072667, 8004: 0.005954045797, 8007: 0.005954045797, 8008: 0.005954045797, 8016: 0.005954045797,\n    8019: 0.005954045797, 8030: 0.005954045797, 8031: 0.005954045797, 8034: 0.005954045797, 8036: 0.005954045797,\n    8037: 0.005954045797, 8050: 0.005954045797, 8051: 0.005954045797, 8058: 0.005945037123, 8064: 0.005945037123,\n    8069: 0.005945037123, 8070: 0.005945037123, 8080: 0.005945037123, 8084: 0.005945037123, 8085: 0.005945037123,\n    8086: 0.005945037123, 8087: 0.005945037123, 8096: 0.005945037123, 8100: 0.005945037123, 8101: 0.005930770678,\n    8109: 0.005908723644, 8110: 0.005908723644, 8112: 0.005908723644, 8118: 0.005908723644, 8131: 0.005908723644,\n    8132: 0.005908723644, 8134: 0.005908723644, 8137: 0.005899709695, 8142: 0.005899709695, 8150: 0.005899709695,\n    8151: 0.005899709695, 8160: 0.005899709695, 8168: 0.005899709695, 8169: 0.005899709695, 8178: 0.005899709695,\n    8181: 0.005899709695, 8183: 0.005899709695, 8184: 0.005892612418, 8188: 0.005890843283, 8189: 0.005890843283,\n    8190: 0.005890843283, 8200: 0.005890843283, 8208: 0.005890843283, 8211: 0.005890843283, 8212: 0.005890843283,\n    8216: 0.005890843283, 8217: 0.005890843283, 8225: 0.005890843283, 8232: 0.005890843283, 8233: 0.005882121251,\n    8234: 0.005882121251, 8240: 0.005882121251, 8250: 0.005882121251, 8251: 0.005882121251, 8256: 0.005882121251,\n    8262: 0.005882121251, 8267: 0.005882121251, 8268: 0.005882121251, 8269: 0.005882121251, 8272: 0.005882121251,\n    8280: 0.005882121251, 8281: 0.005882121251, 8282: 0.005875159351, 8292: 0.005847953216, 8293: 0.005847953216,\n    8300: 0.005847953216, 8304: 0.005847953216, 8313: 0.005847953216, 8314: 0.005847953216, 8316: 0.005847953216,\n    8319: 0.005847953216, 8320: 0.005847953216, 8326: 0.005847953216, 8330: 0.005847953216, 8333: 0.005838035761,\n    8334: 0.005838035761, 8343: 0.005838035761, 8348: 0.005838035761, 8350: 0.005838035761, 8351: 0.005838035761,\n    8352: 0.005838035761, 8364: 0.005838035761, 8366: 0.005838035761, 8367: 0.005829040504, 8372: 0.005829040504,\n    8373: 0.005829040504, 8379: 0.005829040504, 8383: 0.005829040504, 8395: 0.005829040504, 8396: 0.005829040504,\n    8400: 0.005829040504, 8413: 0.005829040504, 8415: 0.005829040504, 8416: 0.005806905548, 8424: 0.005806905548,\n    8428: 0.005806905548, 8434: 0.005806905548, 8435: 0.005806905548, 8446: 0.005806905548, 8448: 0.005806905548,\n    8450: 0.005806905548, 8451: 0.005806905548, 8453: 0.005806905548, 8454: 0.005806905548, 8460: 0.005806905548,\n    8466: 0.005806905548, 8476: 0.005785543540, 8477: 0.005785543540, 8484: 0.005785543540, 8496: 0.005785543540,\n    8498: 0.005785543540, 8499: 0.005785543540, 8500: 0.005785543540, 8505: 0.005776967952, 8507: 0.005776967952,\n    8517: 0.005776967952, 8518: 0.005776967952, 8526: 0.005776967952, 8528: 0.005776967952, 8533: 0.005776967952,\n    8534: 0.005776967952, 8535: 0.005776967952, 8536: 0.005776967952, 8544: 0.005776967952, 8549: 0.005776967952,\n    8550: 0.005776967952, 8551: 0.005770188586, 8554: 0.005768562200, 8558: 0.005768562200, 8559: 0.005768562200,\n    8568: 0.005768562200, 8575: 0.005768562200, 8580: 0.005768562200, 8581: 0.005768562200, 8585: 0.005768562200,\n    8586: 0.005768562200, 8592: 0.005768562200, 8600: 0.005768562200, 8601: 0.005747126437, 8602: 0.005747126437,\n    8610: 0.005747126437, 8619: 0.005747126437, 8620: 0.005747126437, 8624: 0.005747126437, 8632: 0.005747126437,\n    8636: 0.005747126437, 8637: 0.005747126437, 8639: 0.005747126437, 8640: 0.005747126437, 8648: 0.005747126437,\n    8650: 0.005747126437, 8652: 0.005725874164, 8663: 0.005725874164, 8664: 0.005725874164, 8667: 0.005725874164,\n    8670: 0.005725874164, 8673: 0.005725874164, 8684: 0.005725874164, 8685: 0.005725874164, 8686: 0.005725874164,\n    8688: 0.005717531821, 8692: 0.005717531821, 8695: 0.005717531821, 8700: 0.005717531821, 8704: 0.005717531821,\n    8705: 0.005717531821, 8715: 0.005717531821, 8721: 0.005717531821, 8722: 0.005717531821, 8736: 0.005717531821,\n    8737: 0.005717531821, 8738: 0.005709269967, 8745: 0.005709269967, 8746: 0.005709269967, 8750: 0.005709269967,\n    8755: 0.005709269967, 8768: 0.005709269967, 8769: 0.005709269967, 8771: 0.005709269967, 8772: 0.005709269967,\n    8774: 0.005709269967, 8784: 0.005709269967, 8787: 0.005709269967, 8788: 0.005675730862, 8789: 0.005675730862,\n    8798: 0.005675730862, 8800: 0.005675730862, 8807: 0.005675730862, 8808: 0.005675730862, 8820: 0.005675730862,\n    8823: 0.005675730862, 8824: 0.005669127110, 8828: 0.005667432115, 8829: 0.005667432115, 8832: 0.005667432115,\n    8840: 0.005667432115, 8850: 0.005667432115, 8851: 0.005667432115, 8852: 0.005667432115, 8856: 0.005667432115,\n    8858: 0.005667432115, 8869: 0.005667432115, 8873: 0.005667432115, 8874: 0.005667432115, 8880: 0.005659263772,\n    8881: 0.005659263772, 8892: 0.005659263772, 8893: 0.005659263772, 8900: 0.005659263772, 8904: 0.005659263772,\n    8910: 0.005659263772, 8911: 0.005659263772, 8918: 0.005659263772, 8925: 0.005659263772, 8926: 0.005652781435,\n    8928: 0.005626510865, 8935: 0.005626510865, 8936: 0.005626510865, 8944: 0.005626510865, 8950: 0.005626510865,\n    8957: 0.005626510865, 8958: 0.005626510865, 8961: 0.005626510865, 8964: 0.005618280982, 8967: 0.005618280982,\n    8976: 0.005618280982, 8978: 0.005618280982, 8979: 0.005618280982, 8988: 0.005618280982, 8993: 0.005618280982,\n    8996: 0.005618280982, 8997: 0.005618280982, 9000: 0.005618280982, 9010: 0.005618280982, 9013: 0.005618280982,\n    9014: 0.005617977528, 9016: 0.005617977528, 9018: 0.005617977528, 9019: 0.005617977528, 9024: 0.005617977528,\n    9027: 0.005617977528, 9030: 0.005610179611, 9042: 0.005610179611, 9043: 0.005610179611, 9047: 0.005610179611,\n    9048: 0.005610179611, 9050: 0.005610179611, 9063: 0.005610179611, 9064: 0.005610179611, 9065: 0.005602204132,\n    9072: 0.005602204132, 9078: 0.005602204132, 9083: 0.005602204132, 9084: 0.005602204132, 9095: 0.005602204132,\n    9100: 0.005602204132, 9101: 0.005602204132, 9102: 0.005602204132, 9103: 0.005602204132, 9114: 0.005602204132,\n    9116: 0.005602204132, 9117: 0.005589507384, 9126: 0.005570026365, 9127: 0.005570026365, 9129: 0.005570026365,\n    9135: 0.005570026365, 9149: 0.005570026365, 9150: 0.005570026365, 9152: 0.005570026365, 9156: 0.005561991349,\n    9163: 0.005561991349, 9169: 0.005561991349, 9170: 0.005561991349, 9180: 0.005561991349, 9185: 0.005561991349,\n    9186: 0.005561991349, 9188: 0.005561991349, 9189: 0.005561991349, 9200: 0.005561991349, 9202: 0.005561991349,\n    9204: 0.005561991349, 9205: 0.005555673240, 9211: 0.005554080420, 9212: 0.005554080420, 9222: 0.005554080420,\n    9231: 0.005554080420, 9234: 0.005554080420, 9235: 0.005554080420, 9240: 0.005554080420, 9250: 0.005554080420,\n    9256: 0.005554080420, 9257: 0.005546291075, 9261: 0.005546291075, 9265: 0.005546291075, 9275: 0.005546291075,\n    9276: 0.005546291075, 9282: 0.005546291075, 9288: 0.005546291075, 9293: 0.005546291075, 9294: 0.005546291075,\n    9295: 0.005546291075, 9296: 0.005546291075, 9300: 0.005546291075, 9308: 0.005546291075, 9309: 0.005540086673,\n    9310: 0.005524861878, 9320: 0.005524861878, 9321: 0.005524861878, 9328: 0.005524861878, 9333: 0.005524861878,\n    9342: 0.005524861878, 9343: 0.005524861878, 9345: 0.005524861878, 9350: 0.005524861878, 9359: 0.005524861878,\n    9360: 0.005524861878, 9363: 0.005506826880, 9364: 0.005506826880, 9374: 0.005506826880, 9380: 0.005506826880,\n    9381: 0.005506826880, 9382: 0.005506826880, 9384: 0.005506826880, 9396: 0.005506826880, 9398: 0.005506826880,\n    9399: 0.005499099778, 9400: 0.005499099778, 9405: 0.005499099778, 9406: 0.005499099778, 9408: 0.005499099778,\n    9412: 0.005499099778, 9416: 0.005499099778, 9429: 0.005499099778, 9430: 0.005499099778, 9434: 0.005499099778,\n    9435: 0.005499099778, 9450: 0.005499099778, 9451: 0.005491490425, 9457: 0.005491490425, 9460: 0.005491490425,\n    9464: 0.005491490425, 9470: 0.005491490425, 9471: 0.005491490425, 9483: 0.005491490425, 9486: 0.005491490425,\n    9487: 0.005491490425, 9488: 0.005491490425, 9491: 0.005491490425, 9492: 0.005491490425, 9500: 0.005491490425,\n    9503: 0.005491490425, 9504: 0.005479332343, 9515: 0.005460419316, 9516: 0.005460419316, 9520: 0.005460419316,\n    9523: 0.005460419316, 9537: 0.005460419316, 9538: 0.005460419316, 9539: 0.005460419316, 9540: 0.005460419316,\n    9546: 0.005452753902, 9550: 0.005452753902, 9558: 0.005452753902, 9559: 0.005452753902, 9568: 0.005452753902,\n    9570: 0.005452753902, 9576: 0.005452753902, 9577: 0.005452753902, 9578: 0.005452753902, 9588: 0.005452753902,\n    9592: 0.005452753902, 9593: 0.005452753902, 9594: 0.005446703306, 9600: 0.005445204315, 9602: 0.005445204315,\n    9603: 0.005445204315, 9612: 0.005445204315, 9620: 0.005445204315, 9625: 0.005445204315, 9626: 0.005445204315,\n    9630: 0.005445204315, 9632: 0.005445204315, 9639: 0.005445204315, 9646: 0.005445204315, 9647: 0.005434937396,\n    9648: 0.005434937396, 9650: 0.005434937396, 9657: 0.005434937396, 9666: 0.005434937396, 9667: 0.005434937396,\n    9672: 0.005434937396, 9680: 0.005434937396, 9684: 0.005434937396, 9685: 0.005434937396, 9688: 0.005434937396,\n    9689: 0.005434937396, 9690: 0.005434937396, 9699: 0.005434937396, 9700: 0.005431824306, 9701: 0.005407230156,\n    9713: 0.005407230156, 9714: 0.005407230156, 9718: 0.005407230156, 9720: 0.005407230156, 9724: 0.005407230156,\n    9735: 0.005407230156, 9736: 0.005407230156, 9737: 0.005407230156, 9744: 0.005405405405, 9752: 0.005405405405,\n    9756: 0.005399740086, 9757: 0.005399740086, 9768: 0.005399740086, 9774: 0.005399740086, 9775: 0.005399740086,\n    9776: 0.005399740086, 9790: 0.005399740086, 9791: 0.005399740086, 9792: 0.005392361985, 9800: 0.005392361985,\n    9801: 0.005392361985, 9810: 0.005392361985, 9824: 0.005392361985, 9825: 0.005392361985, 9828: 0.005392361985,\n    9831: 0.005392361985, 9844: 0.005392361985, 9845: 0.005373511740, 9846: 0.005373511740, 9856: 0.005373511740,\n    9858: 0.005373511740, 9861: 0.005373511740, 9862: 0.005373511740, 9865: 0.005373511740, 9866: 0.005373511740,\n    9879: 0.005373511740, 9880: 0.005373511740, 9882: 0.005373511740, 9883: 0.005373511740, 9888: 0.005373511740,\n    9889: 0.005373511740, 9894: 0.005373511740, 9899: 0.005373511740, 9900: 0.005355075030, 9912: 0.005355075030,\n    9913: 0.005355075030, 9918: 0.005355075030, 9919: 0.005355075030, 9935: 0.005355075030, 9936: 0.005355075030,\n    9944: 0.005347754375, 9955: 0.005347754375, 9956: 0.005347754375, 9964: 0.005347754375, 9968: 0.005347754375,\n    9974: 0.005347754375, 9975: 0.005347754375, 9976: 0.005347754375, 9984: 0.005347754375, 9990: 0.005347754375,\n    9991: 0.005341954663, 9996: 0.005076142132,\n}\n\n\ndef fail(msg: str, kind: str = \"error\") -> None:\n    print(json.dumps({\"metric\": 0.0, \"error\": msg, \"kind\": kind}))\n    sys.exit(1)\n\n\ndef check_imports(path: Path) -> None:\n    try:\n        tree = ast.parse(path.read_text(encoding=\"utf-8\"))\n    except SyntaxError as e:\n        fail(f\"syntax error in pack.py: {e}\", \"compile_error\")\n    for node in ast.walk(tree):\n        names = []\n        if isinstance(node, ast.Import):\n            names = [a.name.split(\".\")[0] for a in node.names]\n        elif isinstance(node, ast.ImportFrom) and node.module:\n            names = [node.module.split(\".\")[0]]\n        for nm in names:\n            if nm not in STDLIB_ALLOW:\n                fail(f\"import of '{nm}' is not allowed (stdlib subset only: {sorted(STDLIB_ALLOW)})\", \"compile_error\")\n\n\ndef boundary(c) -> float:\n    \"\"\"Distance from centre c to the container boundary; negative outside.\"\"\"\n    return min(c[0], 1 - c[0], c[1], 1 - c[1])\n\n\ndef weight(i: int) -> float:\n    \"\"\"Radius weight of object i (1-based); the eval derives the common scale s, r_i = weight(i) * s.\"\"\"\n    return 1.0\n\n\ndef value_of(centres: list, n: int) -> float:\n    if not isinstance(centres, (list, tuple)) or len(centres) != n:\n        fail(f\"pack({n}) must return {n} centres\", \"wrong_answer\")\n    pts = []\n    for c in centres:\n        try:\n            p = tuple(float(v) for v in c)\n        except Exception:\n            fail(f\"pack({n}) returned a non-point {c!r}\", \"wrong_answer\")\n        if len(p) != DIM or not all(math.isfinite(v) for v in p):\n            fail(f\"pack({n}) returned a point that is not {DIM}-D and finite: {c!r}\", \"wrong_answer\")\n        if boundary(p) < -EPS:\n            fail(f\"pack({n}) placed a centre outside the container: {p}\", \"wrong_answer\")\n        pts.append(p)\n    w = [weight(i + 1) for i in range(n)]\n    s = min(max(boundary(p), 0.0) / w[i] for i, p in enumerate(pts))   # upper bound from the walls\n    if s <= EPS:\n        fail(f\"pack({n}) has a centre on the boundary (scale={s})\", \"wrong_answer\")\n    # Any pair that limits the scale below s has distance < (w_i + w_j) s <= 2 wmax s, so it lies\n    # in the same or an adjacent cell of a grid with that spacing. Expected O(n) instead of O(n^2).\n    cell = 2.0 * max(w) * s\n    grid = {}\n    for idx, p in enumerate(pts):\n        key = tuple(int(math.floor(v / cell)) for v in p)\n        grid.setdefault(key, []).append(idx)\n    offsets = list(itertools.product((-1, 0, 1), repeat=DIM))\n    for key, members in grid.items():\n        for off in offsets:\n            nb = tuple(k + o for k, o in zip(key, off))\n            if nb < key or nb not in grid:\n                continue\n            others = grid[nb]\n            for i in members:\n                pi = pts[i]\n                for j in others:\n                    if nb == key and j <= i:\n                        continue\n                    pj = pts[j]\n                    d = math.sqrt(sum((a - b) * (a - b) for a, b in zip(pi, pj))) / (w[i] + w[j])\n                    if d < s:\n                        s = d\n    if s <= EPS:\n        fail(f\"pack({n}) has coincident centres (scale={s})\", \"wrong_answer\")\n    return w[n - 1] * s   # the largest object's radius (equal case: the common radius)\n\n\ndef main() -> None:\n    here = Path(__file__).parent\n    check_imports(here / \"pack.py\")\n    sys.path.insert(0, str(here))\n    try:\n        import pack as cand  # noqa: E402\n    except SystemExit:\n        raise\n    except Exception as e:\n        fail(f\"import pack.py failed: {e!r}\", \"compile_error\")\n    if not hasattr(cand, \"pack\"):\n        fail(\"pack.py must define pack(n, time_budget, seed)\", \"compile_error\")\n\n    ns = sorted(set(NS))\n    for n in ns:\n        if n not in RECORDS:\n            fail(f\"no Packomania record for n={n}\", \"error\")\n    seed_int = random.Random(f\"csq|{SEED}\").getrandbits(32)\n    per_n, beaten = {}, []\n    t_all = time.perf_counter()\n    for n in ns:\n        t0 = time.perf_counter()\n        try:\n            centres = cand.pack(n, BUDGET, seed_int)\n        except SystemExit:\n            raise\n        except Exception as e:\n            fail(f\"pack({n}) raised {e!r}\", \"runtime_error\")\n        elapsed = time.perf_counter() - t0\n        if elapsed > 2.0 * BUDGET + 5:\n            fail(f\"pack({n}) took {elapsed:.1f}s against a {BUDGET:.0f}s budget\", \"timeout\")\n        v = value_of(centres, n)\n        ratio = v / RECORDS[n]\n        per_n[n] = {\"value\": round(v, 12), \"record\": RECORDS[n], \"ratio\": round(ratio, 6), \"seconds\": round(elapsed, 2)}\n        if v > RECORDS[n] + 1e-9:\n            beaten.append(n)\n    metric = sum(x[\"ratio\"] for x in per_n.values()) / len(per_n)\n    print(json.dumps({\"metric\": round(metric, 6), \"ns\": ns, \"per_n\": per_n, \"records_beaten\": beaten,\n                      \"total_seconds\": round(time.perf_counter() - t_all, 1)}))\n\n\nif __name__ == \"__main__\":\n    main()\n","baseline":{"pack.py":"\"\"\"Baseline: a lattice of candidate points inside the container, spacing found by bisection so\nthat at least n fit. Deliberately naive; scores well below the records. Beat it.\"\"\"\n\nimport itertools\nimport math\n\nDIM = 2\n\n\ndef _boundary(c):\n    return min(c[0], 1 - c[0], c[1], 1 - c[1])\n\n\ndef _weight(i):\n    return 1.0\n\n\ndef _lattice(n, r):\n    \"\"\"Cubic lattice points at spacing 2r whose distance to the boundary is at least r.\"\"\"\n    lo, hi = ((0.0,) * DIM, (1.0,) * DIM)\n    step = 2.0 * r\n    axes = []\n    for d in range(DIM):\n        k = int((hi[d] - lo[d]) / step) + 1\n        axes.append([lo[d] + r + i * step for i in range(k)])\n    pts = [p for p in itertools.product(*axes) if _boundary(p) >= r]\n    return pts\n\n\ndef pack(n, time_budget, seed):\n    # treat every object as the largest one when choosing the lattice spacing\n    wmax = max(_weight(i + 1) for i in range(n))\n    # find a feasible spacing by halving, then bisect between it and the last infeasible one\n    a = 1.0\n    while len(_lattice(n, a * wmax)) < n and a > 1e-9:\n        a /= 2\n    b = 2 * a\n    for _ in range(40):\n        m = (a + b) / 2\n        if len(_lattice(n, m * wmax)) >= n:\n            a = m\n        else:\n            b = m\n    pts = _lattice(n, a * wmax)\n    pts.sort(key=lambda p: -_boundary(p))   # keep the most interior points\n    return [tuple(p) for p in pts[:n]]\n"}}