g_math 0.6.8

Multi-domain fixed-point arithmetic with geometric extension: Lie groups, manifolds, ODE solvers, tensors, fiber bundles — pure Rust, zero-float, deterministic
Documentation
// Generated by scripts/generate_gate_refs.py. Do not edit.

/// (x at Q.40, f(x) at Q64.64, at Q.40, at Q.20), each the nearest value.
pub const SIGMOID: &[(i128, i128, i128, i128)] = &[(0, 9223372036854775808, 549755813888, 524288), (1, 9223372036858970112, 549755813888, 524288), (-1, 9223372036850581504, 549755813888, 524288), (1099511627776, 13485650502877570762, 803807407789, 766570), (-1099511627776, 4961093570831980854, 295704219987, 282006), (13194139533312, 18446630733693120375, 1099504872185, 1048570), (-13194139533312, 113340016431241, 6755591, 6), (42880953483264, 18446744073709551403, 1099511627776, 1048576), (-42880953483264, 213, 0, 0), (-2767910220734, 1377000819896057219, 82075644725, 78273), (-30631043208454, 14689567, 1, 0), (-609492376482, 6730486059778200372, 401168230759, 382584), (-3184564423154, 965402328182332970, 57542462837, 54877), (14180439284424, 18446697856069872841, 1099508872990, 1048573), (7649979227741, 18429211216514033685, 1098466588051, 1047579), (-2678480693919, 1484292421636065092, 88470722534, 84372), (-2296631120139, 2032697323212520807, 121158201886, 115545), (-1646006136942, 3373325278166298790, 201065854917, 191751), (11925478410243, 18446384751491017828, 1099490210503, 1048556), (-42025263424295, 464, 0, 0), (3923542045851, 17940816785177647841, 1069356011461, 1019817), (1269454513896, 14025856903128938206, 836006218381, 797278), (-4104931974583, 430780898589422132, 25676542436, 24487), (794795720268, 12419031499747698246, 740231960997, 705940), (780123521270, 12364754654680164866, 736996808927, 702855), (1089870341655, 13453783386834965948, 801907979657, 764759), (297660648105, 10464281696160720764, 623719793329, 594826), (12971946897548, 18446605351430127752, 1099503359284, 1048568), (-12531997178872, 206975863050035, 12336723, 12), (119225354732, 9722950007198398175, 579532981348, 552686), (-3556172620328, 699028779665541926, 41665362100, 39735), (1876580765118, 15613564051335021158, 930640938958, 887528), (-36716731112, 9069385214123720867, 540577484019, 515535), (1714767754479, 15242396244290078776, 908517613667, 866430), (10022986058199, 18444716823006729486, 1099390794218, 1048461), (6930251055050, 18413034311918506970, 1097502369399, 1046660), (-615837436854, 6705836350413182117, 399698993588, 381183), (-3524920039810, 718398191427452261, 42819869007, 40836), (-7919066613728, 13729536705218325, 818344158, 780), (23852657345400, 18446744066720895780, 1099511627359, 1048576), (827599196604, 12539471205935298693, 747410726901, 712786), (-8276978171594, 9916872782171207, 591091679, 564), (-20401046155, 9137806302192375910, 544655698669, 519424), (7754079573245, 18430793675021363328, 1098560909928, 1047669), (1594596354319, 14942619957030448837, 890649554552, 849390), (227861483491, 10175686478242799061, 606518177881, 578421), (-3125414407354, 1015821787265693371, 60547696785, 57743), (17501896687044, 18446741820138685252, 1099511493453, 1048576), (2983088029504, 17299271638521175800, 1031116940887, 983350), (-985569856851, 5345809587971375373, 318635081528, 303874), (736590294348, 12202269564359369211, 727311942837, 693619), (1062287073749, 13361905365807298338, 796431622851, 759536), (-822616807701, 5925484023450873368, 353186370340, 336825), (515199003506, 11345585450383838026, 676249590539, 644922), (-4568231397366, 284944237937681936, 16984000083, 16197), (11548119590999, 18446237627862697995, 1099481441251, 1048547), (-26331034223, 9112936952548938141, 543173369917, 518010), (20166884350318, 18446743874076839224, 1099511615877, 1048576), (34050255614341, 18446744073708896287, 1099511627776, 1048576), (3717879891802, 17840176442429642857, 1063357379581, 1014097), (39010003106184, 18446744073709544415, 1099511627776, 1048576), (-10303509841376, 1570776989818608, 93625604, 89), (982829461300, 13091466952709491132, 780312237305, 744164), (83723146112, 9574362787679820691, 570676492910, 544240), (25978836983696, 18446744072698956760, 1099511627716, 1048576), (168675626204, 9929464638614324437, 591842212594, 564425), (-6427123827775, 53213876194677129, 3171794188, 3025), (-2202462697690, 2192854431116305505, 130704309411, 124649), (37428062813869, 18446744073709521259, 1099511627776, 1048576), (-15078651194, 9160128581030396923, 545986210169, 520693), (-6703413513589, 41416376739559942, 2468608423, 2354), (-42445477115352, 317, 0, 0), (-6060190791910, 74210132009521678, 4423268557, 4218), (-11735228234777, 427197902420408, 25462979, 24), (837907566194, 12577055134646263956, 749650903621, 714923), (-208634602931, 8350911324858068194, 497753103069, 474694), (-28236231867727, 129697617, 8, 0), (-303573839295, 7958118456077265646, 474340823655, 452367), (334960854281, 10617533806855277955, 632854330948, 603537), (4224164488560, 18059304046306359821, 1076418402571, 1026553), (-35033826997527, 267892, 0, 0), (-130062760045, 8678484511614198171, 517277986503, 493315), (-741894950707, 6224561580170165700, 371012781869, 353825), (-5150675772721, 168837379329789308, 10063492020, 9597), (7830966320303, 18431870082416315245, 1098625068809, 1047731), (-8947365991529, 5391204860925245, 321340851, 306), (-635920145995, 6628074946736028938, 395064052745, 376762), (361589547419, 10726466069327095030, 639347199758, 609729), (23978417776472, 18446744067476227266, 1099511627404, 1048576), (3772971006559, 17868891129930734221, 1065068908330, 1015729), (23521979495373, 18446744064268777391, 1099511627213, 1048576), (20839920168239, 18446743965468929150, 1099511621324, 1048576), (910806208849, 12839134732721550017, 765272064967, 729820), (-39919912659737, 3148, 0, 0), (-410305797383, 7522121642521085031, 448353388460, 427583), (11500752033561, 18446215333752978814, 1099480112419, 1048546), (-1763009336985, 3089835341341208383, 184168537935, 175637), (-456339793717, 7336354440170491198, 437280800353, 417023), (-514280705836, 7104806681573433224, 423479478453, 403862), (-3207863056651, 946198951634697577, 56397852399, 53785), (-16114941912602, 7956138107199, 474223, 0), (-175582177058, 8488488050015432815, 505953314901, 482515), (-2895840823291, 1235886530725922718, 73664577647, 70252), (410885127546, 10926969534827730129, 651298137595, 621126), (149979010084, 9851456037787250537, 587192537653, 559990), (-33473651214, 9082984210637264543, 541388047376, 516308), (-549670188339, 6964733694496433612, 415130477816, 395899), (6064700996851, 18372836511589704655, 1095106393790, 1044375), (2248258814990, 16333098622279513486, 973528541462, 928429), (573695832812, 11576481771923064814, 690012083764, 658047), (-1867434789866, 2853184970247605758, 170063076630, 162185), (-1152452025097, 4788418737805160563, 285411997903, 272190), (3609282160554, 17779485543802630590, 1059739920128, 1010647), (-596838239906, 6779760251548221083, 404105201456, 385385), (-951924158845, 5462731039621974661, 325604143120, 310520), (-4371507180755, 339743624627948262, 20250298061, 19312), (-6413332024679, 53883610151806131, 3211713442, 3063), (-5985422614092, 79409571726007247, 4733179314, 4514), (8195701014762, 18436066800035911497, 1098875212672, 1047969), (1205707241853, 13828040331813465285, 824215431918, 786033), (-1069911939008, 5059336293335907496, 301559942564, 287590), (-3971807306042, 484769998995868751, 28894543588, 27556), (-742147877006, 6223612908941412561, 370956236657, 353771), (-11468173115953, 544640653853855, 32463113, 31), (-501978660408, 7153745240289894061, 426396443861, 406643), (12146049022117, 18446450063272067986, 1099494103388, 1048559), (2172552760498, 16200781373416353744, 965641818846, 920908), (1263699046584, 14008237502215014418, 834956020249, 796276), (1279905806190, 14057729144959414092, 837905952034, 799089), (3867654886385, 17915196361381206764, 1067828915201, 1018361), (-3550271936146, 702647022034651631, 41881026151, 39941), (8984502055998, 18441531865801944926, 1099200955975, 1048280), (487101631630, 11233652682433751555, 669577877667, 638559), (17360062085500, 18446741509849868699, 1099511474958, 1048576), (-848818715912, 5830046658332194166, 347497860094, 331400), (1531816609445, 14777673430136848657, 880817975410, 840013), (-3443365591452, 771397154158378859, 45978853354, 43849), (134787264651, 9788003874977885856, 583410494028, 556384), (3975204602736, 17963430432777313613, 1070703889893, 1021103), (-9172470051844, 4393350088859854, 261864071, 250), (3352077121663, 17611590097519932120, 1049732571692, 1001103), (-5528880612875, 120016373488860736, 7153533309, 6822), (3673713558618, 17816165066379170933, 1061926190041, 1012732), (26999918046754, 18446744073310286125, 1099511627752, 1048576), (-3642825129582, 647913925974272998, 38618679403, 36830), (2781766661811, 17085715493755543241, 1018388002739, 971210), (-17163088157225, 3066879295874, 182800, 0), (-3996980783708, 474079210284676681, 28257322924, 26948), (-1038323845814, 5165503273169435759, 307887987683, 293625), (-18925744814159, 617259210438, 36792, 0), (-1325385433340, 4252167754769755776, 253448948548, 241708), (9868337447699, 18444410697965176528, 1099372547744, 1048443), (-6225905344326, 63863448406402383, 3806558156, 3630), (-2795332427082, 1345556743991973656, 80201431751, 76486), (-500606165455, 7159212815063941900, 426722336713, 406954), (-480186586092, 7240736242016220013, 431581511618, 411588), (7227367317427, 18421005401724033454, 1097977483375, 1047113), (625176283010, 11777117225765685827, 701970888720, 669452), (430778221374, 11007424055333309012, 656093600710, 625700), (416540820843, 10949871019392450989, 652663172447, 622428), (-303045462870, 7960292994936575682, 474470436271, 452490), (2893638134485, 17208545523706177645, 1025709243042, 978193), (12839911769095, 18446587651591952294, 1099502304291, 1048567), (19443808793329, 18446743688374731811, 1099511604808, 1048576), (-964453973681, 5419015948045767574, 322998520615, 308035), (3055409528031, 17368047546803134859, 1035216304469, 987259), (-73640190549, 8914618097223414017, 531352644993, 506737), (-342875466144, 7796790222653923590, 464724911610, 443196), (7511531119067, 18426861036573193864, 1098326506410, 1047446), (-2969383734358, 1160958271186794303, 69198505353, 65993), (2100633476655, 16068534419603897957, 957759286142, 913390), (11289238942076, 18446103181878980238, 1099473427646, 1048540), (-995728300961, 5310800748988674648, 316548392116, 301884), (-19171917326333, 493437626598, 29411, 0), (-6028439922003, 76375356154337799, 4552325973, 4341), (-31011929214631, 10388752, 1, 0), (-813161266806, 5960126125519745700, 355251200528, 338794), (-434965389544, 7422421082986625566, 442410772025, 421916), (13234649105098, 18446634833493206993, 1099505116552, 1048570), (-1612366175008, 3458479494496284344, 206141441732, 196592), (546501758147, 11469513545099136084, 683636280602, 651966), (-1568231866862, 3572692794933319265, 212949084934, 203084), (-2564391062396, 1632222834575583320, 97288062249, 92781), (-470442768562, 7279753275703517494, 433907108051, 413806), (-7417366149153, 21658827973235701, 1290966748, 1231), (-4386770185539, 335145108314448930, 19976205129, 19051), (-159839054044, 8554136631080772463, 509866275256, 486246), (-1171784846547, 4726342970936191379, 281711993869, 268661), (2657813608639, 16936593752330943580, 1009499654313, 962734), (-1444721556043, 3907460262399704457, 232902780914, 222113), (28447181194742, 18446744073602496006, 1099511627770, 1048576), (-780547889317, 6080416067591796507, 362421039795, 345632), (-154789093039, 8575209663828083418, 511122325887, 487444), (-42226895041079, 386, 0, 0), (420306576992, 10965107413201074693, 653571332288, 623294), (41771342710956, 18446744073709551032, 1099511627776, 1048576), (-41954421846731, 495, 0, 0), (27690772959544, 18446744073496550437, 1099511627763, 1048576), (12815320971434, 18446584113796024572, 1099502093422, 1048567), (-35982458262623, 113048, 0, 0), (-1394165569041, 4050945149711919369, 241455146653, 230270), (-3110742064407, 1028707177504949545, 61315725893, 58475), (-85091792078, 8866649218380515813, 528493477010, 504011), (5919260027436, 18362431881996617507, 1094486229539, 1043783), (5923610284421, 18362763291464452383, 1094505983082, 1043802), (-4169969258968, 406584067416346767, 24234298910, 23112), (-5733871013010, 99713166555072107, 5943367872, 5668), (-5102598088573, 176311688942541536, 10508995589, 10022), (527065252003, 11392662248563504669, 679055586372, 647598), (-670628617439, 6494627124415104915, 387109942699, 369177), (30189044932946, 18446744073687593593, 1099511627775, 1048576), (-15681198665336, 11803908393809, 703568, 1), (1493019173859, 14672854683220161544, 874570291234, 834055), (22372221597355, 18446744046846905328, 1099511626175, 1048576), (-19188403722831, 486094073064, 28973, 0), (602752002911, 11690030425877047819, 696780110948, 664501), (-147931446400, 8603836855279753834, 512828639464, 489072), (-101324629729, 8798686244657324538, 524442568103, 500147), (-3798620007069, 564937065387919329, 33672873103, 32113), (3792289148700, 17878645250266479051, 1065650299207, 1016283), (3171624207942, 17470517585896473599, 1041323994750, 993084), (3821971156342, 17893322333592839305, 1066525121545, 1017118), (39962244425342, 18446744073709548587, 1099511627776, 1048576), (-924724529041, 5558326158386461099, 331302056216, 315954), (287526735840, 10422520765635624335, 621230647900, 592452), (-3600395202889, 672476189277696949, 40082704382, 38226), (-1916406774031, 2747404946266638254, 163758095876, 156172), (-894489836375, 5665695768053500888, 337701783660, 322058), (2898887409938, 17214048743313912335, 1026037260491, 978505), (706858884536, 12090091881023967129, 720625631870, 687242), (5171031229215, 18280975825128017130, 1089631070204, 1039153), (-12656088300050, 184886692240617, 11020106, 11), (-347952438202, 7776012737912987561, 463486477012, 442015), (-34277250492461, 533088, 0, 0), (-2974837227130, 1155574090887553289, 68877583199, 65687), (3621491793780, 17786590490242249015, 1060163407936, 1011051), (-3896025915839, 518387975591905504, 30898331141, 29467), (-2558144708322, 1640694842109779929, 97793033249, 93263), (776079934648, 12349752627406892807, 736102618421, 702002), (-11914831075264, 362818618490224, 21625675, 21), (-4428875328202, 322773879762793096, 19238822446, 18348), (-3809882796776, 559354278764106651, 33340113089, 31796), (2332153255778, 16471749356673836053, 981792769234, 936311), (-670685736902, 6494408519317345728, 387096912820, 369164), (8220010311455, 18436300143095540259, 1098889121002, 1047982), (-1297828095665, 4334727994324583789, 258369922300, 246401), (4441089034425, 18127474109998562736, 1080481655002, 1030428), (-970464687162, 5398117927378891698, 321752901517, 306847), (21601620996737, 18446744019568437104, 1099511624549, 1048576), (434354137135, 11021856825818392833, 656953860868, 626520), (-1122487884215, 4885670984871155897, 291208683543, 277718), (-5918416373968, 84376613123153113, 5029238053, 4796), (13877867260586, 18446683215398339197, 1099508000338, 1048573), (-199758048217, 8387823055126367022, 499953213640, 476793), (78753980322, 9553549023838789730, 569435895910, 543056), (-2460537209302, 1778322413297969983, 105996275741, 101086), (-56365935001, 8987007932691189336, 535667415422, 510852), (1422372330442, 14476316248658705140, 862855687658, 822883), (2218351447397, 16281657632159390991, 970462419519, 925505), (-7040035949915, 30511765051999098, 1818642917, 1734), (-981920937388, 5358418080283579837, 319386606233, 304591), (10213174051506, 18445038804443292265, 1099409985807, 1048479), (9463095894515, 18443370998980083156, 1099310576855, 1048384), (1027263522303, 13243747127868693839, 789388843052, 752820), (29151440523365, 18446744073653131357, 1099511627773, 1048576), (193898216134, 10034538974970138647, 598105131088, 570398), (-9340232389720, 3771779098968593, 224815553, 214), (-233129948932, 8249201071134123249, 491690699526, 468913), (-16618040266105, 5034824104982, 300099, 0), (816648901115, 12499407863722962684, 745022765620, 710509), (3381538715515, 17632696609748225468, 1050990617856, 1002303), (-972443165362, 5391249509073893881, 321343511884, 306457), (-4139587075547, 417717682092613344, 24897914058, 23745), (1615606907995, 14996539428461270421, 893863405494, 852455), (1119250079149, 13550489086143103579, 807672088512, 770256), (2112737525167, 16091246799985468955, 959113049506, 914681), (835572239665, 12568551791896550329, 749144064897, 714439), (-580212722177, 6844726987604519228, 407977520681, 389078), (1319295007624, 14176424982996550938, 844980775296, 805836), (-36869821614748, 50439, 0, 0), (-10797231105395, 1002567616670882, 59757687, 57), (-19083254848526, 534875769065, 31881, 0), (801710264755, 12444523855975112499, 741751423834, 707389), (-246656441786, 8193136880385026349, 488349013352, 465726), (-4586443976950, 280334364711047285, 16709230227, 15935), (-698091882459, 6389912464060955649, 380868462566, 363224), (23461368591382, 18446744063733740362, 1099511627181, 1048576), (3619744169323, 17785578009608187077, 1060103059388, 1010993), (-3403339627226, 798757672775594094, 47609667347, 45404), (28393075278598, 18446744073597096130, 1099511627769, 1048576), (-32609214048180, 2430268, 0, 0), (3595735778855, 17771516605488876937, 1059264934390, 1010194), (-8834902581633, 5971644179039381, 355937730, 339), (-3984882862722, 479188053486473258, 28561833709, 27239), (-40299983065209, 2228, 0, 0), (-8522393018262, 7933875861700370, 472895852, 451), (3819403042697, 17892067116889167703, 1066450304800, 1017046), (512931951042, 11336578017735387137, 675712705716, 644410), (-4172109704614, 405810725846070879, 24188204160, 23068), (-326140985053, 7865379995401531555, 468813180649, 447095), (-179148593672, 8473626310069573231, 505067486171, 481670), (-835499819065, 5878456083023512369, 350383286656, 334152), (41370290782446, 18446744073709550774, 1099511627776, 1048576), (-2669532883412, 1495437630558779501, 89135028753, 85006), (1090962799180, 13457400720801208708, 802123589563, 764965), (-554892877959, 6944153769312009054, 413903818686, 394729), (3250101954899, 17534441414313035388, 1045134151835, 996718), (-775155936180, 6100422182941443538, 363613497194, 346769), (3588282828774, 17767093290231072482, 1059001284255, 1009942), (662130993750, 11919557906515137573, 710461014898, 677548), (31369926955, 9354938122456013321, 557597763685, 531767), (-4130941047418, 420940110356600509, 25089985750, 23928), (-1914147414498, 2752213152638311446, 164044687309, 156445), (-8382552503218, 9009391673337702, 537001590, 512), (2687772239200, 16973944744999967975, 1011725946963, 964857), (-383776600281, 7629841980488001025, 454774020939, 433706), (9229063116494, 18442571083271214868, 1099262898163, 1048339), (1045851624275, 13306664766158578841, 793139026532, 756396), (245502108071, 10248825693511765467, 610877614827, 582578), (-730716413660, 6266560448874468356, 373516109519, 356213), (-27356585631555, 288657051, 17, 0), (3112740553853, 17419800993925532605, 1038301050301, 990201), (1066851339374, 13377180746204278576, 797342106474, 760405), (-809087886267, 5975082279512730139, 356142656774, 339644), (-1791850399734, 3022949408604195767, 180181825674, 171835), (1330282528100, 14209131918717783626, 846930260582, 807696), (9848697776393, 18444368649743325320, 1099370041474, 1048441), (-1153305953073, 4785665712762007662, 285247904823, 272034), (-646430367394, 6587537039738068428, 392647805198, 374458), (-208092164018, 8353166173693556732, 497887502533, 474823), (15946513198, 9290255388570765348, 553742372308, 528090), (-1713631540488, 3207084861618133503, 191157153941, 182302), (35153367753674, 18446744073709311322, 1099511627776, 1048576), (-16011539725262, 8740675008005, 520985, 0), (3392836677091, 17640654823543098010, 1051464964363, 1002755), (9284418242993, 18442775928344265819, 1099275107881, 1048350), (-378750458590, 7650301922400179018, 455993528509, 434869), (-21896282455949, 41413248199, 2468, 0), (-1638178448592, 3392993439246980694, 202238168672, 192869), (314777134723, 10534698783267064344, 627916978792, 598828), (952781697833, 12987011395756513188, 774086200938, 738226), (8801596735567, 18440588833221546549, 1099144746853, 1048226), (-1093672271748, 4980378895808316821, 296853714932, 283102), (-6293409952171, 60072867431159752, 3580621924, 3415), (475883749910, 11188787121257551184, 666903681830, 636009), (5865110767734, 18358196121308997307, 1094233758528, 1043543), (2547257518269, 16791187910368274762, 1000832790754, 954469), (-604883987839, 6748413171609910648, 402236769891, 383603), (36739661167868, 18446744073709494839, 1099511627776, 1048576), (852252944330, 12629144783603543417, 752755688644, 717884), (4780925618138, 18211277304985579938, 1085476714670, 1035191), (7711060348732, 18430157806426482630, 1098523009206, 1047633), (-1626867706630, 3421569989490843869, 203941463798, 194494), (-12735055719599, 172073791983149, 10256397, 10), (-16228651273062, 7174447112677, 427630, 0), (7862484094300, 18432290066755731908, 1098650101826, 1047754), (-692734733169, 6410276628267580078, 382082261340, 364382), (-5169497177208, 165997609178492099, 9894228529, 9436), (12008608109201, 18446410916350435383, 1099491770050, 1048557), (-562855401359, 6912824098482596362, 412036424785, 392949), (-3849860820586, 539966204417561056, 32184493805, 30694), (2267918514375, 16366331190569067503, 975509356890, 930318), (4540873471040, 18154734583936702703, 1082106505867, 1031977), (1210133980810, 13841965751014663878, 825045451582, 786825), (12340485989780, 18446497717508640977, 1099496943802, 1048562), (46289522925, 9417495696534530725, 561326485666, 535323), (1210668141600, 13843644192183717780, 825145494472, 786920), (36724652646048, 18446744073709494058, 1099511627776, 1048576), (31423808230257, 18446744073702408694, 1099511627776, 1048576), (-7502091118985, 20054294075175643, 1195329075, 1140), (21156976815665, 18446743992584209261, 1099511622941, 1048576), (9144105928398, 18442235941829536767, 1099242922177, 1048320), (7860442549996, 18432263225091533827, 1098648501938, 1047753), (-410325656479, 7522041181416358401, 448348592604, 427579), (-10705606496648, 1089688307681505, 64950484, 62), (8618953547843, 18439476979273519531, 1099078475194, 1048163), (7427082655774, 18425275582203795593, 1098232005966, 1047356), (284010183817, 10408017586699518288, 620366191071, 591627), (2317577024709, 16448247986620932330, 980391978420, 934975), (-4510923466130, 299941856805887811, 17877927828, 17050), (-1344210717879, 4196404898625038401, 250125223316, 238538), (2811790495999, 17119740246473124565, 1020416036038, 973145), (531556735545, 11410450235325567074, 680115833004, 648609), (-2004340699777, 2565606365194481083, 152922056031, 145838), (7934279520981, 18433203053066911976, 1098704520051, 1047806), (-569119212735, 6888218122194891488, 410569794309, 391550), (-6007785600770, 77817517662392147, 4638285498, 4423), (778506587700, 12358757952372893671, 736639377616, 702514), (-704675991974, 6364925987261088416, 379379152492, 361804), (29662520572035, 18446744073674105854, 1099511627774, 1048576), (-6020418637275, 76932243642423298, 4585519054, 4373), (-744256459940, 6215706839348815672, 370484998187, 353322), (-740595289653, 6229437443215726512, 371303405953, 354103), (-2193074591710, 2209405974146689133, 131690858254, 125590), (-1282365374890, 4381537247833398944, 261159971227, 249062), (29267987972560, 18446744073658805808, 1099511627773, 1048576), (-6521843198840, 48833207458034333, 2910685984, 2776), (-4592633160819, 278784568577557585, 16616855179, 15847), (-3646232973613, 645979093865536022, 38503354422, 36720), (-826830187975, 5910081743392123692, 352268322908, 335949)];
/// (x at Q.40, f(x) at Q64.64, at Q.40, at Q.20), each the nearest value.
pub const SOFTPLUS: &[(i128, i128, i128, i128)] = &[(0, 12786308645202655660, 762123384786, 726817), (1, 12786308645211044268, 762123384786, 726817), (-1, 12786308645194267052, 762123384785, 726817), (1099511627776, 24225402251456582096, 1443946495739, 1377055), (-1099511627776, 5778658177747030480, 344434867963, 328479), (13194139533312, 221361042224879242485, 13194146288924, 12582918), (-13194139533312, 113340364623093, 6755612, 6), (42880953483264, 719423018874672513237, 42880953483264, 40894464), (-42880953483264, 213, 0, 0), (-11387041838552, 586356710637415, 34949583, 33), (779475400654, 20460408317295546529, 1219535369712, 1163040), (-10852749328444, 953228447128335, 56816843, 54), (1885542883677, 34687101505929339396, 2067512363549, 1971733), (89407559703, 13551556212135048840, 807735694178, 770317), (558659976654, 18061678263025256793, 1076559916915, 1026688), (-19150707490027, 503048560844, 29984, 0), (2218122706738, 39517426362770115367, 2355422160791, 2246306), (-2255674814, 12767396378132031084, 760996125825, 725742), (-2805490882065, 1384777563411697023, 82539174760, 78715), (919206919167, 22063917561787999072, 1315111968624, 1254189), (-23691670915628, 8090613356, 482, 0), (-10141120599863, 1820840760824139, 108530567, 104), (2183310650124, 39002904923636732851, 2324754293182, 2217058), (-7428071770683, 21461689553018768, 1279216382, 1220), (-6188516245589, 66183155991035177, 3944823503, 3762), (-256939221055, 10756579658639250892, 641142109551, 611441), (-3983508902164, 486121040264651637, 28975071923, 27633), (-3579387330804, 698007713490408299, 41604501813, 39677), (705559175984, 19638614876768334739, 1170552663610, 1116326), (-19655701369541, 317792118958, 18942, 0), (-843119663357, 7037577020105603062, 419472278363, 400040), (-34011794662023, 678658, 0, 0), (-4021672526033, 469746775991317107, 27999089717, 26702), (-4396723923958, 335206413019356983, 19979859174, 19054), (-8183630918172, 10798222085975313, 643624192, 614), (-2532096286154, 1757587274428108521, 104760365154, 99907), (7564717132813, 126933848153913806384, 7565846929187, 7215354), (38311943686220, 642767754603549177108, 38311943686220, 36537117), (-120259687409, 11805068354785587483, 703636905836, 671040), (-3060632033929, 1106409497057762027, 65947145048, 62892), (-864601881106, 6924026284209249941, 412704127086, 393585), (-1229138265390, 5218513891148084802, 311047666737, 296638), (-21248772173592, 74627420433, 4448, 0), (620842300, 12791517383065466046, 762433849756, 727114), (967319163904, 22630736902722635566, 1348897034092, 1286408), (-271696594548, 10647594289116956709, 634646075315, 605246), (4974155178971, 83651470273611497317, 4986016170598, 4755036), (-1066723858480, 5928219463027041383, 353349415244, 336980), (8341867218469, 139962659376642273760, 8342424593964, 7955956), (-4233952333011, 388132642720657951, 23134508295, 22063), (2917205919148, 50198029805936126382, 2992035735007, 2853428), (6701805041696, 112479154346729879193, 6704280039473, 6393700), (-28854090834416, 73940910, 4, 0), (3138973487506, 53695644423289404746, 3200509811836, 3052244), (-28490756626053, 102895797, 6, 0), (6099159935778, 102398699176297163644, 6103438089865, 5820692), (-4229636060288, 389643290560418479, 23224549923, 22149), (9512058954282, 159589094150154738586, 9512251266846, 9071590), (-2462753025803, 1866400417980390689, 111246133922, 106093), (2715310165490, 47053803704223395799, 2804625255121, 2674699), (-2065836451102, 2622420595773282631, 156308448063, 149067), (1064002165135, 23791774958200207145, 1418100294960, 1352406), (-23877073610580, 6835172968, 407, 0), (-38451353031117, 11970, 0, 0), (393332620863, 16379348595501285532, 976285254687, 931058), (12222750888902, 205064005978964151629, 12222767232595, 11656539), (-2299512052074, 2148344979493641775, 128051339358, 122119), (2035651377205, 36842898450554115494, 2196007874641, 2094276), (-199268075606, 11190360001347703927, 666997432789, 636098), (3595272794166, 61006848264167650515, 3636291519652, 3467838), (-481383855384, 9186673255813984468, 547568396080, 522202), (-1076938315024, 5881277717800937416, 350551469195, 334312), (-14888992585185, 24262644673116, 1446166, 1), (22995219825067, 385795769987874315241, 22995219825976, 21929951), (-489708121508, 9132016759166945121, 544310615013, 519095), (3635487434534, 61657261899569797151, 3675059193347, 3504810), (666772043349, 19214892803893432507, 1145296859973, 1092240), (-33179874378255, 1446272, 0, 0), (8782776415467, 147356799535354036314, 8783149691543, 8376264), (-43081925921076, 177, 0, 0), (-1544318776623, 4049411511730879455, 241363734706, 230182), (-316697396769, 10320302471601199935, 615137962794, 586641), (568930386566, 18169449732727424409, 1082983597084, 1032814), (-938620908278, 6544302325647763811, 390070815423, 372001), (-34077469005226, 639308, 0, 0), (2801279020454, 48387560260087625967, 2884123340850, 2750514), (-13046152618222, 129669413744411, 7728899, 7), (-36296618146766, 84952, 0, 0), (189949269151, 14448451715613583674, 861194832064, 821299), (2197099957082, 39206478444940750062, 2336888220605, 2228630), (-24725328033621, 3160084831, 188, 0), (-972548619241, 6376131250638774533, 380047038236, 362441), (647080761313, 19001782132983463797, 1132594474136, 1080126), (-2980490855403, 1187427624363605887, 70776201747, 67497), (1052654683195, 23654010796762124953, 1409888911054, 1344575), (-4915310423860, 209872535581315357, 12509377931, 11930), (-358781494783, 10021071571159221915, 597302411268, 569632), (-623763029392, 8286173647911606817, 493894436831, 471014), (-2276299533722, 2191563114264460667, 130627340929, 124576), (-25372051623345, 1754891785, 105, 0), (16429930967103, 275648506674453084091, 16429931323198, 15668804), (-805631791889, 7239389584093512143, 431501244551, 411512), (19739047387173, 331166261943430036084, 19739047404732, 18824623), (4790653705985, 80608740262856861251, 4804655329159, 4582076), (14661795231633, 245984135380605606347, 14661797009743, 13982579), (218115478350, 14706586388064491704, 876580857519, 835973), (-1027368439322, 6112060112038010490, 364307171824, 347430), (423567990299, 16679556315755071633, 994179029212, 948123), (-5656407943028, 107260600548411118, 6393229994, 6097), (6170706672749, 103594540654245634058, 6174715796366, 5888668), (1258873727081, 26217232622910200406, 1562668837482, 1490277), (-104836843769, 11927828741010958466, 710953995050, 678019), (29360533276811, 492588008660292587552, 29360533276814, 28000387), (126988334778, 13882304901150971086, 827449852297, 789118), (-9639682720533, 2872908492041845, 171238690, 163), (-900090653352, 6739751006115668109, 401720464594, 383110), (-1054526226723, 5984690923583886918, 356715376591, 340190), (2683546839266, 46563038533990173811, 2775373371481, 2646802), (-1930805057473, 2939114999266407574, 175184905485, 167069), (-1313080501262, 4881354814710185511, 290951419753, 277473), (13511080799718, 226678405926853381665, 13511085863522, 12885176), (851091927645, 21274212941303892586, 1268041905242, 1209299), (-1876416038732, 3076379493774482074, 183366506921, 174872), (29911801949160, 501836762250306593932, 29911801949162, 28526117), (2902614648959, 49969435341646492815, 2978410443166, 2840434), (991462840488, 22917944621627600321, 1366015948154, 1302734), (4166590668949, 70316174639394546336, 4191170611345, 3997012), (1087841934975, 24082476589544714191, 1435427462431, 1368930), (4731116536368, 79622855539561013977, 4745892020438, 4526035), (441975102443, 16863968021282783497, 1005170823412, 958606), (2599388293047, 45268291441680036870, 2698200430970, 2573204), (-1005666982128, 6215476154085668084, 370471248274, 353309), (-10379843117530, 1465492139990987, 87350138, 83), (7209495210788, 120981436832966227734, 7211055566845, 6876998), (-1030300676244, 6098198707490028490, 363480967730, 346642), (7725909121849, 129635617370934589520, 7726884923633, 7368932), (784328295037, 20515011498091930294, 1222789972907, 1166143), (305919177203, 15530474055370077901, 925688389264, 882805), (8036619723278, 134844447469644794694, 8037355391362, 7665019), (-16413430437748, 6064610106298, 361479, 0), (861233023343, 21390825474395968337, 1274992553854, 1215928), (-964234481386, 6417004498052800608, 382483273629, 364764), (-19251468289326, 458997744432, 27358, 0), (34443938686513, 577873399234385345907, 34443938686513, 32848300), (-1282112462111, 5003464900453517421, 298229748038, 284414), (2169951723491, 38805978827289908780, 2313016583162, 2205865), (-2690947436561, 1530676070212050278, 91235403431, 87009), (1555550088066, 30110224658635497959, 1794709244885, 1711568), (-3317545691003, 881275952151931773, 52528140077, 50095), (-4057358793946, 454928665200251637, 27115861487, 25860), (-313652204876, 10342211035198430814, 616443814945, 587887), (-3315865015742, 882592327267615948, 52606602148, 50170), (15687125989159, 263186312879784252280, 15687126688944, 14960410), (-399906186533, 9735018415141353660, 580252314516, 553372), (5656839656806, 95013239415596049027, 5663230384326, 5400877), (-11173059335724, 712329698322768, 42458159, 40), (1164939042369, 25034239908717776634, 1492156976981, 1423032), (4174131602312, 70439902941948039273, 4198545392868, 4004045), (40977485870986, 687488131594480256179, 40977485870986, 39079176), (-3349564797593, 856560346270869759, 51054975168, 48690), (-4080900930651, 445406930606727727, 26548321879, 25318), (-5954069142164, 81877865944875220, 4880301115, 4654), (-2874620373304, 1303302990677592015, 77682911794, 74084), (6869675925235, 115289686623516548396, 6871800817461, 6553460), (-407795995547, 9680853856761101433, 577023855255, 550293), (3095002709229, 52998858579993024290, 3158978139162, 3012636), (-23701437732304, 8019063759, 478, 0), (3793353635125, 64218394019772218300, 3827714563595, 3650393), (-442335648884, 9446431842986266204, 563051214396, 536967), (12740205566613, 213745351945995624751, 12740215775132, 12150017), (13155962656215, 220720544516090029815, 13155969650512, 12546510), (-13388335211590, 94990408627296, 5661870, 5), (10279573266400, 172464226493111321314, 10279668956584, 9803456), (1127923447190, 24575082884026514206, 1464789085628, 1396932), (1295849683940, 26689722937212473638, 1590831454826, 1517135), (-723545160153, 7697789159153364927, 458823988387, 437569), (3594873227370, 61000390168547415206, 3635906587156, 3467471), (-830658540861, 7104142219517348421, 423439873428, 403824), (2732551813251, 47320664419949581813, 2820531393287, 2689868), (-303951476115, 10412233872561410657, 620617501292, 591867), (1062312353265, 23771234901718536847, 1416876012189, 1351238), (-2469463599132, 1855596483925159119, 110602169271, 105478), (-6207783182589, 65035543061269770, 3876420442, 3697), (10842324917041, 181904989384075333572, 10842382275109, 10340102), (853541146285, 21302345522604905072, 1269718737757, 1210898), (1972520729136, 35931093276479260280, 2141660051136, 2042446), (4056995216475, 68520162339210385118, 4084119936181, 3894920), (-1054277608964, 5985846671963121151, 356784264562, 340256), (9051762691391, 151868281505232770958, 9052054971768, 8632712), (4334175047727, 73070031938038412222, 4355313297393, 4153550), (2080952262342, 37501598920477542384, 2235269482164, 2131719), (-424703206487, 9565556048149094321, 570151570329, 543739), (324941430940, 15712777373659348115, 936554513792, 893168), (-1178801920503, 5430218532273067646, 323666246669, 308672), (856438068299, 21335646081068024019, 1271703605716, 1212791), (7439186200571, 124830079712009782935, 7440452558518, 7095769), (1729724499623, 32496386726375552757, 1936935587309, 1847206), (-24243642117778, 4897327563, 292, 0), (-40267470992736, 2295, 0, 0), (740907034026, 20029283653162842825, 1193838337252, 1138533), (-946426066783, 6505289965426017085, 387745497550, 369783), (-4993688549336, 195508904000858191, 11653238773, 11113), (6931745535805, 116329086923385167054, 6933753903114, 6612543), (-6799838179935, 37985199453529173, 2264094320, 2159), (-3394882752345, 822733365903703241, 49038730020, 46767), (979903262519, 22780205553718335881, 1357806059940, 1294905), (10995015804185, 184466592608629710252, 10995065725364, 10485712), (22299687255227, 374126669842085032179, 22299687256937, 21266639), (2559896610466, 44663621598522231556, 2662159299762, 2538833), (318778776758, 15653568361184225130, 933025381636, 889802), (957711369256, 22516956541302918565, 1342115196067, 1279941), (1741687051888, 32662767211446556044, 1946852637020, 1856663), (7982864109776, 133943196136296527799, 7983636625784, 7613789), (2463140595874, 43190416627468623068, 2574349440781, 2455091), (-9951614393348, 2163319740219455, 128943905, 123), (5146332315801, 86511411928758724538, 5156481977031, 4917604), (105906292260, 13696099845323889213, 816351166089, 778533), (-630696506369, 8244165367797232592, 491390548217, 468627), (6436439129495, 108038371383770583071, 6439588748441, 6141270), (-4974471598435, 198937467402766229, 11857597077, 11308), (-2945848485060, 1224201438842108882, 72968091896, 69588), (805983487187, 20759633564305548142, 1237370584268, 1180049), (-1066172129195, 5930764020655212399, 353501082698, 337125), (-34751098689151, 346445, 0, 0), (3374461198474, 57451876377922477096, 3424398683186, 3265761), (14872351433049, 249516677052826115912, 14872352901270, 14183381), (-8415086370793, 8748913686734742, 521475892, 497), (2379562898969, 41927832429039948950, 2499093558135, 2383321), (416511421568, 16609190159734814565, 989984879478, 944123), (4805713963751, 80858233792970616292, 4819526302395, 4596258), (4206145433667, 70965377773891062150, 4229866133564, 4033915), (3158481615542, 54005270765900719610, 3218964980000, 3069844), (1001340255181, 23035971546357636700, 1373050901077, 1309443), (-3754987502520, 596623830340844829, 35561551472, 33914), (7567426658853, 126979259828554466396, 7568553675923, 7217935), (-4060157267612, 453786362086568457, 27047774916, 25795), (2439349588924, 42830044136062636299, 2552869566444, 2434606), (-6830268720856, 36949357766798512, 2202353344, 2100), (-21968218030609, 38790517080, 2312, 0), (173703425220, 14300929039888564092, 852401795381, 812914), (-3836826955662, 554464585121255059, 33048664637, 31518), (663871884562, 19183420564582327420, 1143420968329, 1090451), (966429918767, 22620193737621724047, 1348268612481, 1285809), (-403558517879, 9709916142298006082, 578756102461, 551945), (-18763423667785, 715455416817, 42644, 0), (8177881861329, 137212945224360570082, 8178528858683, 7799653), (1127429248705, 24568979966746870919, 1464425323412, 1396585), (-3727760903197, 611336953863859370, 36438521973, 34750), (-5414952029286, 133506756832068754, 7957622816, 7589), (-4998395739542, 194678079078758593, 11603717749, 11066), (12497202259784, 209668475339763523085, 12497214993224, 11918273), (17487978475317, 293399594566023216851, 17487978611351, 16677836), (-4080458002482, 445584244695660572, 26558890623, 25329), (-335709167498, 10184305639176807496, 607031919907, 578911), (4328571370966, 72977812494476549123, 4349816590218, 4148308), (303123834073, 15503798386323953342, 924098395486, 881289), (-10456521252301, 1366777031021451, 81466259, 78), (4718570496169, 79415193447097569549, 4733514395183, 4514231), (-494695406125, 9099391203425362937, 542365980352, 517241), (254037482613, 15040147514322845680, 896462649961, 854933), (-39437650761, 12458448046819020908, 742581370283, 708181), (506672211722, 17521959488989476107, 1044390171110, 996008), (-497138783134, 9083440188640484649, 541415225782, 516334), (896685532064, 21801141108969130492, 1299449271498, 1239251), (-36003491824218, 110906, 0, 0), (-176685544470, 11363642111193354152, 677325851392, 645948), (-37529489366857, 27682, 0, 0), (30568629085537, 512856492991952272538, 30568629085538, 29152516), (-9653289168213, 2837578064254485, 169132833, 161), (-12520808939611, 209093888823863, 12462967, 12), (5498147739059, 92367422346003391198, 5505527397752, 5250480), (-29737685940292, 33103572, 2, 0), (-542570205540, 8790783650090756832, 523971536761, 499698), (2026282777393, 36707128417810201421, 2187915350068, 2086559), (-943708840705, 6518849360863967955, 388553700499, 370554), (38611125506616, 647787192627606071407, 38611125506616, 36822439), (-312057069773, 10353701032167059841, 617128672133, 588540), (6147859346832, 103212635800149552150, 6151952493200, 5866959), (-29916396197367, 28137555, 2, 0), (-3742863120182, 603132259751288395, 35949484095, 34284), (-1978211934428, 2824102885518801117, 168329649301, 160532), (3778290750850, 63973508034950611339, 3813118221459, 3636473), (-40254093063048, 2323, 0, 0), (-9599572136255, 2979639736242972, 177600368, 169), (-453171051778, 9373793606111648814, 558721638090, 532838), (1041650690215, 23520792889853351011, 1401948505035, 1337002), (-1219523429035, 5258392202407075134, 313424599314, 298905), (10566290341864, 177274172304329328423, 10566364068051, 10076870), (-6586844327555, 46094493209228880, 2747445894, 2620), (-5604002298679, 112480785842921414, 6704377284, 6394), (-3053050490217, 1113838411270654618, 66389942841, 63314), (5845692793330, 98164789450078043771, 5851077404623, 5580022), (30655349650408, 514311422640433872522, 30655349650409, 29235220), (-3115037429439, 1054492507054077419, 62852651301, 59941), (16651866314108, 279371962837202533821, 16651866605115, 15880458), (-3018561569205, 1148248069677854714, 68440918307, 65270), (4897710201994, 82383181527474955971, 4910420270412, 4682942), (-2319846260500, 2111147323691684043, 125834186297, 120005), (2349776267029, 41480204393639751023, 2472412848093, 2357877), (396805446217, 16413658959801414677, 978330311763, 933008), (2870089455543, 49460609067369749006, 2948082033835, 2811510), (378093268306, 16229316034578285300, 967342617189, 922530), (993814917956, 22946022311967061780, 1367689508913, 1304330), (38845087408810, 651712421996485681327, 38845087408810, 37045562), (-408187863454, 9678169617305638647, 576863862115, 550140), (12787357843248, 214536428686396273804, 12787367623234, 12194984), (388575464150, 16332421803829081996, 973488199939, 928391), (-8532664986963, 7861806864556120, 468600205, 447), (-713288313205, 7756679672943381938, 462334136542, 440916), (-2072518697131, 2607603059916559053, 155425254102, 148225), (-43904459243, 12421687711090980953, 740390283530, 706091), (3880813734865, 65642282033101827142, 3912584902829, 3731332), (2716789914984, 47076694055189464082, 2805989626359, 2676000), (828158969550, 21011758395416695536, 1252398395265, 1194380), (-724189816668, 7694099874732030580, 458604089900, 437359), (-30153444669675, 22680620, 1, 0), (-6896853933911, 34780197305725745, 2073061306, 1977), (-8416389930519, 8738549745133590, 520858153, 497), (497090781124, 17423552756541471633, 1038524672779, 990414), (-542776477745, 8789471862384374288, 523893348121, 499624), (8542831119118, 143332712403513517809, 8543295407505, 8147521), (-8182833275110, 10806056226584400, 644091143, 614), (-404333306999, 9704597387092780333, 578439079946, 551642), (22857246885518, 383480968180943777707, 22857246886548, 21798369), (3758652555795, 63654395845610307897, 3794097652770, 3618333), (669030597042, 19239422707502106687, 1146758956164, 1093635), (46193152860, 13177874512120755970, 785462529190, 749075), (757056090640, 20209186556068738592, 1204561385874, 1148759), (-962974326688, 6423218643825050371, 382853665580, 365118), (-504777712877, 9033710816021955780, 538451124193, 513507), (-2130426377187, 2482424419812049224, 147964025725, 141109), (9030188190298, 151506418596259746299, 9030486261622, 8612143), (-11433877008730, 561904917278431, 33492143, 32), (-30008330612750, 25880539, 2, 0), (-692496660915, 7877168037298557699, 469515802699, 447765), (2659122768900, 46186440159740264799, 2752926359161, 2625395), (10875622761723, 182463605811465956787, 10875678408829, 10371855), (327321176286, 15735679229752256720, 937919570789, 894470), (272456950527, 15213070234425072146, 906769647266, 864763), (-29852272454072, 29827338, 2, 0), (-12650422689602, 185842769553672, 11077092, 11), (-292820433730, 10493015108410369184, 625432438160, 596459), (-738915615801, 7610213616012949077, 453604079247, 432591), (5806808966145, 97515670808886760502, 5812386918598, 5543124), (269515746052, 15185372506955180551, 905118734059, 863188), (-764610359318, 7465613394066382019, 444985234384, 424371), (-2164159059978, 2412114740790970896, 143773242282, 137113), (-1627157128835, 3783648497175325515, 225523024629, 215076), (-393296490885, 9780571697858391433, 582967501751, 555961), (1075954710396, 23937308802544142516, 1426774788054, 1360678), (-3818715074550, 563534476846565916, 33589272311, 32033), (-9208025227517, 4254076473738384, 253562717, 242), (11794010837753, 197871072294885461296, 11794034975462, 11247668), (-10901244854690, 912099677151987, 54365377, 52), (2303474562265, 40786938432497268616, 2431090976745, 2318469), (467314933308, 17119865520135205319, 1020423502930, 973152), (42877417399539, 719363693234224103638, 42877417399539, 40891092), (-5085479145691, 179926053475890048, 10724428503, 10228), (2860514597367, 49311014356055819049, 2939165494207, 2803007), (740945719202, 20029713550131460263, 1193863961108, 1138557), (3475965162163, 59082459381576929105, 3521589003895, 3358449), (-2695845809212, 1524145497969307784, 90846150992, 86638), (360633871387, 16058484423272192879, 957160259680, 912819), (3104918774426, 53155858740431948883, 3168336077954, 3021561), (33125546867980, 555754454922225463208, 33125546867980, 31590983), (208800116681, 14620881932808103963, 871472473908, 831101), (-470804659326, 9256499230861553633, 551730348519, 526171), (-947283053083, 6501018347959902900, 387490889308, 369540), (5758675571516, 96712303136143840321, 5764502473840, 5497458), (-399096891964, 9740587315412691457, 580584246839, 553688), (1818825553391, 33742954259565979988, 2011236802314, 1918065), (-11335473767597, 614511995623562, 36627769, 35), (7625946279190, 127960076570253451515, 7627014909402, 7273688), (4037710937387, 68204577583584121732, 4065309618925, 3876981), (1451369008867, 28717309909476118343, 1711685056059, 1632390), (5021493006829, 84437324821094347400, 5032856751746, 4799706), (17504984519681, 293684908610595415669, 17504984653628, 16694054), (40747664041214, 683632361114880181707, 40747664041214, 38860001), (-30134893776486, 23066533, 1, 0), (3123021175994, 53442676695295178354, 3185431760269, 3037864), (-1206639743553, 5312241001283931388, 316634237843, 301966), (-3306534277289, 889935536193786097, 53044291508, 50587), (4405826614215, 74249972266265141988, 4425643221513, 4220622), (-1953182217921, 2884297874819247942, 171917550255, 163953), (1992533447458, 36219349458739231345, 2158841458484, 2058832), (-726766225819, 7679369650366882932, 457726100109, 436522), (10919717057542, 183203348637703850549, 10919770517212, 10413905), (-585910417656, 8518507865472137049, 507742635338, 484221), (449496094755, 16939674648596005314, 1009683290040, 962909), (-243405882293, 10857245698856666504, 647142273119, 617163), (274767043875, 15234847488492121471, 908067672759, 866001), (-7907248987638, 13883009824745375, 827491869, 789), (2489052068727, 43583762561601998623, 2597794685459, 2477450), (2152879288901, 38554736276792384664, 2298041360187, 2191583), (-35638419287805, 154580, 0, 0), (27133021832468, 455216568016385191641, 27133021832489, 25876066), (215380614192, 14681390716755367533, 875079078481, 834540), (2491594380742, 43622403165759016509, 2600097844944, 2479647), (-119308833780, 11812610638653842952, 704086460987, 671469), (390899518297, 16355336896075723954, 974854045872, 929693)];
/// (x at Q.40, f(x) at Q64.64, at Q.40, at Q.20), each the nearest value.
pub const SILU: &[(i128, i128, i128, i128)] = &[(0, 0, 0, 0), (1, 8388608, 1, 0), (-1, -8388608, 0, 0), (1099511627776, 13485650502877570762, 803807407789, 766570), (-1099511627776, -4961093570831980854, -295704219987, -282006), (13194139533312, 221359568804317444499, 13194058466215, 12582835), (-13194139533312, -1360080197174893, -81067097, -77), (42880953483264, 719423018874672504716, 42880953483264, 40894464), (-42880953483264, -8308, 0, 0), (1054242262492, 12785883913083779903, 762098068779, 726793), (14377954401336, 241221541632117278089, 14377924301154, 13711857), (-555610117040, -3507623505318383384, -209070653040, -199385), (-2938262572409, -3185780920405475006, -189887340093, -181091), (6877940271473, 115171564619712158260, 6864760197384, 6546745), (-953636117097, -4732783265892982128, -282095865362, -269028), (11932963992729, 200198041172806186478, 11932733128834, 11379941), (32185806648, 273945577621396508, 16328428842, 15572), (-31317258526518, -224153598, -13, 0), (523636185217, 5419217790371566170, 323010551356, 308047), (41590057345521, 697765375538192423468, 41590057345521, 39663370), (32398110052005, 543550090334172350457, 32398110052000, 30897245), (-32084509188793, -114288404, -7, 0), (-1081128735034, -4938002175986438416, -294327865600, -280693), (-21232787935104, -1462241871057, -87156, 0), (37048061367, 316017065136931866, 18836084910, 17963), (-4789068376553, -1018135180830059760, -60685585787, -57874), (-3585543308997, -2221688315212956760, -132422942830, -126288), (2073857584150, 30211849250396591474, 1800766542578, 1717345), (2143268945501, 31476607985633715899, 1876152037718, 1789238), (-553789502238, -3499741191311812146, -208600830514, -198937), (-6721282233910, -249104852318585572, -14847806234, -14160), (4185746550494, 68698915817233905914, 4094774473741, 3905081), (8183972635181, 137223950924243384394, 8179184849515, 7800279), (1087899044850, 13305227615725270376, 793053365691, 756315), (319055423738, 3062051082780676478, 182512467073, 174057), (-2136526121022, -4491416421285577033, -267709280329, -255307), (8289297456787, 138997402463836136846, 8284890798559, 7901088), (-2426885696911, -4035085192426905948, -240509819533, -229368), (337553203931, 3262874367184781677, 194482467603, 185473), (38674915779117, 648857415808053854713, 38674915779117, 36883274), (-1898954956726, -4809469298966410884, -286666709123, -273387), (3931328431646, 64160209399780137501, 3824246489989, 3647086), (149531327031, 1339523637292201465, 79841830569, 76143), (427559954589, 4275331521245342538, 254829616621, 243024), (6714591369399, 112401777270069600859, 6699668006305, 6389301), (-3192106102571, -2784596990571270219, -165974914466, -158286), (-687644266483, -4021162998642149916, -239679992118, -228577), (-29185803754739, -1451556093, -87, 0), (32982120986388, 553348167926712603338, 32982120986385, 31454202), (18963013911064, 318146570106004364827, 18963013297677, 18084539), (-2913022250733, -3226914694857201302, -192339104107, -183429), (851391830722, 9776790246266048484, 582742109672, 555746), (547349405353, 5711319158740015580, 340421149656, 324651), (471635529777, 4792131300414178241, 285633283878, 272401), (2754930319522, 42731975748876688269, 2547024235062, 2429032), (-7037671106999, -195717207735229492, -11665654643, -11125), (-40840165584413, -50630, 0, 0), (4448420490746, 73348841010773215927, 4371931613134, 4169399), (5890437239985, 98361509503761842182, 5862802833543, 5591204), (-6629605090463, -267021185159661253, -15915702889, -15178), (7122048329234, 119304687947955332697, 7111113545177, 6781686), (27722685343917, 465109480109712895797, 27722685343606, 26438413), (910876543680, 10636626106001597730, 633992320657, 604622), (330980597625, 3191232222146561157, 190212262997, 181401), (-746960284401, -4215798012935666094, -251281143006, -239640), (32496495584767, 545200725668602686939, 32496495584762, 30991073), (1081977776806, 13213471458660420658, 787584272543, 751099), (-1248113042681, -5092815995603714342, -303555488324, -289493), (65908983301, 569450686701044185, 33941905898, 32370), (10279384480770, 172444442759847751268, 10278489754191, 9802332), (-18358045879090, -17271448481718, -1029459, -1), (-11747700131050, -4512902957105456, -268989978, -257), (26923138149435, 451695304120427567598, 26923138148810, 25675905), (-642695792315, -3859014936175334699, -230015214454, -219360), (11524969533205, 193351481786142427769, 11524646388658, 10990759), (9646066021438, 161809076863137648584, 9644572547861, 9197781), (-28883047163373, -1891866799, -113, 0), (8028631930809, 134607341129504973998, 8023222752184, 7651541), (5755153457552, 96043478237267444666, 5724637403325, 5459440), (-11657843361461, -4859738545019487, -289662990, -276), (-8864449509408, -46868267142676060, -2793566414, -2664), (-380578009932, -2645451507883569873, -157681197398, -150377), (-39744967286024, -133412, 0, 0), (6807117029231, 113971093849046819683, 6793206563535, 6478507), (-274438455600, -2016329495851962584, -120182603350, -114615), (174675677517, 1581434091268675574, 94260817246, 89894), (-34168098498901, -18295054, -1, 0), (169713526272, 1533316126254507137, 91392763034, 87159), (32941383904, 280471507596800851, 16717404580, 15943), (-622357009359, -3781393896468049555, -225388639955, -214947), (-2769713950238, -3463458439569641025, -206438209985, -196875), (-28705572675007, -2209602482, -132, 0), (2108143952552, 30835999121990630238, 1837968773961, 1752824), (-341634655680, -2424157484315331132, -144491045732, -137797), (684026218185, 7467471125643404372, 445095963814, 424477), (1146537002355, 14222567956887660137, 847731110864, 808459), (-3503992130151, -2331685234699027298, -138979270142, -132541), (-4160357783383, -1551649398955169795, -92485511241, -88201), (3400461273250, 54573759920105729933, 3252849574095, 3102159), (337784693606, 3265403365793692027, 194633207666, 185617), (-8054267482656, -88944011641261589, -5301476219, -5056), (-12676106488980, -2093075183654107, -124757003, -119), (12733145940741, 213624743603189000479, 12733026957702, 12143161), (-1055163131106, -4902678027277962486, -292222382264, -278685), (342048521809, 3312054928957279398, 197413857517, 188269), (-35380786218706, -6287567, 0, 0), (-5553469662909, -592864132757954817, -35337456033, -33700), (328220653292, 3161242390585153746, 188424729740, 179696), (1788296598652, 25072671783678450024, 1494447695236, 1425216), (783982907207, 8826617094845469333, 526107376507, 501735), (-1477480407580, -5128448197944142253, -305679333087, -291519), (1562989214548, 21124361712133528562, 1259110075959, 1200781), (3921916631034, 63991622407253278914, 3814197922185, 3637503), (-70331546844, -571120706815474807, -34041446854, -32464), (-627082321909, -3799666326022825273, -226477761628, -215986), (-4193724282518, -1518350657073100485, -90500751559, -86308), (22004201134146, 369169234583703688484, 22004201089365, 20984841), (466631352433, 4732771228026279919, 282095147850, 269027), (-2234767532, -18727537496253028, -1116248220, -1065), (6293889403963, 105250218782391661858, 6273401903057, 5982782), (470878047703, 4783134768507387469, 285097048790, 271890), (-1031193348816, -4867196340215691835, -290107508911, -276668), (-1632603531823, -5058946484409918905, -301536708141, -287568), (-2482271523065, -3943623132454883000, -235058255938, -224169), (867916146941, 10013675851942421798, 596861592051, 569212), (-399698424141, -2750105640887659262, -163919069820, -156325), (-3753828784943, -2006384033291160590, -119589807587, -114050), (-19264146500608, -7949736681939, -473841, 0), (5596767903982, 93323627868040019278, 5562521688225, 5304834), (39098407942781, 655962435312152241400, 39098407942781, 37287147), (-21403176540600, -1262376445750, -75243, 0), (3533114963751, 56983847320458424876, 3396501977471, 3239157), (-1560959298625, -5099201477705569658, -303936092717, -289856), (4995487481936, 82928223193690515452, 4942907285314, 4713924), (152687105086, 1369623008090621212, 81635892873, 77854), (319414668786, 3065927475752045079, 182743518099, 174278), (819573499065, 9325016781891835749, 555814312809, 530066), (-1244447333679, -5090681248372708426, -303428247474, -289372), (-873840543697, -4561633839128349004, -271894564577, -259299), (1455582264435, 19287907117020704793, 1149648852171, 1096391), (68788427535, 595083834920286942, 35469760592, 33827), (-8852658393955, -47310410000075060, -2819920182, -2689), (-19097691291217, -9169206151125, -546527, -1), (8949460633850, 150103235989042936727, 8946850060764, 8532381), (7133065949758, 119491078319372839238, 7122223277055, 6792281), (-798908693777, -4368732586464449001, -260396753935, -248334), (12623005791932, 211776707302829037646, 12622875410487, 12038112), (-747289150754, -4216817023871571473, -251341880791, -239698), (-4491470921833, -1246761396167497538, -74312770138, -70870), (-3445814796253, -2412365678204348541, -143788199318, -137127), (-2802442584358, -3409060633233220535, -203195848062, -193783), (-37272428034706, -1185567, 0, 0), (-12196705559786, -3114562295014613, -185642379, -177), (-2214334811891, -4374402249373338078, -260734692179, -248656), (1076066900715, 13122040292283776242, 782134550350, 745902), (6154934910949, 102881423854624622774, 6132210722841, 5848132), (-19738333788317, -5291940155555, -315424, 0), (-11278294631058, -6639739965882024, -395759342, -377), (664105881095, 7203996656775811531, 429391661690, 409500), (8319801745673, 139510936762305443840, 8315499827999, 7930279), (-1836541694673, -4880040057649626706, -290873054126, -277398), (2882093031265, 45075934328166983008, 2686735053549, 2562270), (1075142856299, 13107761765404776225, 781283483827, 745090), (-11074453355, -92431404075164964, -5509341006, -5254), (-2210483141154, -4380307361805053256, -261086664307, -248992), (340596227373, 3296150180272110160, 196465860621, 187364), (-236914563885, -1774094713569570659, -105744285200, -100846), (-426255567620, -2891136269878027636, -172325150363, -164342), (1847929546708, 26135464276713163273, 1557795064253, 1485629), (4017086504001, 65694062936775236671, 3915671285199, 3734275), (-859431010690, -4527014744296273307, -269831105727, -257331), (8531289643871, 143070224769011547545, 8527649925292, 8132601), (3173556243632, 50430409774433790247, 3005886660483, 2866637), (-412075455098, -2816457322518350335, -167873938234, -160097), (-1872131383009, -4840583741208602606, -288521274400, -275155), (-21384734871749, -1282622242013, -76450, 0), (-2694374053889, -3589232727482729203, -213934941738, -204024), (-13169711085173, -1388061118410182, -82734890, -79), (5847764332613, 97630809861972128661, 5819249740957, 5549669), (9720659796256, 163062014950051109845, 9719253477457, 9269002), (33196590462, 282676713347942506, 16848845085, 16068), (18074649647756, 303242279260279654049, 18074648336189, 17237328), (789172145816, 8898823204034270842, 530411195995, 505840), (-3792821538819, -1958766458070437279, -116751578931, -111343), (-8099408543294, -85847028748513184, -5116881654, -4880), (496599123567, 5090848122582133793, 303438193952, 289381), (-320818142557, -2301354727492776291, -137171431034, -130817), (-226735438370, -1706577109403166299, -101719922388, -97008), (-3080221721816, -2958339085832818700, -176330750336, -168162), (-926374523022, -4678162991731630953, -278840243324, -265923), (-3952654405420, -1772512981115626799, -105650006599, -100756), (-1000537038448, -4817702062688735100, -287157420080, -273855), (3038118892128, 47946134376157576457, 2857812307844, 2725422), (77750403752, 675268377352954447, 40249131760, 38385), (9868017546978, 165536913947793077378, 9866768953073, 9409684), (8148155158390, 136620738407632261528, 8143230581738, 7765990), (432365214573, 4331011192545628962, 258148383650, 246189), (5280677712476, 87873875698727999667, 5237691146060, 4995052), (38836150180505, 651562480186771076145, 38836150180505, 37037039), (-12675708258714, -2093767621377992, -124798275, -119), (9590331510416, 160872856592749447275, 9588769471213, 9144563), (-789043331814, -4340921524172327203, -258739085446, -246753), (954553959235, 11280203861797256861, 672352544176, 641205), (8923876394869, 149673101071131873688, 8921212021776, 8507931), (-734194454550, -4175734939335242648, -248893197735, -237363), (337595862229, 3263340374969611165, 194510243831, 185499), (-10860318026370, -9350591731046186, -557338699, -532), (-3869929835481, -1867122471318124814, -111289171655, -106134), (-20463617467401, -2836665410756, -169078, 0), (9486132255859, 159122391632918107662, 9484433629091, 9045061), (11705875044274, 196387322901765140182, 11705596619950, 11163327), (6521539670417, 109123555259752920667, 6504270747885, 6202956), (2293224786103, 34222678855010864677, 2039830616415, 1945334), (329307316396, 3173043549069379666, 189128133599, 180367), (-620135002621, -3772751418431586058, -224873508121, -214456), (4371186302605, 71985274975897128301, 4290656743997, 4091889), (-758335477683, -4250665164462622980, -253359387187, -241622), (-12110060407947, -3345985778710733, -199436294, -190), (11636154912812, 195217337054248218614, 11635860029116, 11096821), (3783492873962, 61506396580602204760, 3666066919601, 3496234), (252786745081, 2363224322491864392, 140859146267, 134334), (-27429023551703, -6741872625, -402, 0), (3564401729943, 57550884432547564069, 3430300023112, 3271389), (-2785516821966, -3437170308791941256, -204871315288, -195381), (-10532735663383, -12215782112948864, -728117353, -694), (-2466440487028, -3969847561407227483, -236621353710, -225660), (326434431604, 3141862751324216686, 187269613226, 178594), (-106694688060, -851628373257493841, -50761006669, -48409), (1358373855517, 17656759439707419917, 1052424874288, 1003671), (-450801257006, -3017045733306319721, -179829939205, -171499), (632837614122, 6795527241730334984, 405044987305, 386281), (-4550120350004, -1198464543955951187, -71434053418, -68125), (-3557623115998, -2258936048799010568, -134643080759, -128406), (-1041689718412, -4883077146222512432, -291054078711, -277571), (856126956874, 9844514114618973066, 586778766788, 559596), (381295880027, 3747655259652495910, 223377660492, 213030), (12803091014094, 214798339949308350051, 12802978751022, 12209872), (-37138202606864, -1334679, 0, 0), (-746127585107, -4213214918381089938, -251127178572, -239494), (-815695633903, -4414747813806971178, -263139475215, -250949), (921204075962, 10787881612792898419, 643007851409, 613220), (-1057337824350, -4905759738331288010, -292406066557, -278860), (3257515714248, 51966442801409592895, 3097441363419, 2953950), (6720379353029, 112499980457627623488, 6705521372415, 6394884), (4301887660663, 70759250639073034508, 4217579998915, 4022198), (6912576942980, 115758436982750973032, 6899740516111, 6580105), (2967813929097, 46653788872714608213, 2780782513184, 2651961), (-5153522363657, -789330433778598342, -47047760116, -44868), (9635682836199, 161634665446677183614, 9634176817338, 9187867), (828559965094, 9452024337315898682, 563384553034, 537285), (-11114012412732, -7597411487057441, -452841013, -432), (13936721625375, 233818657844510789251, 13936678042681, 13291052), (-2276622435790, -4277491363376673424, -254958353244, -243147), (646169020479, 6968913755901865637, 415379628891, 396137), (-1665436160570, -5036224722441751015, -300182385590, -286276), (389429999691, 3839323414273933973, 228841508286, 218240), (3723168846884, 60419981015953549037, 3601311505792, 3434478), (-41548479676494, -27046, 0, 0), (12525738596258, 210144650641132172564, 12525597252913, 11945340), (4768088898930, 78962307120633326603, 4706520266571, 4488487), (21887582971945, 367212706407295925291, 21887582922417, 20873626), (428059008270, 4281106576884610901, 255173836761, 243353), (-24620729381347, -77824277450, -4639, 0), (1001848481275, 11988312989278670473, 714559137182, 681457), (33662726174202, 564766828173412040024, 33662726174200, 32103277), (-1600633536844, -5078540515450055976, -302704603401, -288682), (-699350385022, -4061298720989990864, -242072267591, -230858), (829849531155, 9470288139894804958, 564473160499, 538324), (10429015519625, 174956554089953195396, 10428223257658, 9945129), (-19184678449955, -8510331232901, -507255, 0), (-222886583539, -1680846309781052658, -100186247217, -95545), (235532930103, 2186611096919278768, 130332177694, 124294), (-1451705988396, -5133310726083707845, -305969162350, -291795), (81776805730, 711492395267811321, 42408251480, 40444), (3697604398376, 59958956034265554097, 3573832275526, 3408272), (-2018572713138, -4657904897144666765, -277632766792, -264771), (10089815025794, 169261499682588105051, 10088771562731, 9621402), (-1385419774945, -5136075931715785034, -306133981449, -291952), (-3938693316536, -1788211594399595369, -106585716867, -101648), (-5901390031845, -459907816720546885, -27412642045, -26143), (4309276248916, 70890085813437766538, 4225378383007, 4029635), (365730468644, 3573565636438730209, 213001110341, 203134), (-2098350071276, -4546883122125464119, -271015353330, -258460), (3970397910201, 64859505541340608664, 3865927788099, 3686836), (2652089588752, 40834655897397625047, 2433935159290, 2321181), (-832121690526, -4458193971214850630, -265729067994, -253419), (-9858370971268, -21111843254388917, -1258363918, -1200), (22078076830775, 370408663149661984749, 22078076788763, 21055295), (-4171925393393, -1540037965909333925, -91793415899, -87541), (-292677837918, -2130307374257599668, -126976214305, -121094), (-331983065266, -2367612705655869598, -141120714286, -134583), (-21131552696578, -1595623267339, -95107, 0), (-25834197692671, -27083394541, -1614, 0), (11650714976479, 195461673358816392282, 11650423607756, 11110710), (1027180493517, 12372246563347713173, 737443361482, 703281), (-431789928133, -2919896274495069665, -174039380222, -165977), (-666544313855, -3946644491402922841, -235238342965, -224341), (-82637784814, -667177657890341738, -39766887301, -37925), (20152058101195, 338095427899719790611, 20152057880146, 19218500), (2046814944741, 29720442832918963518, 1771476437623, 1689412), (-3546373153952, -2274065815080438973, -135544885104, -129266), (1270802527486, 16215681025724489645, 966529907329, 921755), (-4189591194418, -1522443145481374332, -90744682877, -86541), (-2583685583012, -3774567027253862612, -224981726840, -214559), (1674115020222, 23057194843390939768, 1374315908157, 1310650), (30829183716469, 517227874314539210292, 30829183716448, 29401001), (3832131186322, 62380864047375030625, 3718189242326, 3545942), (-4319776025323, -1397850673335623284, -83318392833, -79459), (-3139627645465, -2865425019566130579, -170792640422, -162881), (-10565529992914, -11893751989059478, -708922862, -676), (24318106706156, 407990128819005388830, 24318106700123, 23191554), (-4113669097830, -1599245663327113667, -95322469671, -90907), (8971032691065, 150465902217728061398, 8968466652496, 8552996), (39800198469113, 667736526559178002355, 39800198469113, 37956427), (756397655301, 8445466345756916601, 503389021501, 480069), (-212519832342, -1610990376885558860, -96022509151, -91574), (-454940441966, -3037860626247537731, -181070603505, -172682), (3497736295615, 56342004074380011891, 3358245138787, 3202672), (-878064882652, -4571563529361337148, -272486420236, -259863), (-456740428199, -3046874846944333441, -181607892927, -173195), (576692736174, 6078014617857189283, 362277902237, 345495), (25755018151264, 432097502578660303525, 25755018149534, 24561899), (7656706662061, 128336871418605710429, 7649473632491, 7295107), (-38015913465042, -614944, 0, 0), (-4170603776505, -1541360968031413623, -91872272970, -87616), (3259996765239, 52011783272454253624, 3100143866089, 2956528), (1904237468332, 27144595146674567011, 1617943951289, 1542992), (1064727864426, 12947106512925182470, 771707684572, 735958), (-3859036632913, -1879866353147825450, -112048766205, -106858), (-1012611855905, -4837754760281738931, -288352653997, -274995), (4164438923240, 68320146711547376584, 4072198075744, 3883551), (35748584861885, 599761729922170265445, 35748584861885, 34092507), (-4305549147293, -1411037247692631403, -84104373914, -80208), (2916714109672, 45713456014415327426, 2724734307195, 2598509), (-3393000004645, -2487169993890789700, -148246883982, -141379), (-1019268510667, -4848498325003518330, -288993020356, -275605), (7578743474033, 127021284559054152007, 7571058545056, 7220324), (633728978172, 6807084455386667732, 405733850919, 386938), (-306067136681, -2212417265303227470, -131870345193, -125761), (-2789171292550, -3431096881424746818, -204509310807, -195035), (2508997923756, 38194773004609952604, 2276585877216, 2171121), (2799481574745, 43553532566946959927, 2595992837366, 2475732), (-4112776319145, -1600167260391529976, -95377401137, -90959), (7889825736019, 132268137589825718762, 7883795356144, 7518573), (10760364963727, 180518821074359129288, 10759760205409, 10261307), (1847381569643, 26125669372585291170, 1557211242472, 1485072), (-9826408476934, -21664017266769260, -1291276054, -1231), (662724512812, 7185819319234306359, 428308207943, 408467), (-338768834505, -2407438563318211548, -143494520385, -136847), (-2577391318858, -3785096422556027022, -225609327707, -215158), (4117486306620, 67484647038686527286, 4022398414534, 3836058), (-4341268127194, -1378126875390899046, -82142762863, -78337), (-6313911022720, -338614407411673876, -20182991470, -19248), (-98074571515, -786041314347788267, -46851713320, -44681), (438852285012, 4406436990864925491, 262644111566, 250477), (87659753, 735372618313737, 43831624, 42), (31118900294026, 522088511915070942564, 31118900294010, 29677296), (4011036773021, 65585992150998121396, 3909229764402, 3728132), (3372800538190, 54070037979958590067, 3222825406787, 3073526), (-1960521148192, -4733920891426060270, -282163673128, -269092), (-39313415661429, -195395, 0, 0), (941568732740, 11087811907009639205, 660885090054, 630269), (-2285988642552, -4262706207615849566, -254077089287, -242307), (566738493299, 5952973636449060435, 354824878958, 338387), (-11502898196989, -5520798482428328, -329065232, -314), (98712370207, 865205345392253227, 51570257270, 49181), (12828818407765, 215230013851824809397, 12828708520640, 12234410), (-493868939819, -3227777288216109619, -192390518678, -183478), (991726708640, 11835805252837843000, 705468967726, 672788), (897021269670, 10434610657648001065, 621951261619, 593139), (1059080145301, 12860203974873410778, 766527889661, 731018), (548675363579, 5727764681749252791, 341401379213, 325586), (3329320044205, 53277432228724146652, 3175582422538, 3028471), (974274290705, 11574067310653224426, 689868170658, 657910), (9984051147409, 167485510860866701083, 9982914379887, 9520449), (-619314997988, -3769553903079226652, -224682921355, -214274), (-895198593939, -4610827009838316257, -274826706042, -262095), (305367658805, 2915058843101821966, 173751046842, 165702), (2569075248838, 39302927325921135101, 2342637021895, 2234113), (1112683137326, 13691046890411987959, 816049986506, 778246), (-147188243684, -1152184626132870601, -68675555356, -65494), (-1056780070153, -4904971520190194850, -292359085094, -278815), (-1192084058368, -5054225259833996591, -301255301227, -287299), (-15530173515637, -191273794236410, -11400807, -11), (22491219934873, 377340054457743004778, 22491219905480, 21449299), (-21687736477619, -987476946691, -58858, 0), (-4211662761896, -1500693473957542509, -89448301432, -85305), (752142131069, 8387072791753793097, 499908494458, 476750), (1199777161947, 15068629184558884929, 898160289798, 856552), (3054633553, 25659717561256826, 1529438350, 1459), (35601008501322, 597285809444510301193, 35601008501322, 33951767), (3510561758217, 56574763602868564350, 3372118687801, 3215903), (40362414667812, 677168949163450094123, 40362414667812, 38492598), (-363081419604, -2547383834922959420, -151835908587, -144802), (5555903533833, 92620772856103474922, 5520628264910, 5264881), (-32374300082668, -88601908, -5, 0), (-7262896563952, -164619694529161920, -9812098415, -9358), (-11071177537378, -7868775742352425, -469015583, -447), (1923895624147, 27498077639648569756, 1639013149717, 1563085), (-3271361778624, -2664905480336021941, -158840744515, -151482)];
/// (x at Q.40, sqrt(x) at Q64.64, at Q.40, at Q.20), each the nearest value (exact integer arithmetic).
pub const SQRT: &[(i128, i128, i128, i128)] = &[(0, 0, 0, 0), (1, 17592186044416, 1048576, 1), (2, 24879108095804, 1482910, 1), (3, 30470560045133, 1816187, 2), (1099511627776, 18446744073709551616, 1099511627776, 1048576), (2199023255552, 26087635650665564425, 1554944255988, 1482910), (1099511627777, 18446744073717940224, 1099511627776, 1048576), (2473901162496, 27670116110564327424, 1649267441664, 1572864), (77371252455336267181195264, 154742504910672534362390528, 9223372036854775808, 8796093022208), (282414773, 295640218501471714, 17621530205, 16805), (15845968802969202260132558, 70029206839829702041541729, 4174065997590404871, 3980699536887), (59118482356580249965558248, 135263757499003604398178178, 8062348216712689662, 7688854424203), (2711989500438992125256977, 28971021679926066847205297, 1726807456012133768, 1646811920178), (906, 529521877638817, 31561963, 30), (1369499350422, 20587363112251125831, 1227102465168, 1170256), (941934896832, 17073802470367260696, 1017677931211, 970533), (39434306643431149071868755, 110473194843094052077208476, 6584715535825136428, 6279674087358), (815008983522446, 502228098845463505787, 29935127427904, 28548362), (109347429876787398933, 183960295741652876254752, 10964888080457024, 10456932145), (489, 389022068529072, 23187522, 22), (1037873963298, 17922232944714223343, 1068248328251, 1018761), (317366742898451980694, 313401100098413353651845, 18680161243582568, 17814790004), (927, 535623565673120, 31925652, 30), (1634766492895, 22493015007090865952, 1340688169425, 1278580), (419147010726, 11389456384354941497, 678864501974, 647416), (773, 489113394410641, 29153430, 28), (546332664461446, 411195537459457644953, 24509163943497, 23373760), (146, 212567192750707, 12669992, 12), (2098743518136, 25485871739510976797, 1519076331825, 1448704), (732315212, 476067831908584636, 28375854010, 27061), (1859997674191, 23992527971530649447, 1430066107007, 1363817), (138746059838873700797, 207219269596016957620478, 12351230954886494, 11779051738), (566, 418531379419610, 24946414, 24), (556, 414817629158487, 24725057, 24), (1032388609398146, 565251093691140055215, 33691590648361, 32130805), (674085234092, 14443658653311712412, 860909143288, 821027), (234036748, 269129829735270447, 16041387900, 15298), (2798144913312, 29427604489287113326, 1754021912175, 1672766), (139489538649483, 207773726055317540019, 12384279135187, 11810569), (19363538539161878714391334, 77412692208503559953123938, 4614156020194504258, 4400402088351), (1383945596619, 20695661781200389431, 1233557568860, 1176412), (27348353093977556652873888, 91999485465339733703151666, 5483596650680287701, 5229565287285), (23606629369506923244065575, 85474545463960807702166834, 5094679919717360002, 4858665389745), (301, 305213020620394, 18192114, 17), (81, 158329674399744, 9437184, 9), (1054286832702, 18063387577453273905, 1076661799994, 1026785), (396, 350080082108726, 20866399, 20), (489739387, 389316065678767633, 23205045800, 22130), (371, 338849433589196, 20197000, 19), (840165053, 509920081659132052, 30393605331, 28986), (747257004254, 15207394296874730663, 906431335025, 864440), (968967966233504, 547613970371779998802, 32640336178051, 31128250), (262, 284754407469300, 16972685, 16), (348543624867259, 328434205230226991564, 19576204134835, 18669323), (664, 453318923630343, 27019913, 26), (309431581770058, 309458294642655749020, 18445151724974, 17590667), (40268477362102637905575832, 111635523521417439795006883, 6653995723808851230, 6345744823274), (903938328, 528919050818714829, 31526032139, 30066), (1153097345592447652098, 597382911812553933973620, 35606796253475781, 33957287076), (400, 351843720888320, 20971520, 20), (696, 464113743424665, 27663335, 26), (1304441338924, 20092412512893085918, 1197601110512, 1142121), (880071562887543328734, 521889793235830443160354, 31107055737723735, 29666000116), (921, 533887342091437, 31822165, 30), (276168284, 292352431298397131, 17425562817, 16618), (42344184692859267578, 114476593308616587032416, 6823336679256951, 6507240943), (750098470633521484055, 481813483156077017756410, 28718321511511625, 27387925636), (110326603922841, 184782115202245951214, 11013872337475, 10503647), (1036817366, 566462207653300667, 33763778666, 32200), (1621589756795, 22402181184159125008, 1335274051676, 1273417), (448, 372356394332047, 22194171, 21), (149343654, 214987493182616462, 12814253162, 12221), (514921109230559707018, 399199654994136571648945, 23794153630384002, 22691873198), (441840320552502, 369787717407781589086, 22041065538393, 21019998), (580, 423675944203090, 25253054, 24), (1058727738, 572416250986168673, 34118667304, 32538), (707473266787, 14797039261957568213, 881972268936, 841114), (1002, 556869805107969, 33192027, 32), (1270148343346, 19826544643860714301, 1181754150621, 1127009), (24743095182931426046583780, 87507811398183238130299795, 5215872013460590728, 4974243176900), (805921312262822, 499420229106601941059, 29767765349543, 28388753), (431495696, 365433235645621218, 21781518200, 20772), (724, 473357314415499, 28214295, 27), (591, 427674690394948, 25491398, 24), (345670824, 327077878127812922, 19495360740, 18592), (439, 368597231828415, 21970107, 21), (794121388, 495750608234140423, 29549038901, 28180), (143581992505, 6666068883575852987, 397328667854, 378922), (214664762, 257750899078677709, 15363150780, 14651), (795, 496024780437398, 29565381, 28), (1810803775551, 23673120289918056479, 1411027925606, 1345661), (136394911535162395173, 205456030663597766477756, 12246133724665509, 11678823208), (435675523398453121748, 367198915627333950978746, 21886760927875874, 20872841766), (1058076798824360145887, 572240254155450383774824, 34108177075114869, 32528092456), (397130241, 350579315613796779, 20896155573, 19928), (814050835000254, 501932794968736589736, 29917525945231, 28531576), (118065345, 191152960889664207, 11393604332, 10866), (721767086924730732225, 472626802017854157367899, 28170752645603070, 26865723272), (302304721408436039445, 305873796972098956099563, 18231499014621911, 17386912360), (485, 387427709080484, 23092491, 22), (54612716282541804880819839, 130006988408595875122487457, 7749020362412683673, 7390041696942), (188096260, 241273647283449246, 14381030040, 13715), (254972297, 280909422841626856, 16743506363, 15968), (552104114, 413361763040191004, 24638281050, 23497), (428650844909, 11517856178412271130, 686517726088, 654714), (52, 126859057661288, 7561389, 7), (623843580371886350740, 439397583742077852359428, 26190136894111505, 24976860899), (33522930760521859438547384, 101856980888206078726673603, 6071149163735275193, 5789899028526), (1146851756816148086883, 595762895136876107410884, 35510235734991795, 33865199790), (814326583, 502017799024633558, 29922592582, 28536), (231, 267378079259932, 15936975, 15), (362, 334714166947452, 19950519, 19), (68692464404158066808795629, 145805651539209054901116608, 8690694066238943034, 8288091722716), (486518852, 388033879564000865, 23128621552, 22057), (1606631896967, 22298620773763525609, 1329101370201, 1267530), (99558193486595731523, 175532813140433810518944, 10462570973660577, 9977885221), (49686114885681346541620364, 124004466667050227473487946, 7391242186251296250, 7048837839366), (781869668, 491911518344500456, 29320211312, 27962), (420971886875, 11414223081051970584, 680340712133, 648823), (95763581392427514372, 172155142031141803351975, 10261246087023127, 9785886848), (62498098799016490636743269, 139076326959799355527598778, 8289595065104922982, 7905573906999), (732, 475965363434383, 28369746, 27), (700955397, 465763016914041632, 27761639173, 26476), (366523117149117666114, 336798768570558598002170, 20074770961437142, 19144793474), (59905903221510150447455890, 136161591672782733020051784, 8115863303708000959, 7739890388210), (55982830701448, 131627682914591839756, 7845621282732, 7482168), (366100132773224488976, 336604371907016553299384, 20063184017361197, 19133743303), (614, 435917189418249, 25982689, 25), (396978062122, 11084167061835801418, 660667840352, 630062), (9386461768482720814442973, 53897766304426335232929204, 3212557214762350037, 3063733305704), (306829378427459, 308154333404707050168, 18367429578585, 17516546), (396, 350080082108726, 20866399, 20), (30441379954920232284206237, 97062612649381043713387027, 5785382547937693817, 5517370746553), (779950070319883878958, 491307292000747775657942, 29284196615263687, 27927586189), (6844299366485476747, 46023994357910565898014, 2743243834847842, 2616161189), (1557634509810, 21955968017070298643, 1308677674357, 1248052), (951834151339234184457, 542750773076846515214630, 32350467030814082, 30851809531), (174849427135289437460, 232622605681867493169661, 13865387778393477, 13223064211), (49403119810021678229389638, 123650818920093069525942592, 7370163137918297620, 7028735292357), (343, 325811845040541, 19419899, 19), (74822682, 152172594357950600, 9070193431, 8650), (36208361, 105858136010888685, 6309636594, 6017), (701845530, 466058655906225107, 27779260630, 26492), (225728751260, 8358209425508615362, 498188103766, 475109), (286913493, 297985612402648426, 17761326575, 16939), (1022, 562399928909504, 33521648, 32), (12628622660168741681917499, 62516952964874926857269932, 3726300773911173752, 3553677343284), (2101018032306, 25499678161950309229, 1519899258730, 1449489), (578, 422944837628665, 25209477, 24), (711, 469088309365067, 27959842, 27), (1638896048825, 22521406700443219701, 1342380446222, 1280194), (371826645349, 10727291036774990693, 639396371649, 609776), (635, 443309126046999, 26423283, 25), (509108654, 396940167762500156, 23659477697, 22563), (24128228338121894118413380, 86413685167311958626245701, 5150657008130071081, 4912049301272), (45378934728319050018978992, 118507805903560622849532688, 7063615673992670944, 6736388849251), (585125707889493, 425543928934371271297, 25364394720457, 24189372), (693, 463112418108381, 27603651, 26), (420488725608489, 360742231204925728300, 21501912546451, 20505822), (3, 30470560045133, 1816187, 2), (281847225659445, 295343006352498883222, 17603814980537, 16788306), (414970202081, 11332566217172694415, 675473583768, 644182), (58924720087375595800681860, 135041910438802091624596792, 8049125101494913794, 7676243878837), (337660593846695384169, 323265977490557656192534, 19268153756294111, 18375543362), (528321818347219, 404360832846135034195, 24101783802875, 22985252), (280360544169156, 294563042090668415545, 17557325487773, 16743970), (458, 376489222286875, 22440506, 21), (1778360408057, 23460091396953505242, 1398330414114, 1333552), (71616943701702292240939408, 148877031555898678107766226, 8873762581103961355, 8462679463486), (42766538648492856300223253, 115046089171487029274284453, 6857281277864398317, 6539613035073), (1516900210566, 21666976636462663449, 1291452445773, 1231625), (968502695, 547482480152629329, 32632498750, 31121), (61790925, 138287255488331232, 8242562740, 7861), (40302017622171144485072798, 111682005352776768109066017, 6656766256855533606, 6348387009483), (774145576853, 15478580408277160502, 922595286863, 879855), (324116057151831241508, 316716057582955732555301, 18877748106894239, 18003223521), (95647462, 172050735878858505, 10255022995, 9780), (1492412908287, 21491380215768003398, 1280986083494, 1221644), (516427752389887322463, 399783251300500878398734, 23828938680917077, 22725046807), (73174236, 150486973346962567, 8969722590, 8554), (719717413276686059972, 471955242281011487262814, 28130724566043108, 26827549521), (665625466, 453873444786481629, 27052965449, 25800), (962157615950712, 545686136182868457593, 32525428306035, 31018666), (171981250, 230706781099596640, 13751195735, 13114), (449361753, 372921877261902988, 22227876023, 21198), (46304698, 119710525499240949, 7135303348, 6805), (507750867638158648331, 396410497158932471801092, 23627906868394165, 22533327931), (1022282443099607058362, 562477636838008451179695, 33526279737830666, 31973151911), (924, 534756158519865, 31873951, 30), (373, 339761546769733, 20251366, 19), (1450964066013, 21190838308581661197, 1263072389876, 1204560), (1787755319066, 23521978498402359032, 1402019172812, 1337070), (266510556292033801529, 287195094198233509568186, 17118161570920557, 16325151034), (1082841204550627, 578898195562318125991, 34505021307607, 32906553), (934870089498155188475, 537892441692591830284247, 32060887914454450, 30575645365), (1449873254545, 21182871345088343896, 1262597521847, 1204107), (401, 352283251004585, 20997718, 20), (137685537, 206425797250978711, 12303936318, 11734), (282358779, 295610908952897071, 17619783220, 16804), (424445447, 362435516103789417, 21602840191, 20602), (820053917228855, 503780105430538697587, 30027634229096, 28636584), (1318884122002, 20203337977943274457, 1204212783452, 1148427), (1125312084295055, 590141696086739312973, 35175186162397, 33545672), (866, 517700703597440, 30857367, 29), (386317419778, 10934324416906195659, 651736522729, 621544), (29320681538, 3012359774953260963, 179550634322, 171233), (858092441804, 16296218818466230690, 971330333857, 926333), (1501520731354, 21556858729649037631, 1284888907054, 1225366), (954056703956512059603, 543384070795327270838835, 32388214516361193, 30887808339), (478616746041494, 384869729063370206143, 22940023485623, 21877311), (473200814223897213053, 382685979149421297786566, 22809861847723800, 21753179405), (477539735, 384436457137662116, 22914198466, 21853), (30714187140657514118861691, 97496566651759697598333702, 5811248222098332500, 5542038175677), (276574425, 292567323256473509, 17438371376, 16631), (6164720, 43679382204260197, 2603494060, 2483), (443530797212076631117, 370494444130068628223109, 22083189733628549, 21060170873), (574, 421478819915606, 25122095, 24), (238659035, 271774527487267902, 16199024170, 15449), (1731755511554, 23150645163827684214, 1379885981311, 1315962), (786375647457472123026, 493326945317851401989985, 29404577333799088, 28042390188), (22683842202684699708838592, 83787284995300546177360191, 4994111358839306007, 4762755736198), (1, 17592186044416, 1048576, 1), (1807917588724, 23654246821711099129, 1409902979238, 1344588), (1273060748862, 19849262413619428444, 1183108235217, 1128300), (734343726, 476726730164517975, 28415127406, 27099), (786680966, 493422705688312672, 29410285097, 28048), (109246189684095, 183875115465162026383, 10959810940335, 10452090), (246960349138923, 276460713445405099282, 16478342619264, 15714972), (1598499870511, 22242116538776512210, 1325733455347, 1264318), (205216733040, 7969410432421506866, 475013877894, 453009), (865931272447800180016, 517680160290229078064143, 30856142061366384, 29426710187), (151320695309222, 216405838354577059089, 12898793122445, 12301248), (34091350744503460650205575, 102716902309140792352055163, 6122404474564837954, 5838779902043), (1951002055698, 24572462033120733846, 1464632870741, 1396783), (86531234, 163646325361564744, 9754081092, 9302), (599, 430559543945998, 25663349, 24), (257839039863281, 282484190326491905378, 16837369819074, 16057367), (1015678519, 560657896072145063, 33417814736, 31870), (884489001321480107605, 523197942714657434624832, 31185027522722330, 29740359805), (1102050817078318519319, 584010451915977925631920, 34809735531567211, 33197150737), (593, 428397725045381, 25534494, 24), (532452736919459455748, 405938592049242063357075, 24195825579717282, 23074937420), (680485865229, 14512069965504010131, 864986775249, 824916), (1039857714447849, 567292142523315744658, 33813246638973, 32246825), (37661198180378842564340289, 107960994293023112756319901, 6434976714433617160, 6136872019228), (327281593825, 10064231082366679869, 599874918602, 572085), (321180788751, 9969986938859578605, 594257529906, 566728), (269644107451156, 288878537179190312526, 17218502591800, 16420844), (468533281075884, 380793943091794711608, 22697087710607, 21645630), (573850966003377, 421424099749342154284, 25118833765348, 23955187), (163881179419606, 225208277872307296456, 13423459403056, 12801608), (101, 176799281650000, 10538058, 10), (404525996134939078178, 353828675896698652415203, 21089832538169542, 20112831629), (1068283931, 574993793773045969, 34272300826, 32685), (111276425075436, 185575821451382720641, 11061180916511, 10548764), (681671638066, 14524708382676341740, 865740083616, 825634), (999335621564391, 556128937077253270568, 33147867743805, 31612270), (286, 297510861665427, 17733029, 17), (971, 548187873394264, 32674543, 31), (77321955639605755778628596, 154693200240117196472407535, 9220433249480557231, 8793290376168), (629090303532, 13953279856976780725, 831680289327, 793152), (716762566491165, 470985424328705418463, 28072918911499, 26772422), (332, 320544884939202, 19105964, 18), (88961141067615, 165928115812326671546, 9890086401244, 9431921), (688196027, 461504446538823346, 27507808598, 26233), (45408342240969417575201728, 118546198776752931976056932, 7065904067561205147, 6738571231424), (16934053708570231185857737, 72393616972161591829063020, 4314995823631381501, 4115100692397), (819618091446554151085, 503646218174115660771681, 30019653926737050, 28628972937), (2077343831765, 25355606405213455733, 1511311912847, 1441299), (875104782962412, 520415038550797571574, 31019153508592, 29582170), (484206707, 387110730245825340, 23073597565, 22005), (1146349902029, 18835554430070356236, 1122686530952, 1070677), (328755666899037544690, 318974843520725756986137, 19012382240338669, 18131620636), (506, 395726439563495, 23587134, 22), (700, 465445492915058, 27742713, 26), (7, 46544549291506, 2774271, 3), (1014, 560194430496095, 33390190, 32), (44077208902056525115487171, 116795699535344373777573019, 6961566182097457276, 6639066869829), (688369625, 461562650302037136, 27511277813, 26237), (546930994081383, 411420641284409598117, 24522581177021, 23386556), (236967338, 270809599032729998, 16141509952, 15394), (252346356637499058687, 279459146678610327338509, 16657063167012353, 15885413329), (1381187670139240327074434, 20675030342375885029160346, 1232327839277737440, 1175239409712), (130177007289871643322, 200718291093809470339800, 11963742440569965, 11409513894), (417, 359242604788882, 21412528, 20), (56103857688975218081325323, 131769886346948942862328377, 7854097267803486756, 7490250842861), (178076275563, 7423741502205178875, 442489475143, 421991), (1880580082939, 24124911304255656038, 1437956768528, 1371342), (204200003, 251389816687099902, 14984000724, 14290), (1131568296585110523833, 591779879162992191758319, 35272829482733738, 33638791545), (1325059386096, 20250580661299221802, 1207028666812, 1151112), (574836466991246, 421785810136440067411, 25140393384483, 23975747), (86222115615795547593, 163353764260795762860465, 9736643091487632, 9285586444), (1043100982661207, 568176132782395516065, 33865936564350, 32297074), (378459547, 342239034331674103, 20399036070, 19454), (865260704331080504203, 517479678420252944995882, 30844192410722550, 29415314112), (811546721631658066852, 501160199052811943625385, 29871475640106913, 28487659111), (384355311279203, 344894487178514179169, 20557313393266, 19604982), (884215517, 523117049963897380, 31180205939, 29736), (66014736543677553412577515, 142935549768325846091583846, 8519622669716229802, 8124945325581), (67607663686835154744875262, 144649778638331736041282458, 8621798672576650145, 8222387955262), (866414972847, 16375055614589961326, 976029373085, 930814), (293381588743489, 301325743795117036173, 17960413920588, 17128385), (650518273, 448693273972732327, 26744203208, 25505), (483582617719195176857, 386861178194784591604958, 23058723103689229, 21990511993), (1267947133858, 19809357162083515236, 1180729696875, 1126032), (61270835682386402706378918, 137704049261179591963998647, 8207800940345501421, 7827568950983), (794584959848331090590, 495895285420776938304099, 29557662333296355, 28188383420), (1495973231207, 21517000026782723231, 1282513143228, 1223100), (103011429137138, 178551093970935796976, 10642474530395, 10149455), (219130386446522, 260418067348555909492, 15522126397404, 14803053), (12780254354759236191978281, 62891153149723294742428766, 3748604843003946229, 3574948161129), (100284679491538, 176172089212136779731, 10500674796828, 10014224), (1656839423997, 22644358357173719033, 1349708936046, 1287183), (12429995088043880921575733, 62023359727626263516354435, 3696880324341432066, 3525619816152), (153183170915594168037, 217733541640412953115704, 12977930405164537, 12376718908), (1060714856101079, 572953181034968210260, 34150670828519, 32568618), (919463826, 533441909883336326, 31795615547, 30323), (602055375703929290105, 431656245017634549242843, 25728717149355087, 24536816739), (1181665191153, 19123484601126642030, 1139848506518, 1087044), (630577418, 441762672034259154, 26331107142, 25111), (971439949137083185600, 548312048198411507160420, 32681944858933181, 31167931422), (44660821432000923692015309, 117566384479204531694904648, 7007502584409983855, 6682875236902), (699724908985240, 465354026875815039106, 27737261466731, 26452314), (281, 294898775446420, 17577337, 17), (224433191460729412986, 263550201030960438516253, 15708816112933185, 14981094468), (378172262380083531241, 342109114664985849337884, 20391292254029861, 19446651701), (46693170892491698054484465, 120211631934070909444696260, 7165171619300300446, 6833240145970), (1010, 559088418695611, 33324267, 32), (219911612950289, 260881865398398335221, 15549770915413, 14829417), (606, 433068026933108, 25812866, 25), (781, 491637867409001, 29303900, 28), (1288649647681, 19970421850046812358, 1190329900387, 1135187), (628, 440858918666510, 26277239, 25), (40736733734704396804822467, 112282716568377117380120172, 6692571435473985516, 6382533488726), (669, 455022495675192, 27121454, 26), (544870619881, 12985734062625557275, 774010065950, 738154), (264933512, 286344112150614058, 17067439088, 16277), (533325802, 406271265375668349, 24215654455, 23094), (216, 258551275613582, 15410857, 15), (796423161375695372667, 496468558843663100910275, 29591832092026657, 28220970242), (329802632065, 10102918925921457630, 602180893774, 574284), (3428389560941543623648061, 32573534916238221141325792, 1941533977761162587, 1851591089021), (382230149499321, 343939677228160975647, 20500402285347, 19550707), (785, 492895255312684, 29378847, 28), (1592011665191, 22196931000418336037, 1323040187384, 1261749), (42, 114010396072010, 6795549, 6), (47805450457020934136859423, 121634987993607122752930481, 7250010251617856190, 6914148570650), (114625328, 188347606201551975, 11226392162, 10706), (458849416250163176821, 376838182904413499076200, 22461306029821247, 21420770674), (423362323361400, 361972779091868102630, 21575258916132, 20575770), (879377126355171, 521683849267634794403, 31094780520656, 29654294), (900, 527765581332480, 31457280, 30), (1568945246582865644190178, 22035540271294707570524526, 1313420550304335807, 1252575445465), (911938055, 531254325072401947, 31665225331, 30198), (21782884950111, 82106494035017306433, 4893928410710, 4667214), (940672773578045, 539559192831957189784, 32160234024045, 30670389), (1803436060506, 23624911151110542740, 1408154437012, 1342921), (804359196807933, 498935981789239545679, 29738901960208, 28361227), (47047749240421190389685276, 120667199916729368452356860, 7192325587077699211, 6859136187628), (122249020, 194510254627744009, 11593714632, 11057), (742440454218268502335, 479347672640125291871413, 28571347751624900, 27247760536), (1005233488024119323719, 557767600272631046828054, 33245539681472245, 31705417329), (143, 210371947760276, 12539145, 12), (847775702396983713624, 512224434777010826984955, 30530955480158974, 29116588097), (379197921746277835635, 342572725907770472606863, 20418925637469916, 19473004949), (627666737368431817980, 440741927185286896938703, 26270266007500106, 25053277977), (29383456377302732850828659, 95361099435328453377722504, 5683964457233455978, 5420650918230), (13944917304015653507212745, 65694313823885315951638992, 3915686239235718009, 3734289397464), (1237466344080, 19569805406574250761, 1166451299582, 1112415), (887177965363129, 523992634799086573731, 31232394862121, 29785533), (679793732813530912768, 458678504048624934093078, 27339369299925860, 26072854328), (243303473042, 8677486833408088506, 517218520248, 493258), (148838122886505, 214623316355237983669, 12792546531870, 12199923), (941, 539653031346888, 32165827, 31), (58, 133978097350418, 7985717, 8), (415041945, 358398186971690971, 21362196623, 20373), (377017132992595, 341586227923534153009, 20360125775548, 19416929), (877372659, 521088942492157127, 31059321314, 29620), (218, 259745514188510, 15482039, 15), (1528545185631, 21749984408899693651, 1296400094563, 1236343), (2179791922065923764586921, 25973311772068287035526892, 1548130021814601841, 1476411840262), (72944363555521087023296176, 150250414546490383101499285, 8955622586398743576, 8540747248076), (1010897533173279792039, 559336779572473670222302, 33339070056228260, 31794614845), (739558808376, 15128858683777458554, 901750247704, 859976), (53701218709830198133222136, 128917501526480098122522266, 7684081883816724904, 7328111537759), (138116891761881418297, 206748899884423870070016, 12323194735313885, 11752314315), (1103727655175658, 584454586945922325785, 34836208042259, 33222397), (473865770, 382954765582632805, 22825882768, 21768), (23548119259955469517243385, 85368553463447671651802601, 5088362304177741507, 4852640442064), (575086548111560887155, 421877548573552150987706, 25145861421439180, 23980962202), (792925982985, 15665206849311387815, 933719089586, 890464), (657506966662705285398, 451097051680910623457734, 26887479524666704, 25641898656), (693759549943, 14652923978775065279, 873382328676, 832922), (48, 121882240180531, 7264748, 7), (905359903, 529334788646851567, 31550812045, 30089), (683034879, 459770656127200272, 27404466637, 26135), (518671287848467, 400650706493614590624, 23880643039561, 22774356), (56995656930715659677219915, 132813031909434813829925917, 7916273588504482140, 7549546803002), (44436636121110114089373381, 117270937432806857808300135, 6989892568159512151, 6666081016693)];
/// (x, gate, x * sigmoid(gate)); |x| < 128 so every gated split holds it.
pub const SIGMOID_MUL: &[(&str, &str, &str)] = &[("1", "0", "0.500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), ("-1", "0", "-0.500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), ("3", "-100", "0.000000000000000000000000000000000000000000111602279280625078888790874115893550120766764619613878803405824353854343339620415335570970786843489076695443837818872755"), ("3", "100", "2.99999999999999999999999999999999999999999988839772071937492111120912588410644987923323538038612119659417564614565666038"), ("127", "0.00390625", "63.6240232797962846685472616522318113514158358759226839444901179759737641032589626865171271272496470281792384503124377624"), ("-127", "-0.00390625", "-63.3759767202037153314527383477681886485841641240773160555098820240262358967410373134828728727503529718207615496875622376"), ("0", "5", "0.0"), ("-65.6171875", "-0.8828125", "-19.1992805968718439779935273790380122468220969429636114274861524929836558885370240658318204818174753114240860795291004188"), ("115.921875", "0.51171875", "72.4754346805260210795494461360206973400915480194485990461522792462672145078976687298437599543332312294002474992979144570"), ("-72.796875", "1.14453125", "-55.2172020830769619043975247559703821063973273598071362353721231053599493049181050911963993905021742277821257621817685827"), ("118", "11.27734375", "117.998506558038663080974832111173464172883424186330240236426245473502616745767198820200583072943334688967232156201791683"), ("68.01171875", "-5.89453125", "0.186821454739464648296507172448685353285033659319739725105374024632254521986897027037869807740725594672037000770433970951"), ("-118.33203125", "-13.72265625", "-0.000129845814973362979565312390982593020413975011455428240124766348196602790426469138920890559115869575172720189121818198767"), ("-26.38671875", "-11.41796875", "-0.000290148139329224790033834821603578258838743595354335712887643346953461067753691199475872026712849180836359756107028421619"), ("-91.41015625", "10.75", "-91.4081959639140710651325811614386006076145988904175517126030499659960575889929501020416301668407470919989493029631041319"), ("97.64453125", "-1.91015625", "12.5925609076355290587180981160483238597934424580172065376090273923850912469496668502059881909426880684724004847376446575"), ("62.49609375", "17.84375", "62.4960926372164322394251555850996375717306870603948347155801506816387481930917039515387692924831153922981794840167518963"), ("50.46484375", "7.046875", "50.4209712603606893756846641985994890049727158060743344289268034084131236910636673140839272712556831125469883267417927806"), ("-44.64453125", "-51.23828125", "-0.00000000000000000000249611999006143589010182809747037095639296204034790892531135695182848488563598310502773516398681355384558200894986727338"), ("-13.8046875", "6.546875", "-13.7849117799777132044494627923390531443066745587282869073518660509979959218368663458275220673104851835032298041050850035"), ("-94.3203125", "-0.4765625", "-36.1307320975026718315934469120647803369366460353084226207623613984757080463166092910892551797563738922002406722848877188"), ("109.62890625", "-7.1171875", "0.0888418787159910842222993319606567112051535292985608627884243259205647300507387464727812074612643591381263290082255596040"), ("-97.203125", "-0.76953125", "-30.7726153744219235977846302581054388277976035013251006501746956760824914986405237681459747273122194335297192823872049577"), ("83.25", "-21.7109375", "0.0000000310058676446711189310975892363409089986970465640713708432560045827309297692207983680923729358711094620546400090677736634"), ("124.5546875", "8.2421875", "124.521899933201869628358453785962576110834777415301383532329189588428272252403948355006311950846420146654658422123599679"), ("-16.73828125", "-0.75390625", "-5.35576031999414459845531834884885365266402650476567523348512049866102208200557250794148522219059019442630794056249964307"), ("119.30859375", "-9.34375", "0.0104398595933546224901743611290648855036272184123898966911436319530905690938209324928972629100482178190548447035201148871"), ("104.91015625", "1.109375", "78.8937566151049782613932007910781011943540881642270969245074784214052370725759581957774992448560438860746975192159577915"), ("44.09765625", "3.86328125", "43.1906955493522233149715840457487566274842312015295065274533188204801201722260665431337329031319649262684545862511411560"), ("76.9140625", "2.203125", "69.2634042525832492715234088789027357265460248902040581010098697448382562730525922412752916359849822325360914196350474493"), ("66.34375", "50.41796875", "66.3437499999999999999915753008889518898922798713186864613067288448801232723240085526576449537618884363841384587763307735"), ("-71.5234375", "0.2890625", "-40.8947128179980607803265982819317022382874642699742832180751437489486218224242348434698079766235839839549827342040559375"), ("121.51953125", "-0.3125", "51.3425651735725867823669730525421167745569155467438734143013966643039444044542855764713967905582743201149885157999280460"), ("12.625", "24.37109375", "12.6249999996711484802765363494491903549017258002508601450223011720440094614054460102523436822177969218899843275746695739"), ("66.71875", "8.4375", "66.7043024516710610804615271113363953614635385748783345293455426931176580967991059982354588519559092355865819879981273846"), ("-61.00390625", "1.91796875", "-53.1900227562555775667184389481451124821251607882591828123608974291310052843760254843299374516345353429970497216701605855"), ("-17.6015625", "31.3203125", "-17.6015624999995601421654431596534709518381939608068106379183155173479855100440864383578153883482056584657377653796029446"), ("-11.34765625", "0.3828125", "-6.74676336961869955743567674432586830933977885100546961653450765368297304179230794771206838785751356741780711092687683165"), ("53.30078125", "0.58203125", "34.1942987306361754849977810472444985857117665258026885164792162163288337934297648587306680115909767209388925925122402450"), ("45.7734375", "-6.09765625", "0.102673841567994247168785509972785654255830690198192646128375558414075259046710473138334787001614443049298401628164113767"), ("85.0078125", "11.63671875", "85.0070614095105797515481116549053515572018963882762119209056830418692277544471153938886959659626517221289927571414679362"), ("-82.48046875", "-51.78125", "-0.00000000000000000000267941496958889087071117485590092384281155437803494456921911947690893885243124223747571201118910911026224433715098302244"), ("43.78125", "1.1015625", "32.8601378721205953355100936410594521010763555224715911351590069818041486980421074823674255147913082471225234329031263216"), ("12.26171875", "-1.69921875", "1.89526110841237749555106801341529595333127457113921886171455572375962262210532844168386814989640485775310334917930527737"), ("25.3671875", "9.52734375", "25.3653400705119137358084551908345213794506781691675738600408788498003186838072467862883883444894722020081888550666732052"), ("-7.97265625", "25.01953125", "-7.97265624989141778974822513817994671746561020381253249227474717271048230982081862036124725039295355661668664066477847524"), ("50.91015625", "0", "25.4550781250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), ("-120.01953125", "-0.05859375", "-58.2521698461198796899014694267433450600963416010502873330306527605643533960373922649265425835166805073794847731787496675"), ("-73.015625", "-6.6640625", "-0.0930457306195739010285485519062631732636569412387623630382954853196385126844822058980588306301260429694658440623866349809"), ("-112.0703125", "-19.9921875", "-0.000000232805839513819975986824886385548479176892859810992395761307138518698597233647815120944907511124694374719660936549838131"), ("10.7265625", "6.04296875", "10.7011526222466656978930174853855794951307084918106109421052760542593869362228640131001542641491438574471523297300503969"), ("-113.83984375", "-10.41015625", "-0.00342931826789915904564389667886488289521505955508465894013823138366567243189527445184520751347355646900867588170122781170"), ("52.4765625", "0.26953125", "29.7530472123525943033086861187523039757289471929907371149101334843599925821408366760526490868346869809891400051599336821"), ("-93.47265625", "-49.43359375", "-0.0000000000000000000317649077277712268237762474189135113843444155977061394522080925382270453384462718898455877872231315520554982716600235054"), ("-9.87890625", "5.26171875", "-9.82793481635558458259595194244628339472729613675037240690124771736482580768919707308013191049380274060786095760436252676"), ("-107.203125", "3.5703125", "-104.268279851433302033986738918117471047942621722204936729004912313265214740568039951796001679613192988391446445980263527"), ("107.81640625", "-52.3125", "0.00000000000000000000205899251201266421941453634753371387436446735304789714236182036145837971063238097213841124726146134608893120314414935818"), ("97.28515625", "-0.2890625", "41.6607530423407043291079229813484956720617532690491794895597239176643677505474839554005697619983419377171575644264329261"), ("28.53125", "1.84765625", "24.6467683869795999943023262686113746752457668955217986931992130132914797019068083517916913337928351579782959029470099588"), ("-90.5859375", "1.45703125", "-73.4722784275491163973734504188831878670867788017981774617920908384183730153355166976590504034125867412359518733421744492"), ("84.42578125", "-0.02734375", "41.6357972173367883615049923493136072208559036156675381886715480343101660117194048253203402823384011041209019120792149437"), ("-57.484375", "18.62109375", "-57.4843745295520854744411899807106741736427726094653844475678528408216169621517317749589569997737305349906195308688100403"), ("92.69140625", "9.25390625", "92.6825331071251348639678728472627843137139856294705664999196249041082244478070838504359825598843284553472504720649849510"), ("-118.23828125", "-10.85546875", "-0.00228181037352196118978689960961717072901071993552793104975326221457356825556219196434190921614480601784888271500601885307"), ("106.6796875", "-1.60546875", "17.8388353350583114799957891227406156574811764544001643517839004286524039256686474695091965498630037246323690758922536233"), ("123.1171875", "7.87109375", "123.070221843082109419026279161758185930744176421750622299206885512702409196588030362672880661971797066030905516171635520"), ("-109.734375", "-0.81640625", "-33.6365537386834426438424085756765993174282275712468196101350044498262292352729190552127886507013095390779499305818039153"), ("-79.0703125", "-3.7578125", "-1.80301155181398460718474452372851231976535085877010055784786016060054093631887508971808026053782202480918462698140924478"), ("-106.08203125", "-0.60546875", "-37.4568787673337459312200308293645419078241757349467883301213232678898942445569179958501209213274184452864846136999276535"), ("83.95703125", "-54.12109375", "0.000000000000000000000262763297411836510780335941426090357280203723841880309631883965237898233606990906500192622733661740980493620227959422483"), ("82.7890625", "-5.70703125", "0.274157558450606485406925276651934398727147383093310649393468089988199435042272497858654253932864588438451161243746107119"), ("109.4765625", "0.625", "71.3080915512923290301863852422073005491920748232166967610180636090676217629532961778476304587412388285419291414899240325"), ("-77.6953125", "1.51953125", "-63.7466298794510654396967713129832294829506067033895005566460387355827511842826725766271796681802526339289384342275519696"), ("62.04296875", "18.51953125", "62.0429681879663254407282204820763046623460853136577284608176165563437427588441757049151973956918713348195386218531887756"), ("39.1328125", "39.66796875", "39.1328124999999997682812774451109911701541789689996129569998190077254194088523007287179137579425073226765769139332733733"), ("-36.3125", "-6.99609375", "-0.0332119094972077462994309711960223539588131696348915940994621387525392107781598740513065137758290418366650208156644610224"), ("106.23828125", "-11.171875", "0.00149413989833370355446825074269230012959381716797588213272502073131064692729026368322321078468651529591116545406848359352"), ("-0.23828125", "0.8984375", "-0.169329400226484542203954359593806115941520491152603317338913804972513207242865427657656547864724916492270854726817978357"), ("-30.2265625", "9.71484375", "-30.2247375141363678567828086673523743355379379079343026245956310058691906144684198208073213076616727853634902353921151938"), ("-33.52734375", "10.19140625", "-33.5260868192007369765113514008733202936377615289557864048500884142505210462980478634981031759755232690033365463550215573"), ("-71.265625", "0.05078125", "-36.5373575063878676984581079713522269346087948604751558206588379545295841376662471981691651229593492934851844469792673553"), ("16.90234375", "-0.5859375", "6.04372917694102239047005433568677586783160271375655976870015550473700353021582407148116859491743448470306924296482044695"), ("23.71875", "1.23828125", "18.3883095856855027443948486400340343311260459683237430046975923150462212240318195005322682948207360679432303124421676893"), ("-61.98828125", "9.01953125", "-61.9807801598107478296044906765499696464912539685678117927585830005685802595227259312609236780006082286194005058878193318"), ("0.25390625", "25.2109375", "0.253906249997144367266962805988691038460505602938831960411684191002098377367617723024474459308830410751535760336156386322"), ("20.83984375", "24.4140625", "20.8398437494800018077329623367464395457677054804081730107899385768757651721365225497427578043418708981062928097749135571"), ("-112.734375", "51.80859375", "-112.734374999999999999996436555651587810107002670206814956912578577146455393133917247123184506810529855616216819238024291"), ("9.00390625", "1.3125", "7.09445861701903200730022655374675521458526241937960169985199101084324357959086654968103698895064445023007624513777600868"), ("-53.4921875", "-10.23828125", "-0.00191357624426814311109050719739178608185553110404169271336293138661613837324365948865538116436798418550123812827031008245"), ("-113.29296875", "0.0703125", "-58.6371422830908135177232743959588780436975566327397658104490174319275772163250924643919882107701561498764885923163719579"), ("-74.26171875", "-1.87109375", "-9.90764334142770731840093392356915770282380923247751375117893032544633370794699975780979704286465390755771183608334897344"), ("-54.79296875", "-0.31640625", "-23.0980757581688294549498807540936221794630570998522319234444369266060609801724667687742778173364699279015797279514847946"), ("-39.390625", "-4.43359375", "-0.462149088030527686042278144406556471493142047389060467480584561546107302858347222786985310800673305420381511251537509657"), ("-93.56640625", "-11.3984375", "-0.00104914755024842464793819155780453846624222619813237053063060823062335894410815623338728301727387232877635476836841127126"), ("40.87890625", "5.8359375", "40.7598595869812832081414844215663014354079518433184343107807266243409549062730019311111062172286814042361439117596469567"), ("-39.015625", "21.81640625", "-39.0156249869234337358822563773006218635187505463400445463732167140928742533721027769625848629869207289740662516043326649"), ("-87.89453125", "53.33203125", "-87.8945312499999999999993944430766710575507219930052823987140334552439623023609117492896884497705296241767443041941175021"), ("101.8203125", "54.55859375", "101.820312499999999999999794250769521868627509081144453899580534871091919456563427770801328755721008457272151876785350413"), ("-28.3203125", "-0.8828125", "-8.28639030404339021552881732932644295686749629935029068039496401798615937563361260133829613603861745492467103682497785667"), ("18.09375", "-0.0703125", "8.72895177032456476178001561900211967388176801286588989987243220547224295190091272299197705781169660772237716237598059136"), ("-74.87109375", "16.90625", "-74.8710903457372467558777221273347520610794974916817483754682452659042333650262119448180517023860590162372683074573858589"), ("78.625", "27.01171875", "78.6249999998539437121034640765692672574842693680334588673871323059269942519005094568271252236130642209353617079626940737"), ("10.0859375", "-6.6484375", "0.0130549151075895445240732988429658673745295732989318374197893749739386762079872604938745949667637908261195061460177355045"), ("61.23046875", "-44.8359375", "0.00000000000000000206522482569335653981772479406456655114700087986883423707286918407990949132494507480540159819858155413392098056345559340"), ("-86.7265625", "0.48046875", "-53.5847487723731879450032996967002560867864585266699973880464605960866295567994400644816396905813997756912458634087144450"), ("77.7578125", "10.47265625", "77.7556120326757473118679112456322380398034667129694786138451268573930104497749541027670181934973559062697198309518348580"), ("-22.6171875", "-7.24609375", "-0.0161135245765397065113167340277303857022523531437911531247189379966914558325891443825715503735112774269491274699950816425"), ("-28.40234375", "52.79296875", "-28.4023437499999999999996645257675523119584534883733625692121812473981646940305224419222357291875306600406659270537874146"), ("-120.19921875", "58.22265625", "-120.199218749999999999999993775229934789094962514459626618173836528018281671671625962605902494607173344198292394887565283"), ("20.65625", "-4.79296875", "0.169788034811274144579848145635785004108506243023167908803153343290857170819566697845091496503409175029991347633412044275"), ("56.6015625", "10.421875", "56.5998772952053683639573968230133281611917313768085222303903083451111111627810297829757907344874726969834423943861293143"), ("-47.4296875", "-30.9453125", "-0.00000000000172453416914101948193212578518021674676842077683458372073077845657097370019631877931434238328717450136878169808896337907"), ("-38.0390625", "0.15625", "-20.5024164181901082373682364522049366309559140358362923076335261351518007657295776646486502805029202324759282435399390215"), ("53.61328125", "-58.40625", "0.00000000000000000000000231078906723890092750329435602395643675764102508012935301988959502488070316393738869250675270894516827107388212022876185"), ("-104.4375", "-1.0859375", "-26.3583587285550809615495566836888133494313017781043560846894667779813978053895518581139938709297020523725045357688940095"), ("103.1640625", "-1.953125", "12.8143185569442580111898543155578294964814567563457951534194465743438544698912845098518390876645901984404726029474441520"), ("68.4375", "9.65234375", "68.4331014797554108265211671596935545882723896353389672465485496223856970609895649830164524448570998329339748104508903526"), ("-109.1640625", "0.765625", "-74.5125218042453544735123237859826978092079966591515172139124095291501627392741462188431188312212362955543450614417251056"), ("-78.63671875", "1.78125", "-67.3013259359292935872326231607161643444667932154619562123835281127699807392940054240427896058452851682828559037759775961"), ("68.8671875", "-10.39453125", "0.00210722783416588481057752336797921309627882037093192697245501699572578650993355611663786575380610104012891803362683093065"), ("7.97265625", "3.84765625", "7.80615357562630028217788058466908681055789201324713284361313957564081758961890329537847335692088784727224334707184634151"), ("30.0078125", "-44.92578125", "0.000000000000000000925157013379207075793058899688793774584579139159028669203178610129890885865651096931392626331239923750029965780072441867"), ("-29.3125", "-0.90625", "-8.43519409949586891295442616670625583811788958970099911397699924404569365407237802477152905012018791849277595829862042494"), ("8.23828125", "5.58203125", "8.20738119622341015314356145463720692826756401434148488039950525997705720855288799463353310949144033818302383929453041551"), ("-88.70703125", "-1.5859375", "-15.0763126186213511043341863459431985205056557198489288532517183181115473788901044755935250984584374046805908050789931533"), ("-19.421875", "-39.2734375", "-0.000000000000000170629439055596970169178700115162064583849968690557072738426965601801472121815116715315388630167738557584623346064196256"), ("89.9296875", "-11.8984375", "0.000611609723235883576302876195803903102947135446469727549596965237381629922750756937071282830568702031689407929021235521592"), ("7.16015625", "-0.640625", "2.47100766275695385862865213564320864346498478432894390390782144330514018423414678643181318421046309913957215424242742091"), ("9.34375", "-3.078125", "0.411299259656905207658428823972359726449277657108473356954840078587662785565228382929558484843717791712128146431142558717"), ("-74.23046875", "-10.3359375", "-0.00240839374533435994001340349716274155347935200621052604850918750087801119553026539217657939402070210684683012065887551327"), ("91.4140625", "-1.4375", "17.5453557360868579029288352871644811102065874668827136253407333975619122606860440513597722780544375052026484216058799988"), ("60.51953125", "0.4453125", "36.8881166040735409555965089312096731568194093668687210164189582500684159632508066372490648494329227240780272549289057851"), ("-61.41015625", "0.76171875", "-41.8649478736724267846235636161183056516821685800560884958125892189383278582313732574566618134698523385207218484745269598"), ("114.87109375", "-3.73828125", "2.66982532274837362179343117938578461472186196909260035272942250161079632770419515786303509157464172720381427108258189079"), ("-68.3046875", "4.07421875", "-67.1625550045571820179170195870632984818240973423130931387512988902927394563737455001578410134129354414848028695995664958"), ("25.64453125", "9.31640625", "25.6422250770045470823838274725588052096402368917512194412792371424815109093586806088810556757348777444194383726016650355"), ("-39.71875", "1.92578125", "-34.6657994310423127196226369217418131143183514710911562595935250582823502868980478938238811359484460353317418043467644851"), ("26.34375", "-8.4296875", "0.00574931414354099201965966963053712059114162236010173238505539309194751183180243013852911503208617443222418038911007514666"), ("-0.921875", "-6.265625", "-0.00174872319366006394556397284136445225983043548320936345025547955422342777355329055257439835857966018408296395516704855282"), ("34.34375", "1.7734375", "29.3599442547035369623322841771421206342365906882850957769096287709398590880591866779762562581015982032376691385130676628"), ("-109.796875", "0.55078125", "-69.6460054721613170893917476748834778995937686489043467616188930013340765367272574854643785266461666634195900923384033576"), ("-81.71484375", "-3.8984375", "-1.62373228647519706043923481941529014671764682195901179276614763567945924644461232152363178117867545147070442576111051805"), ("-5.75", "-2.46875", "-0.448949449583467927701257788871963109847093760839852663363012723355157523130980584559315973985787351824268823995187708529"), ("-71.91015625", "-34.37890625", "-0.0000000000000843763926786645415652820799268319400432391605000911679213423630891138274216003744539602226290168828230748730997989241264"), ("13.67578125", "0.90625", "9.74033155086153557246089472153003708831946542463443524812986749021802059129698887730208912520378759293134213352832221379"), ("-98.53515625", "-0.015625", "-48.8826830015779070827253738992059402326110538541704820300119926970704029413734061752201193912549705773293883727514274137"), ("73.19921875", "47.40234375", "73.1992187499999999998103599216905836310762849548567395610158449248856308568351704524638763461165276886316958607268522637"), ("-81.00390625", "-9.1796875", "-0.00835167443891285605940602379648002661758267060330176723472258352689438854218771723718313970096434291864735744711355170455"), ("6.1640625", "-39.57421875", "0.0000000000000000400868752732426722137987197249991756386036844697198228010745568248995066882307832726677604002517024405434499697265728382"), ("33.296875", "-7.28125", "0.0229032939284801419904621421594729748547006231290999685322195378265602602375296520529316473459365780170980233944512015546"), ("-0.99609375", "13.39453125", "-0.996092232500544418161052731639908640671378198282975830135204922117782376483949045970483433597435795838051497369624102997"), ("70.72265625", "-5.84375", "0.204358845026529373036303716712769592470102201342446774342058091281337684510500960380895654341225864309098664444503928093"), ("92.79296875", "-0.171875", "42.4190730790513238669084262223800248228103580868876908303025013875681652997716252041334289387128328752744077836481788154"), ("-86.9453125", "-1.21875", "-19.8371383792885794513514331121472745787494586186050998211434867650655025793873747655437132851289275583974547683834820777"), ("108.08203125", "-1.703125", "16.6508543051199630059055826275044471366078955166590966984594371721165576603717439059903524431916331798760874218879946391"), ("95.9453125", "-57.984375", "0.00000000000000000000000630564711618207314281728995171551502236842840535189501955522625480388277191491451337511265604656055384912838650601320714"), ("3.609375", "3.0703125", "3.44930433902598404935472239776943820249089374157157757048578525171973971596496130090640879303570917002512585696741341790"), ("96.234375", "-1.2421875", "21.5618361221563694737311085182041750259340222195684866872934610517057350305551985185324679438661365161871585600506665902"), ("79.21875", "29.2578125", "79.2187499999844288221891482209651223389317821604527460675285977872458409246230289717376727734239035288680304661849117333"), ("54.98828125", "-9.9921875", "0.00251592899830762579026772856856033781653376964382750305955059665691800631766592424051365719548193509248440431920427315511"), ("-23.28125", "18.671875", "-23.2812498189018508582284757211281150517639059446540219332036520178450719625227128863595983358081731148654118772609972166"), ("-29.2421875", "-10.32421875", "-0.000959940615946683217100180895371259432457668001214066115588234056965271892828214738305840724153570769124828258302992879409"), ("94.76953125", "-0.89453125", "27.4998077107315466971588527042651810951127328171211198394956280798343777800492443213693150677612528305628812433921734490"), ("-104.8125", "-2.60546875", "-7.20976774207233251945436648119354082821085778490520963107446924232947241141598230587556582668020924012932744508696298670"), ("-34.2578125", "-0.68359375", "-11.4921150720019041569311433197096729637159225886307836957751580631437974761494937797635713046418300827456543081589026530"), ("61.12890625", "3.1640625", "58.6506952491600479860016738684872497863324078503629742251927976651485388871035241571564459016384832692406506545700590637"), ("15.95703125", "41.50390625", "15.9570312499999999849327278138708156994028094899831588016836011071718041340790336847663384298777274939062662167676958257"), ("-48.7421875", "0.390625", "-29.0714562464452982857215606790612508197355237799999023022542156787383833648017165624548903228818522776778874224004203864"), ("93.15234375", "-3.5390625", "2.62885109405458810829942411708650884624463034252507027681354665177655063008862563844837703272565228931239884959166902036"), ("-22.640625", "-52.046875", "-0.000000000000000000000563920390995469893326904147912584744314246409400472936171745947214120957857391256221490169012684590006180015596253216331"), ("123.23046875", "-2.3125", "11.1022018770222434789557610860316371844928450176665918123147778210608592694322444450524221331926340393954363288462211418"), ("-103.7890625", "-0.50390625", "-39.0893611246517546739342867574464994260702791777640142422327339427334612731293836856148435328188579353553481199571717979"), ("-104.76953125", "42.11328125", "-104.769531249999999946213988656204679862565993521106434937224279323624935230382447947665407599913183731028461907935861992"), ("49.6875", "0.296875", "28.5046458702965743977040983027403458509770193272984880362871428599266071153868948207038674915868030256727609834908317125"), ("-89.4453125", "0.328125", "-51.9948365998964311542333645103107323259039208259482461337402577629841297485343309386552645943215049938081311932483035355"), ("-7.3359375", "-1.77734375", "-1.06100718341604519047819830255001941649110799989386297167538047174493496168076075600394170548746081911563548674821884898"), ("59.1796875", "-11.08203125", "0.000910544059291605091906101658718519126276386773954779450299535228818327718117693227143991183615561799260584181993359420655"), ("-98.5390625", "-11.625", "-0.000880909292909624187911463994725991896928971428928225816954683017495739771072542019641063103965167418635925291805813975037"), ("-42.17578125", "-37.10546875", "-0.00000000000000323864099938432263813024780331864942504451189620836980215352896535194770409703817784881085829053065687015381572780082806"), ("32.0859375", "-1.2734375", "7.01621195344363814754169183172962484767656141359287658942871442186358970236610947167526172353240734614013684565036349741"), ("-43.5546875", "-2.51171875", "-3.26837530704782397220083425801297548972515161999840138944404119823958898090729017784505628623082280934670731367153929189"), ("-16.16015625", "5.0234375", "-16.0544878166764796311007023621215751878190252352093073960474430794701765964131532607591295685721831442461856964552030918"), ("-7.01171875", "5.99609375", "-6.99431372386642095185128150521345180458448966933703410273366140967228401068994221585120714279329904701269706255470945594"), ("-77.44921875", "8.96484375", "-77.4393200227208610026663396797707644802341889653868477259025478008821787612019447415153433165344877326635010976188399191"), ("107.66796875", "33.36328125", "107.667968749999651183054531917378281289053853347411108297239652461597113292390594886649066153457899024793793047318786180"), ("-124.60546875", "4.3515625", "-123.020149730979095192085401813490481123619844956451967073804852058420801008582867536774742192191347129805903272677941788"), ("67.6875", "6.859375", "67.6165317364790392075009090546230658802402989644953321926550724720987657999007924002603777111930140708623492386608991736"), ("71.0625", "-3.203125", "2.77486930185746271691409117329416048123634035617164465746352291670597323576696772023320141028636088925728412749466588970"), ("36.33984375", "1.12109375", "27.4072027022294568267852479297147104324647432991590755546347839898104926806037077171705873997001920380063613660796704254"), ("-11.140625", "-15.6796875", "-0.00000172706120739909094038558659672710185195544169082887829663712320475069641050226034278340655674285367844533277246551727685"), ("117.796875", "1.29296875", "92.4292304481848010285917359927069353557573775167189792999069590008088577043095751336998145723499609068671936897552400709"), ("70.99609375", "1.98828125", "62.4454082359095830435684583448624301462190446130740388865825475812849438238595589631911735655082199545138808733726516142"), ("22.0234375", "7.67578125", "22.0132249491865630052122567703470088584480618982503757350037172436836455740122339692020861995608487259214564665518812340"), ("16.54296875", "-19.75", "0.0000000437821848871745302563204809951988596452172975840890408875073949488874148263020849763491502543061848517098759871160591377"), ("-89.37890625", "50.67578125", "-89.3789062499999999999912295298904616674437795971783812664970851279974828004627546442972771721742331128416014013227154607"), ("-60.44140625", "-8.73046875", "-0.00976494917352817510001076559551721861789162865011408740137679439904234844607514629607446216892146055369853345949246205244"), ("-122.14453125", "-0.25390625", "-53.3603374996653162289950042860302334769214626570566668405621207492099975775943945194213220248037495864919924223960889577"), ("-100.21875", "1.91015625", "-87.2942093492700270620285824192768813478873240907753150006441890315225066595295174337366550775362801502289111958863459082"), ("-124.03125", "-4.60546875", "-1.22766921527805837103588823129811831565329337069954996964318254096849470767646237713602256352426430378942315866640399227"), ("96.33984375", "-5.30859375", "0.474426559984124726968484574880037985837742870396125129142678043321703169170505247398983376550631852793428150561367532096"), ("-104.171875", "1.3515625", "-82.7525707997920609527870017461183261411698199698971801741242227001245320079546645465232401833664553262404389874981126719"), ("90.37109375", "7.83984375", "90.3355258931410962912650053737009141043203147658191247139262762463684180303334117236903448852654186051854939199961930898"), ("-26.6171875", "-1.375", "-5.37170037688367714121180099374505165085234308812493042112948340081450432615170009750545712962667125124589248056009220387"), ("-100.16015625", "-1.83984375", "-13.7289298843679832092498027505832260363607698136623273937886606691510053794727836468516497840847970002520967580978317401"), ("-49.3359375", "0.2109375", "-27.2600645041126087649804348430238217645621918664437046778201843333886507965237239847492548345457957007556198428938504810"), ("-37.16015625", "18.52734375", "-37.1601559159939199060811250709805368235510941510081050929664617253494935797770079420890934581126861908089545411480851083"), ("44.1015625", "9.28515625", "44.0974706325523424930690783103587699633317098261995605426391062355686798815061586492524735438718470913857256138773648064"), ("68.7265625", "1.62109375", "57.3829626849659387447253784179506214036964232011734720924616291616480063526596474786546719928257317000948898416244734222"), ("-66.015625", "-1.65625", "-10.5800622903873275309268178733277845285617632051006628612679354103144955177626245256060287227187312250383867981467950395"), ("-25.4140625", "38.6640625", "-25.4140624999999995893374477733487664230934494745664703466920390669577717919663465224821096510425300437341773834408566067"), ("48.3203125", "-1.72265625", "7.32194497376749799394982877925985919100578387710926352431585871944617521806227064532956339625203505377379134610486847594"), ("-16.0859375", "-7.20703125", "-0.0119165524042246219379160656938181611979607835410835659164903858411946384166802387809739770160431029264596328838812886397"), ("110.95703125", "26.1953125", "110.957031249533689539551157670312834722964507403089954587919478116357124536064051115287611991761938806647585325826109317"), ("-47.78125", "3.6640625", "-46.5873019397035443719362974730766185081964558007801443624605371665295751879732092900320267233678198974239047266139061679"), ("41.0703125", "-15.0546875", "0.0000118948829714603472403155372458965305039157916821431432074279633310087941558914601465974319867661576110126997208916829154"), ("65.94140625", "0.1171875", "34.9003724352397737863101287915319330274102800121519914631291422797262410644819760091337945211068206498033876529935112151"), ("11.21875", "53.28515625", "11.2187499999999999999999189981116352584735070910545205533544304555023227032016220388901198552934551047402100325502475583"), ("124.8203125", "-16.27734375", "0.0000106444850866412349324912317405276337306342885401040702778618909037636637263476507758416240959061372488857119731711576944"), ("37.265625", "-11.69140625", "0.000311739300300299288793603112959435201943535476133748728834273275197084740284609287686883205104237842033770598033173407500"), ("-91.18359375", "0.48828125", "-56.5066057431667939141084886035340583989038552442701129494056902615765122709259196481519120670612701249642782633409723719"), ("81.296875", "-6.390625", "0.136123430893808572875361183319822268254660900875187825881399445177554366361862085224998916514597378413941355397549672113"), ("110.62109375", "-8.05078125", "0.0352605938568781152074228390453324204523218438649351399180649391398920007343782121627334955158303023688172773167174647936"), ("-60.80859375", "-9.140625", "-0.00651921642166614461030328837139570290368422695683864936381343285219400037356221764332589848648139400833564969559972803900"), ("-1.53515625", "-14.7890625", "-0.000000579888084171861485800612858817607323634237171888105311170825079699632927835886086002531014379342173517350566576867958337"), ("-33.3671875", "-9.0390625", "-0.00395961623769517342624271630104877901297512679064935179045931332163447338171912313470876507822023248890136531254194582445"), ("21.421875", "11.921875", "21.4217326851992312319153029731553464005073679474584230736332219891079388449547215872650357932165788527831603840051617885"), ("50.69140625", "-21.96484375", "0.0000000146461643330882273501508677429292540048068847681924810691508765237499727705418529294513411221399377833308031790494737875"), ("114.34765625", "-1.1484375", "27.5320107108843745888448918694196403766966450717059872326590488589249032704290077339207610334204886282596411503671168768"), ("-93.171875", "10.234375", "-93.1685289174580960167614939714070057390510941193458922788366524864777770684114550318077398066806823431017845128918310035"), ("69.25", "0.546875", "43.8636607596904303590779751294287737719155327451962681430790453644723855957167162485914607708846573798308872643636942418"), ("-97.08203125", "-1.51171875", "-17.5411905259290946386317536391879410900853197773940317464180501216702754730599043468608780113427666964029665300120230522"), ("4.6328125", "-10.78125", "0.0000962937974061936640003315305547575265700644496285817045647375644749186351418811962195968384965554221308738675495433658778"), ("22.12890625", "-22.1875", "0.00000000511742081827401544379158554597500090268344184971228809538831077847761870353626901891135077298781776311434446972930589951"), ("15.328125", "-1.3515625", "3.15169302840917777190879725319602850690151591563384824496537236105862218392027509822419399731776021073318274385246009733"), ("-69.46875", "-0.44921875", "-27.0613105952556527187900734813138901787589326942975572585856388127644485911069299879169892893851346780376218540632909366"), ("-49.53515625", "-7.44140625", "-0.0290333562853357081141818725404290883660003488074452837693535032544266868001700113641222531275343693700791262941504710761"), ("95.4296875", "-1.35546875", "19.5609613054193098051851428140751382382483510387707097400169911938646363190599995131127274647558290991614972060168168371"), ("-67.27734375", "-21.6484375", "-0.0000000266730014163102035506363823637939666948096359489067236270667353940772181002876787187200898345878667712807101718791972148"), ("11.51171875", "-13.34375", "0.0000184511093012872640269357053588564669228241334114712250087159665652157902739275673182245811740274242813101591537344219831"), ("-123.0234375", "27.05078125", "-123.023437499780222701978759981914141278889378646301509794198271626503060816836561394501999599774465956066074608950112726")];
/// (weights, -sum(w ln w)).
pub const ENTROPY: &[(&[&str], &str)] = &[(&["0.0234375", "0.65625", "0.421875", "0.70703125", "0.65625", "0.53125", "0.09765625", "0.98828125", "0.7890625", "0.51171875", "0.59765625", "0.9765625", "0.69921875", "0.86328125", "0.890625", "0.3828125", "0.79296875", "0.484375", "0.578125", "0.015625", "0.109375", "0.234375", "0.87890625", "0.96484375", "0.6328125", "0.74609375", "0", "0.92578125", "0.1171875", "0.46484375", "0.3984375", "0.8671875", "0.375", "0.3671875", "0.953125", "0.8046875", "0.2890625", "0.95703125", "0.20703125", "0.58203125", "0.578125", "0.18359375", "0.7265625", "0.1796875", "0.90625", "0.27734375", "0.9921875", "0.26953125", "0.7890625", "0.78125", "0", "0.734375", "0.53515625", "0.21875", "0.26953125", "0.40234375", "0.28125", "0.4453125", "0.44921875", "0.9296875", "0.734375", "0.21484375", "0.46875", "0.3046875"], "15.2419180518482709832822148100897403785646045970933540272578406410054414761972438019172629348020026945385763421664957482"), (&["0.9296875", "0.41015625"], "0.433318774828667959841710884585003186419985573028245963184139715270090610133654479656852899957944793966934957376980341692"), (&["1"], "0.0"), (&["0.28125", "1.92578125", "2.15234375", "0.015625", "0.3984375", "0.83984375", "3.859375", "1.6796875", "3.50390625", "3.01171875", "1.53125", "1.125", "1.796875", "3.92578125", "0.71875", "1.25390625"], "-23.0271889959562504646313009817059761263635889216307236966067594343170033743308760314865772033581093076218622524064531793"), (&["0", "0", "0", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.0078125", "0", "0", "0.0078125", "0", "0.00390625", "0", "0.01171875", "0", "0.0078125", "0.00390625", "0", "0.00390625", "0.01171875", "0", "0", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0", "0", "0", "0.01171875", "0.00390625", "0.00390625", "0.0078125", "0", "0.00390625", "0", "0.0078125", "0.0078125", "0", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0.0078125", "0", "0.01171875", "0", "0", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0", "0.00390625", "0.0078125", "0", "0.00390625", "0", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0", "0", "0.0078125", "0", "0", "0.0078125", "0", "0.00390625", "0.00390625", "0.01171875", "0.0078125", "0.00390625", "0.0078125", "0", "0", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0", "0.015625", "0.00390625", "0.00390625", "0", "0", "0", "0.0078125", "0", "0.00390625", "0", "0.0078125", "0", "0.00390625", "0.015625", "0.00390625", "0.0078125", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.0078125", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.01953125", "0.0078125", "0", "0", "0.00390625", "0.00390625", "0", "0", "0", "0.0078125", "0", "0", "0.00390625", "0", "0.0078125", "0.01171875", "0", "0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0.00390625", "0.0078125", "0.0078125", "0", "0.0078125", "0.0078125", "0.00390625", "0.00390625", "0.015625", "0.0078125", "0.00390625", "0", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0", "0.0078125", "0", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0", "0.0078125", "0.00390625", "0", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0.0078125", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0.01171875", "0", "0.00390625", "0", "0.00390625", "0.0078125", "0", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0", "0.0078125", "0", "0", "0.01171875", "0.0078125", "0.00390625", "0.01171875", "0.00390625", "0", "0", "0", "0", "0.015625", "0.0078125", "0", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0.0078125", "0", "0.0078125", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0.01171875", "0", "0.0078125", "0.00390625", "0.00390625", "0", "0.0078125", "0.0078125", "0", "0.00390625", "0.00390625", "0", "0", "0", "0.0078125", "0", "0", "0"], "5.06008674178656548414672803280295981997074818570526194446510542514362179461904239788572403286803659712242157429911315745"), (&["1.390625", "1.80078125"], "-1.51781978853505963814456551252188564225440595868102089751622456450006058172030014120899186790886575039855422198343528305"), (&["1.50390625", "0.296875", "3.37109375", "2.67578125", "3.44140625", "3.55859375", "1.89453125", "3.15234375", "0.68359375", "1.42578125", "1.1171875", "3.59375", "3.94921875", "1.05859375", "2.4921875", "0.8359375"], "-33.1608711867940619705481704384231927136609797133443701474248303689314896583237597972615094011777463554988337746939730996"), (&["0.64453125", "0.3828125", "0.27734375", "0.76953125", "0.91796875", "0.8515625", "0.79296875", "0.18359375", "0.86328125", "0.953125", "0.00390625", "0.85546875", "0.42578125", "0.625", "0.59375", "0.36328125", "0.6640625", "0.76953125", "0.4765625", "0.6640625", "0.53125", "0.9296875", "0.66796875", "0.83984375", "0.58984375", "0.546875", "0.32421875", "0.7890625", "0.58984375", "0.828125", "0.28515625", "0.6953125", "0.36328125", "0.38671875", "0.1796875", "0.94921875", "0.26171875", "0.79296875", "0.8515625", "0.390625", "0.08203125", "0.7890625", "0.22265625", "0.67578125", "0.8515625", "0.83984375", "0.4453125", "0.54296875", "0.0546875", "0.21875", "0.2109375", "0.5390625", "0.65234375", "0.2265625", "0.58203125", "0.90234375", "0.49609375", "0.3984375", "0.42578125", "0.41796875", "0.53515625", "0.90625", "0.52734375", "0.59375"], "16.5585048934377170535332575945956823011898674544115086885206731185243926843037952664705660396014605310243288676327331584"), (&["0.88671875", "0.11328125"], "0.353321065425319686211479991666587287535629371372797639854030781105999711288456000195277545778572446160336874414745882964"), (&["0.60546875", "0.18359375", "0.26171875", "0.53125", "0.25", "0.69921875", "0.796875", "0.984375", "0.11328125", "0.5390625", "0.5234375", "0.296875", "0.5390625", "0.4765625", "0.5078125", "0.57421875", "0.05078125", "0.3671875", "0.6171875", "0.203125", "0.75", "0.21484375", "0.26953125", "0.51171875", "0.203125", "0.4921875", "0.71875", "0.03515625", "0.66796875", "0.0546875", "0.12109375", "0.51953125", "0.32421875", "0", "0.4609375", "0.18359375", "0.921875", "0.0625", "0.74609375", "0.8671875", "0.57421875", "0.4296875", "0.7578125", "0.25390625", "0.7890625", "0.125", "0.98046875", "0.18359375", "0.85546875", "0.4609375", "0.71875", "0.23046875", "0.87890625", "0.53515625", "0.26171875", "0.90234375", "0.41015625", "0.62109375", "0.48046875", "0.0078125", "0.36328125", "0.203125", "0.734375", "0.64453125"], "17.0099266943898120614182023621103095234660881890778899241066240594527913372736102316901886974726602347749399542995126073"), (&["1"], "0.0"), (&["2.65625", "2.5703125", "0.5390625", "0.91796875", "1.02734375"], "-4.63742104298214723824072015119830106985501104560921112205436127761954782672562296665380150382706261012628610692980902683"), (&["0.5390625", "0.28125"], "0.689868336796319882743979474420245375829970146123839801480571126600833922258848824545452257901036899459403125639972860359"), (&["0.63671875", "1.68359375", "1.05859375", "0.1875", "3.32421875", "3.82421875", "0.7109375", "0.375", "0.94140625", "1.640625", "3.5546875", "0.33203125", "2.80859375", "1.59375", "3.25390625", "0.34765625"], "-20.8611095160729798049960476797090242634764346660792872929054238616399424049841759037061546277899061986025881852774330721"), (&["0.02734375", "0.421875", "0.00390625", "0.1953125", "0.11328125", "0.56640625", "0.9609375", "0.6328125", "0.265625", "0.6953125", "0.9375", "0.76171875", "0.90625", "0.15625", "0.80859375", "0.375", "0.7578125", "0.1796875", "0.5390625", "0.94921875", "0.0859375", "0.62109375", "0.4609375", "0.54296875", "0.98046875", "0.265625", "0.19140625", "0.04296875", "0.12890625", "0.96875", "0.79296875", "0.4296875", "0.84375", "0.47265625", "0.4765625", "0.27734375", "0.98046875", "0.01953125", "0.41015625", "0.203125", "0.13671875", "0.89453125", "0.58203125", "0.92578125", "0.1328125", "0.30859375", "0.00390625", "0.35546875", "0.07421875", "0.15234375", "0.3359375", "0.68359375", "0.45703125", "0.83203125", "0.515625", "0.73046875", "0.14453125", "0.94921875", "0.9921875", "0.83984375", "0.16015625", "0.16796875", "0.23046875", "0.88671875"], "14.7321729203582428390700980643148541318416879473495765428341633358054102118165116468503571283785821534565038644995845916"), (&["2.953125"], "-3.19783254830147545010741393925407523810810949706158196218039523039302329689779013018997775622742220737246855012463777947"), (&["0.01953125", "0.01953125", "0.01171875", "0.00390625", "0.04296875", "0.00390625", "0", "0.00390625", "0.00390625", "0.00390625", "0.03515625", "0.0390625", "0.01171875", "0.04296875", "0.015625", "0.0078125", "0.0625", "0.00390625", "0.0234375", "0.00390625", "0.0078125", "0.00390625", "0.015625", "0.015625", "0.01171875", "0.01953125", "0.02734375", "0.00390625", "0.0078125", "0.0390625", "0.015625", "0.0078125", "0.00390625", "0.015625", "0.0078125", "0.03515625", "0.00390625", "0", "0.00390625", "0.00390625", "0.03125", "0.0078125", "0.03125", "0.0234375", "0.00390625", "0.01171875", "0.01953125", "0.03125", "0.00390625", "0", "0.01171875", "0.00390625", "0.01953125", "0.015625", "0.0078125", "0.01171875", "0.0390625", "0.0078125", "0.06640625", "0.0234375", "0.0078125", "0.0078125", "0.00390625", "0"], "3.76067762665537241742385606769470582635364942013811770942410315938562835573413735242540004617595217824537333152429474749"), (&["1.6328125", "3.0703125"], "-4.24478763473168462137243590417729400775831135108133850266720990304272170357492976768330140116539775088056742116136994562"), (&["0", "0", "0.00390625", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0.01171875", "0.00390625", "0.00390625", "0", "0.00390625", "0.01171875", "0", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0.0078125", "0.0078125", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0", "0", "0", "0.00390625", "0", "0.00390625", "0", "0", "0.0078125", "0", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0.015625", "0", "0", "0", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0", "0.0078125", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.015625", "0.00390625", "0", "0.00390625", "0.00390625", "0.01953125", "0", "0.00390625", "0", "0.00390625", "0", "0.0078125", "0.0078125", "0.00390625", "0", "0.00390625", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0.00390625", "0.0078125", "0.00390625", "0.01171875", "0.0078125", "0.0078125", "0", "0", "0", "0.00390625", "0.00390625", "0.01953125", "0.01171875", "0.015625", "0", "0", "0", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0", "0", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0.00390625", "0.015625", "0.00390625", "0.00390625", "0", "0", "0", "0.00390625", "0", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0.00390625", "0.0078125", "0.01171875", "0", "0", "0.00390625", "0.0078125", "0", "0.01171875", "0.00390625", "0.0078125", "0.0078125", "0.00390625", "0", "0", "0.0078125", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0.00390625", "0", "0", "0", "0.00390625", "0", "0", "0", "0.0078125", "0", "0.00390625", "0.00390625", "0", "0", "0", "0.00390625", "0", "0.0078125", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0", "0", "0", "0", "0.0078125", "0.01171875", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0.0078125", "0", "0.00390625", "0.00390625", "0.015625", "0", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0.0078125", "0", "0", "0.00390625", "0", "0.00390625", "0", "0", "0", "0.015625", "0", "0", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.01171875", "0.00390625", "0", "0", "0", "0.00390625", "0.01171875", "0", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0", "0", "0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0", "0.00390625", "0", "0.00390625", "0.00390625", "0", "0.0078125", "0.00390625", "0.0078125", "0", "0.00390625", "0", "0", "0"], "5.07401804440591380803027773788942371736614063302732726788342184568058394854386222079486675864120973174300007564417622000"), (&["0.6171875"], "0.297843832068398891156770823354220150734701699779960899384175991895484329065711154347758835413025353799225753298473841062"), (&["1"], "0.0"), (&["0.65625"], "0.276421336456324205071775473919647672748482283510311819956113338804055407232303194085277812912196445640890291201622901947"), (&["0.0234375", "0.09765625", "0.109375", "0.00390625", "0.0390625", "0.046875", "0.03515625", "0", "0.09375", "0.18359375", "0.0078125", "0.015625", "0.04296875", "0.2109375", "0.0078125", "0.08203125"], "2.30920524241593332922789285349126131453011975072144739908705346176310936939755906602662549779651592322086277872179875734"), (&["1"], "0.0"), (&["0.6328125", "0.3671875"], "0.657441835725552372228092520190122752904271922322401216950503375840719361306597730492965765763350673167014168779009085255"), (&["0.65625"], "0.276421336456324205071775473919647672748482283510311819956113338804055407232303194085277812912196445640890291201622901947"), (&["0.21484375", "0.609375", "0.4921875", "0.35546875", "0.671875"], "1.61600319917261836239190660761621540833109940758529237633889985449232080800550663943771714038484860846324425460470907113"), (&["0.30078125"], "0.361350178680440055527863945585144416664770042323956259902875510545635361953528844870245673915331738314351761568103041701"), (&["0.6796875", "3.734375", "2.015625", "1.91796875", "3.4140625"], "-11.5119543268399962259537592474193092724588612143191182515188939498728520910857743941052256214478799847925939752478672031"), (&["0.4296875", "0.09765625", "0.3828125", "0.9140625", "0.40234375", "0.4375", "0.94140625", "0.49609375", "0.40234375", "0.265625", "0.32421875", "0.2890625", "0.3515625", "0.25", "0.0546875", "0.2734375"], "4.84239150736650945781164907362550786305061778203795720771201250518834920400306695656218644088669799209691282525403427973"), (&["0.59765625", "0.9140625", "0.98046875", "0.171875", "0.90234375"], "0.804505238664375880652197220258284816815368986774272218808209726966474685771696438402572781390830308010129111178112896110"), (&["2.3046875", "0"], "-1.92428751768718581634667603701485577877212441334195089383654479698038285714562936453739853071609654117060894963213819444"), (&["0.44921875", "0.8359375", "0.796875", "0.55078125", "0.3671875"], "1.38659719751145222305680716121862108616810159873719339568813684589352640351476060015274036820840789278882393200974303100"), (&["2.390625", "3.51953125", "0.10546875", "0.3046875", "1.75", "1.38671875", "0.54296875", "0.140625", "2.58984375", "2.734375", "1.42578125", "1.59765625", "1.52734375", "2.00390625", "0.94921875", "0.31640625"], "-14.8337298276913681697628159682610432126327503028597944590001489968487599810320837513161833452376288928671561590810365595"), (&["1"], "0.0"), (&["2.7265625", "0.39453125", "0.19140625", "2.35546875", "3.44921875", "1.09375", "0.6640625", "0.84375", "2.1953125", "3.73828125", "3.828125", "1.171875", "2.90234375", "0.8125", "1.90625", "1.80078125"], "-25.2160428986865355903487762197842274058806375430004468531840973668938823115082503370629254860712801999091949313779639561"), (&["0.265625", "0.66796875", "0.90625", "0.296875", "0.9453125", "0.94921875", "0.953125", "0.26953125", "0.453125", "0.578125", "0.26953125", "0.07421875", "0.359375", "0.0625", "0.62109375", "0.54296875", "0.42578125", "0.64453125", "0.01953125", "0.89453125", "0.0234375", "0.6796875", "0.53125", "0.28515625", "0.30859375", "0.30859375", "0.8515625", "0.2421875", "0.69921875", "0.69921875", "0.43359375", "0.87890625", "0.9375", "0.2890625", "0.26953125", "0.96875", "0.33984375", "0.32421875", "0.30078125", "0.58984375", "0.66796875", "0.88671875", "0.47265625", "0.2890625", "0.79296875", "0.44921875", "0.73046875", "0.57421875", "0.26953125", "0.13671875", "0.1484375", "0.125", "0.984375", "0.0390625", "0.61328125", "0.93359375", "0.23046875", "0.07421875", "0.4375", "0.46484375", "0.03125", "0.109375", "0.25390625", "0.43359375", "0.41015625", "0.8515625", "0.35546875", "0.37890625", "0.67578125", "0.03125", "0.3984375", "0.77734375", "0.08984375", "0.48046875", "0.6171875", "0.22265625", "0.328125", "0.41796875", "0.1171875", "0.43359375", "0.99609375", "0.86328125", "0.10546875", "0.94921875", "0.80859375", "0.76953125", "0.33203125", "0.7890625", "0.76171875", "0.55078125", "0.3828125", "0.61328125", "0.89453125", "0.21484375", "0.05859375", "0.10546875", "0.41015625", "0.453125", "0.9140625", "0.8984375", "0.80859375", "0.94921875", "0.33984375", "0.70703125", "0.31640625", "0.640625", "0.21875", "0.2421875", "0.70703125", "0.53515625", "0.69921875", "0.41015625", "0.55078125", "0.36328125", "0.40234375", "0.73046875", "0.08984375", "0.80859375", "0.234375", "0.14453125", "0.00390625", "0.94140625", "0.5078125", "0.39453125", "0.7265625", "0.3828125", "0.44140625", "0.45703125", "0.03515625", "0.0625", "0.51953125", "0.66015625", "0.23828125", "0.265625", "0.765625", "0.8125", "0.08984375", "0.125", "0.07421875", "0.46875", "0.5078125", "0.0234375", "0.8125", "0.63671875", "0.3359375", "0.66015625", "0.98828125", "0.1015625", "0.33984375", "0.59375", "0.1796875", "0.9609375", "0.21484375", "0.25390625", "0.2578125", "0.96875", "0.92578125", "0.0546875", "0.875", "0.77734375", "0.0234375", "0.38671875", "0.57421875", "0.65625", "0.53515625", "0.953125", "0.50390625", "0.21875", "0.28125", "0.35546875", "0.7734375", "0.27734375", "0.67578125", "0.73828125", "0.43359375", "0.6171875", "0.63671875", "0.703125", "0.921875", "0.55859375", "0.4296875", "0.9140625", "0.56640625", "0.484375", "0.16015625", "0.1484375", "0.62890625", "0.07421875", "0.22265625", "0.76171875", "0.71875", "0.0234375", "0.30859375", "0.4296875", "0.015625", "0.5703125", "0.5859375", "0.8125", "0.39453125", "0.734375", "0.37890625", "0.03515625", "0.05078125", "0.484375", "0.5234375", "0.06640625", "0.59765625", "0.3671875", "0.55859375", "0.42578125", "0.07421875", "0.74609375", "0.33984375", "0.01171875", "0.5625", "0.34765625", "0", "0.9765625", "0.578125", "0.21875", "0.8515625", "0.52734375", "0.6015625", "0.16796875", "0.01953125", "0.265625", "0.7890625", "0.55078125", "0.5234375", "0.78125", "0.74609375", "0.046875", "0.16796875", "0.48828125", "0.48828125", "0.0078125", "0.56640625", "0.39453125", "0.5546875", "0.4765625", "0.1953125", "0.14453125", "0.23046875", "0.3515625", "0.1875", "0.12890625", "0.2421875", "0.140625", "0.36328125", "0.12109375", "0.6171875", "0.65234375", "0.11328125", "0.609375", "0.9921875", "0.81640625", "0.2421875", "0.5", "0.1953125", "0.546875", "0.55859375", "0.33203125", "0.41796875", "0.125", "0.23046875", "0.49609375", "0.6875", "0.21875", "0.01171875", "0.5859375", "0.453125", "0", "0.4375", "0.578125", "0.90234375", "0.58984375", "0.26953125", "0.73046875", "0.21875", "0.640625", "0.94140625", "0.6953125", "0.640625", "0.2890625", "0.4296875", "0.53515625", "0.484375", "0.5078125", "0.23046875", "0.43359375", "0.16796875", "0.9375", "0.7734375", "0.8125", "0.125", "0.79296875", "0.12109375", "0.62109375", "0.625", "0.703125"], "78.3108418130783492342489488776372736349067791719748347262289855303919678032899262274964343260633566365243547061683307632"), (&["0.65234375", "0.5859375", "0.44921875", "0.03125", "0.27734375", "0.375", "0.65234375", "0.02734375", "0.3203125", "0.60546875", "0.28125", "0.30859375", "0.91015625", "0.59765625", "0.18359375", "0.73828125"], "4.47684172937155402491310905998585853871047526462416714953810681125887946370707058028621516721141757932660328254032925686"), (&["0.62890625", "0.30859375", "0.11328125", "0.046875", "0.64453125", "0.453125", "0.10546875", "0.453125", "0.75", "0.5390625", "0.609375", "0.58984375", "0.47265625", "0.03125", "0.20703125", "0.546875", "0.48828125", "0.76953125", "0.6484375", "0.91796875", "0.98046875", "0.16015625", "0.015625", "0.23046875", "0.8984375", "0.84375", "0.2421875", "0.9609375", "0.23828125", "0.84375", "0.6796875", "0.25390625", "0.4140625", "0.77734375", "0.35546875", "0.57421875", "0.96875", "0.3359375", "0.3515625", "0.4140625", "0.6328125", "0.60546875", "0.51953125", "0.71484375", "0.01171875", "0.16796875", "0.01953125", "0.76171875", "0.5390625", "0.109375", "0.8125", "0.93359375", "0.51953125", "0.140625", "0.45703125", "0.4375", "0.59375", "0.86328125", "0.88671875", "0.71484375", "0.546875", "0.55078125", "0", "0.82421875"], "15.8378596592298527696567233272412185095975202618028059982927183348786816776316202453426816600145577868252543080864332444"), (&["0.015625"], "0.0649825481774948727578655113867040532570781375962739300738137508900056520596588795880496869059142519570626388456785017875"), (&["0.00390625", "0.00390625", "0.00390625", "0", "0.00390625", "0.00390625", "0.02734375", "0.0078125", "0", "0.09765625", "0", "0.01953125", "0.03515625", "0.0234375", "0.00390625", "0", "0.05078125", "0.00390625", "0.0078125", "0.00390625", "0.00390625", "0.01171875", "0.00390625", "0.00390625", "0.046875", "0.0234375", "0.00390625", "0.046875", "0.01171875", "0.03125", "0.00390625", "0.01953125", "0", "0.01171875", "0.0078125", "0.0390625", "0.0078125", "0", "0", "0.0078125", "0.01953125", "0.01953125", "0.0390625", "0.0078125", "0.0234375", "0.00390625", "0.00390625", "0.02734375", "0.01171875", "0.00390625", "0.0078125", "0.03515625", "0.015625", "0.0703125", "0.02734375", "0.00390625", "0.015625", "0.0078125", "0.02734375", "0.00390625", "0.015625", "0", "0.0234375", "0"], "3.59867873564659862014846512028021263168127937720380475715127288937858209039213688582464702164962130332771750151921437031"), (&["0.375", "0.625"], "0.661563238157982059853004817262215290280190597479411141766124721194758638634819681346150399125869272580536742773405630735"), (&["0.3125", "0.95703125", "0.953125", "0.109375", "0.72265625"], "0.928053782537938118684839755769130998165974394266827370274459504382165394377860462356937379104976515131723326727317436377"), (&["0.56640625"], "0.321970065619348713536346534692228236092435886602199740855518225626474355477526976187085216186505674605690094767828311700"), (&["0.01953125", "0.01953125", "0.01953125", "0.0234375", "0.02734375", "0.00390625", "0", "0.0234375", "0.02734375", "0.01171875", "0.00390625", "0.06640625", "0.01171875", "0", "0.08984375", "0.0078125", "0.00390625", "0.00390625", "0.015625", "0", "0.01953125", "0.01171875", "0.00390625", "0.00390625", "0.00390625", "0.015625", "0.00390625", "0.0078125", "0.0078125", "0.0078125", "0.01171875", "0.00390625", "0.015625", "0.015625", "0.00390625", "0.01953125", "0.015625", "0.015625", "0.0234375", "0.015625", "0.015625", "0", "0.07421875", "0.0625", "0.01171875", "0.01953125", "0.0625", "0.00390625", "0.015625", "0", "0", "0.01171875", "0.01171875", "0.015625", "0.01171875", "0", "0.01171875", "0.00390625", "0", "0.01953125", "0.0234375", "0.0078125", "0", "0.01171875"], "3.64336070727237078553401378377805676272808247851045785406506861371108369925656577946208658559938921989179836105785135663"), (&["0.6640625", "0.91015625", "0.80859375", "0.05078125", "0.96484375", "0.98046875", "0.55859375", "0.69140625", "0.609375", "0.25390625", "0.51953125", "0.15625", "0.34765625", "0.15625", "0.91796875", "0.5234375"], "3.66988279100156349240228825508324878875054742977110036398967977437326486934280387405705427571571847544656213252352492159"), (&["0.46484375"], "0.356095391456234131671771029810717372054948775753976135968158790574788702841180874849653268250668078410654785693249012626"), (&["0.171875", "0.25390625", "0.28125", "0.14453125", "0.1484375"], "1.57020981228341071973308025413667948872882695401342437156094845165447078324402267760026128703140656788173938678486270270"), (&["0.69921875", "0.12890625", "0.6484375", "1.50390625", "0.48828125", "0.21875", "3.20703125", "2.30859375", "0.5546875", "0.90234375", "3.546875", "3.25", "2.37109375", "0.52734375", "0.9453125", "0.265625"], "-14.0107241802693017463988908626671022139004870406442296514043796588954155181822595083840927675190443151542204960670150389"), (&["2.60546875", "2.453125", "1.72265625", "1.25390625", "3.71484375", "1.86328125", "3.73828125", "3.78125", "1.296875", "3.17578125", "1.5", "0.40625", "2.12109375", "0.73046875", "3.4609375", "0.51953125"], "-31.4817232400445433296153259550149570705054167833456361736687752714178054191960300942669998087671239705757094480200433579"), (&["2.9140625", "2.2265625"], "-4.89900197847344141917103106911703915695273155306774987450669968470477779180936158820272185643265234266751402675287668972"), (&["0.29296875"], "0.359674608674780869553054609850735808858976897028005020724252917781629894665126922474518487784548297836360121012258738573"), (&["0.73046875", "0.88671875", "0.26953125", "0.515625", "0.0390625", "0.6640625", "0.48046875", "0.9296875", "0.140625", "0.29296875", "0.87890625", "0.61328125", "0.734375", "0.15234375", "0.81640625", "0.38671875", "0.8515625", "0.81640625", "0.515625", "0.55078125", "0.44140625", "0.48828125", "0.26953125", "0.37890625", "0.5546875", "0.9453125", "0.44140625", "0.5390625", "0.48828125", "0.0390625", "0.32421875", "0.9453125", "0.48828125", "0.5", "0.61328125", "0.88671875", "0.2578125", "0.25", "0.32421875", "0.61328125", "0.6484375", "0.04296875", "0.03125", "0.66796875", "0.5625", "0.953125", "0.66796875", "0.6171875", "0.63671875", "0.796875", "0.76171875", "0.10546875", "0.640625", "0.4375", "0.96875", "0.3671875", "0.34375", "0.10546875", "0.58984375", "0.80859375", "0.1796875", "0.828125", "0.63671875", "0.83203125", "0.28125", "0.56640625", "0.9140625", "0.0078125", "0.8359375", "0.2578125", "0.95703125", "0.53515625", "0.2109375", "0.47265625", "0.33984375", "0.55859375", "0.6484375", "0.3515625", "0.234375", "0.79296875", "0.234375", "0.05859375", "0.54296875", "0.00390625", "0.32421875", "0.1640625", "0.19921875", "0.87890625", "0.984375", "0.1171875", "0.85546875", "0.78125", "0.14453125", "0.5703125", "0.57421875", "0.5", "0.4921875", "0.35546875", "0.8125", "0.11328125", "0.5859375", "0.19140625", "0.68359375", "0.3984375", "0.60546875", "0.17578125", "0.09375", "0.62890625", "0.25390625", "0.37890625", "0.23046875", "0.40234375", "0.1640625", "0.0234375", "0.09375", "0.8828125", "0.28125", "0.94140625", "0.63671875", "0.80859375", "0.84765625", "0.5234375", "0.3515625", "0.36328125", "0.5", "0.58984375", "0.7734375", "0.71875", "0.36328125", "0.10546875", "0.62109375", "0.92578125", "0.76953125", "0.18359375", "0.05859375", "0", "0.31640625", "0.4453125", "0.578125", "0.6171875", "0.98828125", "0.3125", "0.2734375", "0.265625", "0.78515625", "0.19921875", "0.51953125", "0.6015625", "0.16015625", "0.34375", "0.5625", "0.75", "0.1875", "0.5078125", "0.33984375", "0.90234375", "0.25", "0.8125", "0.52734375", "0.8984375", "0.8203125", "0.07421875", "0.62890625", "0.0546875", "0.453125", "0.37890625", "0.765625", "0.7421875", "0.58203125", "0.96875", "0.6484375", "0.53515625", "0.5078125", "0.28515625", "0.74609375", "0.0390625", "0.5390625", "0.78125", "0.890625", "0.16015625", "0.34375", "0.01953125", "0.40625", "0.7734375", "0.8359375", "0.890625", "0.0625", "0.19140625", "0.3671875", "0.796875", "0.25390625", "0.42578125", "0.671875", "0.36328125", "0.02734375", "0.42578125", "0.6875", "0.56640625", "0.625", "0.046875", "0.80078125", "0.07421875", "0.24609375", "0.7734375", "0.50390625", "0.1640625", "0.08203125", "0.3203125", "0.515625", "0.5703125", "0.0234375", "0.20703125", "0.7734375", "0.87109375", "0.375", "0.92578125", "0.26171875", "0.25", "0.40234375", "0.7578125", "0.89453125", "0.0234375", "0.64453125", "0.45703125", "0.76171875", "0.1953125", "0.81640625", "0.0625", "0.91015625", "0.765625", "0.38671875", "0.8359375", "0.95703125", "0.85546875", "0.36328125", "0.65234375", "0.6796875", "0.8515625", "0.66796875", "0.0703125", "0.4609375", "0.46875", "0.3046875", "0.76171875", "0.73828125", "0.875", "0.71484375", "0.80859375", "0.09765625", "0.140625", "0.3125", "0.703125", "0.88671875", "0.5078125", "0.37109375", "0.515625", "0.6171875", "0.6875", "0.73828125", "0.63671875", "0.15234375", "0.12109375", "0.5546875", "0.6875", "0.41796875", "0.0390625", "0.828125", "0.2890625", "0.796875", "0.51171875", "0.9453125", "0.87890625", "0.96484375", "0.0703125", "0.1015625", "0.76171875", "0.75", "0.5859375", "0.66015625", "0.46484375", "0.12890625", "0.85546875", "0.24609375", "0.1171875", "0.3203125", "0.25", "0.7578125", "0.359375", "0.953125", "0.890625", "0.9921875", "0.86328125", "0.0390625", "0.5703125", "0.26171875", "0.1875", "0.125", "0.3984375", "0.40234375", "0.2734375"], "76.2971613961676283059679593128744492654560386433741334725893047608709880648115611651033398683949371876014410633873044319"), (&["0.62109375", "0.23046875", "0.6953125", "0.08203125", "0.01953125", "0.16015625", "0.65234375", "0.9296875", "0.16796875", "0.29296875", "0.98046875", "0.234375", "0", "0.6640625", "0.7109375", "0.5234375", "0.25", "0.38671875", "0.10546875", "0.3125", "0.71484375", "0.02734375", "0.71875", "0.30078125", "0.12890625", "0.98046875", "0.35546875", "0", "0.49609375", "0.203125", "0.703125", "0.73046875", "0.72265625", "0.8046875", "0.39453125", "0.65234375", "0.51953125", "0.57421875", "0.62109375", "0.45703125", "0.2578125", "0.28125", "0.25", "0.08203125", "0.71484375", "0.03515625", "0.3828125", "0.26953125", "0.61328125", "0.12109375", "0.30859375", "0.0234375", "0.35546875", "0.015625", "0.0546875", "0.66015625", "0.01171875", "0.2890625", "0.96484375", "0.859375", "0.45703125", "0.1640625", "0.41796875", "0.53515625"], "16.2373997746272474554305730392081979494424230340361689703501042975891819436050099143597650294751912044792195670340878773"), (&["0.08984375", "0.03515625", "0.0625", "0.05859375", "0.03125", "0.015625", "0.1171875", "0.03515625", "0.21484375", "0.04296875", "0.02734375", "0.046875", "0.015625", "0.05859375", "0.0390625", "0.109375"], "2.52338390985516791564812128906626364873975675940671574321570166061049300902113189050739292524089409659859069237000212864"), (&["0.45703125", "0.8984375", "0.515625", "0.33984375", "0.12890625", "0.62890625", "0.26171875", "0.43359375", "0.03515625", "0.49609375", "0.9375", "0.73046875", "0.66015625", "0.49609375", "0.34765625", "0.62890625"], "4.46758535384700730186155253293667809213322500711555897075929676041218012073786271879995963765078590846266450806119353184"), (&["0.78515625"], "0.189907733673897779604611278961765554559785548364518929932364390306295396793684508313319184924433505194648457791497924969"), (&["0.68359375", "0.9453125", "0.578125", "0.8046875", "0.27734375", "0.53125", "0.12890625", "0.76171875", "0.3515625", "0.25390625", "0.421875", "0.2109375", "0.78515625", "0.00390625", "0.34375", "0.71875", "0.578125", "0.578125", "0.1328125", "0.5625", "0.234375", "0.13671875", "0.42578125", "0.3359375", "0.0234375", "0.8515625", "0.0859375", "0.83984375", "0.22265625", "0.16796875", "0.88671875", "0.375", "0.8828125", "0.1640625", "0.0234375", "0.76953125", "0.3125", "0.97265625", "0.63671875", "0.40625", "0.76953125", "0.75390625", "0.171875", "0.60546875", "0.609375", "0.8984375", "0.47265625", "0.65625", "0.94140625", "0.609375", "0.67578125", "0.171875", "0.328125", "0.6640625", "0.16015625", "0.10546875", "0.19921875", "0.1015625", "0.30859375", "0.51953125", "0.609375", "0.609375", "0.6875", "0.90625", "0.08984375", "0.75390625", "0.26953125", "0.94140625", "0.75", "0.74609375", "0.16015625", "0.83984375", "0.73828125", "0.421875", "0.4375", "0.55859375", "0.08984375", "0.8359375", "0.44921875", "0.51953125", "0.98046875", "0.875", "0.859375", "0.859375", "0.34765625", "0.53125", "0.1640625", "0.58984375", "0.3671875", "0.8125", "0.65625", "0.2265625", "0.72265625", "0.265625", "0.7265625", "0.60546875", "0.7890625", "0.7109375", "0.3515625", "0.83984375", "0.27734375", "0.03125", "0.88671875", "0.55859375", "0.7421875", "0.140625", "0.73046875", "0.67578125", "0.29296875", "0.1875", "0.76953125", "0.83203125", "0.828125", "0.96875", "0.9140625", "0.53125", "0.703125", "0.08984375", "0.56640625", "0.41015625", "0.21484375", "0.28125", "0.76171875", "0.3359375", "0.84375", "0.71875", "0.59375", "0.41796875", "0.7734375", "0.171875", "0.07421875", "0.07421875", "0.57421875", "0.96875", "0.890625", "0.8203125", "0.30078125", "0.0390625", "0.58984375", "0.171875", "0.4765625", "0.2734375", "0.96875", "0.04296875", "0.43359375", "0.41015625", "0.26953125", "0.66015625", "0.72265625", "0.5390625", "0.48828125", "0.16796875", "0.640625", "0.87890625", "0.7578125", "0.83203125", "0.77734375", "0.06640625", "0.2578125", "0.2109375", "0.88671875", "0.91796875", "0.99609375", "0.43359375", "0.3671875", "0.01953125", "0.1328125", "0.65234375", "0.45703125", "0.66796875", "0.3671875", "0.1171875", "0.53515625", "0.578125", "0.6171875", "0.359375", "0.58203125", "0.71875", "0.01953125", "0.98046875", "0.125", "0.18359375", "0.8203125", "0.06640625", "0.9375", "0.8828125", "0.859375", "0.5390625", "0.05859375", "0.46875", "0.47265625", "0.72265625", "0.12890625", "0.9296875", "0.0078125", "0.58203125", "0.2578125", "0.88671875", "0.8828125", "0.421875", "0.51171875", "0.21875", "0.671875", "0.52734375", "0.62890625", "0.1484375", "0.703125", "0.46875", "0.51171875", "0.60546875", "0.3046875", "0.6640625", "0.3125", "0.30859375", "0.7890625", "0.03515625", "0.23046875", "0.390625", "0.5625", "0.12109375", "0.29296875", "0.76171875", "0.23046875", "0.984375", "0.79296875", "0.12109375", "0.53125", "0.4921875", "0.4140625", "0.2421875", "0.828125", "0.88671875", "0.34765625", "0.03125", "0.70703125", "0.0546875", "0.2578125", "0.8203125", "0.4609375", "0.0703125", "0.2890625", "0.5546875", "0.08984375", "0.74609375", "0.66015625", "0.10546875", "0.08984375", "0.26171875", "0.4296875", "0.390625", "0.72265625", "0.16796875", "0.38671875", "0.125", "0", "0.9453125", "0.375", "0.5078125", "0.1640625", "0.03125", "0.6328125", "0.19140625", "0.44140625", "0.8984375", "0.24609375", "0.4609375", "0.8515625", "0.7890625", "0.90234375", "0.2734375", "0.32421875", "0.2109375", "0.21875", "0.38671875", "0.51171875", "0.90234375", "0.14453125", "0.26171875", "0.55859375", "0.59765625", "0.77734375", "0.3046875", "0.60546875", "0.1953125", "0.46875", "0.35546875", "0.40625", "0.90625", "0.859375", "0.5390625", "0.90625", "0.484375", "0.06640625", "0.86328125", "0.09375", "0.76953125", "0.8125", "0.2890625", "0.33984375", "0.28125"], "76.5417305496164942956091619789827783753783842088101009191862867584837367674096459322167959559484978463479104425679916455"), (&["0.15625", "0.06640625", "0.1015625", "0", "0.1796875", "0.00390625", "0.05859375", "0.03515625", "0", "0.0703125", "0.046875", "0.015625", "0", "0.1640625", "0.0859375", "0.015625"], "2.28398768774729815946208048809339975655565155544637310571760848167709054566254383511211344965898230805458619315891568241"), (&["0.96484375"], "0.0345308970286779843008183525719663259088062718719078367503253094999012764575418492698979354399791741996840493914453089397")];
/// (a, b, d, floor(a*b/d), nearest(a*b/d) ties toward +infinity); None when it does not fit i128.
pub const MUL_DIV: &[(i128, i128, i128, Option<i128>, Option<i128>)] = &[(170141183460469231731687303715884105727, 170141183460469231731687303715884105727, 170141183460469231731687303715884105727, Some(170141183460469231731687303715884105727), Some(170141183460469231731687303715884105727)), (-170141183460469231731687303715884105728, 170141183460469231731687303715884105727, -170141183460469231731687303715884105728, Some(170141183460469231731687303715884105727), Some(170141183460469231731687303715884105727)), (-170141183460469231731687303715884105728, -170141183460469231731687303715884105728, 170141183460469231731687303715884105727, None, None), (7, -3, 2, Some(-11), Some(-10)), (-7, 3, -2, Some(10), Some(11)), (7, 3, 2, Some(10), Some(11)), (-7, -3, -2, Some(-11), Some(-10)), (1, 1, 2, Some(0), Some(1)), (-1, 1, 2, Some(-1), Some(0)), (3, 1, 2, Some(1), Some(2)), (-3, 1, 2, Some(-2), Some(-1)), (0, 5, -9, Some(0), Some(0)), (170141183460469231731687303715884105727, 2, 1, None, None), (-219003653122883757481776000834, 1562561101153346713, -3487275928, Some(98130058087075128265309811925347441380), Some(98130058087075128265309811925347441381)), (0, 3095712051926953989, -1, Some(0), Some(0)), (-553404830799, -27860, -15143275129824, Some(-1019), Some(-1018)), (-60484018470188870906998029202, 209723681964977466, 714527142415853903, Some(-17752903004800200640359855444), Some(-17752903004800200640359855444)), (34503747557248850927701185034685212, -41397142167874, -7574760766276664795784564, Some(188567875214093043467194), Some(188567875214093043467194)), (16109135, 151256814092058469775236817, -3999332134813486741851369, Some(-609255835), Some(-609255835)), (-3171000109480555529, 4687044077866452025508709635230526, -6651966443635856588288165, Some(2234319341504531719866568202), Some(2234319341504531719866568202)), (-8586782535630975240756704, -195281448703684509, 14636973299, Some(114561890563541315041267234213763), Some(114561890563541315041267234213763)), (2146310233022066939856200271, -99643866, -32569824229395708, Some(6566404772324669038), Some(6566404772324669038)), (-11485559700, 8513, -64051236153599351313353606577361, Some(0), Some(0)), (68320801465, -14322610629453775852308569, -399967955233216, Some(2446526589123473545252), Some(2446526589123473545252)), (-36208077670287633, -25319361280091089, 4031727538472292011088, Some(227387736657), Some(227387736657)), (-3214938730490797, -86449229, 121544786969, Some(2286638378033), Some(2286638378033)), (-80052269958866478484346258946552620, 15, -40037, Some(29991858765217103610789866478464), Some(29991858765217103610789866478465)), (58276259, -3581091467922, 1711503010057418727806277467771049, Some(-1), Some(0)), (5373995088340420703657689, -6731, -14648526005287297733837844424666, Some(0), Some(0)), (20063547108939941993188506509620370, 882936100583911040, -96915283, None, None), (-5847172268959192106906, 13561, -1697431464808634844, Some(46713817), Some(46713817)), (-6390513979756440378330562006796011371, -51400340258782367719676929718964, 6492571346178098868, None, None), (-165729937668736440231919477764000871339, 425765629520245335414100308950450428, -770595479122217857309724787, None, None), (642035, 814042672736632621036566594, -25818, Some(-20243391718586409669502363978), Some(-20243391718586409669502363978)), (1990596825653069408, -59497, 142139824, Some(-833225594368829), Some(-833225594368828)), (71202590270038818, -3957, -806770115244078883079547, Some(0), Some(0)), (-1213230370, -31136214493520222034200440179512411, -7386845, Some(-5113874872204967287256623456042831388), Some(-5113874872204967287256623456042831387)), (-3833911321992502023405410, -1890605752171180337642, -639480253592040, Some(-11334853199857216189076918342147), Some(-11334853199857216189076918342146)), (102, 1267245349905954610694291695240982, 2071486365, Some(62399167995685730854819193), Some(62399167995685730854819193)), (-6882, 285831200254173624566834738336578, 112469808273002027114218, Some(-17489941081561), Some(-17489941081561)), (-13623, -353427185874069, -2148712038584181387361521383544679, Some(-1), Some(0)), (15666, 59440384013468102855888588290, 4445750929969777356123627725657584, Some(0), Some(0)), (-3938435831310850348454120492, 6957911642795705167344899, -210709137891103893942598761923, Some(130052682096985172827871), Some(130052682096985172827871)), (441191723287966827698607471346, 171639188627850879, 53636856709048847144936, Some(1411823773067867905706743), Some(1411823773067867905706743)), (510135742057797960368540222588112, 530802205, 8276155413593239, Some(32718232464417432430248785), Some(32718232464417432430248785)), (866969850420811446536210379, 152349744366972591152622, 2754608550344843172683477018289, Some(47949693276363338178), Some(47949693276363338179)), (273055827244767309873466245000518010, -706, -2630049607616915430370940598672621382, Some(73), Some(73)), (5811817473301646729369703880, -6818525071629255466819299, 1271588079168567244016123762, Some(-31164198377316657947834882), Some(-31164198377316657947834882)), (-84512, 71962543442016436299547649, 11363507, Some(-535195558146942934478535), Some(-535195558146942934478535)), (39486722090, -2263127679213758116668, -16188421352310299387, Some(5520210512098), Some(5520210512098)), (11232609655215372493125329385, -3049295527934, -1007270209671, Some(34004327795879050992425628103), Some(34004327795879050992425628103)), (26258, -299996024939826852102725929035671, -15166437320706234059, Some(519389983046009290), Some(519389983046009291)), (208448296939364, 6040746221217320044254801595086705616, 112588453819919054295162108, Some(11183946660015996253996775), Some(11183946660015996253996776)), (-8058605083532118272762704319, -2, 12813441249715287757182712, Some(1257), Some(1258)), (-225985, 10136789882381357927830965997, 409983, Some(-5587457191078535381517967455), Some(-5587457191078535381517967454)), (1514288682274261583, -3562850045975257, -43739407289, Some(123348345020155223181631), Some(123348345020155223181631)), (-9415455721432919108700616124, -384996807528391968747194, -558079330934180296794290951437, Some(-6495349663118286123883), Some(-6495349663118286123882)), (-970873747311877255087777678493, -13080938124068930252957742118, 5070532475051953, None, None), (-13, -15442042210750, 10737662976027023525071371338, Some(0), Some(0)), (-163761, 3, -919, Some(534), Some(535)), (-1322047972618498600515681, 899, 157631735990421158849, Some(-7539860), Some(-7539859)), (859342788230494950355296987, 1636010356417, -1893774347800915736644645145260374, Some(-742377), Some(-742377)), (3312805421234324424788745402154923, 1129, 32866490, Some(113798501774103418880035366083), Some(113798501774103418880035366084)), (4457222438782479052617914170, 514736151814220664, 8825092590056993649093415420756, Some(259973875911943), Some(259973875911944)), (-92740646341154779420777, -22802594481109406675324, -50699329, Some(-41711150663026235754926196881679771068), Some(-41711150663026235754926196881679771068)), (66, -2761382425760603350986701486, -82750703455389724824602277513625960, Some(0), Some(0)), (-5415448754497, -69838, -2665860301044, Some(-141870), Some(-141869)), (-24772201420, 2261562321350823865695, -1192696689, Some(46972443090588117901566), Some(46972443090588117901566)), (-2440260711622402639360735717496306, 916084018296, -165340865998607463772572263, Some(13520455604797272584), Some(13520455604797272585)), (-48578261006900978509627, 2456445, -22934794, Some(5203004062696044889484), Some(5203004062696044889485)), (15, -48807802, 311, Some(-2354075), Some(-2354074)), (8536455868502071253068651405987483, 627690206499477985780569073178961353, 912695400261165735014502035, None, None), (-1, 964803122448479608377274081, 2519130834, Some(-382990478075534369), Some(-382990478075534368)), (-14, -41593337, 31244752570652071120596151, Some(0), Some(0)), (-2, 31423886284888432, 122379381639606928776331837676815, Some(-1), Some(0)), (37082325321132545322577390685, -251811725391, 540304760444999801, Some(-17282402459186346492195), Some(-17282402459186346492194)), (-88399750259805626583503498955, 16009904246, -17558090603006427, Some(80605093630594910721406), Some(80605093630594910721407)), (-106896659961515969138870175742, 3, 9331, Some(-34368232760105873691631179), Some(-34368232760105873691631179)), (-1404217, -2011316911782231511711562, 1056073117859534643908740475425659325, Some(0), Some(0)), (-229243662061844807053038, 7511405917, -302470951311409131716068373308968, Some(5), Some(6)), (-1253291069230178499043632406287, 5507828417270390369, -8061684526947983259617104416697689, Some(856261758090711), Some(856261758090712)), (3291831649873900120882355714802358573, -16812055732018920617183085587344849536, 3731273617771685456, None, None), (24406650697835039456848420677455178751, -391902, 7352119769, Some(-1300987405307725970101482137638996), Some(-1300987405307725970101482137638996)), (-247805851950428949197220, -51493309411875516, -121757, Some(-104801723174493899352483070976804400), Some(-104801723174493899352483070976804399)), (3374728869398846245345276, 92522976887230265820659903688724, 3958022410, None, None), (-150603830107103767019423930, 10027588846756752178857384716151, 55398831179418164367500510278234, Some(-27260381760940674733752221), Some(-27260381760940674733752220)), (1277012500612710281897763021248177005, 1907906368601158, 356946586898844, Some(6825727915960556480911411354165676237), Some(6825727915960556480911411354165676237)), (-8778078249349629258, -45246158, -2536747903397941326, Some(-156568304), Some(-156568303)), (-2248731787420920, -62919175413022597664403235994479, 65764853574656402, Some(2151428036389662634515375369741), Some(2151428036389662634515375369742)), (15400804167575843968, -277887796098, 9398028888626623990717966784582558659, Some(-1), Some(0)), (1413946, -12, -27, Some(628420), Some(628420)), (8743, -14, 28754060186756700, Some(-1), Some(0)), (2264479205669239, -17238815670882092687566942416, -3020554827888, Some(12923764619883593219142958862769), Some(12923764619883593219142958862769)), (22712956930669454102047685856658970, 96191808840920496193644030764891, 16696366, None, None), (-10215216, 688204138, -48085960558647, Some(146), Some(146)), (-5897024025, -4227406961186780, 331358, Some(75233193143279124609), Some(75233193143279124610)), (15821877219, 610585390857317510146684223551, -439423603195596932440088728138, Some(-21984725026), Some(-21984725025)), (-6108323072980832446589636115660445683, -347916, 9121159408234, Some(232994867773138528885226717118), Some(232994867773138528885226717118)), (37473351102, -20623405033545610413497805473, 1532762294405072388353752, Some(-504206099381363), Some(-504206099381362)), (1293624775, -51255112829, -4413688009886703, Some(15022), Some(15023)), (1, 23206124866294053585, 73878346, Some(314112674724), Some(314112674725)), (197436240886474212019268321483566848, 309333583818908759690, 4646253890158052730, Some(13144709999278337775634632542535366934), Some(13144709999278337775634632542535366935)), (-86, 19066929853786228943857, -58577673441, Some(27992849000348), Some(27992849000348)), (-60, -464057586837240282538651617056844, 2776271529669815849313355296400035173, Some(0), Some(0)), (48260010483119362100374954262174, 866796968, -21407446, Some(-1954069194541753287650433499521200), Some(-1954069194541753287650433499521199)), (3269532660647852352230688, 648519283456757, 12657259336382141928, Some(167520860714850151012), Some(167520860714850151013)), (45683562871735568681812066909916632924, 7615735090915709703563145116, 489, None, None), (-485272544901674, 1038, -943829729158423106392084, Some(0), Some(0)), (-138530706818335601362, -26324694, 447116, Some(8156224484465772406177), Some(8156224484465772406178)), (30991238168, -2786890985654999, -33674234127275671, Some(2564845334), Some(2564845334)), (-22339794712010, -17399046897811739, 1, Some(388691135881748681752702285390), Some(388691135881748681752702285390)), (-8551, -4938852463566828589966899111, -103594361615285587127023140314, Some(-408), Some(-408)), (-23314419138501582253963055, -51143307645001461959119964, 30848493977175975552057806439, Some(38652665230500579589410), Some(38652665230500579589411)), (-27240017626018638819338624523, 67423017086689537823343487370618135, 1162344809532684576675638489353443761, Some(-1580085495094331937319963724), Some(-1580085495094331937319963723)), (1556139476688647912578, 20548246, 64797927611302418, Some(493471596331), Some(493471596331)), (-1276162383395604483619837070384737759, 2661046, -3287311946851691649605821100, Some(1033040630335575), Some(1033040630335576)), (81573307460757392740, 273743576201235126973277753639320, -4162662041368572736995, Some(-5364396312973093702607743815646), Some(-5364396312973093702607743815645)), (939001506908, 463676, 4756712630552781010804902, Some(0), Some(0)), (16909908713862810754900025441810643, -20, -23508, Some(14386514134645916926067743271916), Some(14386514134645916926067743271916)), (-8149022, 58797806440834332012068, -20828493139711, Some(23004286245008164), Some(23004286245008164)), (-19825046594751556665209018477662725, 52817, 1292389060979353864495303583680054563, Some(-811), Some(-810)), (93751672694358484590572684908959560, -51019802281123829, 7677275541772788, Some(-623032451859387236420196787325925187), Some(-623032451859387236420196787325925186)), (3278, 40026438705, -555583614856560924651182686772648, Some(-1), Some(0)), (-3891155463907610649472, -315716585306, -15, Some(-81900154397313010781110716790563), Some(-81900154397313010781110716790562)), (-317781, -260827967520807387186307034, -41822655156097172, Some(-1981848642496961), Some(-1981848642496961)), (-5380637, 3662678657951, 4624777160087664956641, Some(-1), Some(0)), (-51597704964212565787302493028680190704, -38718547885811, -1678524, None, None), (-4279506847077266206370983047584, 11, -2904, Some(16210253208626008357465844877), Some(16210253208626008357465844877)), (1151639357408655411388634232100, 25, 51174739, Some(562601480687891447472079), Some(562601480687891447472079)), (5429233282, -31780043460378054465984910241447, -111091776663947609955043, Some(1553141689149755506), Some(1553141689149755506)), (9066800914, 60, -863848562499848, Some(-1), Some(0)), (-118378276297157473324899202569, 24032925374878975600690519558, 448749, None, None), (-5254394945754034772072108787548266, -16608548, 25, None, None), (-9315906342623, 48439328482290902327957668224735, -12563, None, None), (-8387415834908331, 5141291763, 1359983367031233794381258112, Some(-1), Some(0)), (5678931290405989143206299282, 0, -2731173909848779684022341435777089981, Some(0), Some(0)), (3, 6831077812141871247, -25758323907, Some(-795596543), Some(-795596542)), (-13551, 7246698059670594982, 279132161146662314994904782939054203, Some(-1), Some(0)), (13007984, 721649782523420863804541366, -24341, Some(-385654197636421602302109741435), Some(-385654197636421602302109741435)), (103995122760, 116216989815688779151, 37074830830029785, Some(325989353210772), Some(325989353210773)), (38125842465973701078528563698274808657, 291155532380768, 221, None, None), (-2515617055019392555949430210, 2375700661022555417392138923256, -18451082703063841563231784402228773561, Some(323902569657703550388), Some(323902569657703550389)), (-178, 90, -26588249815444832813, Some(0), Some(0)), (5561711992283285953690373884375909, -2574, -22882289476852, Some(625629995749300400486753), Some(625629995749300400486753)), (-2756002210160002665839996598219, 4555315, 2573928316138, Some(-4877547727052516313126289), Some(-4877547727052516313126289)), (1247363639, 605799, 192369953200212465268154651052254813, Some(0), Some(0)), (-2216456613527930591941054472, -30404396978846974057965796300223361, -3916856578958882797951820115, Some(-17205130033636964287818383466409654), Some(-17205130033636964287818383466409654)), (-2235690056175076140601178264113650, 6191245976956, 3556478038947306120505484229, Some(-3891970346627397470), Some(-3891970346627397470)), (-4136, 1407516, -141372, Some(41178), Some(41178)), (86196, -5357682277234550313, -634662, Some(727648388541474515), Some(727648388541474515)), (-5441740526656174, 343475386075434104599198549760, 45159273556, Some(-41389149584033345915469084378304389), Some(-41389149584033345915469084378304389)), (159046578493421, 3553027433401030140275466307, -370645844, Some(-1524627527121807130533595262240438), Some(-1524627527121807130533595262240438)), (54882779631956, 2314640601032209924587, 24854, Some(5111205843471029405271837224402), Some(5111205843471029405271837224403)), (4556429935628867139904, 506766656503243, -3725530, Some(-619790141018842346633395041004), Some(-619790141018842346633395041004)), (-27, 0, -108300146804678, Some(0), Some(0)), (-20999348455124783529616399898242934202, -3579482415591499420684958243, -1221390832789434304525052889606257287, Some(-61541970445553777566855284646), Some(-61541970445553777566855284645)), (-64395, 26345962557721788402499457655459465449, -10712417897341419803259932910805848, Some(158372113), Some(158372113)), (-600848993190360833229552067343324, -1295723122856690336330556250805456, -7, None, None), (1824, 4254132944, -335041258267380522585510, Some(-1), Some(0)), (-222726070623595441, -1881419951624070, 318304092698231944088220248129661, Some(1), Some(1)), (82652988, -1322738071333331990, -842680792799327332403372496734082, Some(0), Some(0)), (3653937616064193616394478037799256, -3760701087638707760979436063419214, 1952435821260263108169735, None, None), (1239033963756922657084034444, -2, -67303567165181451278898478945048, Some(0), Some(0)), (-2098, 403755865075, -8258604956701, Some(102), Some(103)), (-2883438245059117232187, -121117057337086335, 27732070884079564300561, Some(12593129330823281), Some(12593129330823282)), (-28, 97247, -468888675, Some(0), Some(0)), (125384518276514088440, 22548775013095790798938923, 354821836815942630, Some(7968132170538046215177696907), Some(7968132170538046215177696908)), (-1602549756796407219866087846470017, 344607118650869617356682026523, 1649, None, None), (-6844025, 1138288959851605047390650645623605524, -249389375706933, Some(31238211637384546021724576326), Some(31238211637384546021724576326)), (870185493805803280941309253478281100, 137372807899894, 31, None, None), (-253557250082428, 294700820911232617828162314503, 2102301601929, Some(-35543677310012265805185721450792), Some(-35543677310012265805185721450791)), (-1865074935468085408987835209799638, -2135089473922153426740511687, -2851238576455991786, None, None), (1484310, -12, -32299277805689435454605665934, Some(0), Some(0)), (2723541993092124648295952091, -26789997509172, -19634355929661049468719282710919, Some(3716123078), Some(3716123079)), (-214602074789613, -209924480028852, -47734043266364855093093, Some(-943776), Some(-943776)), (438803526976, 4909701973275194114943837661, 14673436138725822265036532910, Some(146822770202), Some(146822770202)), (-435606348132370939978253534181631288, -358826207371515, -4477823399657659301293764379843404, Some(-34906908972614808), Some(-34906908972614808)), (-444991703207255372977467, 30822559990990597057, -5645723959212719636456212, Some(2429410925275088923), Some(2429410925275088923)), (5017728056410442531740033210004870, 2126069241017495237, 2902363907721, None, None), (12339955026058279061568016, -745444016264887833345196, -5289895265089046503141219025, Some(1738927743212724403416), Some(1738927743212724403417)), (-218410658972, -27286085233641378590306237925854, -25925605711103705236682463568608927214, Some(-229873), Some(-229872)), (-19217777394893529, 706, 34759542030037068020781, Some(-1), Some(0)), (-11165624237600783835, 11114790202628678634317375155625599638, 215008951, None, None), (-9196403629874929908357, 5361885631559708879287, 20755622910645698181189261, Some(-2375744861878294919), Some(-2375744861878294918)), (-2156387266, -3015452630664447510106998935379286392, 15308, None, None), (0, -501891905013, -240696115111848838510215, Some(0), Some(0)), (4227929680444031596973701, -8822315942136851442481560284, 202123, None, None), (11110039240218750451, 151305504345627062710264, 10095294300, Some(166514223418034017733525824066866), Some(166514223418034017733525824066866)), (5429386, 4303121616615056321115179526729734, -191273807938094786052, Some(-122145883502819273773), Some(-122145883502819273772)), (-318617015411331677768088878691496, -749938170, -102909366489680717529500725249679, Some(-2321878656), Some(-2321878655)), (-26889216, 3532394926190570221554, 71065906359, Some(-1336552716119877157), Some(-1336552716119877157)), (233829898607885574, 64821169190087661264747753, 1, None, None), (4708349632277756709196333592465, 6123259106557851180722979, 299133655350646511296271206211231, Some(96379809650331186168853), Some(96379809650331186168853)), (15, 25800973653151831264, 20299882662178552488808088952087255, Some(0), Some(0)), (-798344250336842690687646152534277, 47, -1973, Some(19017830595961280518154774034014), Some(19017830595961280518154774034015)), (-41351993, -58228286311910708145827, -12841, Some(-187513097731650760834146958), Some(-187513097731650760834146958)), (3574332117597135212708843172834788736, -40412202, -2205642857334789873796, Some(65489583261891584437099), Some(65489583261891584437100)), (189166883361950104046, -61531226962810185828727020759404, 4772057926, None, None), (1432042758, -49825490, 973537186332923146721847839, Some(-1), Some(0)), (-2529958834749538584, -1, -2, Some(-1264979417374769292), Some(-1264979417374769292)), (7516588598209303, -88, 156562000996532, Some(-4225), Some(-4225)), (12647852229929144109655986404449, -9017, 1970732485272374, Some(-57869692822112734761), Some(-57869692822112734760)), (460, 4891851141560730, -11555170942269469758978, Some(-1), Some(0)), (108406331712869189810296522377783, 16018695877606, -162897829599415289103568658, Some(-10660228335673045870), Some(-10660228335673045869)), (-3, -13862417066838104261643, -93318232762717883916803698, Some(-1), Some(0)), (769786821512970, -367750341090261501867670029644, 872, None, None), (8764374589524032968744427018, -282048878037177, 241278894, Some(-10245330533025392627106910075851050), Some(-10245330533025392627106910075851050)), (-1877940029466811904836783822, -75902690821989992562624, 101302773841775, Some(1407075996373927526228247204136521179), Some(1407075996373927526228247204136521179)), (-521231743023787, -18267417, 25711655092176061, Some(370320), Some(370321)), (3561499, 1981, -31, Some(-227591275), Some(-227591275)), (-594988764059153439787469563, 1522123675289617335464679862012967, -1461747608366789818577148, Some(619564197760257783122740222770521208), Some(619564197760257783122740222770521208)), (1089469698477980098468815419, -29023622258878432233469487768, 598777413733665558884115, Some(-52808199283855618929430509775942), Some(-52808199283855618929430509775942)), (-186420837287705, 395146148, 123234528165012857820, Some(-598), Some(-598)), (5905950030331881030360, -19553883754385047, 1419326149174705446741601, Some(-81365555351367), Some(-81365555351367)), (-613684057970556742, -46986808146698476791218, -6647302775, Some(-4337857935852776891871566043157), Some(-4337857935852776891871566043157)), (135213312779, 1, -31807165538661015209837740912974095, Some(-1), Some(0)), (1, -451288420757966728661, 3698484514358973211580649082899, Some(-1), Some(0)), (0, -13722048, 7030584670765296, Some(0), Some(0)), (-2034277687725181021811490, -160712232658455430451204349488053, -76131405153837724858591513783432, Some(-4294329106115462018189449), Some(-4294329106115462018189449)), (-200189961560255393571091625, -171882741082, 1226619745266072018775971563662492565, Some(28), Some(28)), (97672940408382019104507945851136, -91809786930158562730329, 8868476301954751645497967708188, Some(-1011146846697790316665321), Some(-1011146846697790316665321)), (-40118231172084156928, 17200237366108666514192112459474357, -611072246632918593548936062, Some(1129233249702449553299215310), Some(1129233249702449553299215311)), (-86054472338945188566851190, 8429888704806859437842347347881, -7543, None, None), (-128998751165714963939040264038, -595257932862, -13018619, Some(-5898285368108783446282127201928758), Some(-5898285368108783446282127201928757)), (492758163627473866721682, -2942132325629055935, 265619675081983101793216, Some(-5458028368864379017), Some(-5458028368864379016)), (-534768, -1371, 292773737342, Some(0), Some(0)), (-326719746127, -934001999832086177110245395697505, -3101242431571748137109524, Some(-98398271983074922566), Some(-98398271983074922566)), (312770766351152665420945069669870, -76687025102670214061793041792057842, 6576697759338220334457674, None, None), (2740054522655997978823, -54, 34032818178849613300108, Some(-5), Some(-4)), (637718433835496468, 659915576902, 74958310514246595735794180524, Some(5), Some(6)), (-31669795897, -12450461447452785748480949755334, 13863118, Some(28442632664909648406546208186653238), Some(28442632664909648406546208186653238)), (-10439, 244779598535410796, 410405123771191137394, Some(-7), Some(-6)), (-834063879064389683316522, 31390278960650983, -1546176998656821603, Some(16933053497483127106858), Some(16933053497483127106859)), (-525650791766372, -6583605042681028681179, 35503327496138932416175104, Some(97474728354), Some(97474728354)), (132804481, -16709356456706778, -132027244480845, Some(16807723442), Some(16807723442)), (35998632370477625945397575057417233648, 12, 56028709380180613848, Some(7710039963878585620), Some(7710039963878585621)), (-363, -2363502366856364067746267948, 915867304787, Some(936763824502274214), Some(936763824502274215)), (244240, -1924694033090859157003509491317, 121181501427, Some(-3879199920008360638006681), Some(-3879199920008360638006680)), (41050565236599, -417465122187, 134735687, Some(-127191092530238230), Some(-127191092530238229)), (-45003078981772008246850805398, 170137496519626474637801258423823227, -1984140716152650951848060102, Some(3858955733986680176176914408486652276), Some(3858955733986680176176914408486652276)), (17300870923200749137172141949109644116, -4, -34038634536658529700, Some(2033086363034716910), Some(2033086363034716910)), (483616330920922499599708144794218552, 1575121066656737325599224513, -87571761918762866581339, None, None), (-27014489609863044847724466505, 1239258088085671, -209800519951165639, Some(159570265852160963217375493), Some(159570265852160963217375493)), (-38711006212017702364, -6, -229559, Some(-1011792337795975), Some(-1011792337795975)), (-30820413541181, 162, 32454658261131958700842045, Some(-1), Some(0)), (-71179312334978937, -3169053050535832, 6789510, Some(33223460439738327990191381), Some(33223460439738327990191381)), (-474790241541030006268317309976343220, -583293, 5052213663761747585531836217417659395, Some(54815), Some(54816)), (848, 118587568353051690990378, 8532586956, Some(11785670451641141), Some(11785670451641142)), (-47712197843195020802295251052580, 439025695783928458214989592823, -227171249999357, None, None), (214189, -194889966299793630101, -2856421736017213509898365, Some(14), Some(15)), (484672671936679229538, -35969599869031941937105147183508, 152797721779325, Some(-114095170229009633176176223189971628506), Some(-114095170229009633176176223189971628505)), (-99305004800471082, 976, 167928913, Some(-577159007070), Some(-577159007069)), (2860275528973642634164911089, -1, 74786627831504479778135086, Some(-39), Some(-38)), (-1902852009691729780835, -6518900601209483070890792576341, -1959317, None, None), (38447557465921747027841445, 32950007, -3683031056626010637181811632805042, Some(-1), Some(0)), (115175636723172900853608969237649649118, 38573750798180844, 20931664318375907, None, None), (-9948512130, 250842579233343492755, 13970971567966795153195021086512, Some(-1), Some(0)), (879586626495479822285313852990874765, -2822302994283227630648002, 194422955619565819548, None, None), (351055778908391898283757927095854, -345011703569232955, -6578, None, None), (-6108422142391032352, -263612571654, 4035854019, Some(398987887600286418283), Some(398987887600286418283)), (-1093862878894, -16187557025716, -987518374399157571207248451158824, Some(-1), Some(0)), (-147952773965852389462195237902108, 1645592420393524613608693, 2957126979958945439, Some(-82333279924889544583617835680498316810), Some(-82333279924889544583617835680498316809)), (-48358871657717545227973360378110, -37718115662, -14753437439152, Some(-123632578644292165211212982288), Some(-123632578644292165211212982288)), (3495933413972871647342, 363961037, -1299648, Some(-979021666353133044204656), Some(-979021666353133044204656)), (202, -33910897715340794825091049724493, 10480128719735316155275873866555343640, Some(-1), Some(0)), (145647535141428298948613, -30963327, 1549547, Some(-2910355256941567869448078), Some(-2910355256941567869448078)), (-1148556779016292426454790328, 135254011813127588767394, 2161597459727, Some(-71866716653496161564373696310394159999), Some(-71866716653496161564373696310394159999)), (2954778171957209219, -333101094886813830687, 2, None, None), (-21708191904248417575811296778330, -215261721223026185155908, -8838720310876496101595, Some(-528689967505588160245976050637085), Some(-528689967505588160245976050637085)), (-23094301773311043109, -128721336, 10434395885882, Some(284897123969576), Some(284897123969577)), (3157537, 6406163539308962, -1632965143, Some(-12387097477328), Some(-12387097477327)), (355938566929780422912611347811566, -1179586966995587147968088956, 4079311243029478916, None, None), (128336207242251498859774849067, 14582513228021666084501781725915444842, -843434545555214250661510826316996126, Some(-2218861498626806780192389424497), Some(-2218861498626806780192389424497)), (37, -9344191699032412923827725002, 23051832132772992894470220442, Some(-15), Some(-15)), (-225518954493247500315892865972, -2340687793734021349104376208328, -20, None, None), (-3988, -4440303227703241895853484525495081, 14065885457849797419851, Some(1258927447201569), Some(1258927447201570)), (197571290747582636696877095, 2892863044137760, -9235350800936603824840883767211, Some(-61886840891), Some(-61886840891)), (-4242202749347996993, 31421773623652505009605090098, 627775957797102000986888131018, Some(-212332971341235986), Some(-212332971341235986)), (43, -428035264763523845442599936478, 252204775681272199659747540376962802, Some(-1), Some(0)), (125968018, -224478893225, -2035701088622619970720502805, Some(0), Some(0)), (-264, 67223535590652730444457923400877, -78184392489510051066015001730917307, Some(0), Some(0)), (3808028944079212118489647, -23512425334, -5, Some(17907199243474667263507157187903419), Some(17907199243474667263507157187903420)), (82565998967569941567827504264131268, 16139010876520561205762992955582638, 2842298683736911567323793437611015, Some(468822493213995552472506580578571127), Some(468822493213995552472506580578571127)), (16242809677029534721862805573358, -150085211548553984442805, 1436700808585235119058, Some(-1696808070234513201332477307653998), Some(-1696808070234513201332477307653998)), (4563200616890180116946807965817951538, -72490742383252639718196373053022402, -7046693800, None, None), (22422234967849051163821569, 397134546798717172, -1500065624, Some(-5936169711313297606715208279630270), Some(-5936169711313297606715208279630269)), (1568556188051, 33108301278737996225, -47963790, Some(-1082738266651182489429214), Some(-1082738266651182489429214)), (-26500928464411298588789, -98175181332336677541063064330, -3045564724287991463869833714762688, Some(-854269632400312585), Some(-854269632400312584)), (-25779299611, -123920412892895435938, -85, Some(-37583311198644455251060692002), Some(-37583311198644455251060692001)), (153445870583496513163551032470, 2287133768, 97341671717274984246161100211969971, Some(3605), Some(3605)), (-22997941390378661356, 1090201434037, -214268089734493, Some(117014104688933187), Some(117014104688933187)), (-7894641069, 168164, 29444734480964974530280989, Some(-1), Some(0)), (31375469790323273968331426449284913, 522545576844, -7318420343151051351169, Some(-2240252976952785791343730), Some(-2240252976952785791343729)), (-393749670913603444880380861477777762, -165871027098291340404733053053803825, 394340393295349566643542195705776799, Some(165622552100913145921790193653974229), Some(165622552100913145921790193653974230)), (-54828353917440982, 16219167120648967631, 49605137588335909728114578242, Some(-17926979), Some(-17926979)), (110115850306617498748300971, 420871072670416608075341, 2060233402494723612156647, Some(22494818296044892727073565), Some(22494818296044892727073565)), (20514218658235779524238900827811730840, -8823867574681999691328072025408, 21548795785783549847744982, None, None), (-1153768589392001753549114024860024, 2051768, -1, None, None), (-623, 12462850587202326, 535369976035287232212118648397621104, Some(-1), Some(0)), (1045914596606021886745706, 58920979978436503261007737885565756, -622584174940443818782451677969, Some(-98984708391717567678412249454), Some(-98984708391717567678412249453)), (-212, -17076084660681495, -8007002923545778031527369451899, Some(-1), Some(0)), (328531150479688090677202841763, 3, -5008003776063441720, Some(-196803655810), Some(-196803655810)), (-28990848295119, -747071, -976756205452, Some(-22173622), Some(-22173621)), (4024934807159302571, -23782671283, -604000019039661419217044704288, Some(0), Some(0)), (-45235696672485, 3545443452558276, -91112302961484867499019, Some(1760251), Some(1760252)), (3201686837963636663608599360162, -9977, -118633338, Some(269260143235312176690358285), Some(269260143235312176690358285)), (-682492046192134798014296980068, 28926397129929482, 15, None, None), (73180704, 4766426, -9590770182077097167691037150, Some(-1), Some(0)), (86735527843740634625608, 28712820254523961558837545509947156727, 8344492156081815617928, None, None), (-23699365933817589717358345, -98841428774618044868033608783075606, -21211658188110542729763787282147129206, Some(-110433572386341573405828), Some(-110433572386341573405827)), (-15127978818196915872715610874, -9019330658991840242790553611, 5452084619347687538176200406864725284, Some(25026068502191993885), Some(25026068502191993885)), (-1122395423683050319502264698352418, 244302219039099, -135182166895455901918330713147645, Some(2028401370849131), Some(2028401370849132)), (-286042850479062371209121285, -729339918451703572245, -435563853786130102070901, Some(-478971033589324595276965), Some(-478971033589324595276965)), (-118640927290653292368, 2275774260412182883008083, -4558520, Some(59229743109496516590639653944037645443), Some(59229743109496516590639653944037645443)), (18367896388877485446026, 46679036535184921265098776400794, 1916920, None, None), (1093188550, -6347870683038, -977449894916524408361510860390275, Some(0), Some(0)), (-59, 8760337689, 2469674, Some(-209283), Some(-209283)), (-48150396818992968, 31231518672089554209853573315, 1, None, None), (117057, -362381095731469097314933, -6255801487172098623619253790230, Some(0), Some(0)), (-3803558165417564714, -12810450399, -1383432938493903431667984000351, Some(-1), Some(0)), (-223838994871, 1692209390275989929469, 50, Some(-7575648980612906941937182855070), Some(-7575648980612906941937182855070)), (-6011892710417489685136038519016240, 2253743623031699071, -196621807808, None, None), (-99920215785910, -134041908973339634319753, 21368, Some(626801594392147239352697983673347), Some(626801594392147239352697983673347)), (1031127282591630, -941178853872431513, -320404677716108079730737984, Some(3028904), Some(3028905)), (37446363806396719171001342, -18, 93004402986078108, Some(-7247340200), Some(-7247340200)), (48662380523916130721480190853010, 481901165, 20216531710117368109023705553094799431, Some(1159), Some(1160)), (206123949814243433973947809756261, 41412906754629, -2272289543052074390290673, Some(-3756647976334706815024), Some(-3756647976334706815023)), (-916793797384174498, -34189867897365550422717167383733, 3278684077606711693, Some(9560255907476603625832099728478), Some(9560255907476603625832099728479)), (54373325638814731982385648355529409, -146235286388, 94358731729, Some(-84266699021520666631570768838729019), Some(-84266699021520666631570768838729019)), (1789583243, 257300997633228611385666249, 24730223224678795, Some(18619385259414261618), Some(18619385259414261618)), (138112185633135955206999299180589, -1127274312704008738887, 1172683208775, None, None), (-32270259740243904060879047485342919, -753769473, -7300267556752303250638928463, Some(-3331978792404429), Some(-3331978792404428)), (-53243006158906058137225, 1679951572357931896, 449544201953, Some(-198969693136135386945886616794), Some(-198969693136135386945886616794)), (47245911127132098100450085914, 3431916490205421840, -125596145882763582911, Some(-1290995200149980140474409007), Some(-1290995200149980140474409007)), (2732960954043743185223, 159414513773274259932200139229023, 16981635666483, None, None), (3742892857633055923224950808181214648, 485, 25697354616141544155837688048453302110, Some(70), Some(71)), (50, 48839867590287224845440, -121477, Some(-20102516357124074865), Some(-20102516357124074864)), (536267370642887316, -48196093648614446292304958454157014473, 1256574453734550741964434170583, Some(-20568612022460193468811756), Some(-20568612022460193468811755)), (-282369358559494286439204, 22675067, 455021529178327444273703509335403125, Some(-1), Some(0)), (-65493, 13053805357931282438790176885660, -129689373880135, Some(6592158237244344535667), Some(6592158237244344535667)), (-25674079692131, 918, 4289268415681, Some(-5495), Some(-5495)), (16056317968812625791308401140565, 79, -36729788004662002898850008343, Some(-34535), Some(-34535)), (-594687227536034369441, 16111788138709380404, 401953022436588196585734237029, Some(-23837299595), Some(-23837299595)), (-26788227752683695804062165070377325, -241476492225124689487, 3284461447407, None, None), (-44883556618004130877626142711057025342, -595549511069399132944063672051, -220425090683673736063, None, None), (-4718377881478, 12042317, 1088, Some(-52224450528075832), Some(-52224450528075831)), (33275603445234342665476107893650125942, 16120951835767797258743264071347407574, 136099069597803, None, None), (-21458017248740128, 451242344144608422747153804024701367, 298790117970211374084, Some(-32406580477947011414466775046013), Some(-32406580477947011414466775046013)), (-488756460594513452256927640, 1137795052169173774852444592781045, 4413525308036156290354015557618, Some(-126000111876009540063123839486), Some(-126000111876009540063123839486)), (-8319778231112152939903079017414, -13785486726, 1178818, Some(97294232331250748266751756014151310), Some(97294232331250748266751756014151311)), (464265033, 43, 1887761150191711701984181920045, Some(0), Some(0)), (772291205542, -123953956741150550, 11163591, Some(-8575067886607819643305), Some(-8575067886607819643304)), (-141170967447900547476067, 105751217707281506907972937075249, -4210368891120045457331, Some(3545770477265486697762550952480328), Some(3545770477265486697762550952480328)), (-6823995995716738104719262, 175, -67684764438933951, Some(17643546655), Some(17643546656)), (2212329368, -139607524091448, 330, Some(-935932804670539175894), Some(-935932804670539175894)), (284, 2630514, 416, Some(1795831), Some(1795832)), (290202304072477025947291289128, 111960154058348991190489734185903778, -3500291078, None, None), (302944208091720665, 117714221981143484, 697220603133, Some(51147142810993438788191), Some(51147142810993438788192)), (-14427931760565978346486908011041, 1391549882266432527, -74439997436757598760950587386962, Some(269709664617073590), Some(269709664617073591)), (6302703923161, -7623412656610986508, 17157022221997, Some(-2800492546841540570), Some(-2800492546841540570)), (47891224872375875565639924263344890, 2018736206400870829927, -68248479458014608431275786291, Some(-1416584668061754640042082239), Some(-1416584668061754640042082238)), (-54325658034382, -241825571501244615, -152278910080153, Some(-86271521738832299), Some(-86271521738832298)), (-431058103236161672044566, -1, -79813, Some(-5400850779148280006), Some(-5400850779148280005)), (-2582322978078, 48626808227623119929315832962150750, -12, None, None), (47448, -6653223334156752576207805712530164501, -1004933035371896927638798798276758045, Some(314132), Some(314133)), (-2, -327092264920024271616632972084284, -35, Some(-18690986566858529806664741261960), Some(-18690986566858529806664741261959)), (-1655, -3869059741545, 1093571090242955749049543, Some(0), Some(0)), (-18589975555081809, 5860263650243632291582267923765268, 94305853405756949989004, Some(-1155200383327565387047234230), Some(-1155200383327565387047234230)), (-725575284735030487365, 4693098113201251820517, -14042562434351115646233118, Some(242491070678496242), Some(242491070678496242)), (686067438777, 3308341689361018313387674, 28097373403182207889306, Some(80781412441990), Some(80781412441991)), (-9341579559153, -59447748, -67188306001864, Some(-8265365), Some(-8265365)), (73437755388555086893260511, 12927, 92913421, Some(10217359921639863074992), Some(10217359921639863074993)), (710651351966525207004591953, 267413114405380, -368, None, None), (-75013135462114005, -7090430754381808667769086242256964, -108262525830, None, None), (140618704070504634833, -5686967, -107, Some(7473775043287154501330107), Some(7473775043287154501330108)), (37416822433232634527375, 28394821599458, -623409653295446849161886516669448747, Some(-2), Some(-2)), (1494872968272165247536726742, -3422756801944407150239404610808935, 125966845, None, None), (68633433768274485964686237413406679299, -1610824518398922099, 161615, None, None), (484, 91, 4, Some(11011), Some(11011)), (33264438694, 78559411906885114330570518722365884, -1066604366854499303384274269, Some(-2450050667727818896), Some(-2450050667727818895)), (-60252956500957328629349, -787, 69244278, Some(684808595538441712), Some(684808595538441713)), (72828015940169910892824314972703, 219034564643209479943001414525, -453573750013319933, None, None), (-270781436652, -194353148050063626714867301269477764, -3589595802493573701843043, Some(-14661044736646027295056), Some(-14661044736646027295055)), (75388537911975115534115, -313078647685086722385401187511618, 4, None, None), (-46444801165788492685967018, -3165212396415011155, -96412370674027694065786722341, Some(-1524780060600524), Some(-1524780060600524)), (71, -88596220389561391, 56385322695265883087671931419106028, Some(-1), Some(0)), (61062102149144449, -3438900292681309929156451261, 1064744654, Some(-197217689859778239098495349514549975), Some(-197217689859778239098495349514549974)), (-639, 400, 675515841474592770704117845, Some(-1), Some(0)), (250647828028808218193400052882293377, 107128747853973450384856479494236377131, 31008579933954651180798, None, None), (248021, 61527308379675097505688748, -124919138812736710900307791, Some(-122160), Some(-122160)), (171472041967, 63198222644, 2459395, Some(4406257752598414), Some(4406257752598415)), (430882255465283860363653621488064, 4261265513334524647652935669610338396, 153120133836305959316383841, None, None), (-1069655420914, 722340049907852254562652147459, 7217598028861777723804699491, Some(-107051535294364), Some(-107051535294363)), (465307256408593898210283, 73031329213908665341433968, 1432306412, None, None), (202901172306372482, -165422811198555883833297752448949508855, 85372256, None, None), (7144939883240140214777539, 1180850288770478, -54737112796618568003160671597114500982, Some(-155), Some(-154)), (-76105575727951270064397925755, 181772, 420425117, Some(-32904463010998361123476217), Some(-32904463010998361123476216)), (-203293003199000, -4136389880582547651502362535193535, 6485568116001249114006023709706, Some(129656971630735877), Some(129656971630735877)), (-129546368459355, 98184129467360950308354339978864868677, 265704542014, None, None), (125459041421022733179354814215706053, -12368946, -14824703157339266908783, Some(104676369710657284568), Some(104676369710657284569)), (29964332284629833411568475204, -1642, -1206958671647, Some(40764803938334155531), Some(40764803938334155531)), (2658730104649770239, -980986, 5, Some(-521635402087991901535131), Some(-521635402087991901535131)), (-1844638437263459197071, 12861703594873176, -4572387461065061888894099041711, Some(5188797), Some(5188798)), (186962637566569835319870528, 567753347437, -9079768094049748895824466349042814, Some(-11691), Some(-11691)), (17166847291, -18355434929816106822083, 1263732, Some(-249344756957994581546437194), Some(-249344756957994581546437194)), (102764401890192543090466458745463744, -1161710741610322549513, 20505448180052336, None, None), (-60132323630, 8, -4125560323602719, Some(0), Some(0)), (411785452911093710581765736090, -527433726042046635206520724697, 66042602347695720473, None, None), (4879815213601836694495840689413, -887309, 262515375099786542763412177242421, Some(-16494), Some(-16494)), (-196153336700637966955670245586607093, 649678308817890315080829903, -21207830604135541058001999102820686317, Some(6008939359964827133822063), Some(6008939359964827133822064)), (0, -6951697529113669031805091, 11977066972333757790103619541, Some(0), Some(0)), (-206762486520974629, 48418178198601304332, 8456985369623381008594230581186903, Some(-1184), Some(-1184)), (-7494981821001, 18815616186236188656645875509894884, 18791750700847156639344, Some(-7504500432757173212366176), Some(-7504500432757173212366175)), (-370, -5257021162, -162, Some(-12006776729), Some(-12006776728)), (-11457798, 3468433228851813600018318, 372946378594, Some(-106558501687275005954), Some(-106558501687275005954)), (-4546315600301845057865567821743248, 299333177580601312838906, 4190362372413615230101109958812648, Some(-324760241233925547559360), Some(-324760241233925547559360)), (-75475745379614054942890224242, -50971100325240388955095181155824402101, 143084420887, None, None), (1469136253986541, -12940677148169271300407954, -14362949604514215295206368025, Some(1323656941853), Some(1323656941854)), (8695061915834528851189109213883, 268468178202941, -11729203318759575241303789, Some(-199020118286494103730), Some(-199020118286494103730)), (-275237112873759511, -107268248103436, 886259499801427853408845284069260008, Some(0), Some(0)), (-35911041791, -4502955667916106943353849415, -8030186591054958, Some(-20137244301855218453973), Some(-20137244301855218453972)), (631143973795124739719084352071, 36857748908602, -1408524901830037239080041141385613, Some(-16515537696), Some(-16515537696)), (-179391553, -6058329, 334707637679604011063610, Some(0), Some(0)), (1475131709059558691338, -708097019, -8078989685472807690800, Some(129290469), Some(129290469)), (937297166829466270832149323276056652, 509490397457550476853302856563793690, -23018981115066352466919744924, None, None), (39321, -55, -4, Some(540663), Some(540664)), (-124690274319732834983958380125026786764, -1102919926, 30517890781674397728187003384556313, Some(4506320214246), Some(4506320214247)), (-184960357708882411654022293402629, 376488, 19321368801392386925720, Some(-3604059105174965), Some(-3604059105174964)), (7187908775502216836, -94046335533600158237169, -8178765293013027, Some(82652632306649299266345374), Some(82652632306649299266345374)), (-479538, 875698081368, 6329478032785296373, Some(-1), Some(0)), (-3, 13259829, -18238546849604105182735351242580, Some(0), Some(0)), (-204072827328, 122091157664958230200894097254, -2472103420133564924473187838943182, Some(10078659), Some(10078659)), (120623, 489864258095834827797385352979, 249175952303808523125466667119250, Some(237), Some(237)), (-444054815644386849508, 124317038486721121610278, 9310942727585667055954740, Some(-5928892618265670845), Some(-5928892618265670844)), (-438355093, 97169648299315448353318, -25, Some(1703792408680948607970216349942), Some(1703792408680948607970216349943)), (-429787534746272338147279393, 131378472886545179308302465682986700, 638638610895356774481879253087722, Some(-88414369280735829674805882567), Some(-88414369280735829674805882566)), (-8372883391523124872327, -2595951092044409, 195470530635452, Some(111196279629082975583295), Some(111196279629082975583295)), (-2707410313150730805845083702, 863102381842826309684214786368551262, 17349818552608035475006886, Some(-134685690390402552938214522817040323770), Some(-134685690390402552938214522817040323770)), (63675928116617970844449039711228, 512810254306867730012267, -9945, None, None), (-475455644927407068362, -207731797086, -2126927762, Some(-46436582059834616200331), Some(-46436582059834616200330)), (-7950286908, -32751273023607001185938155, -740526710126180028338657579198940708, Some(-1), Some(0)), (-196460306407066561570361751504, -13855955251208878020341678, -24891840815212010934212148627679740904, Some(-109358935501127333), Some(-109358935501127333)), (-8523, 35242125829770224855626, -1252543542360821517227, Some(239806), Some(239807)), (-2121, -3048880, -20348, Some(-317804), Some(-317804)), (1036760884984343549, 3731391769, -7108176835967631152143213001046521444, Some(-1), Some(0)), (14478071265819995494917744, 5944278950951699575274126413426171462, -264554987, None, None), (-713181025789549168, 55634776626399997404374, -100802398, Some(393618285390277955551104583733966), Some(393618285390277955551104583733967)), (-290100752816814883, 3922504266534930130828320501, 1837887291126006658774355, Some(-619146476578435053748), Some(-619146476578435053748)), (21335929127286063521487713117595612, -274172516110829205702864, -1063556193759397309, None, None), (-20185141734007809, -5455305252767626, 9595484724356540949660753, Some(11475825), Some(11475826)), (-58741414396000813116447336, 1759570868734477, -4135152098590278607180251655, Some(24995376009191), Some(24995376009192)), (-4372, -42888365266145903009450230670, -1598592806, Some(-117295619146924828559073), Some(-117295619146924828559072)), (-19011563441204925860146610662, 119853059109632871834521062111, 4382158935, None, None), (22317778960401862907218746, 29014382200657, 33522086907, Some(19316714094302526794622508177), Some(19316714094302526794622508177)), (39223946290898800, -273679798867289632, -13072458993125483365592620244273974348, Some(0), Some(0)), (-221145, 318444819910960111619151118068576, -1272320821215617708557590, Some(55349624501095), Some(55349624501095)), (74512, -1, 36027996375396780535065368951, Some(-1), Some(0)), (272078744137783415089671105, -1339, -2769507330070097871790519307882, Some(0), Some(0)), (605201048693829097038958, 3627451, 99, Some(22175122720055343958414800364), Some(22175122720055343958414800364)), (-3237212631029848214202660, 105863, 14805130580353469379567682756224016, Some(-1), Some(0)), (75543093894247761637977084, -8769416870755205155738825651, 17182652677471057840266592195913184, Some(-38554517425231631664), Some(-38554517425231631663)), (-59, -237818258480764843485011, -24692224346902826685411214064664895846, Some(-1), Some(0)), (348735108299858255523803925236206, 225909355, 20262984411725305062404057, Some(3888001973504362), Some(3888001973504363)), (1529, -54332675288964058813677705461, -586408547468118388035675472358, Some(141), Some(142)), (-276631425465558630, -3340160475097836752868744322, 183696963382, Some(5029987085788549826808653012645802), Some(5029987085788549826808653012645803)), (12976087390118440608262753665056, 1082979, 396510338052622345439693552769, Some(35441270), Some(35441270)), (12, -159701651335435648674, 2193334287297586140873966852176485, Some(-1), Some(0)), (-842150, 446330001034898488870274474380798, 1, None, None), (-453395253, -300176807264882518158948904350461491, -52391180, Some(-2597741441872346592230862765489349322), Some(-2597741441872346592230862765489349321)), (-10467375590869029846079820488, 2170452243147544241045, -3153880467735694668192, Some(7203487596782776142734939166), Some(7203487596782776142734939166)), (-139, -15943122615960769422192119042, 2973762207396561626891097, Some(745215), Some(745216)), (-686338662697227642179768244363, 409602323120585259125198468, 31122180, None, None), (91473262445986944943236270870345712895, -18927489386636949833775194, 5090, None, None), (-28010679495606385672801345875197500971, -952461356197, -330901, None, None), (-99143, 50074624, 93452692867911891972882, Some(-1), Some(0)), (-140884, 2101306455266905, -226987858779666585259365749000, Some(0), Some(0)), (3928, 36116957633945567059412284312325442, -225042113422024958897369845162325706, Some(-631), Some(-630)), (-43693170420920603486626036116024551, -54937154527227073379423376744, -2274389173227319811915, None, None), (429448147224959857116528400, -601264, 586451545834361003492107054629144, Some(-1), Some(0)), (-3960431611557771519067593510495, 3139852188768234, 1, None, None), (-3721581179798869376555232747538, 3537, 93356276141990761393857786160345754, Some(-1), Some(0)), (12943171685809831095705, 107794096732440136, 122687132399782347, Some(11371995362793566683826), Some(11371995362793566683826)), (-9767834693895432185162066926, -118, 819594846750, Some(1406310079242407093), Some(1406310079242407093)), (-23161029998327836749940, -958121897824243702289769205318410, -289556227935427648919380752863687273, Some(-76638275666827724155), Some(-76638275666827724154)), (-166673276658764165468720424821425573666, 543689122188080696325714, -7735325422052586265296629358, Some(11714884964047032514488204692789856), Some(11714884964047032514488204692789856)), (2088550040198608813885174187758788715, -1493223564221463441818191130933, 608, None, None), (25792409418709727446371605555919902210, 7414628635752, 163674246582866666449251598365428570, Some(1168425341516273), Some(1168425341516273)), (2469346647421366281, -189866919585298, -1209037358221366586907176, Some(387785570), Some(387785570)), (-28422686077264181718739545566165, -48141265565741989866055448898197, 8820019982934088294700560007, Some(155136165358449586976639307160421808), Some(155136165358449586976639307160421809)), (-8336608771995076520, -118045, 437494382, Some(2249388844701001), Some(2249388844701002)), (35436022920644012902, 69931905475130708741976, -19548474227, Some(-126767366932316560398938316520111), Some(-126767366932316560398938316520111)), (-579091458567092630660, -24, 3928828883990, Some(3537490538), Some(3537490539)), (-4399373129, 15390400698293728796687406432384, 119645073314, Some(-565908093005393756696244737707), Some(-565908093005393756696244737706)), (15996730348265647173982285, -10522105742, 16692089, Some(-10083776107994129786314048171), Some(-10083776107994129786314048170)), (-1136233376192682092201012, 44211951282753, 225953507857490449892798650, Some(-222324916088), Some(-222324916087)), (-3753116024045267775028744320531171035, 1836007367, -4751, None, None), (49505600543794827, 16697820, -1491760475273233463434179903397, Some(-1), Some(0)), (29479617476313985936, -100051190366338, -7563294377608412360213, Some(389971707141), Some(389971707141)), (858468507316928825093151035989, -28, 2841339470241808361219403142343255, Some(-1), Some(0)), (23635084217180, 1750627889467792953197688035, 53546208755442052862, Some(772720208623737204460), Some(772720208623737204461)), (481184603935207460, 3344012547144990364538484635422, 1057608531638399704213832001002796, Some(1521439459796717), Some(1521439459796717)), (64680165, 3277655937043890233164807, 824848869835140129117547, Some(257015963), Some(257015963)), (2548831199434796532854628358784935, 17708152982951765030, -128, None, None), (25619371819267231170537003, -294681312713556856974725957, -2851182669568230149983, Some(2647866164163252917614776682574), Some(2647866164163252917614776682575)), (22773184065741718523384752103013256, -11848617119558639647288173954699112, 1612627216941824251558944887644, Some(-167323691274361973027878421942951591521), Some(-167323691274361973027878421942951591520)), (968404853670514419667743930587, -2464718313443771585246118, -626057158, None, None), (-1357, -14155457460367437537224304, 5151212895393357, Some(3729016090734), Some(3729016090734)), (-985191528749118867185, -295778629249291114079690138327356989, -67217236136749084903986161207189995, Some(-4335176759255565083821), Some(-4335176759255565083821)), (-3229914389592282848195, -8587436164765910, 64925754318, Some(427206182348394639964439919), Some(427206182348394639964439920)), (-16083446416141913321927689107854, 26280952937062, 9910645777667332237584882000, Some(-42649924920217684), Some(-42649924920217683)), (-5900456317243646575142570354362, 62043561619442669147, -151673006, None, None), (31300861184894727423323461, 898721587337920698014275, -2369739420681603729104483175927, Some(-11870824025470826153), Some(-11870824025470826153)), (251090195, -865, 948309549854631596372675, Some(-1), Some(0)), (427393898787885109853213084693, -320812579291255663622296, 11272508498018558, Some(-12163516139073090201079089965587027006), Some(-12163516139073090201079089965587027006)), (95578275799201852913429989036511957, -420167213, 4086989970, Some(-9826023078274398153972423074992716), Some(-9826023078274398153972423074992715)), (-1596057297680482119400122706093362322, -1389387565, -1706745994788, Some(-1299280718511492808409263162034273), Some(-1299280718511492808409263162034273)), (6706276342063314394726813079613397, -9044694890807093823033004702232951043, -5652513987305160312975886, None, None), (-1071863364768292, -104313246891505543, 840749893426277811904238362, Some(132987), Some(132988)), (-678244701547268, -45970224968855, 149839855937886221610441095, Some(208), Some(208)), (40623183211866992341113256, 608675384438712034096842, 20958425675335065695461333723236707, Some(1179780010275608), Some(1179780010275608)), (-4248694370894709127322, 531608624740083821660347874759260, -4028169891774405, None, None), (2048259394465926, -3921298602376801829439567166243473064, 407950835196307529419594, Some(-19688246739241112158658022376), Some(-19688246739241112158658022375)), (68362475607449230, -11556, 182, Some(-4340641583075182978), Some(-4340641583075182977)), (33, 9191860124449075959197, 142, Some(2136136507794503567982), Some(2136136507794503567982)), (-7586, -8908155674858948224440163017643594215, -82679754140, Some(-817337565313180807078329764514), Some(-817337565313180807078329764514)), (17105537261773401, 14567870945497653333741119, -1383982100835795418495354, Some(-180053816543167763), Some(-180053816543167762)), (45473763369103, 4742663426157338, -4008054651042264745652753, Some(-53809), Some(-53808)), (-92569976379951912261587291698, -27121, -9004189184171670250271462732704878, Some(-1), Some(0)), (90825494378740961923, -7, 1998609, Some(-318110476161764), Some(-318110476161764)), (-18493268161665841323635200070082246486, 4355743, -485978676193525379929269643626972972, Some(165751970), Some(165751971)), (4, -1537610505537, 5, Some(-1230088404430), Some(-1230088404430)), (-8550895705280189049, -123699, -7442866792728059267314, Some(-143), Some(-142)), (-71985461201848490108672475237953, 90, -140722754326, Some(46038691746735930142076), Some(46038691746735930142076)), (10573135563, 110163954740883220399968441400729, -4552435, Some(-255858332437817306044100225890480441), Some(-255858332437817306044100225890480440)), (-522064880495465, -897159450496799031359, -172747773759653067184628, Some(-2711325484059), Some(-2711325484059)), (-223603, 133274393, 473759778060789423688055276953145, Some(-1), Some(0)), (-13, 537355895963624917, 302551871020591867587, Some(-1), Some(0)), (402, -17, -2233353, Some(0), Some(0)), (-27523207428875108522095707201356, 1025996083, 7220437403891, Some(-3910940769101452483653741383), Some(-3910940769101452483653741382)), (-1269045452548351138, 53845295510403950982278846066483, -223904428561, None, None), (-18725368088839735330122103227, 17179886090017297857780208368, 454450222343010996857402392396997, Some(-707887629807557494004294), Some(-707887629807557494004294)), (79622049830828739860684786985, -2322162347535329507014144, 1147487863161926, Some(-161130528771998898424426037985787323804), Some(-161130528771998898424426037985787323804)), (-214379085392, -74045636184680399694037796803369676, 8782038897573749, Some(1807534212462449486389550158219), Some(1807534212462449486389550158220)), (-20131997470434806414827729923, -1073599090192749184059298624220242547, -2172908127670160802369348733542930344, Some(-9946897382723772851949781335), Some(-9946897382723772851949781334)), (312611133, 506947280688115, -17626748551243252706926991578485323182, Some(-1), Some(0)), (-149441, -37564207644164674798872126, -10852599, Some(-517261602916648184146328), Some(-517261602916648184146327)), (12899047459196453, -93378919, -4409061787, Some(273187169075492), Some(273187169075492)), (835926557761466556469873587182504, -10389983908327051912778908416400523388, -44639212900890547, None, None), (-17637842, 9352, -26758710537306700716899501877812, Some(0), Some(0)), (7783628414861550029443788827, -106713316, -876122914886, Some(948059666684757910417063), Some(948059666684757910417064)), (66408257039946558236881, 4152573245139759, -25803748632948, Some(-10687018981743227189458685), Some(-10687018981743227189458684)), (-1360243046712326175410559769303883033, 1625500, 71446478, Some(-30947292775311978263363309595239417), Some(-30947292775311978263363309595239416)), (-39450, 1440, -2094484, Some(27), Some(27)), (-113069921193856574988261239945746843, -4526570, -8482172195874422810658478745369, Some(-60340547370), Some(-60340547369)), (3918, -54503203114, 154567241450923359260204070995799391, Some(-1), Some(0)), (101331314, 8846695176629424240169848999655, -769857601367035776867542322829, Some(-1164432546), Some(-1164432546)), (203936720239109297, -241447621719543572138, 1641, Some(-30006115833648291950389458899930511), Some(-30006115833648291950389458899930510)), (-23501060542020579909, -3482439114, 151973162535910352328225409910, Some(0), Some(1)), (-1541035049, 497709099503429578383149080617692947, 12899671, Some(-59457885905850891545352240706293315609), Some(-59457885905850891545352240706293315608)), (-2950465667795632502435, -186273667484, -857, Some(-641299954172604032702497094894), Some(-641299954172604032702497094893)), (-29, 4825391958432078370195611, -852133608178206207428729654798739, Some(0), Some(0)), (98592342697376798419, -37625082756018437249285617916200835, -114818297, None, None), (-481923, 178020176166897911499, -16223609901149354148429298228212970594, Some(0), Some(0)), (1846843, -6720678309535212, 28, Some(-443287060400604983419), Some(-443287060400604983418)), (243743050901251, -234339829211828344191178, -459449231308617726681020670546039758, Some(124), Some(124)), (27097665300760097, -458895151269553375090025877, 240192347767010575, Some(-51770954956925260972861337), Some(-51770954956925260972861336)), (-3756365703887411644469206602352429, -269731604028072855351365, 299, None, None), (-34434879795035359545601471401603, -2707799997920799685916448348281, -112269140554405364155036975065261999927, Some(-830528914508029975140105), Some(-830528914508029975140104)), (33848463560, -474764713881781851918, -3, Some(5356685372467106387505246369360), Some(5356685372467106387505246369360)), (-103, 85505318410620494, -459235805448416248751105066, Some(0), Some(0)), (-4665453398838507103733, -522753303842414474831774331, -293594477323382708696118, Some(-8306972257789850171849310), Some(-8306972257789850171849310)), (-7064057976, -86846213570, 1, Some(613486687654557934320), Some(613486687654557934320)), (6, -1938257192862073, -960162179951597359333337872, Some(0), Some(0)), (391352701, -349, -2938, Some(46488118), Some(46488119)), (-185348610008428322069804192479797, 3928804137750506305124503599031368, 6529951772884006968029814, None, None), (-3079543608300033728, -1016924534947593703181323, 14386860741350684704657386856245, Some(217675246047), Some(217675246047)), (-21465606080021, 31910990314654654836387397426139578579, -12189010805499288464160710277, Some(56197238532982297232089), Some(56197238532982297232090)), (-1870037058577033213463597367839457, -49117, -5089441272469795276809554686862, Some(-18047288), Some(-18047288)), (125576921, 4182009626226481696926847235747, 41276280, Some(12723140080789315804692880223277), Some(12723140080789315804692880223278)), (-3933904382659515340253484, 3311209260880054989529968803424831001, 5462382363, None, None), (6815548317132507400125603503437155939, -43448692645685312435089440734065, -246556950, None, None), (432279042033011612184685056962164, 3423695152545687129809, -160002248686723615576141777, Some(-9249817880080327448214246760), Some(-9249817880080327448214246759)), (-147659534, 0, -4306826274595839011, Some(0), Some(0)), (-131254875269591715017798735566837471, -7252362785917661029302903, -1067264926794237541812527, Some(-891913478066513460736849863882714505), Some(-891913478066513460736849863882714505)), (59816690412, -10380313235201676965, 123970508296953974041243542, Some(-5009), Some(-5009)), (52841722635103195913, 32521395385049794, 109, Some(15765931693975470782575058624241210), Some(15765931693975470782575058624241210)), (-474060154270454067652123391911426, -8261569824216332335222, -224739613802082, None, None), (-22, 16183, 332686133293080364, Some(-1), Some(0)), (816290375, -328840871638487258592342049, 15094707468, Some(-17783030177574795300369903), Some(-17783030177574795300369902)), (-114650591253, -780999056185, -1317933588448778473, Some(-67942), Some(-67941)), (1566423952, -667064001109679819790455974020228, -14267348923227620886040965144, Some(73237504351913), Some(73237504351914)), (-9113052, -1419635700730637152125, -171, Some(-75656221998916575207292606), Some(-75656221998916575207292605)), (270249301771909, 8910574057528965513395622, 2098485984273289425863, Some(1147530379273898981), Some(1147530379273898981)), (-2149024137838, 1771805400, 6824991111, Some(-557898539387), Some(-557898539386)), (226033846092506517129090635028491726, 1738226478259081104, -14063483401, None, None), (-348, -7623041450084356904847506263, 456763138584104691, Some(5807864515627), Some(5807864515628)), (45991530891358438611804431397144623, 22032289403, 62662485125836686873320657491608661, Some(16170739424), Some(16170739425)), (-537356238527, 130640112166915, 13, Some(-5400021482673754736748785), Some(-5400021482673754736748785)), (-1524635340667952562362, 145311024142855987843746, 213348568277865066151055299393285565, Some(-1038424231), Some(-1038424230)), (36, 3405062146020828484728959, -46251756085432912971, Some(-2650327), Some(-2650326))];
/// (a, b, d, floor(a*b/d)); None when it does not fit u128.
pub const MUL_DIV_U128: &[(u128, u128, u128, Option<u128>)] = &[(340282366920938463463374607431768211455, 340282366920938463463374607431768211455, 340282366920938463463374607431768211455, Some(340282366920938463463374607431768211455)), (340282366920938463463374607431768211455, 340282366920938463463374607431768211455, 1, None), (340282366920938463463374607431768211455, 2, 3, Some(226854911280625642308916404954512140970)), (0, 340282366920938463463374607431768211455, 7, Some(0)), (170141183460469231731687303715884105728, 2, 1, None), (170141183460469231731687303715884105728, 2, 2, Some(170141183460469231731687303715884105728)), (65718974962080983806, 78861621227961645719007793003732737, 80006723344, None), (23164982963424742421312840898073, 38931096114134937673155368, 1091164026623621003929570566521221485, Some(826491852945277856544)), (7249265416762743572745, 184514385926280, 2391294719426381410526259, Some(559359641421)), (10, 102683943, 1318292281418165414072493555619, Some(0)), (61301878538516238087742706508, 8630778354257075982639877279, 62137435776427901209265046, Some(8514720952907943895323187596298)), (532386285890255338191945, 157224504787481360774300, 14925433992723958210188, Some(5608156533039310759688180)), (12074, 62370, 12261304644055933279315861282343518288, Some(0)), (23829406521954798170042724, 3026, 4848387760541099316799346131391, Some(0)), (62592895319, 74, 18638380270256534759635, Some(0)), (310095094400001584057777198776, 3159794235614958, 4645656141975218491507592345766585426, Some(210914596)), (86, 183192804649072981017369569818298, 6795827387471, Some(2318272713763435957516)), (912898091930107208, 851975075817877186762, 4768667563448155050938140241226, Some(163099316)), (37311186825519537, 3207592, 164626561277, Some(726972995388)), (144938584275190173204075612003317338541, 12322, 4520304981020341701886274010508899, Some(395091314)), (43, 9632403143869330210896, 2865641247124412, Some(144537748)), (11904560698, 80125969885885, 127741887373078272012, Some(7467)), (1239319782228640021379985, 211050634, 581961153644228352, Some(449444476027683)), (443966, 1992999369, 772276774072596630273291604920, Some(0)), (119849883036234384, 657797557666031376742403920063, 17340, None), (761416044648018015273814329937, 761414624343545818599777, 3, None), (0, 72218930378293452321679363333969, 197, Some(0)), (1097945303074906415305505546, 7212075105781718981933182931280379, 56144025836879, None), (22514371604292337883, 808796255850818032143269012395843860, 3617352733893722549670524367536069, Some(5033940783757864112092)), (6536771619984473, 9066, 126564364169330421808013, Some(0)), (101256773677101888920819356, 1808981133224328655690440315390, 149287032455275966254122556820, Some(1226975914655671511907093940)), (962298085550, 2972636178561217477802597489, 23103633158208563629, Some(123814383827756946726)), (2351369007874868692123442984442306, 490134018625685320, 35430, None), (1578201531, 267968657704864786, 1130860785610123448521, Some(373970)), (36823529158049, 42612308899538260529593582482415232, 10494389464101298239, Some(149521380412034589986280214044)), (7807878, 8956502443600355579666517967599, 114949427105715737065603, Some(608365610400299)), (289500084681837872102, 310642320168, 47596919178893830636638412329561, Some(1)), (416600372773, 1782619521752114394780, 3, Some(247546652424785946322095761774980)), (1313722657144889, 32297947609725, 20, Some(2121527277708717168527522276)), (203536665444, 1909971928515916374957973832292626, 8026425582581, Some(48433678655844240697260460268769)), (17288412103, 1413340187, 1885532593328862575278881, Some(0)), (23607517509352752115097762853016, 179, 65265276662210150323387, Some(64747226247)), (129890654879481851569159534356666880, 436988585687972478584, 1113466389943610125, Some(50976602511319519825166084802487982712)), (2619122, 14032771939028559, 4088112098, Some(8990345867588)), (0, 2479176317985073190648156790848, 3, Some(0)), (6813, 2781926099148, 7451777770958769416, Some(0)), (4021754214026390093491008472666583352, 1734307855438509290438872856103679424, 1833287704195542978067, None), (78, 46796301085976, 36637513972503577663911214076876459843, Some(0)), (3546, 7, 28, Some(886)), (18382773982121444704, 176138344488721084788818121444259011, 36830916578739141639469367103389923, Some(87912864438196172340)), (1105053913112, 32851809364943, 82131163713761062274450388, Some(0)), (687549, 1402, 3833361559670303389336590797160126, Some(0)), (97346570, 2983872706550181512604969, 35850657408103652448609483601978874, Some(0)), (14463244779947736614, 78569238412430788763676192319, 166081199732032520762928455355820, Some(6842232168159638)), (5652280273839881621068, 31, 127169616524311532117, Some(1377)), (7170515020, 8973593527159349811, 15224001245, Some(4226568701247560608)), (69005026097, 243068804140704578482722984957622523187, 8561797993847796528046327815, Some(1959047525431966519865)), (8, 575741769891487302374, 329749988887819094829899, Some(0)), (458262879084832474846775, 610183911506348076, 26, None), (264804271847028880770184133704129709608, 134177147686365328158894462363663006357, 3970552045018753363071957964640, None), (19305216598001831842168841177051395817, 6281085532212813808, 415874890289640359097925838537, Some(291572584691258456644840224)), (11161501334783, 53627609939645, 540677914140, Some(1107063233523500)), (319449802375380865607812168153680328991, 2750888366213740968057587259192, 642730563669, None), (638957569823581420006285882971, 33662912059730842625255382879203059685, 14089726717370368820218, None), (270777991764774456007696603528439, 411809081878744185426465039707960998, 12099531440535983789522, None), (160140165672375493561, 832341333049, 1020474381125, Some(130616977197887739579)), (280936752248065827689009116, 59014637, 29283261323501460, Some(566172608669535584)), (791657968543881635625055897903100891, 38576871506216088040397745, 154047954999617992682215968681132, Some(198247926948884921957573461534)), (835189273234, 230361299341552113141894353, 2267485434351711, Some(84849623844802297442426)), (1075609349386409224728813544961209164, 141373, 889, Some(171048504556585862010783529012149632330)), (2926860337798622771247757130605077, 221114368475906244132, 310476897, None), (52, 22315548279494, 6341439694579227243, Some(0)), (13154899888151752925269857025, 461051317546343273170742271, 78748136903369, None), (596127272067379, 489249895841, 180345072, Some(1617206406210781542)), (126, 3014, 1179803, Some(0)), (1682952482197986082940596285, 297810, 617486610355346598080875095970, Some(811)), (1795028138934717424124758226042275, 516925174178785811750389574681395, 145877645, None), (3453788722172290, 24044416751257734160165812, 10027345660125180, Some(8281786448924284923080299)), (13041, 2104628523278329057586822600, 136281501486476990019483301902217262593, Some(0)), (266721553220976805113923142811693572159, 2514712523868246724448, 920106659534218, None), (2971981191922775890074, 3211351718669786, 1466690, Some(6507221640929907119112632812278)), (2052837582741785776772768897981116, 2081518293610292269363626773592832264, 323772777106903, None), (177722402, 1143064, 32507059646192645470657367662, Some(0)), (5158911718633955, 568029, 169289, Some(17310111493504757)), (7463284600703291518276, 5459934, 24087, Some(1691744150083294942190673)), (235254036942667, 4746859, 58768, Some(19002139643132850)), (6800, 930, 37749, Some(167)), (583307218804063431853850916213045, 59682, 86473461444658471364777188338088963725, Some(0)), (135758280271323659038199262913499022, 858654263812, 448199137457430323443183770, Some(260084003873899181675)), (44139639814292, 512, 619612260766331657459741054753601, Some(0)), (24730107420, 529549983214188697239501614184899, 113979469511365988044426, Some(114896375858638055132)), (68322053565805011752061758732884566, 1948451636075, 736837253, Some(180667055728107388216892090358969474534)), (13161267920894638700857852975093253, 1716676601508453965222730737096193404, 7655199343428128849762106476151, None), (7276794955643404, 444850776740, 1260640986231154329612638182, Some(2)), (154920814225207170, 250120, 6122753029736396342990305898411890557, Some(0)), (144115865247461514707647021, 40069635925153023576669, 2066022021, None), (313097967100809037905273325, 1, 30803376370102056658, Some(10164404)), (88177767655, 709694154979882571058438, 4382439, Some(14279547599847401538270121590)), (107170666362493352671509029454246885525, 6947034279203000965327917280080362, 40, None), (503408231647770154558, 0, 27370195326448681960, Some(0)), (2540077, 104054625324010769757, 15112073007277655834949899994, Some(0)), (2176836024721, 4059765954630494443399591052063642984, 15472833, None), (8447828137896377753861, 863225124955238081, 510570266666940481839, Some(14282808804244377088)), (55793892556887932844601045842, 68132755428842313136112, 62858198589789320443015422722478691058, Some(60475669384185)), (1241554196985574027996981266782078, 2156411008325881962155423489414, 141028790889221503904969097458371404, Some(18984074960381101493480876664)), (143605042519079, 740295272750326013216026265438073, 7555015776740496805383536163010, Some(14071464211534675)), (1730086935836184361, 2, 44758370986825741205746, Some(0)), (428318001323471201, 16952066656062708378512194, 1515460296719098438582485129168954813, Some(4791201)), (2153510096476, 46003602148, 7141637479047212140690634191289860214, Some(0)), (303822556494464734619275168340020, 421407752906048, 7201, None), (440542859222349937050021928386, 594, 50033821685338, Some(5230111343958355976)), (7869814364431883340624834147600, 13165436977562865679, 837944253, None), (21632683507300084412590033329929005, 723480430187828636432261123717, 555836, None), (35447642146006319, 28, 18214111585973744, Some(54)), (1, 1301, 3767819510131050350631, Some(0)), (1, 8422112358398632152033327656273963283, 36775436544965791708477491726452958, Some(229)), (86368884956278673553767, 4001107227898178303149364755680482783, 8227484269586736358, None), (24136821289231038037059784151, 7433792675471483083282350245, 548134885781042672446090, Some(327343013487238616100841296333142)), (35097497, 6960998159417016439525806, 2990541963143849484608162927464, Some(81)), (20336504420130973424824514961, 838450999, 3, Some(5683720815742243459628855322913632013)), (32634, 2072492297404921563866250626976002, 10081739, Some(6708536457203683840179876007575)), (375906859951918664022934004287, 771281278371563, 8470152887869238043718433597402061613, Some(34229597)), (34898, 8991720576557659961695997281, 247712016826969585838754642284301087, Some(0)), (225, 60971879202859346, 36571153627848853335740355881792, Some(0)), (156538864601231106053235378440, 42628662378991500030654029170969630, 402, None), (1651530997080505786, 562298961830281, 104, Some(8929366972008627352012382408710)), (392744665462735943313458950649003654, 18466271726870138506993567954863, 151732828531442616938913786955283047, Some(47798026187923443907760888282561)), (1049706258109412994364342968, 13357258318374118475866399, 71588674831020687476, Some(195857762154100996837150756731342)), (772036, 9381067139144167163781791, 1263, Some(5734379691081794331320220741)), (29304922847654158567801799865735850110, 16383764227622850261578831349797494, 13142532, None), (1118823402277, 35862796426199020, 337493250249006832212754468, Some(118)), (1789281847502911453974967431054201, 561317, 941761339502351200273585526364339, Some(1066463)), (46244748990141319111460497124888736015, 3081364885315043783349450905587423190, 21407175686, None), (74305051966146555349, 49843784116, 106, Some(34940046876686511747477368268)), (946769089922549, 9, 8909822366408687247747641, Some(0)), (8254118166005152371983285, 110385490789050, 7422405697159448791841, Some(122754659602341990)), (3203074009529971197442632506223012, 58, 49676, Some(3739799753457169044441434200840)), (19966588723234482045648588969920409, 9, 664186336914063, Some(270555548227667126128)), (2652471, 15620266263554086385311475407498, 136412149399916, Some(303728835434515074730653)), (3468433, 121603377703720903, 1, Some(421773168139049802754999)), (5943406547489645331217566129562889243, 739802, 3435974280610939381642779885598, Some(1279678976486)), (29205462918051422905204, 6203589692980431374503, 28, None), (125507042245174516041951729357331, 6012868686839239, 79081624, None), (31207, 20980749990429381114317220771769296, 2393, Some(273608969891905431021520062108067037)), (3008753588203875510396504949982610, 5961220368948523383483168687510, 357428894830228, None), (1655916399985110732445786171168362, 36713538017532450144001925242013838982, 25812457507477450120931779, None), (37341788471997373503762839735349159422, 121515, 22778484, Some(199204978969397649172339189493073951)), (1502722568568521095928578157, 6072177974619388823703902953736275, 3055529599183975009913826294064714896, Some(2986323184452921817395623)), (11448336096752965, 13283, 2496802289160018646999922038247598913, Some(0)), (7509, 35764480322161896219301, 90995, Some(2951321311490891573281)), (16159796021019742227286005418, 288731013463711743103839375, 128400153883320016, Some(36338229678103273184720106139273571979)), (13359704273, 716473379919, 2507022227873267421425311712351, Some(0)), (12238459241800138980046419175892161, 716866783472421942057454352, 14673788629469047191142663, Some(597892278052055737346875673187064363)), (2686577301254939, 1325026153919740224230446348664069417, 243923818568828291, Some(14593840034057346622821760403036913)), (17670534269915335614143507654559, 9652038582112290060791233004, 30380648488, None), (101952714013754301429462, 35967853364635833182250, 11756158140172493925438, Some(311923353195005815726560)), (10408512985515738571852424846277372270, 107558988267721494914206671, 3778470382156786427021667, Some(296291624086907994209648619344679384189)), (23022369770753931, 32594153196447600654122884420032605138, 49806518331772508554990238965926, Some(15066193590458763114507)), (59097315177673178, 9290231024399851096399063590182060569, 329573, None), (116588416374042046, 1254293352352947478580, 2748112, Some(53213288111735792157354401239325)), (3, 66233389772732876348359070, 2087790950547, Some(95172444954864)), (139166927213755825184388206888774300, 17155469579274392151988049620704471981, 3, None), (5631956540155095227788786845670489714, 2658277886479807, 5797541823911080159154085, Some(2582354036078314859227680584)), (60032080225426235, 71945216483028, 20220602324287208577545606076731, Some(0)), (19537525004922046222193620607366, 357144023683464966766439, 7175516437766269600, Some(972433183533521641740020254209385986)), (317810022103379423385187862958629905, 12969194277069607761, 76892153, None), (25658015738543666, 103779765985383736657426963095, 8575702136396124044373465264337, Some(310503189901412)), (191028144325136, 598278814687855642692, 6163, Some(18544230368142622660348946274591)), (18637889418474840, 1247399002514208000960506209895, 12827856980215635473593820, Some(1812374795371690785780)), (396109266755983001441950797, 264, 12, Some(8714403868631626031722917534)), (1691644291904533, 112752, 25357721143678778962, Some(7)), (10410700922386, 16796785887846799950967326384030225, 565817351112990811629436343812, Some(309050816472411298)), (26, 846994406846247, 485049806194091122799664967222, Some(0)), (5112010761018723057637882447853442187, 1421, 193224391171233056887794341939212, Some(37594463)), (580198575, 28103968192189607, 398485112357, Some(40919677526987)), (5112334054021310966889, 73218, 653924923998437425584382273396, Some(0)), (344955319091168131703942741, 558262704, 6860595429154595, Some(28069821516752622619)), (1291880963, 304203398127955805787683291573946, 288151299676858014306645, Some(1363848017906330807)), (1534704047946914561, 6506, 169588207291351993405914115786935, Some(0)), (1021977510914609795291237479, 86644722681205533915144618585350825, 47978824508761615459784763598341, Some(1845584149387711005877903522401)), (832441882635364262, 569130019247418012856300, 27264, Some(17377041691850856401261007508089405866)), (1940427508, 2, 44337839312736263908297302640252, Some(0)), (8873851876177440144, 42787638741320820330586439, 8983518927355236, Some(42265305098394671314102083323)), (120703340, 98057676181129931135692468047815987, 7932589112869295779608094, Some(1492058753994844159)), (296023033761070053278602, 272236706133015, 1628420714031, Some(49488645628393706468818375)), (4231197323051289245278, 623158041328175356393653683229515, 19769792002, None), (98, 1223, 517777260977, Some(0)), (15811, 41716753069398374907579424, 19804887906416346702854692869, Some(33)), (112662830302730463569, 7990, 5867653719818584893616671876207602, Some(0)), (110146284201027040712637669262172027183, 995841, 188174928748592116670061657, Some(582905419624640788)), (88559458924538002818653652227376, 9383, 17083469770672544, Some(48640786341627776441)), (3, 2808235024936917542918508239183614, 56949469114333293293760007545659, Some(147)), (11, 188363952116286068349, 77673743986917307824873570980912374622, Some(0)), (27129276421343286158361283151, 728467128182786, 251746175976099400, Some(78502825346626826686316141)), (259257148941505, 58122086120985740, 15879646141411, Some(948923307488793311)), (8013523318688364265042207692, 239626182403, 1396288852956727302560330557931, Some(1375252689)), (971289, 2448243739119644431364216071, 1837612116605151487, Some(1294044696178247)), (3272874169279562705384099729335417392, 431603490044897800458231505, 1087078464620230308689513534163, Some(1299431420925387911440978283983727)), (15414346426269177448480003, 7777333467664622417764007024798880, 18780168621320, None), (8971797867879765042322472379661057683, 167255174982, 14122, None), (47831251308775058897978659055875, 7633974, 1272659672988, Some(286912940378914423856490586)), (16201897502135885, 441, 3649114832878201569369050595357360, Some(0)), (132784, 46943, 5693591171, Some(1)), (32, 33853202587043114917206214550466267638, 1962635598639725590709577387872576453, Some(551)), (70375892365640930805936, 39558965376199196873883728353, 16280, None), (31124696875502860179606003428735268094, 275731487, 1144949663695146527321509996041, Some(7495577512298139)), (3799165583233276420645, 1293912602297828, 4688236741101603956441467950456356789, Some(1)), (6185372940059356674701, 8629975546922824693, 6312692875, Some(8455918619565408015460009225754)), (3636698022108399409358392141, 2675073162, 259656656662025745096626474559359836, Some(37)), (2590160700662937467096324007559792, 902476, 2109645973315211487894116, Some(1108033242572032)), (13058600563469396680, 250708927768407873319537747844, 11107709065094014, Some(294741942396708736403379557040390)), (4644113319021671521045271734, 467897797802001996, 296005467867761419, Some(7340980591898887854603875540)), (15375921813034256190303434397538, 8126047132681, 158542982567409454263296399, Some(788085750235018003)), (15, 3734080, 633315258331, Some(0)), (1138147870604540940606, 4107375757414344448116, 116741499185671173298480575455, Some(40044037507509)), (4356858478487345325, 35, 165, Some(924182101497315675)), (173390865689220446684058875066519, 5871, 81932550129896972658559213462238952995, Some(0)), (53026500219, 2784600252, 3168682821265299519138865, Some(0)), (1253700964622742056673514426390994, 6214075, 125491204435270999253104685922121720, Some(62080)), (304861030859469276805978, 500429825970722, 55342175903657426716842566310, Some(2756695957)), (754805332548289297, 502080279127, 252903, Some(1498491010594548694337776)), (171, 1586934015348011, 2651, Some(102363529469826)), (46866572047148408932462560929, 8184927285070510697747052494791, 102, None), (1131692301326101725692334697544683024, 43140895334670227777257489919, 8401967859860, None), (458634968523, 104107978580586948465912171887336, 8713379765605741477, Some(5479797824005586941263511)), (4088944652386383149476064, 44271841617836484430377715093, 228186499577993512, Some(793320859776261804755321107480457053)), (9122340676043432, 384035803289884657204700103985, 313804055280966554528506116846267, Some(11163990300481)), (23306368254920, 54898411193712176080083287888738, 320881733514002449062518430837775366436, Some(3987396)), (1079093844483810572857237482831998, 31758251, 23, None), (250873947876700917738990575330, 29, 1, Some(7275344488424326614430726684570)), (13762384739484487976156502901, 243, 15448800220729324464871593803, Some(216)), (1012, 3, 4373234517179133259339799086452023, Some(0)), (2194580, 73, 16973208759739500376, Some(0)), (4636350096257519565002785, 337768, 14643, Some(106946028772294602774831706)), (1517183286867602642923, 260320528065337, 8589866729732868, Some(45979054953459151911)), (7578409365979581255404823, 2082356691803330, 11289162635307404448679418207030867, Some(1397885)), (1395231, 294477933686670982370, 17889552303947694761747, Some(22966)), (3623321, 17016371003135, 84764067014690045180, Some(0)), (28370833694396007331239, 90826010138, 694920, Some(3708066581406095314070448020)), (33918394378688534468275423412098129802, 7345817183432635, 22341853200402119650984224952038333, Some(11152088505215433790)), (962925371508, 13, 3308535246995133910767715181221399, Some(0)), (534256056957686830754998634, 1044378054997634644977047370583955196, 150118441657430127916562506, Some(3716833824517375234786029288601162134)), (21987213660351560706530, 235228, 673902792353432821, Some(7674709696)), (257211, 77398208070111741369464313161470347, 186, Some(107030486537212425319254222863306179689)), (45009777808063712950, 122133804243711277, 1286658741786756095216399, Some(4272473510908)), (13098071703084105738478303982443080, 27822477, 679853810105373337, Some(536028177362020348462438)), (544, 17416599673084, 192394, Some(49245975561)), (7988631053087, 383582663600132513631683898, 28074196395, Some(109150065588612659024829313228)), (3796290186338546187349899757, 7229158373668462698274787962868, 24787, None), (2546044166285651530675, 19082439294936881748695399076555, 4187788796684940060762201256712650108, Some(11601524242061557)), (118205496, 292628380399078026846602293827561243, 6875487395384085, Some(5030957204862620638703720641)), (312982101962097826166714038097, 30939452154881482187113169685, 8861412138271560830811675, Some(1092771063786606777948785259987299)), (316712767, 24082489700592217, 43982672441397590860822184842732, Some(0)), (78297110, 177974597349016650944440, 856881749, Some(16262333329078368677949)), (18835672044448602481058, 11, 879324818109053915042936005, Some(0)), (6870622, 7891981798, 16227446350238726, Some(3)), (89649782850928381, 1376632398630107, 3185806107423278840420851489, Some(38738)), (183841035292447, 4797004043313535100492, 230921900100732676978, Some(3818980309966782)), (38, 1190685054637359931693819937583301931, 3465343046204109780734, Some(13056725257195409)), (3453, 115580434443015076199, 539637039275775161888143731671337945, Some(0)), (18165826181645092, 650267890650374918566535753479342524, 96998733469, None), (23702, 36048359703287588397645842119104, 8267242208195795719429, Some(103349847527182)), (33622716256698328711967055063007498740, 868901, 262384526070843869151, Some(111343501141806777471520)), (1284243442255691880773080805824212, 462948068103033872349004, 2761059243478261034616680569, Some(215329686232045436259615710314)), (0, 858924792280349627024, 18325217079613961690945565, Some(0)), (1298782764485, 87274, 15936846, Some(7112446652)), (15975722888, 1179, 2437, Some(7728919690)), (32834702, 10456, 80273360971352, Some(0)), (4197426990842334080511975615002433431, 84953, 5715141444830129437704, Some(62392859143598591584)), (5879513895208982604107476847688710, 74696371, 5535343555661440846246768317400647065, Some(79340)), (1401818479823851763578624395147731, 1256792652744668484737750, 13613229564198508996, Some(129417869405337134791488750636300145754)), (1015594839692221069248249089150559228, 52039097545717444066165547408105141159, 118329539003, None), (6419535255258252893169, 3093621322644896641141706, 33951535824401961627395122995, Some(584939993579433222)), (34404821100037955823720, 146579680207636225940347949, 14693012378756035698880936, Some(343227620343940775113241)), (1974420932137058608907435044, 2269124610070450658, 138095892913368, Some(32442725364475661995954584583717)), (83469307, 13370365465846, 129284187491785646484828, Some(0)), (133820369368, 8279006855974864515721440, 3948732365980721755364459655, Some(280570991)), (205200164311760326341957718, 2069951399429248685, 6578715994034943, Some(64564934504753446550810228091)), (36588653725707590317284535967465188665, 327214255577734187123180295843764616, 48458920204857059151390679, None), (134395632616833845927, 1, 74284397308, Some(1809204052)), (1159115391399206402909, 143463659146066698199207222391893335, 2918776698171391282129707522, Some(56972818621868685989136901840)), (494779168, 13381185896290270865214, 4056940206374777725408639291117282, Some(0)), (517, 117770095266674175781202, 737990665, Some(82503942313241250)), (100568235705476, 221252320262698579135856974974, 49, None), (233282709, 295568402916365404231528697208909, 4889625385, Some(14101488825433448197179440505570)), (85950608975048795446070819, 88677000657003890, 8360521830959464003045, Some(911646708501638381338)), (15739241, 8659822236273, 5810380845395533922633068145497, Some(0)), (96519267383441358144913485, 1380454851798199, 3230169646421079959213586336, Some(41248759519211)), (124119377949606422403555, 658937547510277984931522877, 1605967151309619416647394499332716939, Some(50926893764869)), (8415024561045728605958464, 633012363769910297583517305, 7179025176924336, Some(741996922603291621668823495298555405)), (7, 7139890076639196764037030544315923342, 81929184696406843634705289927348990268, Some(0)), (68672482897647482932971499346481942074, 1802306131995335205579, 4172961130848696348844480360583868821, Some(29659714803191265811796)), (7371790224356504176176298425, 7383743784, 490989140145479321, Some(110860721338798574332)), (814, 129253, 8964328003949823126004, Some(0)), (18333, 320, 4203744476208450683661769285, Some(0)), (1145623609611826833008187369, 114490361574527468711298426419659052, 2145411842720928439051643575968, Some(61136448807155578243086020940257)), (6, 15427359080559, 46425404955437, Some(1)), (32022255844927459926588, 2793501270328104147521883407677, 2624118, None), (772402336, 8148560283, 17982208183, Some(350010795)), (4758, 485839752227, 3885016177386534684137375947, Some(0))];
/// (literal, the exact fraction in lowest terms); None when it does not fit.
pub const RATIO: &[(&str, Option<(i128, i128)>)] = &[("0.25", Some((1, 4))), ("10000000.0", Some((10000000, 1))), ("-1.5e1", Some((-15, 1))), ("1e-5", Some((1, 100000))), (".5", Some((1, 2))), ("5.", Some((5, 1))), ("-0", Some((0, 1))), ("0.000", Some((0, 1))), ("+3", Some((3, 1))), ("1e3", Some((1000, 1))), ("12.3400", Some((617, 50))), ("  7.5  ", Some((15, 2))), ("0.1", Some((1, 10))), ("1e38", Some((100000000000000000000000000000000000000, 1))), ("1e-38", Some((1, 100000000000000000000000000000000000000))), ("170141183460469231731687303715884105727", Some((170141183460469231731687303715884105727, 1))), ("0.5000000000000000000000000000000000000000000000000000", Some((1, 2))), ("1E2", Some((100, 1))), ("2.5e-1", Some((1, 4))), ("-0.125", Some((-1, 8))), ("+25335520474.5e9", Some((25335520474500000000, 1))), ("+25703561995e-1", Some((5140712399, 2))), ("-805604471.6421464865", Some((-1611208943284292973, 2000000000))), ("-70276513102.31", Some((-7027651310231, 100))), ("-7998420615.2788088", Some((-9998025769098511, 1250000))), ("-67640.", Some((-67640, 1))), ("430894.6866881767054", Some((2154473433440883527, 5000000000000))), ("162", Some((162, 1))), ("+618702.993124381247", Some((618702993124381247, 1000000000000))), ("78", Some((78, 1))), ("-78021674.046144811677e3", Some((-78021674046144811677, 1000000000))), ("37442528854", Some((37442528854, 1))), ("-84878.53", Some((-8487853, 100))), ("+3141703.81403906", Some((157085190701953, 50000000))), ("-594828", Some((-594828, 1))), ("2182", Some((2182, 1))), ("+4931.39", Some((493139, 100))), ("113.390344515e3", Some((22678068903, 200000))), ("65.8135e4", Some((658135, 1))), ("90.1074e6", Some((90107400, 1))), ("59961.4709", Some((599614709, 10000))), ("+7006.91762e10", Some((70069176200000, 1))), ("+60.6109742883587", Some((606109742883587, 10000000000000))), ("-19140901.950", Some((-382818039, 20))), ("-174823.28", Some((-4370582, 25))), ("-6972841.3028345758312", Some((-8716051628543219789, 1250000000000))), ("-3581781918.65424014361", Some((-358178191865424014361, 100000000000))), ("-3.1478092807334e-3", Some((-15739046403667, 5000000000000000))), ("-93652269599.33511692", Some((-2341306739983377923, 25000000))), ("10943.8563021534165e0", Some((21887712604306833, 2000000000000))), ("62057676049e-12", Some((62057676049, 1000000000000))), ("-338609.1516053749496e8", Some((-423261439506718687, 12500))), ("-5992", Some((-5992, 1))), ("-7304.3984396e-3", Some((-18260996099, 2500000000))), ("+15231e5", Some((1523100000, 1))), ("-553521e11", Some((-55352100000000000, 1))), ("+8629e9", Some((8629000000000, 1))), ("+15304109157", Some((15304109157, 1))), ("-608699812", Some((-608699812, 1))), ("4043.476790392", Some((505434598799, 125000000))), ("-837", Some((-837, 1))), ("+94", Some((94, 1))), ("91.328", Some((11416, 125))), ("7870576", Some((7870576, 1))), ("-9.352430", Some((-935243, 100000))), ("+2888.9780866760406", Some((14444890433380203, 5000000000000))), ("+6293", Some((6293, 1))), ("642972e-12", Some((160743, 250000000000))), ("92.13", Some((9213, 100))), ("-84704.7", Some((-847047, 10))), ("8850232932.84e11", Some((885023293284000000000, 1))), ("+43491.8919", Some((434918919, 10000))), ("+581.35e-5", Some((11627, 2000000))), ("397065819.9232", Some((248166137452, 625))), ("8e-12", Some((1, 125000000000))), ("8618220.2672085449", Some((86182202672085449, 10000000000))), ("+1153363.0130987969e-12", Some((11533630130987969, 10000000000000000000000))), ("-85345181.723086231", Some((-85345181723086231, 1000000000))), ("-9e-5", Some((-9, 100000))), ("+40880", Some((40880, 1))), ("+68332143", Some((68332143, 1))), ("-23452896806.994617621e-8", Some((-23452896806994617621, 100000000000000000))), ("+8266551564.1541840043069", Some((82665515641541840043069, 10000000000000))), ("+81e-8", Some((81, 100000000))), ("871.2079667", Some((8712079667, 10000000))), ("+424468557e-8", Some((424468557, 100000000))), ("-468711.43838908", Some((-11717785959727, 25000000))), ("8744012961e-5", Some((8744012961, 100000))), ("+430303505.61", Some((43030350561, 100))), ("+1.10351152e7", Some((55175576, 5))), ("+116337", Some((116337, 1))), ("1342275.3", Some((13422753, 10))), ("54.3", Some((543, 10))), ("+4090904.7", Some((40909047, 10))), ("+38922", Some((38922, 1))), ("654573.14310452e-3", Some((16364328577613, 25000000000))), ("-5299749.e-9", Some((-5299749, 1000000000))), ("9372298043e0", Some((9372298043, 1))), ("6127005e9", Some((6127005000000000, 1))), ("-1.1590025e-12", Some((-463601, 400000000000000000))), ("+377172383.8152596775", Some((150868953526103871, 400000000))), ("-76", Some((-76, 1))), ("+582.840364384625", Some((4662722915077, 8000000000))), ("727058147.068183682116", Some((181764536767045920529, 250000000000))), ("870.34697903", Some((87034697903, 100000000))), ("-9980612847", Some((-9980612847, 1))), ("886547", Some((886547, 1))), ("2022.1723851428860", Some((1011086192571443, 500000000000))), ("-3779", Some((-3779, 1))), ("-27098827586.57e-2", Some((-2709882758657, 10000))), ("-699.122", Some((-349561, 500))), ("+574357569.4e-7", Some((2871787847, 50000000))), ("2997.4666", Some((14987333, 5000))), ("-9440020", Some((-9440020, 1))), ("5268042908.7", Some((52680429087, 10))), ("1.4401467607", Some((14401467607, 10000000000))), ("8291.16e-2", Some((207279, 2500))), ("599555", Some((599555, 1))), ("-25.596216379973", Some((-25596216379973, 1000000000000))), ("+8457459.1e-10", Some((84574591, 100000000000))), ("452e6", Some((452000000, 1))), ("92799.17810", Some((927991781, 10000))), ("+61752.e-10", Some((7719, 1250000000))), ("-247.3575990", Some((-247357599, 1000000))), ("7995.2583224136e9", Some((39976291612068, 5))), ("-3543.0385600e-4", Some((-22143991, 62500000))), ("+161860886", Some((161860886, 1))), ("-24", Some((-24, 1))), ("-6.48519", Some((-648519, 100000))), ("+9538.622", Some((4769311, 500))), ("442122889.7825906808", Some((552653612228238351, 1250000000))), ("-32426", Some((-32426, 1))), ("93811.", Some((93811, 1))), ("+84470.876716e8", Some((8447087671600, 1))), ("253568091.27140421458", Some((12678404563570210729, 50000000000))), ("27e-5", Some((27, 100000))), ("7", Some((7, 1))), ("+28988642", Some((28988642, 1))), ("39433797318.08193712711", Some((3943379731808193712711, 100000000000))), ("-240321.134883807e-8", Some((-240321134883807, 100000000000000000))), ("72210377900e-11", Some((722103779, 1000000000))), ("-8034445.439059511439", Some((-8034445439059511439, 1000000000000))), ("640881.38279496", Some((8011017284937, 12500000))), ("-45404767857.43038859", Some((-4540476785743038859, 100000000))), ("+19624530", Some((19624530, 1))), ("24768552.927161", Some((24768552927161, 1000000))), ("+10313e-12", Some((10313, 1000000000000))), ("732730.7860954115630", Some((732730786095411563, 1000000000000))), ("99471", Some((99471, 1))), ("489473.9", Some((4894739, 10))), ("+178.6558737906", Some((893279368953, 5000000000))), ("659662064.", Some((659662064, 1))), ("+3.9496281156318e-5", Some((19748140578159, 500000000000000000))), ("+3e-12", Some((3, 1000000000000))), ("659.10112", Some((2059691, 3125))), ("+4284901465.055240", Some((107122536626381, 25000))), ("-8613936428.6527e3", Some((-86139364286527, 10))), ("-194643.9864196812", Some((-486609966049203, 2500000000))), ("-1969921044.3", Some((-19699210443, 10))), ("-67", Some((-67, 1))), ("373575", Some((373575, 1))), ("+6", Some((6, 1))), ("43288753.1", Some((432887531, 10))), ("+605909.042107", Some((605909042107, 1000000))), ("+1453592730.78934367923", Some((145359273078934367923, 100000000000))), ("-91", Some((-91, 1))), ("+7338152.4241739", Some((73381524241739, 10000000))), ("-12464891247.384108955916", Some((-3116222811846027238979, 250000000000))), ("-469e0", Some((-469, 1))), ("83844426552", Some((83844426552, 1))), ("418644848.12024", Some((5233060601503, 12500))), ("+482281e6", Some((482281000000, 1))), ("+31.35590380852", Some((783897595213, 25000000000))), ("46605312.882471e-3", Some((46605312882471, 1000000000))), ("+7565720571.52135139e-2", Some((756572057152135139, 10000000000))), ("-38766", Some((-38766, 1))), ("-8923.", Some((-8923, 1))), ("867.1293478532999", Some((8671293478532999, 10000000000000))), ("2788509413", Some((2788509413, 1))), ("-329.7", Some((-3297, 10))), ("+99.2739854091086", Some((496369927045543, 5000000000000))), ("-59.78944535", Some((-1195788907, 20000000))), ("+91139171154.3934229", Some((911391711543934229, 10000000))), ("-64358538481.3561058", Some((-321792692406780529, 5000000))), ("+1669455", Some((1669455, 1))), ("+72264.90071", Some((7226490071, 100000))), ("-99155238.5928015254636", Some((-247888096482003813659, 2500000000000))), ("3765930.57936e-4", Some((23537066121, 62500000))), ("-91119", Some((-91119, 1))), ("+628", Some((628, 1))), ("-80192462.4925", Some((-32076984997, 400))), ("+3060168671.84884831", Some((306016867184884831, 100000000))), ("+25281", Some((25281, 1))), ("+1532822.7131205e-6", Some((3065645426241, 2000000000000))), ("-92685020", Some((-92685020, 1))), ("+32.1297904", Some((20081119, 625000))), ("-379570091.59691277721", Some((-37957009159691277721, 100000000000))), ("+6.6517671853479", Some((66517671853479, 10000000000000))), ("40337.518385", Some((8067503677, 200000))), ("-83593686.1232226559027e6", Some((-835936861232226559027, 10000000)))];
/// Strings outside the grammar.
pub const RATIO_BAD: &[&str] = &["", " ", ".", "-", "e5", "1e", "1e+", "1.2.3", "0x10", "1/3", "pi", "1 2", "--1", "1e1.5", "٣"];