Consistently use "superuser" instead of "super user"
[pgsql.git] / src / test / regress / expected / numeric_big.out
blob468c6026bcde85a70db6683a94467ed94e6e83bf
1 -- ******************************
2 -- * Test suite for the Postgres NUMERIC data type
3 -- ******************************
4 -- Must drop tables created by short numeric test.
5 DROP TABLE num_data;
6 DROP TABLE num_exp_add;
7 DROP TABLE num_exp_sub;
8 DROP TABLE num_exp_div;
9 DROP TABLE num_exp_mul;
10 DROP TABLE num_exp_sqrt;
11 DROP TABLE num_exp_ln;
12 DROP TABLE num_exp_log10;
13 DROP TABLE num_exp_power_10_ln;
14 DROP TABLE num_result;
15 CREATE TABLE num_data (id int4, val numeric(1000,800));
16 CREATE TABLE num_exp_add (id1 int4, id2 int4, expected numeric(1000,800));
17 CREATE TABLE num_exp_sub (id1 int4, id2 int4, expected numeric(1000,800));
18 CREATE TABLE num_exp_div (id1 int4, id2 int4, expected numeric(1000,800));
19 CREATE TABLE num_exp_mul (id1 int4, id2 int4, expected numeric(1000,800));
20 CREATE TABLE num_exp_sqrt (id int4, expected numeric(1000,800));
21 CREATE TABLE num_exp_ln (id int4, expected numeric(1000,800));
22 CREATE TABLE num_exp_log10 (id int4, expected numeric(1000,800));
23 CREATE TABLE num_exp_power_10_ln (id int4, expected numeric(1000,800));
24 CREATE TABLE num_result (id1 int4, id2 int4, result numeric(1000,800));
25 -- ******************************
26 -- * The following EXPECTED results are computed by bc(1)
27 -- * with a scale of 1000
28 -- ******************************
29 BEGIN TRANSACTION;
30 INSERT INTO num_exp_add VALUES (0,0,'0');
31 INSERT INTO num_exp_sub VALUES (0,0,'0');
32 INSERT INTO num_exp_mul VALUES (0,0,'0');
33 INSERT INTO num_exp_div VALUES (0,0,'NaN');
34 INSERT INTO num_exp_add VALUES (0,1,'85243.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
35 INSERT INTO num_exp_sub VALUES (0,1,'-85243.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
36 INSERT INTO num_exp_mul VALUES (0,1,'0');
37 INSERT INTO num_exp_div VALUES (0,1,'0');
38 INSERT INTO num_exp_add VALUES (0,2,'-994877526002806872754342148749241.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
39 INSERT INTO num_exp_sub VALUES (0,2,'994877526002806872754342148749241.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
40 INSERT INTO num_exp_mul VALUES (0,2,'0');
41 INSERT INTO num_exp_div VALUES (0,2,'0');
42 INSERT INTO num_exp_add VALUES (0,3,'-60302029489319384367663884408085757480.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
43 INSERT INTO num_exp_sub VALUES (0,3,'60302029489319384367663884408085757480.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
44 INSERT INTO num_exp_mul VALUES (0,3,'0');
45 INSERT INTO num_exp_div VALUES (0,3,'0');
46 INSERT INTO num_exp_add VALUES (0,4,'5329378275943663322215245.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
47 INSERT INTO num_exp_sub VALUES (0,4,'-5329378275943663322215245.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
48 INSERT INTO num_exp_mul VALUES (0,4,'0');
49 INSERT INTO num_exp_div VALUES (0,4,'0');
50 INSERT INTO num_exp_add VALUES (0,5,'-652755630.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
51 INSERT INTO num_exp_sub VALUES (0,5,'652755630.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
52 INSERT INTO num_exp_mul VALUES (0,5,'0');
53 INSERT INTO num_exp_div VALUES (0,5,'0');
54 INSERT INTO num_exp_add VALUES (0,6,'.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
55 INSERT INTO num_exp_sub VALUES (0,6,'-.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
56 INSERT INTO num_exp_mul VALUES (0,6,'0');
57 INSERT INTO num_exp_div VALUES (0,6,'0');
58 INSERT INTO num_exp_add VALUES (0,7,'-818934540071845742');
59 INSERT INTO num_exp_sub VALUES (0,7,'818934540071845742');
60 INSERT INTO num_exp_mul VALUES (0,7,'0');
61 INSERT INTO num_exp_div VALUES (0,7,'0');
62 INSERT INTO num_exp_add VALUES (0,8,'8496986223.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
63 INSERT INTO num_exp_sub VALUES (0,8,'-8496986223.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
64 INSERT INTO num_exp_mul VALUES (0,8,'0');
65 INSERT INTO num_exp_div VALUES (0,8,'0');
66 INSERT INTO num_exp_add VALUES (0,9,'54863480.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
67 INSERT INTO num_exp_sub VALUES (0,9,'-54863480.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
68 INSERT INTO num_exp_mul VALUES (0,9,'0');
69 INSERT INTO num_exp_div VALUES (0,9,'0');
70 INSERT INTO num_exp_add VALUES (1,0,'85243.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
71 INSERT INTO num_exp_sub VALUES (1,0,'85243.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
72 INSERT INTO num_exp_mul VALUES (1,0,'0');
73 INSERT INTO num_exp_div VALUES (1,0,'NaN');
74 INSERT INTO num_exp_add VALUES (1,1,'170486.79080049955252152479695727201571965474311716541919780029226071455736587237347615553466832461907447637054203186991790701615551214692555785671028648640897898741246882118067609728317430043806625387779037980513762118868084887015059202190301421555269486602797852927777567694581746398790609996101506730430853942556475840126871131898407356048450541232591147357021858041662012293323494543567675306406079659294204054863522259037763051870433216859794083051717080761509518250300466106939998045710070');
75 INSERT INTO num_exp_sub VALUES (1,1,'0');
76 INSERT INTO num_exp_mul VALUES (1,1,'7266436459.363324713115467666113895787027372854351303425444968800459979742082292257107107767894843498525848597439323325297125474674300428669958003640228730876886174255457103020291514229439701871032118057857763809224712818579091741996335014138185389554630910658876423205103697147288306070059640369158894028731728589073730895396494400175420670713113234800826523252075036892246807434088405522834549449664122407363485486902219500109237667016524913027290777216477989904700729228025571098410870506256758678625928245828210775042611512394316804583459576285681159178280400209217948833631961377519855502763611693070238579591463373484424582723121059964236704135695706864890193388054537703767833595331866551990460050750959493829603581882430597105627056085260296454181999581594565113210481151487049158699087454047624433576922179904629');
77 INSERT INTO num_exp_div VALUES (1,1,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
78 INSERT INTO num_exp_add VALUES (1,2,'-994877526002806872754342148663997.64812998474240514147207095573950146764154822009863493316394610578375247334825932838513167168342610420582834742950389452212867974756590355021495169819086060202117180229196935525386766373096687306110481009743118940565957556492470398904849289222365256698601073536111216152709126800604695001949246634784573028721762079936564434050796321975774729383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
79 INSERT INTO num_exp_sub VALUES (1,2,'994877526002806872754342148834484.43893048429492666626902822775522112238466538551783273345620682034111834572173548391979999630250058057637037929942180153828419189449146140692523818459983958943364062347264545253704196416903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
80 INSERT INTO num_exp_mul VALUES (1,2,'-84806738323879544552397401815149740513.8505875535743013876823142649666132764556588225959336097903898464616542203793600590311980154402068027051522932586050753865288419084437796768749509032177577451738712965496693249429231838833655025794915864261585848007162358912070811805298210095333433397862313304655108809804359760907473898420016370058274978588765092161529583480924554820756527238472641797198545539410039895140087686344382628317530286295498797849942258314364503000942821309916954725689781458590617068629906894951122301020797266469357701283289275708774593896770378558232444454118891917258610753077932026885574920166837998049508644891327208474213193224700658584824407382455480657734911543930195324144216374573825');
81 INSERT INTO num_exp_div VALUES (1,2,'-.000000000000000000000000000085682300757901809257711279577127388124986344391495296640171942990079130291883279872719240502687189411421655284515420074848478500192127657883342858267913417679786356766341637336955924836847768457039175660279784295612167899455618405343686908907695358239088351870495830739180518509859269437015797489301844593920484927630172344269378248455657186218762679357609204333669024237648538465053048724383898528808961206696787294681884412485427843796696788390072124570957047672341581447744981862017791206857428430183366004980966398716823512288330174863890117558744630102020144500158878244146399686532935435591262767487823942606452349972401012308378888947381934278131785907155692007064636085000405504866631011593239041758448995933095907216863744502344014999804306234830774259496097549717476344048');
82 INSERT INTO num_exp_add VALUES (1,3,'-60302029489319384367663884408085672236.83687099063256754698860828386302509843815398979402006244388708674093244201278399438376682321121138429850885935540924586964982855913223221441591310211730902799041126800414795030815514254713522692405212716783388698431088814919226444677188004928663343696636297536500970117716818423689175692808344185016908913828066250587407384563498516598672584120143890364303296142744031320345312431817858545326010704685255237541162931904446804064783391570102958474141459619245240874849766946530000977144965');
83 INSERT INTO num_exp_sub VALUES (1,3,'60302029489319384367663884408085842723.62767149018508907178556555587874475318127115521321786273614780129829831438626014991843514783028586066905089122532715288580534070605779007112619958852628801540288008918482404759132944298520148080184250697297150817299173701934285646867489426483932830299434150464278537812298564822479785688909850915447762856384542090714278516461905872647123125352735037721325154184406043613668806975385533851732090363979459292404685190942209855935216608429897041525858540380754759125150233053469999022855035');
84 INSERT INTO num_exp_mul VALUES (1,3,'-5140349743195574373979577554212527512597024.162480344833040409158673429491690439298506850052285119390701002577176786023622062742050099464897084793357329597395417632908812044304066963549928478520702505283307379218587635434673128958824348493758429380623577527186462464399974242800361134191519694694139153279582776168995426125926314513926640766117733774558011741611075336271613675760116784769700605008122422944290652448956922432960815546502965310676913079866511016221573557684245901002643719965652152439520727383305120298495304784052489867651462175349450610643411043707261107569691076730261762793560088893354750383257372118118753366377402045596735023445172252225346164608897913115394905485106225627590643805003075069931177395059698550161546962768768895596088478488887530518018212441345360153523733317120037436403475909117998647781920105313938836144009539683');
85 INSERT INTO num_exp_div VALUES (1,3,'-.000000000000000000000000000000001413607404628860353773457807436398753936801768769045711604884548436548520368932184112069166807060840219636509423284498981041814526856251281381511288768719259120481595036745286884246627534964287523188738499223075292690431699417313258943941279343383979626641848305343592679057491670166887054819766294147341982669243114259272404203080347707713358471397866402657818267495050115642987782080912962056565478445923456884713049272637646637760989004917643369240372476411912794578381690666695711891846833983534126217706309741885844723208036219144146342212915129560758201609824034610223907791643110990898577049488934294259106725414517181607988173722432655731491050637087261030314548853334338835938120502930424813699221083197863303458179445322810087784892821862085562891180364134284641396475');
86 INSERT INTO num_exp_add VALUES (1,4,'5329378275943663322300488.64471790965256505869684245785528331091076155554650629138833809683459634328609777839510066435612911583108717191216693735823717997111970662575497378762952496582183738308720094529950793570383580785385569873278068217936841324404119828637880370718028782103860007754579779716996004352284614661690063919125301052941328989181561787543541920734755989452320799185700078241880935083616978140555713297241612718277766918005268951861880490889884082730841740604517529391011862694381726143520658746305661338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
87 INSERT INTO num_exp_sub VALUES (1,4,'-5329378275943663322130001.85391741010004353389988518583956365616764439012730849109607738227723047091262162286043233973705463946054514004224903034208166782419414876904468730122054597840936856190652484801633363526576955397606531892764306099068756437389060626447578949162759295501062154826802212022414257953494004665588557188694447110384853149054690655645134564686305448219729651828678220200218922790293483596988037990835533058983562863141746692824117439019450865871047657552800448629502344444081260036580660700595591338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
88 INSERT INTO num_exp_mul VALUES (1,4,'454294299613767152878025320780.534199313974295807138790763501115780294529340799108297697573066187975311338382917022391830256203305238757334106943821060545424417350991354829668286194840925251162479496893943917530660694097932059166013476064988623431110002057735318529554555260199417935495388243829261809007709919225000608711536928171687251088217591210419208480251102484043683131687013687838713055660405381318396419588727500715930145098362997142075433472039319292466570912777345841400769387321465602989947078951135489852486382469990409873227894248208197179481868230244584527040573428134962626267135732247029762468417273891700661832893497067151409134724061246612631376075173287264787886064622106855886785805818642123776489793586531950438285720668411465570116161790343538663297713926678759640594912243360541590368666922379919514826022141331900181');
89 INSERT INTO num_exp_div VALUES (1,4,'.000000000000000000015994998100440878014888861029956505927201309704413242103407885948184870841766875212766910686894450511886242468216220470061916924303252919423028993720180330014505454865704155281502763018913215741264982350384245753394656021401865680441649920273268554396350483440173848850052788410943178207336328451359951614056237100465802151856198860908371340425459435127133071447273887829397881221098443685586506647314622864702873235212396755866459409263439958011711379929751157260020133239574261188528305921244365838405372320186907437842180388704854605498842516581811515413843298370501194935797268161171428747542997504369133579105180311662221854071962295818264211400101689450830279979372422749150894553349570063000769685274875561760334738424509532610467832951796852051505383374693614022043010735004494395190');
90 INSERT INTO num_exp_add VALUES (1,5,'-652670387.03916046850422757312745971450663862747133703839829692066597367760104802542475264601221776157515632293978442027199108085723617181683235487266149426304575903892721468296143475297345699313102262188759506518376019936160961709578829069446312051432780603656651983414612264636232727512091101057374054475214114364113300402823059519499217878746766275164739724770556122895799337810694888119810524986616938847385753562624139431982468828696587199570410008890188532132652095915565323400735066310142303225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
91 INSERT INTO num_exp_sub VALUES (1,5,'652840873.82996096805674909792441698652235828221445420381749472095823439215841389779822880154688608619423079931032645214190898787339168396375791272937178074945473802633968350414211085025663129356908887576538544498889782055029046596593888271636613472988050090259449836342389832330814473910881711053475561205644968306669776242949930651397625234795216816397330872127577980937461350104018382663378200293023018506679957617487661691020231880567020416430204091941905612894161614165865789507675064355852373225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
92 INSERT INTO num_exp_mul VALUES (1,5,'-55643106304872.575994253221940844841058071061962511162776681458310912066379595519265546225338405882027547140476045378015935579066580347282075024392379464189067155567624835346798806677988850250198082355055954078446421075165109896091047534711081616362392995575466807084807876544560268050611445006601394735810211678919646667455478469014906335433468365011768049600750224822391684377238242162320161552720449713229523135506671063115436813348612986916614320012995541575293478341408982118538094438068036422562665160411591652618670802973618768526197813319204816293073794413317669922144705633308090832805914096147659820167569140291210526520361556881576175809360614782817717579318298657744021133210954279487777567785280633309576696708168342539425395482429923273623865667723482418178781573723597156804085501875735112311466228778929147929');
93 INSERT INTO num_exp_div VALUES (1,5,'-.000130590057635351941758745900947472461593749814351229292370661147301124533787181489468804246182606762727711479707901680546780430454163647774077629503207962424213266902732555945190365467801995495570282501722505521485829885605904543846887348545254658726343578684749830307120625129857380290225370772763609458975555029415082569247186899112975387051141777417911244576134390940441209829852154391377911942082738699481875795620569383196133124499983396562167632007454221121465745085962247988140942672429187053671899537331280701003778040796615094903602095098880716919238394057384949891444700347825726273725378453454782330181608182747900774711384845635284701538541452235224216112380245660177463043471814071809869894647262285332580556739424040615194137651616350340752691170045698234853734471923738591898290468792787543896');
94 INSERT INTO num_exp_add VALUES (1,6,'85243.44233732197133191329295927531563604777955507322414928382967007765263923984471408038635831036097817458527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
95 INSERT INTO num_exp_sub VALUES (1,6,'85243.34846317758118961150399799670008360696356209219504851646259063690472663252876207514831001425809630178527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
96 INSERT INTO num_exp_mul VALUES (1,6,'4001.075404054519813215296429095020391062109905613738157927030437221793757373268325953178030040276107574363822832168160758728653712686313134828282109532831190239521843808940611025488601517574653932032236616573457735900045655665690517797280666732780030171712864961531623060353548802466577910774711998056232872212688464691036260746751992072745518373073825852119460094113694393273456369345499434994672730920070410547163082189385645712866100999708173472360864669110044660667614583576570496399103026286828660558854973376227247132815728164629722965145778698957093136175449225024685874279280018547740');
97 INSERT INTO num_exp_div VALUES (1,6,'1816120.848909727306817960620941575637231136442992819290405125420545200026620306446043740992108329883383706060582482495616151605111275635501481354526017831484915013545483361715432312183101964395505340188909970344423950565285639911521082834494088840596716495422427543520536844348040681236845850482165744696068209384509064196671206362539077218412355776790921130042376467606683622970728503408501481791356294886150690067651815776445750760428874351556866105285911902433352126498951242195408782804314174041618879250740246352525074791310920062276490422853700893340860452528740673590486626464460321410814395342850270921486724297414692313177440726749004398703147904603937755702369682956482832074779404350351752662820773690162594400557957241676636030332988289683112176900913522668426137377289536793838959751008646843014106876005');
98 INSERT INTO num_exp_add VALUES (1,7,'-818934540071760498.60459975022373923760152136399214017262844141729040109985386964272131706381326192223266583769046276181472898406504104649192224392653722107164485675679551050629376558940966195135841284978096687306110481009743118940565957556492470398904849289222365256698601073536111216152709126800604695001949246634784573028721762079936564434050796321975774729383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
99 INSERT INTO num_exp_sub VALUES (1,7,'818934540071930985.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
100 INSERT INTO num_exp_mul VALUES (1,7,'-69808760806266041400340.70700818693892852138813934414383886494691670042143650609934777814995087699409404201920249076407981012095999320858479644760715204999741683528746097757549835956359129287002171391961763797857794730120426599135099619822532290339000466211195776337667123320942107370731349851576864242697412616810236323676004067839744992733887503405311090677026008324895177587064547630828026123718296429295638934384446325302964896473296829265805737112709269803814942537657996725913938408781715328945194948010970');
101 INSERT INTO num_exp_div VALUES (1,7,'-.000000000000104090609479936344103210175655521317012597986331111866307697262848964666360492361638117930801818899121383806224630563676018240181412174154250663423230239912527388431901852952893943812666142740182651125508583527237123596541789628675379232473721293630968882045044077795828674268595016625198802475186587918019739056755398151182369187670251750080227679555002307777300392769289647975058449905106584837938556260801229545589323224752038795423164214112897202147313792076165011373139219134850954217300915326944185918762838321705825423789073869940092569940135329697980600082436317664012683589681419530904283106912171330819469065141821685734295058255484933744156717782754922568796985634397878149984177882018261742637463462647452140104146195353696596211873925359508622779658904411330975862442989437933211964821');
102 INSERT INTO num_exp_add VALUES (1,8,'8497071467.03603749330791582407836434318377133169438097066269854720538319012928851657498035372443556191720308219530866834905045144302106406146277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
103 INSERT INTO num_exp_sub VALUES (1,8,'-8496900980.24523699375539429928140707116805167695126380524350074691312247557192264420150419818976723729812860582476663647913254442686555191453722107164485675679551050629376558940966195135841284978096687306110481009743118940565957556492470398904849289222365256698601073536111216152709126800604695001949246634784573028721762079936564434050796321975774729383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
104 INSERT INTO num_exp_mul VALUES (1,8,'724311956372274.0135050255361637906710330203036651743488213007179039756514944640108625580172737414192938789413338554327986697518463087452612658955180411327002900979574347739956600177846996063741787205122007268468674386396156638261992679442768654367111433834151087792255469957061758837789341439211010331332174981459471333376067541234901538285101103690622656631026001337239036711179989456674399137008584021283568040818388709554256523118702728176420022080138548890713013682480239784198421500241995499841675772793497485550923152267616622892846304530712344886979674416990935007952941652591352603797627920865960622077762568060903908151958000');
105 INSERT INTO num_exp_div VALUES (1,8,'.000010032191786198542900505683562217892317481076466949299850809276743457759270150820565375820388277409258249926696079166209409657808406245382887790534127749833677458375931047385994887406206232330491317602830654688957983804698568410728278089250379255157030886262396950539100566975000094268415749476738358914633948867977798590927055566888255636132486899287919515638902721543629183577900872078173883974905921239149419877613723476347774771230668479296621531969573505480695490386225866950545725121902534610730154727385072738079149623798073810167706094070842646222833137345669922898403368997676634709281456818189049718956207208697021706186341405575300648248555331280690778367620868775005181264547924615247991795542738868003191757946979714250339430363902549866892041102771965653407197094250270379367437342632741280710');
106 INSERT INTO num_exp_add VALUES (1,9,'54948723.74225051983134098996071145685528795757427462111901537365053896571438476055974853245403475510333627298551845046116291696445177112567064282766115207407461565363967417615506303416694032848457927390574251904212425813072768882213388082765916956736282110801611726537663292922699021333445658549608928179155685881583228490235606377831724593358583903616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
107 INSERT INTO num_exp_sub VALUES (1,9,'-54778236.95145002027881946516375418483956830283115745569981757335827825115701888818627237691936643048426179661497641859124500994829625897874508497095086558766563666622720535497438693688376602804651302002795213923698663694204683995198328880575615535181012624198813873609885725228117274934655048553507421448724831939026752650108735245933317237310133362383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
108 INSERT INTO num_exp_mul VALUES (1,9,'4676749348240.390309875431213992853550297086049749814750492488995108783145961719774217441193547534210468967573344456866203963659951312519988497979489304488948342258375915152429008993288817366720647491166024151209542534474867042837694499222928509320280684557676243780452100132238968233413333851595648146954975713386711764268506890884764704949969602122157394714663532141060559896359465918874990769222345665160127552795532197771168442486088776803398878354288847069602460071745966589164282641033852314335279121191855487126430176047553895892632834940595958394834437871886013513058514896870683979585091413977173250824451205330441299000850618134248917380244749589254309567551846327349592529960432446947239714236828401206843011440433362544797025114476612133622499094287321570559088587999417440664282418005102546343020409520421747216');
109 INSERT INTO num_exp_div VALUES (1,9,'.001553736563217204408368240901181555234014339476186598647410198373122572205209277343865051610898136462487966496673511261433286284257044548634547569923035899634327495195510767312478861719221916387940027268721306540663743713345337497285507595251328382906111997524508729275471287648008479480805967901972481289402930660848950039779707354469389216931774094174326513465502460315792834278614886136688161679443873815113442220055827192996984074129528034845339130162104547166079591654852164993577408422015514100323825529286511720963047269483211930770803479398243069649400360625259869765138545866815758888670363356947311319523139395191102286838888146829667276592755438606664644975648828848738708349790766370694194763606850690923803984129157519048493985198591771429264967247245289970213262206709011468289046840862597010969');
110 INSERT INTO num_exp_add VALUES (2,0,'-994877526002806872754342148749241.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
111 INSERT INTO num_exp_sub VALUES (2,0,'-994877526002806872754342148749241.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
112 INSERT INTO num_exp_mul VALUES (2,0,'0');
113 INSERT INTO num_exp_div VALUES (2,0,'NaN');
114 INSERT INTO num_exp_add VALUES (2,1,'-994877526002806872754342148663997.64812998474240514147207095573950146764154822009863493316394610578375247334825932838513167168342610420582834742950389452212867974756590355021495169819086060202117180229196935525386766373096687306110481009743118940565957556492470398904849289222365256698601073536111216152709126800604695001949246634784573028721762079936564434050796321975774729383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
115 INSERT INTO num_exp_sub VALUES (2,1,'-994877526002806872754342148834484.43893048429492666626902822775522112238466538551783273345620682034111834572173548391979999630250058057637037929942180153828419189449146140692523818459983958943364062347264545253704196416903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
116 INSERT INTO num_exp_mul VALUES (2,1,'-84806738323879544552397401815149740513.8505875535743013876823142649666132764556588225959336097903898464616542203793600590311980154402068027051522932586050753865288419084437796768749509032177577451738712965496693249429231838833655025794915864261585848007162358912070811805298210095333433397862313304655108809804359760907473898420016370058274978588765092161529583480924554820756527238472641797198545539410039895140087686344382628317530286295498797849942258314364503000942821309916954725689781458590617068629906894951122301020797266469357701283289275708774593896770378558232444454118891917258610753077932026885574920166837998049508644891327208474213193224700658584824407382455480657734911543930195324144216374573825');
117 INSERT INTO num_exp_div VALUES (2,1,'-11671021799770914903865020509.301561107153561058074179843542446420696517132461554451075945807420674211966679216615407057626541711186781735967334896541890595771915856783008831770988426637435694856170266346306640678577376310547806764332837625966429200996250687908930748245035578756314083608655163891041399241377675534416837659335561005203219889972336214863417948542956735403991871098341470996860469878038840964359144637726669728240650066795729910649523281308716277906908340457162235831526838308777581569974551673352306004330423694524256415657620427590352277556907586751621496248973165690360552007637570957980230685679819820147036159174977086193494572117089582758015847544798464543446227632367713941117001423437766840744488426025388612316819120660814681298624293065972395923651314350558006567251033289878238407790871784676348196394482477767774');
118 INSERT INTO num_exp_add VALUES (2,2,'-1989755052005613745508684297498482.08706046903733180774109918349472259002621360561646766662015292612487081906999481230493166798592668478219872672892569606041287164205736495714018988279070019145481242576461480779090962790');
119 INSERT INTO num_exp_sub VALUES (2,2,'0');
120 INSERT INTO num_exp_mul VALUES (2,2,'989781291745465665243281323944996915810556285052564220274237162526.1617859904902612197894543199389468971679632139059029459520163585971122643624316475417489000981872666677202334180945949860058384424993911721081868337499377890298636260338063268639283065887210924895929155083478140340889209440025415565915964293989840603863813531303253038823629712989041722072693449251635519992922148998556112923060331794396659338057474019846675262291146025');
121 INSERT INTO num_exp_div VALUES (2,2,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
122 INSERT INTO num_exp_add VALUES (2,3,'-60303024366845387174536638750234506721.2758014749274942132576365116182462208228193753118527959000939070820507877345194783035668195137119648748792386548310474079340204536236936213411512867171486174240518914767934028451971067161683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
123 INSERT INTO num_exp_sub VALUES (2,3,'60301034611793381560791130065937008239.1887410058901624055165373281235236307966057696953851292799409809571799686645246659986351515277852800926805119259053513475211488115663286642009614039264484259692394657121785950542874788161683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
124 INSERT INTO num_exp_mul VALUES (2,3,'59993133911282372667149627097418449223835595194300848703012380022306762.154418449236691515146061305380465061074531890529497774836941002526095632166401249277270674802626154774328055399254982998368191676630276960361274433270795772477146870294928855773172789856196219950097157391050424577381777627004101100872747943673762087675405200265837631665464736842180920496158545887039337399558993437594084473932658319914390365451919627956823980800124880375978662052111797881386060353490432427832058851094210488804887183034572364751639107535041308434932952695103493677600969712634416241541391613699710826602011076372592299807609658979777598672141389319098817824624950794758296679318319299142035');
125 INSERT INTO num_exp_div VALUES (2,3,'.000016498242835741013709859217005931279826178662180173096568520102488480129191427472581644597420895622947234184547373944996197105916093347103336318249582032230903680989710242610024298937774441533502282949127537125997753002819456724709929935850697744632904111143787011103837624936502324835260843148595669524694347566421203164808527739207590986975750648112133699756328511947175496694080071202064255118777680958612315513441989609682655431197367166056616661045712867189326408877133865572680407329449150282415810958772293869902662884761202424695742898573841869524376684740249281181605067345203479719345061595919652192297531638467223956758315591610733251562492794891852151639643060692698365496208796638230566761231611376199140556503620471090364900792180618741355091923808605890415081571900697282725022629812561702118');
126 INSERT INTO num_exp_add VALUES (2,4,'-994877520673428596810678826533995.79421257464236160757218576989993781147390382997132644206786872350652200243563770552469933194637146474528320738725486418004701192337175478117026439697031462361180324038544450723753402846519731908503949116978812841497201119103409772457270340059605961197538918709309004130294868847110690336360689446090125918336908930881873778405661757289469281163974774492810850778950071063044769131228124355961427111369335109426492177657001035045332525699055300921341010989742896430768506909949340276549373661076950964959025967328861569387160956730002517417236732463510495205173523163676450203614971844583064927040066684531931069310935516821795449174271052747559395296525950219449541557191520903507653089998307641491381797101485104546410643');
127 INSERT INTO num_exp_sub VALUES (2,4,'-994877531332185148698005470964486.29284789439497020016891341359478477855230977564514122455228420261834881663435710678023233603955522003691551934167083188036585971868561017596992548582038556784300918537917030055337559943480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
128 INSERT INTO num_exp_mul VALUES (2,4,'-5302078674303935968062773235453828254014583744527466365136.236414807326868572353809920518232561005161225922028750078608989965741402418802255050636954800114792425419735155504035469350521800895164087027043476055514245942961100610551646034472084954313670284875310691807937254054948742125729353864014122131419164449567115006621212424805182687707372956385102095255735458593389920872596796806885847543910224476727171570873698525606016990229936284811067826588349092841322512643043008589065847223683467371925773023109720951609815041012521485326120380123169545818055967455575736140138663815073081494226676896278654189873597341203197903408668523514375373841493189836809506003729379742035629498519683885268256481104619815130659628225053833297766479068686119691010593208135616363994230674606991733148502293102108193522604968743948323130517040609601859735899914987426089053869350663');
129 INSERT INTO num_exp_div VALUES (2,4,'-186677971.517539861245390308778107722315862721823627804195528485535806132067679059453022306691281662574091826898288146790399178357754908901382135796783067563944022498807930452234032896817601590728156392188660701355670595952594500812333935362955625137944589981298793332621503315902294100258945995827423279442031218510259915311555745581797315793010762585658196457363672908315687720174516274528662385172326028870945153551774300419158584379602045442200523311437013776079979639415633358878239012925000523542907592866797199229858272764668664323316251874027468128770456766875866492004650352654523634716923150212263912760225390093339729495231675627059805624175587380165509763048913150826017167286786277908970769297060278191518730887417202276531151575412404467497036737825989088867451153485938272367300939127313445244028528055624');
130 INSERT INTO num_exp_add VALUES (2,5,'-994877526002806872754342801504871.47809095279915423939648794226185974985600242391612965412218049794216637114648812993201775787765690351615479957141288239552036371132381627958673244764559862836085530643408020551049895730005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
131 INSERT INTO num_exp_sub VALUES (2,5,'-994877526002806872754341495993610.60896951623817756834461124123286284017021118170033801249797242818270444792350668237291391010826978126604392715751281366489250793073354867755345743514510156309395711933053460228041067059994425117350974491367099004404995846913641329458537237789584653041949090121498951516476399288513593944575192159570458664608461677113504914551578443229008454218964701550932948083369656042643364608405637360180021322967144409944099438498649645368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
132 INSERT INTO num_exp_mul VALUES (2,5,'649411906691138274293985410502516861224852.2323455192714410716272307781034189160865613770320102043319541634113746032638191509585045862973333645830298922352816245477556264222094036953195419857712804755170632292914187367964994214922001758104594052499795564860466055599417895782179851297585155129541589802249540436678824225950907268084876110445460948679383611117263673106597132046331719468816839434908155684738864149955129235751738204036443603521478609787295079710078973503970964790273461142497259987849074597264522099648376356902360358310245001183020992360260836105404118742418040965190000718736837422434593694808973939805954329718232693154128543253581495885789333274488461716809104532693754070810202831113003978085636579574171344721710232931261731022478029314435363413498991740750878099825781577297965642009156858479681236085226911858782115');
133 INSERT INTO num_exp_div VALUES (2,5,'1524119409495532727030986.638577103454261465522025182901477334004986357902177024959076085490119358611626688213654669281670407680244740174673394111775678935383154847014211641601227316639834450258566053805263858706381900273201146454036688771735398324537667996974210741719621449948660517037619359095556637235980122706739013220201060795557114248610410815988952748489854367480813823114296393315170621979351958306734282429929421779129764262568942699813166237466796852578307944635545174715298176546980314973426586923195248536376403319094417073026382024413817222396402299695717290716014320518777088811749776114378145110676170242861393274018655137797545194817703831240390631723050378397773341835222892981773205967439339460305257986693600088957772328044922955990976285151896366292514128607363007421484320868718566256882080399264346243272770200676');
134 INSERT INTO num_exp_add VALUES (2,6,'-994877526002806872754342148749240.99659316232359475297606895243958507460511031229368344962653674268847910587702140353344168594152240599109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
135 INSERT INTO num_exp_sub VALUES (2,6,'-994877526002806872754342148749241.09046730671373705476503023105513751542110329332278421699361618343639171319297340877148998204440427879109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
136 INSERT INTO num_exp_mul VALUES (2,6,'-46696638263247522384986521136500.479312417066793299922708112595886608370451213741279484136907754744903470430131032928908162742687359367826808123516519335458861613010646992354378739165872253762686683966945711430182491860196341344982195078000259063231136011430995647812149294224699587849791008794261026932467933475782780');
137 INSERT INTO num_exp_div VALUES (2,6,'-21195986018643887410662481595901800.342199657994285865579781485758715114242459388977583220756870314514884887803267837816669111279417861218648323488364513921592045485003563036021370174294475403630933854767386355037781881144701319212711655881277140183173924089814927297045029394618083349813549439341772734606115369911736164723942330187830605893993276674913563980890459604886172701331890746621222114280438198802989678877404376001410627722336243835841751052795437979198996482216031399073597399901975686733315751292369326904428230195579137225651689857057115970784985439417129044974524632220457594191305254649113470116960582543784928547885740020507755033347968928034294570497118410435615856155184563329718831512839630769097935523279881940380220955993456451396417879773380305142918906742431812580562496634831735169817705720949712410595406012323294829461');
138 INSERT INTO num_exp_add VALUES (2,7,'-994877526002807691688882220594983.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
139 INSERT INTO num_exp_sub VALUES (2,7,'-994877526002806053819802076903499.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
140 INSERT INTO num_exp_mul VALUES (2,7,'814739569184924399102711674444306584731316176345067.39834031417849342571224916231092924046722938910652929295271097903377854123984307101079073134405782275535446337229706620713104545454319555885847481531722101704765783025789147453570970090');
141 INSERT INTO num_exp_div VALUES (2,7,'1214843772391778.127361407585140553741220126410637250571020684739034685508176000812180032686291124045768750332493129822580347351032145964983629059968936201592138368806173099130176852606440296388856520582890650384142745607345709716826703676313341953999327129144154152914234659001555055379537780751567782847296067128932113870102563522810980359433259696591977617184951677390423898232135100000764121508662830515405980450892222598485287609657612482190264517684867291774820716746063133066053446257163185646067618679478975882247893469409405379034723543061767846895135644429012095930584952053545016706315299076691015196261253199176743281648949731423486208098120903720124071047872917636988241710583721537777321338769039241700203546247947405745989053846970910400831817998342969657501678430211657755864160072525313889413731419647001970593');
142 INSERT INTO num_exp_add VALUES (2,8,'-994877526002806872754333651763017.40289299098701084219066388457144979069028441485513418625082363021182982914675513019536443438529749838106171095037135009526312783302868247857009494139535009572740621288230740389545481395');
143 INSERT INTO num_exp_sub VALUES (2,8,'-994877526002806872754350645735464.68416747805032096555043529892327279933592919076133348036932929591304098992323968210956723360062918640113701577855434596514974380902868247857009494139535009572740621288230740389545481395');
144 INSERT INTO num_exp_mul VALUES (2,8,'-8453460632655529853033389979024265783461224.3195241893307807116624750282852146303290708492834695194274289713076935297734670940696121761483641291930931061232942894577813178566088927221374036301485916497770984757492912292002695944367308880163698595015497307574177176409203214324418237020500352652934909632442547242092296504047310806151851207329042221920888326000');
145 INSERT INTO num_exp_div VALUES (2,8,'-117085929036205907700251.219065234073336548829793284434494573185718678644093751558890746941383215425734761534822966779511801033216479269605150574332107020180872343673157350081102818832254463561564431056604957702984438484261858890324442581609284935850435611342611117035589511568432559140282381526487115307554496353616929034919886387903446436924514812698404129456069856633480965357915969548215985452939172313964007318881987188665231550330515412104367728617802960792164260429920719961650164518261501571220901151359208484337831586551714193024143212288426326740373893030225940355268499071669300664200888186064836443459131985786957267268845966279576380786883200277187591448294590370986026461176853573555996139940001165172158855197070946665074838360933025833716166930231164328918316437195201546383664484983447934244744303265471044295601062898');
146 INSERT INTO num_exp_add VALUES (2,9,'-994877526002806872754342093885760.69667996446358567630831677089993316481039076439881735980566785462673358516198695146576524119916430759085192883825888457383242076882081857926408611052522393579396644731758241837010163568445385303315267086044455246361273561294141518329233754041352632499787199926225490924591851865949646448441825186059741089695009429827829188117479084665641367');
147 INSERT INTO num_exp_sub VALUES (2,9,'-994877526002806872754342203612721.39038050457374613143278241259478942521582284121765030681448507149813723390800786083916642678676237719134679789066681148658045087323654637787610377226547625566084597844703238942080799221554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
148 INSERT INTO num_exp_mul VALUES (2,9,'-54582443595378013373024060492546032003692.4875677735896411267274323339692558458420972958075073392126734000341372096298914875892612108329218081214550050039133117695428196702128258481789017059073444323729583900855712795086447886053552786449313809589992185978097430132940882612817775035217244553616977182049775786664446683332098226841743818600819221587510039430478859412452506872131851471967577741190323481953867845129745440745526578327709351120432530702446916035797432129052518980799424635406993848916727957825620638983706180841278402925286540375225365057191075559133035');
149 INSERT INTO num_exp_div VALUES (2,9,'-18133693300409132895168796.074616314168631402221003009151140409826855230810646429042722071403306917323628118792142878282108022292754325022530103525285999179488507720688317761243448898240836430183645778132937666952111134601563043980164547020295727057908447220163534134835130866457657964382363853570827467081988390359191484798677813656413640874450449802233520570178139244957518604566383671867773821069602665918688868868894979351219381089954104823746091972754649316823714354000113723793845707472924569647945844436702275724514171940901057842455729977729388911537391920702753167125695758365521631000334183494148229356487592577177344247694925635113222720411958290166668659311154664393442690740373285505786584987609789805525300762074682544164213490532272590665630428583216403362629445153016404037983825555019274338559686335405719430737559715778');
150 INSERT INTO num_exp_add VALUES (3,0,'-60302029489319384367663884408085757480.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
151 INSERT INTO num_exp_sub VALUES (3,0,'-60302029489319384367663884408085757480.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
152 INSERT INTO num_exp_mul VALUES (3,0,'0');
153 INSERT INTO num_exp_div VALUES (3,0,'NaN');
154 INSERT INTO num_exp_add VALUES (3,1,'-60302029489319384367663884408085672236.83687099063256754698860828386302509843815398979402006244388708674093244201278399438376682321121138429850885935540924586964982855913223221441591310211730902799041126800414795030815514254713522692405212716783388698431088814919226444677188004928663343696636297536500970117716818423689175692808344185016908913828066250587407384563498516598672584120143890364303296142744031320345312431817858545326010704685255237541162931904446804064783391570102958474141459619245240874849766946530000977144965');
155 INSERT INTO num_exp_sub VALUES (3,1,'-60302029489319384367663884408085842723.62767149018508907178556555587874475318127115521321786273614780129829831438626014991843514783028586066905089122532715288580534070605779007112619958852628801540288008918482404759132944298520148080184250697297150817299173701934285646867489426483932830299434150464278537812298564822479785688909850915447762856384542090714278516461905872647123125352735037721325154184406043613668806975385533851732090363979459292404685190942209855935216608429897041525858540380754759125150233053469999022855035');
156 INSERT INTO num_exp_mul VALUES (3,1,'-5140349743195574373979577554212527512597024.162480344833040409158673429491690439298506850052285119390701002577176786023622062742050099464897084793357329597395417632908812044304066963549928478520702505283307379218587635434673128958824348493758429380623577527186462464399974242800361134191519694694139153279582776168995426125926314513926640766117733774558011741611075336271613675760116784769700605008122422944290652448956922432960815546502965310676913079866511016221573557684245901002643719965652152439520727383305120298495304784052489867651462175349450610643411043707261107569691076730261762793560088893354750383257372118118753366377402045596735023445172252225346164608897913115394905485106225627590643805003075069931177395059698550161546962768768895596088478488887530518018212441345360153523733317120037436403475909117998647781920105313938836144009539683');
157 INSERT INTO num_exp_div VALUES (3,1,'-707409990019504668223608170643582.082425157530076679823177950190511141917761066423266390864536360056345386873500583953954967225431526056199231768143978526582904071798714789552447782850723926323452633811653766838064983821149041415149067433978085927687765773012158659685363079191901396502099956189371719135315616249471739677995520904113581848295732911534266040260836644379296158092198514963023001686666281725991605685524015227112003429486755206848316731257322742428352116058878710728614841247581716185886403744830796740424927494009978599974431617064012221450054532987372285996679180090592706458366967534834069977644215413076082570497451654516268857039718730203921980307096740864747006176117071983875364434497517026142488015705391255750729200497229031250705777282987863242056223584453312226818451807347197583925624299372040413470456696588043062815');
158 INSERT INTO num_exp_add VALUES (3,2,'-60303024366845387174536638750234506721.2758014749274942132576365116182462208228193753118527959000939070820507877345194783035668195137119648748792386548310474079340204536236936213411512867171486174240518914767934028451971067161683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
159 INSERT INTO num_exp_sub VALUES (3,2,'-60301034611793381560791130065937008239.1887410058901624055165373281235236307966057696953851292799409809571799686645246659986351515277852800926805119259053513475211488115663286642009614039264484259692394657121785950542874788161683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
160 INSERT INTO num_exp_mul VALUES (3,2,'59993133911282372667149627097418449223835595194300848703012380022306762.154418449236691515146061305380465061074531890529497774836941002526095632166401249277270674802626154774328055399254982998368191676630276960361274433270795772477146870294928855773172789856196219950097157391050424577381777627004101100872747943673762087675405200265837631665464736842180920496158545887039337399558993437594084473932658319914390365451919627956823980800124880375978662052111797881386060353490432427832058851094210488804887183034572364751639107535041308434932952695103493677600969712634416241541391613699710826602011076372592299807609658979777598672141389319098817824624950794758296679318319299142035');
161 INSERT INTO num_exp_div VALUES (3,2,'60612.515523995516156897729403721504966784736064970538891936016753206905080265887046037910122269129293912171105589512464185386239562077778499936203155976336284324712221812806801062157592930664021782540155687632208890794166119782594464410498356083266087045927038416810562596141871858142749062925965665039981381277808608946877852933015970874447235220989360704166270479475802673572039541121473138382812420076284458769543418652217394352637294823914346726065145538710933281768776286965107974980550163605068693568717671571780028113969794125200592691656568731359981803586296135840575095063824258761205175762907549288801963550628589530419118771779395037240198270853609924445368393952404606326559485235840170339343865253618184271158932135392539396160392488927771488269959497352568205940636180870805982484030168838833607478593');
162 INSERT INTO num_exp_add VALUES (3,3,'-120604058978638768735327768816171514960.4645424808176566187741738397417698516194251450072379251800348880392307563990441443022019710414972449675597505807363987554551692651900222855421126906435970433932913571889719978994845855323367077258946341408053951573026251685351209154467743141259617399607044800077950793001538324616896138171819510046467177021260834130168590102540438924579570947287892808562845032715007493401411940720339239705810106866471452994584812284665666');
163 INSERT INTO num_exp_sub VALUES (3,3,'0');
164 INSERT INTO num_exp_mul VALUES (3,3,'3636334760530744652235488357607657374520053530993537920755375319352615385278.023608692512217812784472508939511216316773023870624171279878340621219698109986095090336065266376220109007718694455520948311677863167090936408887147442375455695868593092154861636486745490748828207939155392396090682312136290864359484540126174821846208064763823279315343506148025281475729723686566174395516982893064510403581479746673749128344955124070957545815390178764940816628194640888255387443237798761377617383817511745005525149990207764725040109364671749403389999498572538135588695345112358160274671918953118753964073105250116426665508214894805722798842017943220605600452911496071424281587802689830031742105619630787641205011894680546049982654601956546154572720177337696285354350903475239411654436042931409507429892682706228354459580412759920815932840348933425754970917910500027837428631661182510071352138858');
165 INSERT INTO num_exp_div VALUES (3,3,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
166 INSERT INTO num_exp_add VALUES (3,4,'-60302029489314054989387940744763542234.98295358053252401308872309802346144227050959966671157134780970446370197110016237152333448347415674483796371931316021552756816073493808344537122580089676304958104270609762310229182150728136567294798680824019082599362332377530165818229609055765904048195574142709698758095302560470195171027219786996322461803443213101532716728918363951912367135900414238535625075942525108530051828834829820554490477645701692374399416239080329365045332525699055300921341010989742896430768506909949340276549373661076950964959025967328861569387160956730002517417236732463510495205173523163676450203614971844583064927040066684531931069310935516821795449174271052747559395296525950219449541557191520903507653089998307641491381797101485104546410643');
167 INSERT INTO num_exp_sub VALUES (3,4,'-60302029489324713745939828071407972725.48158890028513260568545074171830840934891554534052635383222518357552878529888177277886748756734050012959603126757618322788700853025193884017088688974683399381224865109134889560766307825097103477790782590061456916367930139323346273315068375646692125800496305291080749834712822775973790354498408104142209966769395239768969172107040437333428573572464689550003374384624966403962290572373571842567623422963022155546431883766327294954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
168 INSERT INTO num_exp_mul VALUES (3,4,'-321372325955692885069615337209737469749246561535004445508427591.072860243358366933071485495726715620133686420023451450292996945184959542770492705998350644739298629407567812798540119555932604687814429669592481327761428042980782672136901602006622227365754036664912989085940235439697789102358431343119457114603363936544931303133371137532006899162833369543279729021228901466728220729625107362063321334489394782322741444425117731922691457341543446841167138481424319752111748042440994701571955325673470021626946676976482516292402239416632497972073915818846704053624707839813514171497746804751780741682011937606462260710753056669269928580460921188286249923152921382198282201761171043384698319895970192114563900025573490442674225227682235790590616707857188385274186584856872573669591460447105688151281208238908470285147895678001948902280493477604361481216667716971590499226735103039');
169 INSERT INTO num_exp_div VALUES (3,4,'-11315021446594.877643290091276308982961654569173523687151347727612592478433578066762912541361898899908505997444632820107356713116459078630334224890355872486337973552333755378190316811715776951317058334754704988120078733912131691682869448731717816749620336196719541702138949084375907248656748314375183301372633028246109596775255074617515860012417935744433243071057057560464360663978361945666099558526069794464437818864063206829678640156992474597480916575712563493776637239091589972373682399519931569163592317107392231951775499293572134702843085474656152913351183535194499521618027894129537558509428098859715020703897463518891082573242502356303078754574312965093639182648263511466558336912294702019648266054331227425119096294871153811412169351624751542166779635702042223762951850816568617453355571302500885410532963789364822647');
170 INSERT INTO num_exp_add VALUES (3,5,'-60302029489319384367663884408738513110.66683195868931664491302527038538338065260819361151478340212147889934633981101279593065290940544218360883531149731823374304151252289014494378769385157204705433009477214625880056478643611622410268943757215673170753460135411513114716313801477916713433956086133878890802448531292334570886746283905390661877220497842493537338035961123751393889400517474762491881277080205381424363695095196058838349029211365212855028824622924678684631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
171 INSERT INTO num_exp_sub VALUES (3,5,'-60302029489319384367663884407433001849.79771052212833997386114856935638647096681695139572314177791340913988441658803134837154906163605506135872443908341816501241365674229987734175441883907154998906319658504271319733469814941611260503645706198407368762270127105340397375230875953495882740039984314121888705481484090911598074635434289709802794549714765847764347865064280637851906308955404165593747173246944693509650424312007333558709071857299501674917023499921977975368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
172 INSERT INTO num_exp_mul VALUES (3,5,'39362489275784146262776411377472433635883331946.794473520543457442955620133347015506556162839462623905489255080102447195050109095701660164272430316804466254467810714209179752718730906325952685817112992943656292503112803950215110778476301809440329937774061163668461957943313261962261081942055908935814323069621279128270849852239727888939033546870208376394878842958202403235309372240005941467570230067124830916866857395233038346727879951123599893174252558078732888910139309038957525961212820831321973219557165558911222848692996406741318948607549825343491479728117062814094258484536263158005174429922237853707635743736923521032098496725445243775790161216159399180889906705265012270270348146530113428221072591696851818281866095288773371414866822270689959827332258348570976075184933893434327278299820594014788148344260948638847457822697682605612771344335201258128');
173 INSERT INTO num_exp_div VALUES (3,5,'92380711368470856513514428781.033155715252174277753317877861994356621252232374386687048394529670637693505779282500567256835271428113529026462111032257747830329068594622091282098767000694818101994264352932243278144124687156236926607422077479412495979777588932692081795130282128890441931602671468684153168580234070246201722180460130467506344034452687371838907269162119534950946217165384250603250357360223255177692065141037447374172264943732616165429783010079281851748804739433821308362193703012671569249508710820679009084891198169587484117171861141580870066764275087111843275285564262902405980617569581840831518012986031156042600391943605532635833608358301306456966765206853910579231447150839538731157206153540873916893579943906851149770881336811951119112558311734171557608362620988555075663589827484854016702489324791126228380209309587206299');
174 INSERT INTO num_exp_add VALUES (3,6,'-60302029489319384367663884408085757480.1853341682137571584926062805631087054017160819890685789064777236456590745415460695320768374693076860837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
175 INSERT INTO num_exp_sub VALUES (3,6,'-60302029489319384367663884408085757480.2792083126038994602815675591786611462177090630181693462735571643935716818574980747701251335721895588837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
176 INSERT INTO num_exp_mul VALUES (3,6,'-2830400711649493468815157129316992649.40542786074520931471973065281957756940496588853021620372179463538053123396140685749478530925306163968207226329985017644835203709485594362663495728106061878665324856417118064730721101615473194292620972173690618491026470353143141125614124440035267592258385099934706896692953497971326605145704135723011753705907329979207428661473172503098296622281647255008204864404416199384701720347319806375450632245634238172654086373193251877533131784268854289406126119630708578053354762596511353053106459297339360827562281168219966099848212');
177 INSERT INTO num_exp_div VALUES (3,6,'-1284742031601444539630782308463065726620.121021225455596762466053504195700643301310745151565435123335541550963124666304408503436412726848834604336377169205828654564329888653766451656774534718709065521243637375270687684572524302099749018591530352756390467862377335526634920857924031482455373589053524922608255779040656019538392173139295812160325688504210040741075388404155144782519528791757450256668977268409265390016721724966592135644698341754332845002439113523127047593325646484654291494607100188094186116001064043796216982681807318598789324900462932294782971663150070521334398542559480877366424630693734132836518604260869235580641521264976411493166969530737254118968281271908306432918913600567757535151861421384835424322504855607676315840963696944683182767935565256136130185809101891760917733694553800748568697830680328155128016670099315391685422333');
178 INSERT INTO num_exp_add VALUES (3,7,'-60302029489319384368482818948157603222.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
179 INSERT INTO num_exp_sub VALUES (3,7,'-60302029489319384366844949868013911738.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
180 INSERT INTO num_exp_mul VALUES (3,7,'49383414785234649002982046297226894664526726187218771083.0993243619030008310875293647868815940421844461627295157812843657782639833900543200310573708100000958929315945039020410482966753145208427035917753919085618457760620513481628641658765820294863970581642745379331727722585319163262763708386199720411053619449096019862596221607526610103408936214184850115071874430846697061554769773328338028749631552202705583855831155461651414320570061181212214810086436100771547030013079997847086');
181 INSERT INTO num_exp_div VALUES (3,7,'73634737013325927185.787791148221519354461791539553527545166847382784629235192342551464898036004011575416717008403527685470842765455409054592207142526523023201841973047779202013398235864494503216973882479116841765663948294836180515686647139678530220909072497288527276378202532400736141014848907023234659020093073127450778982904578906877634654521825977382116752537063128793631412296206704078569268566614023846282524151679028060869175439188773864994186109445961525301841201265289707928211114515861536069733921800160245586536759625418951427346236213019358749196674633237197452976517130405065120577692737021174118093373953642724512531935525024447977867020930500433287279183436509990047372809400167546185096048971157700858970777301410692908939206693154161335335755844997198191427289546263182822280127912118140820265025555165337881999926');
182 INSERT INTO num_exp_add VALUES (3,8,'-60302029489319384367663884399588771256.5916339968771732477072012126949734214868901845505193155307646111690097978112797961939995859130827784737422228762767014427842766445950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
183 INSERT INTO num_exp_sub VALUES (3,8,'-60302029489319384367663884416582743703.8729084839404833710669726270467964301325349604567186096492702768702209585877643481082023851284144664938175277044596973126708926205950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
184 INSERT INTO num_exp_mul VALUES (3,8,'-512385513828318260570283740065493064477880918352.732624553690077857674083796435724202494963885926573907185100543184828131859183999195040110586155435203949963570735841632689374488877298209082579317039061893012560130258753218955057387206477423088065663401594359617882154814262843273526859406265633827109554791772242178864873774889091687515990672487380368975556580539271333144212685871370972163560839446696514092637412587953506052848750866803569213269271165856310101244342151576488190595936869490659700946174362872797854591188391982770203203644172999264143929484089237665313698600170041324566984832357000400');
185 INSERT INTO num_exp_div VALUES (3,8,'-7096872691348467943606706217.907270287823269424282176534343841939501231816905820949045946136373255017076943323578903040918266385724756894003692978391468202345397178445216069294845721607024056189567609414049207292919519881725733381453217071918292453682942046440563446278374996563501512335133749731529362537349288419883140401056747081065947774593869673146309163791076953204291951821124894409171722911526435445719071769008713367057971351892550570642991097981458696464929009464411568672010548002196406312721789582428747564855324072212842315229302959908665089850886951261233852165624100634055045684536311382452553544676139507899503993644452161529145849579200003677255968757773363970434791501820320494192909660871475590637419913907191608957830524390049664686282439567943053924245852983990958276537000732363895444894582579142752920882750130052682');
186 INSERT INTO num_exp_add VALUES (3,9,'-60302029489319384367663884408030893999.8854209703537480818248540990234567956069965340942024890856088355839135538265116174644003927269495876835324407641642359213535695803871472434650475144516723617632059130297610134243891145006222068960999879308472500422640481972089756410157246974765071949782242392661524488959954348903412713930092273629207697480131360047867213863018127928853922173643946404281422516357503746700705970360169619852905053433235726497292406142332833');
187 INSERT INTO num_exp_sub VALUES (3,9,'-60302029489319384367663884408140620960.5791215104639085369493197407183130560124286109130354360944260524553172025725325268378015783145476572840273098165721628341015996848028750420770651761919246816300854441592109844750954710317145008297946462099581451150385769713261452744310496166494545449824802407416426304041583975713483424241727236417259479541129474082301376239522310995725648773643946404281422516357503746700705970360169619852905053433235726497292406142332833');
188 INSERT INTO num_exp_mul VALUES (3,9,'-3308379209762459471107480259839508279070920437.883503980178028214343751083865562028455061662673132221930429904398963590401793045470444301883103141901787466923883803951815572606105617157736442670792467625964359169270739534412932791178258858918086886061702512427989129732248215348301444245772127142869263635282888226326427510486246184233225114523636171202034558843515894542952126988613018789833835507734620046994907453602573865012044120483116345444810078666601100257620969379968264504287700045822481492526688635364586344704730579892342786173395802035361824932075736340405960099542224953439044947229246847140957298841482874444906129049023002897135347878048572628834749795298712449864571996898774444932083319581439741625832405434317985988163261591679157437224404970927012111196724239860528859217322132733404472897289');
189 INSERT INTO num_exp_div VALUES (3,9,'-1099128766678422054524173986658.839339966689456265703816212189145237878729886466041806078542573981227645802109969871638687985985845489422516004202630099080709709893022100481258818112345013009059633421290241583864468453396484606925071369550998772875840640325758308835852391176503689677263605949075815552026731067384737231681068134099746550363063940273625924224721503126912810251607546172009765059506591787282558727077669973711491157840340631805422942099954647016059576777054339588421998882440726473698513560202030309804089250300097589174314677765341104767702983421063649104691583044460507666600260994707192787133590502137391691330098102374713996115782701417107878938473243874299874872852713499024851414757892169376458916467621226859152075901273014182163212783658933754507272478777304254191033562324994395916168496097385872331012258027431094381');
190 INSERT INTO num_exp_add VALUES (4,0,'5329378275943663322215245.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
191 INSERT INTO num_exp_sub VALUES (4,0,'5329378275943663322215245.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
192 INSERT INTO num_exp_mul VALUES (4,0,'0');
193 INSERT INTO num_exp_div VALUES (4,0,'NaN');
194 INSERT INTO num_exp_add VALUES (4,1,'5329378275943663322300488.64471790965256505869684245785528331091076155554650629138833809683459634328609777839510066435612911583108717191216693735823717997111970662575497378762952496582183738308720094529950793570383580785385569873278068217936841324404119828637880370718028782103860007754579779716996004352284614661690063919125301052941328989181561787543541920734755989452320799185700078241880935083616978140555713297241612718277766918005268951861880490889884082730841740604517529391011862694381726143520658746305661338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
195 INSERT INTO num_exp_sub VALUES (4,1,'5329378275943663322130001.85391741010004353389988518583956365616764439012730849109607738227723047091262162286043233973705463946054514004224903034208166782419414876904468730122054597840936856190652484801633363526576955397606531892764306099068756437389060626447578949162759295501062154826802212022414257953494004665588557188694447110384853149054690655645134564686305448219729651828678220200218922790293483596988037990835533058983562863141746692824117439019450865871047657552800448629502344444081260036580660700595591338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
196 INSERT INTO num_exp_mul VALUES (4,1,'454294299613767152878025320780.534199313974295807138790763501115780294529340799108297697573066187975311338382917022391830256203305238757334106943821060545424417350991354829668286194840925251162479496893943917530660694097932059166013476064988623431110002057735318529554555260199417935495388243829261809007709919225000608711536928171687251088217591210419208480251102484043683131687013687838713055660405381318396419588727500715930145098362997142075433472039319292466570912777345841400769387321465602989947078951135489852486382469990409873227894248208197179481868230244584527040573428134962626267135732247029762468417273891700661832893497067151409134724061246612631376075173287264787886064622106855886785805818642123776489793586531950438285720668411465570116161790343538663297713926678759640594912243360541590368666922379919514826022141331900181');
197 INSERT INTO num_exp_div VALUES (4,1,'62519544780217042176.800424689664850775296526267109332647921183817056683200043718160298562843864918741523494444361916531159341418970534833628106062976341639276761669219281771109561175175033739624472497927501467465456946098280878993371659461957361369508794842102784763955539708800574418468150309301129490186416766691183270872711413796386178009615777589066235359283212636467980113350635181915492452697347977967985810294150853782607014649150457138118264698071689065469752702524632313088938504181640435324554007553994564705401249228914199354821595855823113730697333390936834057091883654016371107974899726642500486005445063301647520527084320363513388355471718583708935211830796440056542408492723718088396437530207347815505844074508948817594746824098278470533148171941442049323578854023683167934569551595335539887777638716651319134577441');
198 INSERT INTO num_exp_add VALUES (4,2,'-994877520673428596810678826533995.79421257464236160757218576989993781147390382997132644206786872350652200243563770552469933194637146474528320738725486418004701192337175478117026439697031462361180324038544450723753402846519731908503949116978812841497201119103409772457270340059605961197538918709309004130294868847110690336360689446090125918336908930881873778405661757289469281163974774492810850778950071063044769131228124355961427111369335109426492177657001035045332525699055300921341010989742896430768506909949340276549373661076950964959025967328861569387160956730002517417236732463510495205173523163676450203614971844583064927040066684531931069310935516821795449174271052747559395296525950219449541557191520903507653089998307641491381797101485104546410643');
199 INSERT INTO num_exp_sub VALUES (4,2,'994877531332185148698005470964486.29284789439497020016891341359478477855230977564514122455228420261834881663435710678023233603955522003691551934167083188036585971868561017596992548582038556784300918537917030055337559943480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
200 INSERT INTO num_exp_mul VALUES (4,2,'-5302078674303935968062773235453828254014583744527466365136.236414807326868572353809920518232561005161225922028750078608989965741402418802255050636954800114792425419735155504035469350521800895164087027043476055514245942961100610551646034472084954313670284875310691807937254054948742125729353864014122131419164449567115006621212424805182687707372956385102095255735458593389920872596796806885847543910224476727171570873698525606016990229936284811067826588349092841322512643043008589065847223683467371925773023109720951609815041012521485326120380123169545818055967455575736140138663815073081494226676896278654189873597341203197903408668523514375373841493189836809506003729379742035629498519683885268256481104619815130659628225053833297766479068686119691010593208135616363994230674606991733148502293102108193522604968743948323130517040609601859735899914987426089053869350663');
201 INSERT INTO num_exp_div VALUES (4,2,'-.000000005356818439105666775800262590702859770599410113087721172791624002387236505438218124867814437523686300450045582100868990117124343222534568799037421944272316277130975314766456260710406160143182498931595199129228915695802952695510723443157825968340043198200740606202264287904755124946591110599335909404657109057432686191440989434662797205973563889238804413861126260401987949920244286377128599413927273444061572120561496904543200956508673923547626768641271397088562966176629018606103663605145666976048261236691866387601532424530473754175270500777679603569715192364542901360534980926452487443629100484491344001509360344122933911316486556042277769848194790964257060927912344609376571637126617813506411190014141992988288983968823792971270853369317867326071952900448455162898476163801382836761898292684175721846');
202 INSERT INTO num_exp_add VALUES (4,3,'-60302029489314054989387940744763542234.98295358053252401308872309802346144227050959966671157134780970446370197110016237152333448347415674483796371931316021552756816073493808344537122580089676304958104270609762310229182150728136567294798680824019082599362332377530165818229609055765904048195574142709698758095302560470195171027219786996322461803443213101532716728918363951912367135900414238535625075942525108530051828834829820554490477645701692374399416239080329365045332525699055300921341010989742896430768506909949340276549373661076950964959025967328861569387160956730002517417236732463510495205173523163676450203614971844583064927040066684531931069310935516821795449174271052747559395296525950219449541557191520903507653089998307641491381797101485104546410643');
203 INSERT INTO num_exp_sub VALUES (4,3,'60302029489324713745939828071407972725.48158890028513260568545074171830840934891554534052635383222518357552878529888177277886748756734050012959603126757618322788700853025193884017088688974683399381224865109134889560766307825097103477790782590061456916367930139323346273315068375646692125800496305291080749834712822775973790354498408104142209966769395239768969172107040437333428573572464689550003374384624966403962290572373571842567623422963022155546431883766327294954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
204 INSERT INTO num_exp_mul VALUES (4,3,'-321372325955692885069615337209737469749246561535004445508427591.072860243358366933071485495726715620133686420023451450292996945184959542770492705998350644739298629407567812798540119555932604687814429669592481327761428042980782672136901602006622227365754036664912989085940235439697789102358431343119457114603363936544931303133371137532006899162833369543279729021228901466728220729625107362063321334489394782322741444425117731922691457341543446841167138481424319752111748042440994701571955325673470021626946676976482516292402239416632497972073915818846704053624707839813514171497746804751780741682011937606462260710753056669269928580460921188286249923152921382198282201761171043384698319895970192114563900025573490442674225227682235790590616707857188385274186584856872573669591460447105688151281208238908470285147895678001948902280493477604361481216667716971590499226735103039');
205 INSERT INTO num_exp_div VALUES (4,3,'-.000000000000088378091435340426596348183959201660680284222502095357746364378698792730669202270228092348823133529449019715406417264278615046537007844589547485282959556860316942508808911542109265489435572674031608663747132688980867386885961271358592278360097086532747883342438036287136994589308551796702164612609710942175900921197001888540314760352113821737014875886635147123114456910985089625906448913621495025509697742196814421833448856595853403450682101743559369637786458968714240975228615283970739279506239628546165569688434254286341567486905374255702980370754235630955328837646999003123103831262789115646588779721625156078607919060762857866951417867378220773543985422722165221371084387943737083254760594128718841665355053236168688218864433967871311858292181233490194833547273501436630325295640020916257836404');
206 INSERT INTO num_exp_add VALUES (4,4,'10658756551887326644430490.49863531975260859259672764369484696707840594567381478248441547911182681419871940125553300409318375529163231195441596770031884779531385539479966108885007094423120594499372579331584157096960536182992101766042374317005597761793180455085459319880788077604922162581381991739410262305778619327278621107819748163326182138236252443188676485421061437672050451014378298442099857873910461737543751288077145777261329781147015644685997929909334948601889398157317978020514207138462986180101319446901252677846098070081948065342276861225678086539994965165526535072979009589652953672647099592770056310833870145919866630936137861378128966356409101651457894504881209406948099561100916885616958192984693820003384717017236405797029790907178714');
207 INSERT INTO num_exp_sub VALUES (4,4,'0');
208 INSERT INTO num_exp_mul VALUES (4,4,'28402272808100253242547006276715304015308580784958.804614276533085644370816876160290159450291717634111299841065255625515058118012211808741402904995080624675460593676923639082981788732031193774047612589113654423166826140872334380708795266307037944059108148612979119729408762532396036043629484049508789880964586236575769826806092391573178899640321403656891487586452524427223891405519836671312830183895761747460911777623703557946796784873885800089025388390522992806365773290733075927321101736155663727528284512100509273076328103465333687228713897893434161293693971954442699482857938492961830350598789444266860160794913830991304996676299650460125000959751177037694425217989910261807246272771711816326991282202653917488360776928533800529297474279497910326579608191975246060946079639658615178160271122713225105861574160788280907842327681375920919676063500116492292319');
209 INSERT INTO num_exp_div VALUES (4,4,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
210 INSERT INTO num_exp_add VALUES (4,5,'5329378275943662669459614.81475694159581596077242547133292502869630735172901157043010370467618244548786897684821457816189831652076071977025794948484549600736179389638319303817478693948215387894509009504287664213474693208847025374388286162907794727810231557001266897729978691844410171412189947386181530441402903608214502713480332746271552746231631136145916685939539173054989927058122097304419584979598595477177513004218594211597809300517607260841648610322863666300637648662611916496850248528515936635845594390453288113296413254893687029540384176335735114863908372780241463999450547422213639667099644505472777149095004849805371205203850993689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
211 INSERT INTO num_exp_sub VALUES (4,5,'5329378275943663974970875.68387837815679263182430217236192193838209859394480321205431177443564436871085042440731842593128543877087159218415801821547335178795206149841646805067528400474905206604863569827296492883485842974145076391654088154097803033982948898084192422150809385760511991169192044353228731864375715719064118394339415417054629392004621307042759799481522264617060523956256201137680272894311866260366238283858551565663520480629408383844349319586471282301251749494706061523663958609947049544255725056447964564549684815188261035801892684889942971676086592385285071073528462167439314005547455087297279161738865296114495425732286867689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
212 INSERT INTO num_exp_mul VALUES (4,5,'-3478781676337858247983014311182511.567538638808357215203593479841446379226774481291286361639429856698999485760647422501864626078375852610019829111004807806660731243672830787729048847342063218718651165150612717759770504648306347926061960607388621011846314969634048226452709389995594961695723139571002939804473057725442880410434039783304583526414509590532906062732322732569475349107437896717416548237633532805602064623969799081086996320156575550896200848758685986331692388099427314008504506503745527468550106879602399030419569897808150076298414568875477195447656904373310322813412927463518325927626891046356679526447117311923853482118502868148386882363449163182892615259995945992014431502761210899772725227648729095696228388558331052524469604046072203605897109629560683446827492904111565278516043939137760721315953500281379039771826554155511347152');
213 INSERT INTO num_exp_div VALUES (4,5,'-8164430956184510.184223536017248184022252663660196916321116266103608317725855237211273642694947892658721606226082017525816544904635887836163201565923338826779819876742736219975639586566502584026349778499211535661173597356253186281116862244165796632756909578140184577853088376334255860281874385669242675881761388233070861374295536603371778669602656670852115614651462552069294889723058758969660566508798011830996965570446030123780674316363670374970480994905368006454513642480180066435609577311074332150098288374616437489163254821095377348025470309665651059603665062887597814064136313866690824972464351274062540825405003954064175728198182815347642172934453828192850870808373638597839434504241236228591053696481146252072190903430582534862988719805163692697482513169856291048966811374872266165034373412719593685881972700171726777938');
214 INSERT INTO num_exp_add VALUES (4,6,'5329378275943663322215245.29625473207137544719284446115519970394719946335145777492574745992986971075733570324679065009803281404581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
215 INSERT INTO num_exp_sub VALUES (4,6,'5329378275943663322215245.20238058768123314540388318253964726313120648232235700755866801918195710344138369800874235399515094124581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
216 INSERT INTO num_exp_mul VALUES (4,6,'250145412892811547138949.592621291590152419206270097656346630226508074074623894951308487425470437268130465956063593951784820669318897182831355375451719125809800516979013437732298382708070979871283132689492336823087794373113039154669229889503700598930220858275174342776478898670277868700384853696009897221747924643343353942154528501454689084608965009561564638167714973711022212547096732831847202912862290958304510651828842182545311077713664465815992616213663619529378061133917572474298028065850515876361609671565914027186063801852554353160801534696062207299890867876199323530337336273950892723090754719547285920090419070001019943385293110663922226230169381423410428577990604776655422105400452217085311617728003688836185608912367677734364834577573255789160419371322775733777518997638403409000055707558465286469808848200141192627396502735');
217 INSERT INTO num_exp_div VALUES (4,6,'113543048739697485358574290.758354267447744932153707340542459183720907885610125346262898114677742971240785031722334497858930434531517077525413654346644836353208132641713415396062580605566225794048569430676355036264762949452090151450855446984773994337170590068740235544320694721909983307239491151139099779296496785240814600627140543144068640768857707110930453204162312973998304574796413938461971472337040811785231390930046688391955000749644938061585377150632133417156866197053052425576957646564943278156977176976876921235395711611898108821587442609611001702344783440618040704066809035404237786023075676374788819144406909313755996914145273176359246052899650387182222905558751208368173052381982668563471143298720677965028880626152749773712037769548408324298835212547215352657271696665387200792785056233953536347605130973626194099064678842085');
218 INSERT INTO num_exp_add VALUES (4,7,'5329377457009123250369503.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
219 INSERT INTO num_exp_sub VALUES (4,7,'5329379094878203394060987.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
220 INSERT INTO num_exp_mul VALUES (4,7,'-4364411947278810125327066890819882483326918.05664098958260550284395870948992407314161088028674246708928421994893923699743452802989464864039994566042797942433140378990308345483670828497915478397481687305406460330009319949623844175096007381662809083363069100235985794575399268709260901964834244796150883807308976949196661411035264619638771824190014274817662519438658481432363824187693821267613212631153175155634316128036152465184903927860719447693468054624663668062006049759837326188252927823612718163916100588143128358998656306593393889422386501730237442526450419990376323903182669190482615734972147533221144682538647497701130447816148459762464395194383090936159579764712919396391813914821973715879062992249315474841639591907249142779103650773383644785606333916967894');
221 INSERT INTO num_exp_div VALUES (4,7,'-6507697.520580964829176145824902679560705744817573189143227837387224410616222039115571544850095278317993922427931439719549137387753697989249394347047436951117850128104928719365703899136632100669607126357491484781141296021264049762417528697619931558728863308905257358126654378784709213859234056696519305650316810797382293500878834933984458810656133463638442959750083607649924453935287420620424368291770694630751828333903156364366745210911640207075765008558904788350844410055253643515389003711759818446776538393914018427075074171758415188027562645239606914126802490579848138218395145734902830046359100742374008993296019987093605275289913663224324033923096998194326249508491872193747944673057257521552387923218450155737056841633810711295424578984452176016198348344913655301417872189073133147510027427530833694019910340299');
222 INSERT INTO num_exp_add VALUES (4,8,'5329378275943671819201468.88995490340795935797824952902333498786202536079000703830146057240651898748760197658486790165425772165585380839129948178510273188565692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
223 INSERT INTO num_exp_sub VALUES (4,8,'5329378275943654825229021.60868041634464923461847811467151197921638058488380774418295490670530782671111742467066510243892603363577850356311648591521611590965692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
224 INSERT INTO num_exp_mul VALUES (4,8,'45283653791262997781451381354094822.762732909505051438036873220502792213670540454778361182993875916509061144859281577740137081988678361247725064336120451090222456518107029158304937620179032477664627949959143233370320432203497828243297406462513350790251761540074946469824444452248386782451723637769289822576372357189700319768797708375563651655860093365309717823602754924352327588945034832436331911584742966378275504545736896430718939807674966738116698454215555860047859161126694019895490767779791933882712567492115664113775047192011252893773389940988533801360010782816196288710063568554147458866942816721046004257953642508395867837127678980002737669139369781058046396738606563716339660654364541530532834806205571191828994250708412638796240377704994928921528330863683630622922959130920715261879547446054261914770022377059156125037157979236658010950');
225 INSERT INTO num_exp_div VALUES (4,8,'627208063620965.397582272040628872773601055303353339700043792111288801181637510303989399395425313995651311362368773096988861977687484912995632130587762386590996099363383976320342247076516604162469063709298438133327434461462906199160715395064249299615054970359309619951777972710299484596875999967582794277241285253106817446259313281064844416249524876385699646393555435017820686376877981018047574348711991428666249794623006175739581915209218834701034964043360823844816042368184094857692062884223864639972005010863342567608351008172649209459933114800143792514183138995700133608613158857147417653998048890116531052767737435620558349226865105888201598712435680481803901906613772821370519525404423549161696526405320391828194356063547089626322474164332505209233143121068245585662919687001395119229263995765376465304715643388771609446');
226 INSERT INTO num_exp_add VALUES (4,9,'5329378275943663377078725.59616792993138452386059664269485161374191901124632386474661634799161523147237015531446709484039091244606359050341194730653343894986479159670583937529516163204904273806158788218327396375034882788180783796976731912141525319602448709213495905899041406302673881364465504945113279286939663215197485367850132991968081639290297033476859158044889351836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
227 INSERT INTO num_exp_sub VALUES (4,9,'5329378275943663267351764.90246738982122406873613100099999535333648693442749091773779913112021158272634924594106590925279284284556872145100402039378540884544906379809382171355490931218216320693213791113256760721925653394811317969065642404864072442190731745871963413981746671302248281216916486794296983018838956112081135739969615171358100498945955409711817327376172085836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
228 INSERT INTO num_exp_mul VALUES (4,9,'292388240303165948041827159734686.255558469787242316676287235194652580157149226950109397295920730296960145548003120827363226435916209781396711693581454960342091452830648929118261388933297036933167543189308061917640517578583521401267417187854611829815212778183983326568586118831109538377828156118900313778053576483381085207892754728937946691892849474364477434665960112125254104966566712906532318984871145605839506991591027939136026602051635433295687547552796828217859648186757719639965988287173297286034098497871707197092627676226053609131138590878743560287292934815277894463305001278326023708395571840850120055316276256138004565442099731931051413153564744766098053176049414330146267604802971221161572130161432525297614616942172815141372973870720928125699420370428856022295499447755488148545048400795053604349570217878099721865670458104653570360');
229 INSERT INTO num_exp_div VALUES (4,9,'97138902640718538.241246716463110895614166618530828908023040947887095196830690221211560526562522274118188963051412359798837957512805692731972838989047910709158995922699598619854907969493232150042212406549916252602794415099066259707018021422154933830674786488990033885447289593742424717170197810316367637885248684134204152352748803532396210051700193575105804898183523770153431536054848843504020390623875664696278263569145547515663340450903772852615789980257449146000410036925975898331113013857953289990299253584950458042598491897496393582249411290555264437893099880371008957017323366523688894303458743415715114628052487518110654201696604914159777300997374156315186315524817636714210119873791848535246674326877611945112249137224923201544452904111118569299934059002046318394345055859769572070097973298522564724884895879226870720839');
230 INSERT INTO num_exp_add VALUES (5,0,'-652755630.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
231 INSERT INTO num_exp_sub VALUES (5,0,'-652755630.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
232 INSERT INTO num_exp_mul VALUES (5,0,'0');
233 INSERT INTO num_exp_div VALUES (5,0,'NaN');
234 INSERT INTO num_exp_add VALUES (5,1,'-652670387.03916046850422757312745971450663862747133703839829692066597367760104802542475264601221776157515632293978442027199108085723617181683235487266149426304575903892721468296143475297345699313102262188759506518376019936160961709578829069446312051432780603656651983414612264636232727512091101057374054475214114364113300402823059519499217878746766275164739724770556122895799337810694888119810524986616938847385753562624139431982468828696587199570410008890188532132652095915565323400735066310142303225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
235 INSERT INTO num_exp_sub VALUES (5,1,'-652840873.82996096805674909792441698652235828221445420381749472095823439215841389779822880154688608619423079931032645214190898787339168396375791272937178074945473802633968350414211085025663129356908887576538544498889782055029046596593888271636613472988050090259449836342389832330814473910881711053475561205644968306669776242949930651397625234795216816397330872127577980937461350104018382663378200293023018506679957617487661691020231880567020416430204091941905612894161614165865789507675064355852373225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
236 INSERT INTO num_exp_mul VALUES (5,1,'-55643106304872.575994253221940844841058071061962511162776681458310912066379595519265546225338405882027547140476045378015935579066580347282075024392379464189067155567624835346798806677988850250198082355055954078446421075165109896091047534711081616362392995575466807084807876544560268050611445006601394735810211678919646667455478469014906335433468365011768049600750224822391684377238242162320161552720449713229523135506671063115436813348612986916614320012995541575293478341408982118538094438068036422562665160411591652618670802973618768526197813319204816293073794413317669922144705633308090832805914096147659820167569140291210526520361556881576175809360614782817717579318298657744021133210954279487777567785280633309576696708168342539425395482429923273623865667723482418178781573723597156804085501875735112311466228778929147929');
237 INSERT INTO num_exp_div VALUES (5,1,'-7657.550797567691019915353529993301413746369700087741672762343206271266232635965032053368224472333368713006346867984576168784127503674579531243603836945595880917241997606783133673324236134063757452734295148763280059050480246827193380861494669624151921824660313516974440913733511526807313019192263170823268678149435664224184903925632177789052038092611394447709922076676981043877747276056677801802695466205531230350209787298926245402046182150996849906836743231861317120171583577624262765589605263477198809166390259128339127005924586833372241946051704497188891325715185091060185547236923494393813210904033520844572880475265306843414506359253445517738473745552980984097762509546161690823646176501838559393690565709795724159196133663168004773260451322595899506776323262195323943138344537866088159583331807728944620284996');
238 INSERT INTO num_exp_add VALUES (5,2,'-994877526002806872754342801504871.47809095279915423939648794226185974985600242391612965412218049794216637114648812993201775787765690351615479957141288239552036371132381627958673244764559862836085530643408020551049895730005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
239 INSERT INTO num_exp_sub VALUES (5,2,'994877526002806872754341495993610.60896951623817756834461124123286284017021118170033801249797242818270444792350668237291391010826978126604392715751281366489250793073354867755345743514510156309395711933053460228041067059994425117350974491367099004404995846913641329458537237789584653041949090121498951516476399288513593944575192159570458664608461677113504914551578443229008454218964701550932948083369656042643364608405637360180021322967144409944099438498649645368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
240 INSERT INTO num_exp_mul VALUES (5,2,'649411906691138274293985410502516861224852.2323455192714410716272307781034189160865613770320102043319541634113746032638191509585045862973333645830298922352816245477556264222094036953195419857712804755170632292914187367964994214922001758104594052499795564860466055599417895782179851297585155129541589802249540436678824225950907268084876110445460948679383611117263673106597132046331719468816839434908155684738864149955129235751738204036443603521478609787295079710078973503970964790273461142497259987849074597264522099648376356902360358310245001183020992360260836105404118742418040965190000718736837422434593694808973939805954329718232693154128543253581495885789333274488461716809104532693754070810202831113003978085636579574171344721710232931261731022478029314435363413498991740750878099825781577297965642009156858479681236085226911858782115');
241 INSERT INTO num_exp_div VALUES (5,2,'.000000000000000000000000656116570506105776235076334177868550033347254561166417969910286926369599900073757929714260350320362090452092025380232792749476245042480546813848702351830607516880397305138543526307608094143028291193163613755680419049060162928958489964834941920423432354996040147818253087783193280640282263490705632002572757216731766513434035163528102590524432221718194164133959630768718395847710529339782880381264265894322494716854757290930538739000043383104085867828258790010654331660516512156519838978751447311068903958136482041673109857552178367614498426226323001399275980281507353231821022591045797658991388304873240910526149138339658220844723880158150606035181559877351791752701872877147074033569061408920725522180134133183999181370354585872214368766629114773129541658653693832843354053701079334077');
242 INSERT INTO num_exp_add VALUES (5,3,'-60302029489319384367663884408738513110.66683195868931664491302527038538338065260819361151478340212147889934633981101279593065290940544218360883531149731823374304151252289014494378769385157204705433009477214625880056478643611622410268943757215673170753460135411513114716313801477916713433956086133878890802448531292334570886746283905390661877220497842493537338035961123751393889400517474762491881277080205381424363695095196058838349029211365212855028824622924678684631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
243 INSERT INTO num_exp_sub VALUES (5,3,'60302029489319384367663884407433001849.79771052212833997386114856935638647096681695139572314177791340913988441658803134837154906163605506135872443908341816501241365674229987734175441883907154998906319658504271319733469814941611260503645706198407368762270127105340397375230875953495882740039984314121888705481484090911598074635434289709802794549714765847764347865064280637851906308955404165593747173246944693509650424312007333558709071857299501674917023499921977975368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
244 INSERT INTO num_exp_mul VALUES (5,3,'39362489275784146262776411377472433635883331946.794473520543457442955620133347015506556162839462623905489255080102447195050109095701660164272430316804466254467810714209179752718730906325952685817112992943656292503112803950215110778476301809440329937774061163668461957943313261962261081942055908935814323069621279128270849852239727888939033546870208376394878842958202403235309372240005941467570230067124830916866857395233038346727879951123599893174252558078732888910139309038957525961212820831321973219557165558911222848692996406741318948607549825343491479728117062814094258484536263158005174429922237853707635743736923521032098496725445243775790161216159399180889906705265012270270348146530113428221072591696851818281866095288773371414866822270689959827332258348570976075184933893434327278299820594014788148344260948638847457822697682605612771344335201258128');
245 INSERT INTO num_exp_div VALUES (5,3,'.000000000000000000000000000010824770508763323320533297369674519056450544793568147911931789010432012750062661590994728968589403602468229106206242395792957238667714358401601098858606386995096923432407249369639633268143022787987190106724545750803196130511146323174462918572423414631798141263222875752767731279138952850500369328934959764805948568471324562210715908420467881411844098258193571194910997918428786213948547748701831331312040839544355427357749520227124858111324859160114175254197992204974033767300989488517391063188153561391320190653403747521648794370679322504188364455328709488846777004202196382575648619395139553279192346251133156445942281048959845827006761160755031086836046398020850814350246219929303018051720203943879538087954853996826539712240458022307680912400297508925714946398031304516583939283');
246 INSERT INTO num_exp_add VALUES (5,4,'5329378275943662669459614.81475694159581596077242547133292502869630735172901157043010370467618244548786897684821457816189831652076071977025794948484549600736179389638319303817478693948215387894509009504287664213474693208847025374388286162907794727810231557001266897729978691844410171412189947386181530441402903608214502713480332746271552746231631136145916685939539173054989927058122097304419584979598595477177513004218594211597809300517607260841648610322863666300637648662611916496850248528515936635845594390453288113296413254893687029540384176335735114863908372780241463999450547422213639667099644505472777149095004849805371205203850993689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
247 INSERT INTO num_exp_sub VALUES (5,4,'-5329378275943663974970875.68387837815679263182430217236192193838209859394480321205431177443564436871085042440731842593128543877087159218415801821547335178795206149841646805067528400474905206604863569827296492883485842974145076391654088154097803033982948898084192422150809385760511991169192044353228731864375715719064118394339415417054629392004621307042759799481522264617060523956256201137680272894311866260366238283858551565663520480629408383844349319586471282301251749494706061523663958609947049544255725056447964564549684815188261035801892684889942971676086592385285071073528462167439314005547455087297279161738865296114495425732286867689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
248 INSERT INTO num_exp_mul VALUES (5,4,'-3478781676337858247983014311182511.567538638808357215203593479841446379226774481291286361639429856698999485760647422501864626078375852610019829111004807806660731243672830787729048847342063218718651165150612717759770504648306347926061960607388621011846314969634048226452709389995594961695723139571002939804473057725442880410434039783304583526414509590532906062732322732569475349107437896717416548237633532805602064623969799081086996320156575550896200848758685986331692388099427314008504506503745527468550106879602399030419569897808150076298414568875477195447656904373310322813412927463518325927626891046356679526447117311923853482118502868148386882363449163182892615259995945992014431502761210899772725227648729095696228388558331052524469604046072203605897109629560683446827492904111565278516043939137760721315953500281379039771826554155511347152');
249 INSERT INTO num_exp_div VALUES (5,4,'-.000000000000000122482510461124748279475400009367345900846466958806966807399903713411658400733717078392550780910604704603123670767210550800752620037863340961255721285160854785449315208955654408132775022766783343331151895973970395232686910362226184006990485313002943710214511418310741271074710741339586430026286272098156531835438969774325517509155992092194349661122678547097423264670055720422496527272118788005921590521726691666219504214087867030003203385360001614199656989667055583749577099440092378355805901262289841168751608673297446473709956390142112843400255748161809121986096092991616144443486023218404881798896685413932215981950393130292001833627899480153863300557853617312991880655905907971211246077450786084079040513198340644157868678782195341316027563717617074364438885981635394382733697473265872796207');
250 INSERT INTO num_exp_add VALUES (5,5,'-1305511260.86912143656097667105187670102899690968579124221579164162420806975946192322298144755910384776938712225011087241390006873062785578059026760203327501250049706526689818710354560323008828670011149765298051017265801991190008306172717341082925524420830693916101819757002096967047201422972812110849615680859082670783076645772990170896843113541983091562070596898134103833260687914713270783188725279639957354065711180111801123002700709263607616000614100832094145026813710081431112908410130665994676451253271560294574006261508508554207856812178219605043607074077914745225674338447810581824502012643860446309124220528435874');
251 INSERT INTO num_exp_sub VALUES (5,5,'0');
252 INSERT INTO num_exp_mul VALUES (5,5,'426089913064020811.057708378200224487694731586862745370027417544052374884336177893807736467646454486029424673621605232432043672119510371547153895504456723242262639262542904151307250842477327375961936454637964429999741717244285121019840463692418987118402683746281993192269229200465080358289645050337976214115902915692028162689089167194843185708212911364017271332623359100711545479273675423617018342297822477514128997410642005300368966199980354369928371655155437291469427189561877718971914040675572136507472590254222870537216617260612835805368361975725573009455402822669103118872235140158440342063571894152305875004532651814592458133460160514384171804043127771746596286988679698684698755896736275307574630777027620558428909546664763675431701332632828281070572045822129984625797185173815273651376003614106277727279230096226977335510');
253 INSERT INTO num_exp_div VALUES (5,5,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
254 INSERT INTO num_exp_add VALUES (5,6,'-652755630.38762364608541718463145771120672223443489913059334543712856431450577465795351472116052777583325262472505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
255 INSERT INTO num_exp_sub VALUES (5,6,'-652755630.48149779047555948642041898982227467525089211162244620449564375525368726526946672639857607193613449752505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
256 INSERT INTO num_exp_mul VALUES (5,6,'-30638438.151446159804025029882398388155309149089870990062944469684482366692824338098201222171115395923414887930224163525189097571163687285244255335505387733673499447610577050114902372990462064696637481657064525319516004273769831260452832960893174173254560250804003884280384718123289136453955482855362019158401218620018346500189769819687260476334734259702665316562988639223597110627626759216850014150105605927773639897638043177685498804811787888811168524202700283461266793154726325540776914500415140842975457394524215869103737379109516024460317825645645301237375972914247141703084877141866316168268901439172491577729880760950895760711857112463508064820414904611059588717092145484656103798852859978690742216940980929562068');
257 INSERT INTO num_exp_div VALUES (5,6,'-13907037655.047994416383638650569341223199042786813441967582376077478024677494832069402897226848055043557486983268019376307288565911231748501636517992289743940159005664424461285010295150828744259113760652210086696250085454819340987566229400805422509198052317518991183515696724846560872057916862620762789778660622787735923967096950195583369113574365386627110408307941105082873469072519133330718161987781080307947247163619814890462416622144825161521790673339279047700672881113718394727610096366361422482794458375587355933614201638489194194834709433413694420512869179976485096875057742460003147602405353823942488343056906912173170809084207937229591627643451380735179767199816663168139837088183577975769442341678933576388936845704303859241320794255052627716474860113993958556604381707826493168941926878481079724185426298004604');
258 INSERT INTO num_exp_add VALUES (5,7,'-818934540724601372.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
259 INSERT INTO num_exp_sub VALUES (5,7,'818934539419090111.56543928171951166447406164948550154515710437889210417918789596512026903838850927622044807611530643887494456379304996563468607210970486619898336249374975146736655090644822719838495585664994425117350974491367099004404995846913641329458537237789584653041949090121498951516476399288513593944575192159570458664608461677113504914551578443229008454218964701550932948083369656042643364608405637360180021322967144409944099438498649645368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
260 INSERT INTO num_exp_mul VALUES (5,7,'534564131989234694540350103.27821462973515555648644772098605028371173048154132108733819196629002548296868548691993248746628993380136454426833349407578676005545111508293942736555269938962058196496152360848131645787941032968937794930046928523006455386861100809286408671908320322523368135203881520526880998279355848280412933152306299256343179622513731096363088094541514890135766460631462465021694553063366717467560655272004461368865264059368514271105464855575429914212085797297268595943955105608543373940035636033207568676745293499106348500559628723682588033431457023964317090780615020801564861497990103549650624438425421690193862533733474254');
261 INSERT INTO num_exp_div VALUES (5,7,'.000000000797079129642393611556079160915147221153735075943759104977169600937534508973732991117540626046659124172765761873705978811124901421049332579161931652390647472911517923131800238903184679028518657818755558526885018755394697157094867449047655737107085020874974955627907737126958129710597811740696534189608639914753884882702680512272194316887744972931453458445314561564591875764930680945589486999586667912816485821717403892703364322658245615895415781719033810595358092343690359557942948213374234065052300866661453767599465059289920067095083062096458980564265691295895672503728815182981118876144075942348853666085714846210822847053889733510154276933759200630639642310562242207518883342516103725757482864105340008709446643820864294556778969997115586027866760708448174502158738150605938364482719960251612464993');
262 INSERT INTO num_exp_add VALUES (5,8,'7844230593.20607652525116672615394735666141304947992676684520382624714879797087461877675155217754947572297228288498221620714146356962938009770486619898336249374975146736655090644822719838495585664994425117350974491367099004404995846913641329458537237789584653041949090121498951516476399288513593944575192159570458664608461677113504914551578443229008454218964701550932948083369656042643364608405637360180021322967144409944099438498649645368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
263 INSERT INTO num_exp_sub VALUES (5,8,'-9149741854.07519796181214339720582405769040995916571800906099546787135686773033654199973299973665332349235940513509308862104153230025723587829513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
264 INSERT INTO num_exp_mul VALUES (5,8,'-5546455599206321494.0676583421119904300307105296377723816472192007866147764761501865875232824814135783697976183493106885436876081315217834621720906478074798596116645640251460842350553806256223963023430631066024389364515688765194373161385579258482225808660340732705687558150699172147896486727530192499184101617379930846663835628510376484675411350654979679181852179924386290069790336316958202582966248703889464308649631486542724072047294216362186036638115240070658004553260251510288423749333873893917690832829128021808383128393431810674177390352413548658782609064839524756041501835115152819802758773711821322162752064589750295542985780512921839490040396053737870038534216948323935020460307350020911362024271167085905714873548388570602799432705061561572854498075600');
265 INSERT INTO num_exp_div VALUES (5,8,'-.076822018213756690975099471985461347542955923191183223634407380481978143225129486622351714276452369661632980197282261508936298649901018470846144321441236073683990324039849865750139470288565622579952182053792815638469841531577235191276257498209844422440366423136595067535337374223115507557306455001792362506235886189722508617024948653046102060677266555476719102193278190540414934812073355995577639986512222998268934000209944414236509139290657402937840986061987219441410741189615344050459067454369371094189930607834375561948483494321255500497786795636801854613881105643003358210407867114145806225724880370339074242480071595684502491827709175732777776915682786771730423733673667248186336046898260378049328204094804755195626798951644386924178161926128482002518979482630732440619051262620098544265763306253807191182');
266 INSERT INTO num_exp_add VALUES (5,9,'-597892150.08771044822540810796370552966707032464017958269847934730769542644402913723848026909285133109089452632480800168074607090893991283808726990171062867538012237270000932798704781608969096508450960185964292594677356241956277714380500188870696516251767979457838109804726539408115452577436052503866633026489282425086547752714324273565900641436632912781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
267 INSERT INTO num_exp_sub VALUES (5,9,'-707619110.78141098833556856308817117136192658504561165951731229431651264331543278598450117846625251667849259592530287073315399782168794294250299770032264633712037469256688885911649778714039732161560189579333758422588445749233730591792217152212229008169062714458263709952275557558931748845536759606982982654369800245696528893058665897330942472105350178781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
268 INSERT INTO num_exp_mul VALUES (5,9,'-35812445701642379.972368737320206275515144213236752803936806738624588812089615098329765811617509505790110909629109400553415312470540217508070421816878544125783329593128638405659896184248784794258084116406472768709113030915308410565617764394827427154923321461158387012978726512246146545834669665093228316853342805604075936530371665576147966721599968786161939347726656168798065647411457701453987215491345496003650288850096338695703984042549594979897253521041581573388369367579323607093487743440894765114619634001789457486407909224339065748496715380572175183589195611952939575073075140094901024063428239223964510824958346570603142906309198033196987949067156046076497974760641964978711558209708743776024313916111738542765749928287600981397080809041007714387564206594515733287925008053261840295560398311905155157989225181164097547541');
269 INSERT INTO num_exp_div VALUES (5,9,'-11.897816658873986795664687519069203701902563457968097729876034796143085813450454323128600602495745166997629078984618283588337379184733369491549230343315369634754204412939757136108898254582353378508832611703989221079986765793923635928759179573599208612516427628403686659479459867527627014558600521732194240404211484706621458983727740143568799713006127585168144158660566534382037451913967363675002134687952374080694449905223371627606557311710348820900963340884001770733452314715448053233208783321215998063958966729954113843581448912079950334969908657535514847005768455377990262943747367245613296497099716892292154137652893990339292671106003657659470243633112063075297194691349631518467702876183897580432003030164590920118726657290102377710611324297862045849839571689192181090062958059281673245670440852080202548743');
270 INSERT INTO num_exp_add VALUES (6,0,'.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
271 INSERT INTO num_exp_sub VALUES (6,0,'.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
272 INSERT INTO num_exp_mul VALUES (6,0,'0');
273 INSERT INTO num_exp_div VALUES (6,0,'NaN');
274 INSERT INTO num_exp_add VALUES (6,1,'85243.44233732197133191329295927531563604777955507322414928382967007765263923984471408038635831036097817458527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
275 INSERT INTO num_exp_sub VALUES (6,1,'-85243.34846317758118961150399799670008360696356209219504851646259063690472663252876207514831001425809630178527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
276 INSERT INTO num_exp_mul VALUES (6,1,'4001.075404054519813215296429095020391062109905613738157927030437221793757373268325953178030040276107574363822832168160758728653712686313134828282109532831190239521843808940611025488601517574653932032236616573457735900045655665690517797280666732780030171712864961531623060353548802466577910774711998056232872212688464691036260746751992072745518373073825852119460094113694393273456369345499434994672730920070410547163082189385645712866100999708173472360864669110044660667614583576570496399103026286828660558854973376227247132815728164629722965145778698957093136175449225024685874279280018547740');
277 INSERT INTO num_exp_div VALUES (6,1,'.000000550624150700285432940805295709861455424264970126953321538967550091614148982212874391026630805836518138806917934859138493583812313778188030836027246840794439412443826640206464415527687555214009725107630387889854278497875708390050387195108441635824296563108288712340902423706104029452615686971019125750530034798026103476074158922893374911891438688457439945897348811702908216883650280617098402133628688982793791562476980709924382381505517834196446365877784931355599480881104446907801805570471686295270927836995181422963320376948188855989986414581755633425437161760674162177776773597848142496583128607548351599750592863590334617838124741567654525843413232313914310487355539260264225486180000012813397807525203822863232682089295055713257835007742845010741137213301116647610033909062369843750685396196342928455');
278 INSERT INTO num_exp_add VALUES (6,2,'-994877526002806872754342148749240.99659316232359475297606895243958507460511031229368344962653674268847910587702140353344168594152240599109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
279 INSERT INTO num_exp_sub VALUES (6,2,'994877526002806872754342148749241.09046730671373705476503023105513751542110329332278421699361618343639171319297340877148998204440427879109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
280 INSERT INTO num_exp_mul VALUES (6,2,'-46696638263247522384986521136500.479312417066793299922708112595886608370451213741279484136907754744903470430131032928908162742687359367826808123516519335458861613010646992354378739165872253762686683966945711430182491860196341344982195078000259063231136011430995647812149294224699587849791008794261026932467933475782780');
281 INSERT INTO num_exp_div VALUES (6,2,'-.000000000000000000000000000000000047178744084866106587600962473825168237820701199970144691815329658682341685812472535816245052671243808078367856957579485152424914481414614360809698177236664771558713606961423658442962083541733004775309314926918118528217478256885324362912426275407382550929085958089798861918760121727491366034496581249711153289495601712583077918760003840368008056353090552282274780428335438032908213783490070198414584291402513547386013689752310173492320159738977752795528725029134841933604057954874523842273790958618375118974623107241366036640538085329921129023905888674299774726871808862832797230915933851225308164365269753526489223540580759951230801125605963901491073619448437890841032149898629231552019804656219062534881074125995130202820302133432951999011667568746004715268323913437054078537');
282 INSERT INTO num_exp_add VALUES (6,3,'-60302029489319384367663884408085757480.1853341682137571584926062805631087054017160819890685789064777236456590745415460695320768374693076860837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
283 INSERT INTO num_exp_sub VALUES (6,3,'60302029489319384367663884408085757480.2792083126038994602815675591786611462177090630181693462735571643935716818574980747701251335721895588837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
284 INSERT INTO num_exp_mul VALUES (6,3,'-2830400711649493468815157129316992649.40542786074520931471973065281957756940496588853021620372179463538053123396140685749478530925306163968207226329985017644835203709485594362663495728106061878665324856417118064730721101615473194292620972173690618491026470353143141125614124440035267592258385099934706896692953497971326605145704135723011753705907329979207428661473172503098296622281647255008204864404416199384701720347319806375450632245634238172654086373193251877533131784268854289406126119630708578053354762596511353053106459297339360827562281168219966099848212');
285 INSERT INTO num_exp_div VALUES (6,3,'-.000000000000000000000000000000000000000778366376597400971124059102619954214055884926284646546105035591052258074563706355894551049631537984053410850060739107742208523938741961208742831871056600773325053133977559789796700130019975964192371715826863472981072974742704091801166438465082519558956925444635729210849210496466189037623555622901738570979273502405907969114110345815802999687171113749364073269902319653450479463404003706147915064100959774312307195946966281098140229199529866429134937742584938255441169541436021827079647129394362379406256722903991353136733939395366152312959281905058592776286736536360235356737359904478313225848562436632109470589310799000750518904145312512621838935796912993778920622238202744037977772169066929474233952081158212174549695244127987299282384885288897893503991509410567351494');
286 INSERT INTO num_exp_add VALUES (6,4,'5329378275943663322215245.29625473207137544719284446115519970394719946335145777492574745992986971075733570324679065009803281404581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
287 INSERT INTO num_exp_sub VALUES (6,4,'-5329378275943663322215245.20238058768123314540388318253964726313120648232235700755866801918195710344138369800874235399515094124581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
288 INSERT INTO num_exp_mul VALUES (6,4,'250145412892811547138949.592621291590152419206270097656346630226508074074623894951308487425470437268130465956063593951784820669318897182831355375451719125809800516979013437732298382708070979871283132689492336823087794373113039154669229889503700598930220858275174342776478898670277868700384853696009897221747924643343353942154528501454689084608965009561564638167714973711022212547096732831847202912862290958304510651828842182545311077713664465815992616213663619529378061133917572474298028065850515876361609671565914027186063801852554353160801534696062207299890867876199323530337336273950892723090754719547285920090419070001019943385293110663922226230169381423410428577990604776655422105400452217085311617728003688836185608912367677734364834577573255789160419371322775733777518997638403409000055707558465286469808848200141192627396502735');
289 INSERT INTO num_exp_div VALUES (6,4,'.000000000000000000000000008807232244507937251856465017967626593430084223212999583902527587737263981869382895220711835510154989851222501080395520249593128253795609198666884523792646863341248402687314509176781281863891589925961900674092953408613128961234166906173266411035009516545964362406728942021813644419154548354247112601793685146960840364604115937119024575638240439041250900118977183124605578660115160551830946251713350556181960983267689939549506518185340972020820080460565392359379680036788592213479105831301723237102710863182596413567756605711230290883888612188805367801369264231165178487334557824054205160222371548005742602736713668548450400926514169967213301919971189065307721110805424950794015852531342286935114651278691214233054575660712537044810163930633456573860895791198853393107188289695511873068');
290 INSERT INTO num_exp_add VALUES (6,5,'-652755630.38762364608541718463145771120672223443489913059334543712856431450577465795351472116052777583325262472505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
291 INSERT INTO num_exp_sub VALUES (6,5,'652755630.48149779047555948642041898982227467525089211162244620449564375525368726526946672639857607193613449752505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
292 INSERT INTO num_exp_mul VALUES (6,5,'-30638438.151446159804025029882398388155309149089870990062944469684482366692824338098201222171115395923414887930224163525189097571163687285244255335505387733673499447610577050114902372990462064696637481657064525319516004273769831260452832960893174173254560250804003884280384718123289136453955482855362019158401218620018346500189769819687260476334734259702665316562988639223597110627626759216850014150105605927773639897638043177685498804811787888811168524202700283461266793154726325540776914500415140842975457394524215869103737379109516024460317825645645301237375972914247141703084877141866316168268901439172491577729880760950895760711857112463508064820414904611059588717092145484656103798852859978690742216940980929562068');
293 INSERT INTO num_exp_div VALUES (6,5,'-.000000000071906039575366987930696117572143566208825430801491864851999044659045681114433294052065377679745375399878664822361548237094424148992770296383642432040129230180142339557437679166815114510467763288057917694948929009212876391059413439647163295629904270262780935228234994930653489111444964446097124407804311494588517082748514970905563707392765567625639455978464081409330528324962333492925267647686759704415549221137291475247571296491073010175087298752769122449499990102435819414671847617062560524758344361194566796343756743243766853291113852464023843527189221162680613675369708907935197867458588904367993736363321133720345058432019986643353417257503619558797249295232894674255060861358071309619524800424087896023710729815248847792174290644245138831518072176198607255346603270853333176255533974364728342822');
294 INSERT INTO num_exp_add VALUES (6,6,'.0938741443901423017889612786155524408159929810291007673670794407479126073159520052380482961028818728');
295 INSERT INTO num_exp_sub VALUES (6,6,'0');
296 INSERT INTO num_exp_mul VALUES (6,6,'.00220308874624532134736695825088747995945783791378828770826401323533973395137378460250799184832278118133622563295093909508983301127615815865216895482784469538070133388154961402881325731054433770884496');
297 INSERT INTO num_exp_div VALUES (6,6,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
298 INSERT INTO num_exp_add VALUES (6,7,'-818934540071845741.9530629278049288491055193606922237795920035094854496163164602796260436963420239973809758519485590636');
299 INSERT INTO num_exp_sub VALUES (6,7,'818934540071845742.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
300 INSERT INTO num_exp_mul VALUES (6,7,'-38438389630389612.0042045464692275627184627672063157323631169405883031379129843031477339360597564128205768842448328088');
301 INSERT INTO num_exp_div VALUES (6,7,'-.000000000000000000057314803440765029050667129936880528769333499793237773980613524885506515999851858649385968476426313207429914995755091541422893944525222307473169425244462149015717526718376299808423552027796204632286454853167559026787019718806449038446612978917236245943248168920696452018925986743620392955122431521581268518101342690974749463089739042586011924590503136498488946387508310209984849243014542648765897536338824721211252335866349509669538308454367849024503312249951727948786393404944555844863805495937835281927012430439403132382055464307180153473189842433614777883826783689904293115204700185380661601223693428304020047393499702811581067120117405280772944184877279069842269329959037186324135435468322336398566440055479142909170224780318371473684868152271947368867666706912563225912012901437076773416');
302 INSERT INTO num_exp_add VALUES (6,8,'8496986223.68757431572672621257436634648368772473081887846765003074279255322456188404621827857612554765910678041003765241409149793494330798800');
303 INSERT INTO num_exp_sub VALUES (6,8,'-8496986223.59370017133658391078540506786813528391482589743854926337571311247664927673026627333807725155622490761003765241409149793494330798800');
304 INSERT INTO num_exp_mul VALUES (6,8,'398823655.819545574205652791249227663407026876411660299394659390409794761643751582473390322547798567169668246138880832642141417531427935520467563318363116897177899262525720710134129529640376020947774470933902793259531840625444267816319963200');
305 INSERT INTO num_exp_div VALUES (6,8,'.000000000005523967081937952184172713994498918048454262874017009201501812494019618863622631634736130436187167745347383745890248619882896153083428308074678908731005176810208100004498415662458272149380846809398637385270265351808328466537502823071145089961996689711299405627596294988646826454676198092260759424935699382655736524042353938814268760468122584678267125994645166955751211397353140569987758938572953312303398024147927938612934833827734142292697389251052485981023756760420972614486278837214553818521196182883489483756785207650821722660455451660719560529693418375773124813290305501923899840247103166971466167032437598057958226806335324315214908788839919408525748236713611579486768218564733151121028172253396652755590051310396973181595992981076269789287489208817712754098019817792758730835341151711523474207');
306 INSERT INTO num_exp_add VALUES (6,9,'54863480.39378734225015137845671346015520435061071252892396685718794832880965812803098645730572474084523997120024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
307 INSERT INTO num_exp_sub VALUES (6,9,'-54863480.29991319786000907666775218153965190979471954789486608982086888806174552071503445206767644474235809840024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
308 INSERT INTO num_exp_mul VALUES (6,9,'2575131.137912978352131546639620215541477987701194164886305951830806120142596646541302305984776928560906754259789485960991272272782091464270104432109904222200473616116525297615725803495463468272171161659654385929185160689572943852767523792651123455283534072794326647404332228203001469884016996499768656263775233430922446983838511590562929268821678518640501686017030536100955531423152839988008496919169395159653034847677470665418765966542111749439412');
309 INSERT INTO num_exp_div VALUES (6,9,'.000000000855524875533453524582534418967571681572635027972658867593464437484123442242521660317156546196609749230372398872487667521984251509483676665788527375343148382604836976332389890799079878151841905152004537926201190193814594954194044560537664560344224646197027029681984683465852110060077865421064400958821808374370779297676624123638191407441015008434084079839721156870032377372497814037418047056438760664237367081226979226606227037631073946209105678283624370820396871058367779887709720661001099338250009251834581804647326512873792849059661525874160414378459696930831877643599421297749483849526695657467708603491876916749718079725746259119898269814551222336219537198318796277931946529242436502235147453584237994498566122973953203597470078105606906752099294162422474758048436539653041606499637623370030079916');
310 INSERT INTO num_exp_add VALUES (7,0,'-818934540071845742');
311 INSERT INTO num_exp_sub VALUES (7,0,'-818934540071845742');
312 INSERT INTO num_exp_mul VALUES (7,0,'0');
313 INSERT INTO num_exp_div VALUES (7,0,'NaN');
314 INSERT INTO num_exp_add VALUES (7,1,'-818934540071760498.60459975022373923760152136399214017262844141729040109985386964272131706381326192223266583769046276181472898406504104649192224392653722107164485675679551050629376558940966195135841284978096687306110481009743118940565957556492470398904849289222365256698601073536111216152709126800604695001949246634784573028721762079936564434050796321975774729383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
315 INSERT INTO num_exp_sub VALUES (7,1,'-818934540071930985.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
316 INSERT INTO num_exp_mul VALUES (7,1,'-69808760806266041400340.70700818693892852138813934414383886494691670042143650609934777814995087699409404201920249076407981012095999320858479644760715204999741683528746097757549835956359129287002171391961763797857794730120426599135099619822532290339000466211195776337667123320942107370731349851576864242697412616810236323676004067839744992733887503405311090677026008324895177587064547630828026123718296429295638934384446325302964896473296829265805737112709269803814942537657996725913938408781715328945194948010970');
317 INSERT INTO num_exp_div VALUES (7,1,'-9607014551997.140858001442365669993007297071681832468350855627077185145567261170534005832165603932891201648027598773639089125980996652005412450490063683624648655909636499261774535015914730479401090227915382926027949990128880284298688443593909017437720828163877690126019616194376778317148693270900349151496295698078575648169637635898560612738481294674167553369445426793073304518646116539082953755973571046622684332425840412198776081251646424875405772676893185726872613804612566569794177506268399878105117763696990094108960076591684779180089885283939385808214239337829666227427148603057941899878123459708920227867371285837642561064461118016739395972994827327543594846953341750907541716807985738518071480209106185726125017342997283356926976052909493074301401955202616191210810331245427141945840542129607439703255628683506772979');
318 INSERT INTO num_exp_add VALUES (7,2,'-994877526002807691688882220594983.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
319 INSERT INTO num_exp_sub VALUES (7,2,'994877526002806053819802076903499.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
320 INSERT INTO num_exp_mul VALUES (7,2,'814739569184924399102711674444306584731316176345067.39834031417849342571224916231092924046722938910652929295271097903377854123984307101079073134405782275535446337229706620713104545454319555885847481531722101704765783025789147453570970090');
321 INSERT INTO num_exp_div VALUES (7,2,'.000000000000000823151110229758332661330617426417726331211894330147399760458555778324097596176117291103184653828305857999638466183347321835058943563347767579219763002258622507889760416640758842509635599414768344140175277742935564567127659688612699366182158030839083982896107176174766408199870924563237827899202849733606842856491701660599599211106794572237923985121475458446997860253437578966578617985764298513928307852082168209458400544457824307270777530312648199364084272310536024283945598340590403612752287693234647719354745060851129534452514828239800716088248915975054881011343555492596002595181046121935660176097475159074973635534016835214952415720717896518544064238656360099884889450237541254761746029507300068198731306211736696956568648033834554273602524147075895460874922913883751452403825099444642503437');
322 INSERT INTO num_exp_add VALUES (7,3,'-60302029489319384368482818948157603222.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
323 INSERT INTO num_exp_sub VALUES (7,3,'60302029489319384366844949868013911738.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
324 INSERT INTO num_exp_mul VALUES (7,3,'49383414785234649002982046297226894664526726187218771083.0993243619030008310875293647868815940421844461627295157812843657782639833900543200310573708100000958929315945039020410482966753145208427035917753919085618457760620513481628641658765820294863970581642745379331727722585319163262763708386199720411053619449096019862596221607526610103408936214184850115071874430846697061554769773328338028749631552202705583855831155461651414320570061181212214810086436100771547030013079997847086');
325 INSERT INTO num_exp_div VALUES (7,3,'.000000000000000000013580546907080371873577430837141172674171921610919544849037647398734065712983603204704663262116138799357430947986241590690589753181299773842880079777640016786921825609617596862828930939366173224366864448436461306602680780407912534492687474933386043505172346330210659476505435994582446405414027199938970759003336829722057241708213838318628292667946636226143164221380503228191376939596663443230082698085439531600756771639601022064620204571458766303985028143400866776954225590745596639602613498355332049777798367675438365442468743270334407716567057368347458892075084694158566383133325959042076573734408841629149903649365079563374278550978052491499304166424686842598833319515705663176855033865872333988551611996194856472662292344160194821687681312501127516922809221030420253714666026321243515830');
326 INSERT INTO num_exp_add VALUES (7,4,'5329377457009123250369503.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
327 INSERT INTO num_exp_sub VALUES (7,4,'-5329379094878203394060987.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
328 INSERT INTO num_exp_mul VALUES (7,4,'-4364411947278810125327066890819882483326918.05664098958260550284395870948992407314161088028674246708928421994893923699743452802989464864039994566042797942433140378990308345483670828497915478397481687305406460330009319949623844175096007381662809083363069100235985794575399268709260901964834244796150883807308976949196661411035264619638771824190014274817662519438658481432363824187693821267613212631153175155634316128036152465184903927860719447693468054624663668062006049759837326188252927823612718163916100588143128358998656306593393889422386501730237442526450419990376323903182669190482615734972147533221144682538647497701130447816148459762464395194383090936159579764712919396391813914821973715879062992249315474841639591907249142779103650773383644785606333916967894');
329 INSERT INTO num_exp_div VALUES (7,4,'-.000000153664179510102140733858340480800294287837601105047285453457000254577644933901525444082336054243749405512900867540483190494113677173628646221933766421338612376123824684592850465460156248403574333545090544920568230979754949827013129083778435107488003838746926270955224758508832133483591156567868631938590248213604979638895901933775098150684618378235712437137852195098700137765601802898366867034641606131280434771339920637353140131159441790904703083143627590062236537714415872864218260252838432414759890832271190606933534662897006726154587341385852258168335058931957995901987808602365467861573344491265289043037273815504867254228957776127752540924854546837197432384563153608878864912196453587628891285275067452280357349897203095502806923463147414086919014592380804424300739713935051357374227246098303140106');
330 INSERT INTO num_exp_add VALUES (7,5,'-818934540724601372.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
331 INSERT INTO num_exp_sub VALUES (7,5,'-818934539419090111.56543928171951166447406164948550154515710437889210417918789596512026903838850927622044807611530643887494456379304996563468607210970486619898336249374975146736655090644822719838495585664994425117350974491367099004404995846913641329458537237789584653041949090121498951516476399288513593944575192159570458664608461677113504914551578443229008454218964701550932948083369656042643364608405637360180021322967144409944099438498649645368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
332 INSERT INTO num_exp_mul VALUES (7,5,'534564131989234694540350103.27821462973515555648644772098605028371173048154132108733819196629002548296868548691993248746628993380136454426833349407578676005545111508293942736555269938962058196496152360848131645787941032968937794930046928523006455386861100809286408671908320322523368135203881520526880998279355848280412933152306299256343179622513731096363088094541514890135766460631462465021694553063366717467560655272004461368865264059368514271105464855575429914212085797297268595943955105608543373940035636033207568676745293499106348500559628723682588033431457023964317090780615020801564861497990103549650624438425421690193862533733474254');
333 INSERT INTO num_exp_div VALUES (7,5,'1254580584.048971438599349046867230181719371038956756285986415773300837165755558702217197735811549684202279755101552533605390208155708695952004683670878589028717509749282693444655857296902117478518511492735290086040573521482737598395369632843374456793385511847676556826348943588519880411018079886373631771830925920986588708409208527042927229627786932908015502292313887561198156623702404977221789649731458241770690830680067801377815840764873662400590343236662968218256211697981048576328148435241545372543075051594952109757428031762469834781538302930957095080167901199455226976113347018972534334210416375400979738414416582588689496706548495076287263281908191770792203069614447622517839588243746755480572371988630084226963919158931419126724681617069720048557166545204944250492282054791996953359013543036918134163144772567093');
334 INSERT INTO num_exp_add VALUES (7,6,'-818934540071845741.9530629278049288491055193606922237795920035094854496163164602796260436963420239973809758519485590636');
335 INSERT INTO num_exp_sub VALUES (7,6,'-818934540071845742.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
336 INSERT INTO num_exp_mul VALUES (7,6,'-38438389630389612.0042045464692275627184627672063157323631169405883031379129843031477339360597564128205768842448328088');
337 INSERT INTO num_exp_div VALUES (7,6,'-17447499423661151023.558342555162228919125358089491573318627107322332520978657843895009110781773496490472817700487707134216424855867015781267287628022535529641238372370292374146871103236048507252055787621394728096799222976387108688980537900309311204203302960751747509648304056939321473462375648710590981564101023812800603438271190184064874290215309040519813024962909469701968804925443161094255632624090623433640078421818321246597728308302979223833487133268472455479442002005374793705431817866798804822885690193667521606781156962792120052947767160957903073698536973292205899421787948529970837601521657406211962967291912148632072929662185840265855612193255596825032457033402506154930851214421895488796227471490998190312007513478459049382774782886773158311656817014322925167278223360446454868236479549745612973293185989975394307678926');
338 INSERT INTO num_exp_add VALUES (7,7,'-1637869080143691484');
339 INSERT INTO num_exp_sub VALUES (7,7,'0');
340 INSERT INTO num_exp_mul VALUES (7,7,'670653780922685519356619170643530564');
341 INSERT INTO num_exp_div VALUES (7,7,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
342 INSERT INTO num_exp_add VALUES (7,8,'-818934531574859518.35936275646834493832011429282408849567717761204690035294074716714939441961175772404289860039233415598996234758590850206505669201200');
343 INSERT INTO num_exp_sub VALUES (7,8,'-818934548568831965.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
344 INSERT INTO num_exp_mul VALUES (7,8,'-6958475505053954666339703437.48985528725312694198056665033448258303533387675711770743843194274181580881296671866212320171337132096489224277825857521033238709600');
345 INSERT INTO num_exp_div VALUES (7,8,'-96379412.478435590945480884955616049873645089637121682284625533034225619945532704111492738646389632607594293500930307222576571876059094206480673293295865214240456906965855425738072430281475736130342229749511650392658808510082775031098547507966544723255869156056349218776847523349173551313282283869146710349521487706884633419341568648959204688757523312579312713453540395840470692533267158388401676533369105590789036132185107859069994833345453200014884023709597817280132465224778002071890368479648934317322270613208789859930618055792958996389145963056607200020526949699302565905917600478429628844015684879886549766473809801710003649193772354147104446894109928903223843036925147624639466770660174828940577089095480826473544099693433597812637069287644606693066736302793687011165899362920686114156254982709172925265118077531');
346 INSERT INTO num_exp_add VALUES (7,9,'-818934540016982261.65314972994491977243776717915257186979728396159058352649559139156429817562698954531329940720620096519975256547379603654362598494779213610069399116912987384006656023443527501447464682173445385303315267086044455246361273561294141518329233754041352632499787199926225490924591851865949646448441825186059741089695009429827829188117479084665641367');
347 INSERT INTO num_exp_sub VALUES (7,9,'-818934540126709222.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
348 INSERT INTO num_exp_mul VALUES (7,9,'-44929599044588573810654775.83678007633232843418115790847152455559258007804727916986432256198687661496804050903769496933400455947645400628259699874770581538122521805603947464462448454681701547899144129061961394870320463199545502030106801911915987309444301341575451240764927967432593181449618816978119423290767783843864768557371257918447461479570164065303599994081990686');
349 INSERT INTO num_exp_div VALUES (7,9,'-14926769772.797708334489652004325241753714626257641081061212878627972973992233480868793527325656854681817156284203427388055525855608883067129036717726368707982450450575794623567027457808927082390474261155500697096284790656757163047499531247323702909360444831707029353441147768321257650234732286165724178549576948957405037843360446785505536809409054071975214796532504678683693402401018726571884721963641317944453797513145055081061680091585467186975354801535734149952115333241283186621720677488342266420359417174224757781125498130120775969091933838082305123652811689513300403051544682523761263183781206840940347226802620226164265210810994106136738030959199259066517106713585343004140573604437146025585149934286364795122716971496775012412420105368351774715982565252533025207453326002101655121126631180162560463548157187175671');
350 INSERT INTO num_exp_add VALUES (8,0,'8496986223.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
351 INSERT INTO num_exp_sub VALUES (8,0,'8496986223.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
352 INSERT INTO num_exp_mul VALUES (8,0,'0');
353 INSERT INTO num_exp_div VALUES (8,0,'NaN');
354 INSERT INTO num_exp_add VALUES (8,1,'8497071467.03603749330791582407836434318377133169438097066269854720538319012928851657498035372443556191720308219530866834905045144302106406146277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
355 INSERT INTO num_exp_sub VALUES (8,1,'8496900980.24523699375539429928140707116805167695126380524350074691312247557192264420150419818976723729812860582476663647913254442686555191453722107164485675679551050629376558940966195135841284978096687306110481009743118940565957556492470398904849289222365256698601073536111216152709126800604695001949246634784573028721762079936564434050796321975774729383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
356 INSERT INTO num_exp_mul VALUES (8,1,'724311956372274.0135050255361637906710330203036651743488213007179039756514944640108625580172737414192938789413338554327986697518463087452612658955180411327002900979574347739956600177846996063741787205122007268468674386396156638261992679442768654367111433834151087792255469957061758837789341439211010331332174981459471333376067541234901538285101103690622656631026001337239036711179989456674399137008584021283568040818388709554256523118702728176420022080138548890713013682480239784198421500241995499841675772793497485550923152267616622892846304530712344886979674416990935007952941652591352603797627920865960622077762568060903908151958000');
357 INSERT INTO num_exp_div VALUES (8,1,'99679.115123747637190903598543851248555278745675862923884476564848911494649941770503156134872464666625927195645517181131678518619856156844072856993813601495176097972982587061507650426363887871820112714099226501603733968262566093655417466145183587899155614471697804006772915054739361437054029183182533671508695646413074668188590846200362324428338974890534273352188276373478524543505805545661569395314989170104140776362043880099775594658817242753124957385625811310332354760117110779649164022618274859298031549851269619167173746259018497289174255201452265070501056913033329291819570027877856677145579673495987354805150868813877928857472561883332547900866904764950837506993759536410161752469488392566682723027340638271076406246129989851281210810196699482980833204884400423019400653089825859983062096326294783573417554749');
358 INSERT INTO num_exp_add VALUES (8,2,'-994877526002806872754333651763017.40289299098701084219066388457144979069028441485513418625082363021182982914675513019536443438529749838106171095037135009526312783302868247857009494139535009572740621288230740389545481395');
359 INSERT INTO num_exp_sub VALUES (8,2,'994877526002806872754350645735464.68416747805032096555043529892327279933592919076133348036932929591304098992323968210956723360062918640113701577855434596514974380902868247857009494139535009572740621288230740389545481395');
360 INSERT INTO num_exp_mul VALUES (8,2,'-8453460632655529853033389979024265783461224.3195241893307807116624750282852146303290708492834695194274289713076935297734670940696121761483641291930931061232942894577813178566088927221374036301485916497770984757492912292002695944367308880163698595015497307574177176409203214324418237020500352652934909632442547242092296504047310806151851207329042221920888326000');
361 INSERT INTO num_exp_div VALUES (8,2,'-.000000000000000000000008540735921314463871578184793632135730756619558669911183806487803411545406462244216408739432325839683804021466133071768612386706692296158696852363349481716813410857655324486448455846562309041306880675446880859847445987588059144788756984750993583865748280824370754934966494724951583311563735533173023858438364336214213295786266815116844775733072416507474834701984381586060478606371028156925222726225495235702395502085206072985373035972506738983640539009567237336002073370431753469632428303255926718930619221521257726366850472572830063284204851204189447233044832163423057501488364913539948261528280564870049935369825245920984413480757133585498984374354957754078525161296201228031555280486615145365039415418251448980923331334883673792135893857917681235883506783408111446970710546686739582471');
362 INSERT INTO num_exp_add VALUES (8,3,'-60302029489319384367663884399588771256.5916339968771732477072012126949734214868901845505193155307646111690097978112797961939995859130827784737422228762767014427842766445950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
363 INSERT INTO num_exp_sub VALUES (8,3,'60302029489319384367663884416582743703.8729084839404833710669726270467964301325349604567186096492702768702209585877643481082023851284144664938175277044596973126708926205950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
364 INSERT INTO num_exp_mul VALUES (8,3,'-512385513828318260570283740065493064477880918352.732624553690077857674083796435724202494963885926573907185100543184828131859183999195040110586155435203949963570735841632689374488877298209082579317039061893012560130258753218955057387206477423088065663401594359617882154814262843273526859406265633827109554791772242178864873774889091687515990672487380368975556580539271333144212685871370972163560839446696514092637412587953506052848750866803569213269271165856310101244342151576488190595936869490659700946174362872797854591188391982770203203644172999264143929484089237665313698600170041324566984832357000400');
365 INSERT INTO num_exp_div VALUES (8,3,'-.000000000000000000000000000140907135225782279761112255989433531718277338909398600029580768021365259747075253760824424092983497958717844671162530550507041138147836569244869107757945370200122955794509365120853536859837243314494576053441804831018954867623755033888264275704547752628348151132333655667171970175829826792355986148522268067032057293494927558322394395160508723637192234110428953945018965078022622950949911124494740703606109543716688008516750321047603009424529696862953094999450658951089435460411028678817795100630449046993274191915359520936265372754315076684798942557329584282177053819106884196674660057281227248874819417305259132106690385871316407455034281900110779740008476645291647094776093567400422266906817555937149628005629880142615126571231411138926043531449659320501743591992888328328980526602');
366 INSERT INTO num_exp_add VALUES (8,4,'5329378275943671819201468.88995490340795935797824952902333498786202536079000703830146057240651898748760197658486790165425772165585380839129948178510273188565692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
367 INSERT INTO num_exp_sub VALUES (8,4,'-5329378275943654825229021.60868041634464923461847811467151197921638058488380774418295490670530782671111742467066510243892603363577850356311648591521611590965692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
368 INSERT INTO num_exp_mul VALUES (8,4,'45283653791262997781451381354094822.762732909505051438036873220502792213670540454778361182993875916509061144859281577740137081988678361247725064336120451090222456518107029158304937620179032477664627949959143233370320432203497828243297406462513350790251761540074946469824444452248386782451723637769289822576372357189700319768797708375563651655860093365309717823602754924352327588945034832436331911584742966378275504545736896430718939807674966738116698454215555860047859161126694019895490767779791933882712567492115664113775047192011252893773389940988533801360010782816196288710063568554147458866942816721046004257953642508395867837127678980002737669139369781058046396738606563716339660654364541530532834806205571191828994250708412638796240377704994928921528330863683630622922959130920715261879547446054261914770022377059156125037157979236658010950');
369 INSERT INTO num_exp_div VALUES (8,4,'.000000000000001594367257057971052149628499448029056279649281098852958322409409919964709324200796473211884339143791758566019217634542932882694487712398244322522748736692741288668885362384266615527166964187404128216235057387796054457728789109537338988453837993084016408244895452291151218602815057669592284587317035387004942691671916981967449109983992675125005085762403043329820872839739877674121174083273716295673230993049263574856197011389828478636779342320299895806297835595427859271617831720398457416685435560152182883615601663820189195644140652141180949257192740185075408019971747810015931542757445763460947106918998459997631117642552273815713467150465548031203738878873114842844016176922502916339025283749846225376341878386377192605865913018132981323065698049618379727531925408677611856682983907951667054819');
370 INSERT INTO num_exp_add VALUES (8,5,'7844230593.20607652525116672615394735666141304947992676684520382624714879797087461877675155217754947572297228288498221620714146356962938009770486619898336249374975146736655090644822719838495585664994425117350974491367099004404995846913641329458537237789584653041949090121498951516476399288513593944575192159570458664608461677113504914551578443229008454218964701550932948083369656042643364608405637360180021322967144409944099438498649645368196191999692949583952927486593144959284443545794934667002661774373364219852712996869245745722896071593910890197478196462961042627387162830776094709087748993678069776845437889735782063');
371 INSERT INTO num_exp_sub VALUES (8,5,'9149741854.07519796181214339720582405769040995916571800906099546787135686773033654199973299973665332349235940513509308862104153230025723587829513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
372 INSERT INTO num_exp_mul VALUES (8,5,'-5546455599206321494.0676583421119904300307105296377723816472192007866147764761501865875232824814135783697976183493106885436876081315217834621720906478074798596116645640251460842350553806256223963023430631066024389364515688765194373161385579258482225808660340732705687558150699172147896486727530192499184101617379930846663835628510376484675411350654979679181852179924386290069790336316958202582966248703889464308649631486542724072047294216362186036638115240070658004553260251510288423749333873893917690832829128021808383128393431810674177390352413548658782609064839524756041501835115152819802758773711821322162752064589750295542985780512921839490040396053737870038534216948323935020460307350020911362024271167085905714873548388570602799432705061561572854498075600');
373 INSERT INTO num_exp_div VALUES (8,5,'-13.017101389051085341042057308965769356145255575582875626848796382322826525772114256699384710400140437710569924703769685567402446691691210934185000959063158239023412379691360587119206695513775971704926722817528818197919265145207032750407924774510773427697188520818450702875142190949766251178733262143962213111236591970766836685919581025629742334704854852196126735685421250263035895756028805974153787560164935038227108975229771590754808331856162035119882347418116049174638416621093907738608991987582465865527947015457540650512339263071898410531735438556948115098562123055444965056347091625748703503220861221718449714020622377233272042277814766996198081939221253025243417993701684007826177845003391944496774674489538520354606358872276671998045196738090133576377830721671972381371985771591052597345572374064920279182');
374 INSERT INTO num_exp_add VALUES (8,6,'8496986223.68757431572672621257436634648368772473081887846765003074279255322456188404621827857612554765910678041003765241409149793494330798800');
375 INSERT INTO num_exp_sub VALUES (8,6,'8496986223.59370017133658391078540506786813528391482589743854926337571311247664927673026627333807725155622490761003765241409149793494330798800');
376 INSERT INTO num_exp_mul VALUES (8,6,'398823655.819545574205652791249227663407026876411660299394659390409794761643751582473390322547798567169668246138880832642141417531427935520467563318363116897177899262525720710134129529640376020947774470933902793259531840625444267816319963200');
377 INSERT INTO num_exp_div VALUES (8,6,'181029319177.110996740664566780784253502559986936959009611748146099327460471609593148344991059106574612143724330935988823134137686051475120980257829276671900076859337187540608483895641504622910361858962883971613675309676443079313179200981488761707281247447120551917205792352229666049191991270809865110506639390610910481490688182068719005593641339338678014189749279508731647492051879768743158839680867283217578754666643688259810863605002821607490100820241093473083445658378988069593782353275713240897038366242558466047071334385431080003439842348547427066389352198560236731403235927478177780757802759046212921140424771887928786549573201311120885052685761195784207710933764480136690216943336587118385525047554334029388869436622866247240903231799829259264158812528305210833683370536416861544931420820452512390255774498188962903');
378 INSERT INTO num_exp_add VALUES (8,7,'-818934531574859518.35936275646834493832011429282408849567717761204690035294074716714939441961175772404289860039233415598996234758590850206505669201200');
379 INSERT INTO num_exp_sub VALUES (8,7,'818934548568831965.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
380 INSERT INTO num_exp_mul VALUES (8,7,'-6958475505053954666339703437.48985528725312694198056665033448258303533387675711770743843194274181580881296671866212320171337132096489224277825857521033238709600');
381 INSERT INTO num_exp_div VALUES (8,7,'-.000000010375659845651632013446652385870617923988120764298690164486716047614260682259722116360931978511176121353975789418625836899338225571166376573732227571704071000348895791547943896682585450808398324252224265156214259224488248639550967292466343168350213394398101712526534464002532408445204630441167137710565437434313424987517531891145368203998329086865151248833625645567863740298397742783405267970015165358620026813812552194344790169289440822038223606218360105618852154152168496637886434061050281055613760360200323363465925493033734895631921307644481639236601187225135325401868178006133838932915485272554505684060229409404902185944047523033315868230944723282246159741659387362889777495094736963530708159604929268812778894177095572578862150793098548829744006499229853198046828954650334595737117597239208825268');
382 INSERT INTO num_exp_add VALUES (8,8,'16993972447.28127448706331012335977141435182300864564477590619929411850566570121116077648455191420279921533168802007530482818299586988661597600');
383 INSERT INTO num_exp_sub VALUES (8,8,'0');
384 INSERT INTO num_exp_mul VALUES (8,8,'72198774884738777393.8687539247642452953425155400068591498151280875559609979248583367700231031634872342122563819478919600402159024059794279536786611373504966204744811722007869415559012475160471227957857756325962941799428857291371597146319816910515366298862558849452235442246081440000');
385 INSERT INTO num_exp_div VALUES (8,8,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
386 INSERT INTO num_exp_add VALUES (8,9,'8551849703.98748751358673528924211852802333963452553842636251612056366144128630740476125273064380199240146487881028508694029546139131732304020786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
387 INSERT INTO num_exp_sub VALUES (8,9,'8442122743.29378697347657483411765288632848337412010634954368317355484422441490375601523182127040080681386680920979021788788753447856929293579213610069399116912987384006656023443527501447464682173445385303315267086044455246361273561294141518329233754041352632499787199926225490924591851865949646448441825186059741089695009429827829188117479084665641367');
388 INSERT INTO num_exp_mul VALUES (8,9,'466174236688165594.9218054325256670866060556227711696100465581464881295978997280335378678072434776702952026828137140986670189756965420183565968027969700090735690246176791371115610886533930223141650377886909408268207750238603105232560663571044993507074695683027062426288270199495225881785499139012931143826099668999261931834700467395442768201666740663642498098541516326470052372008385656719236306238735524802875519713512894448940917708118676095378518264553310312628830009314653641136566040400');
389 INSERT INTO num_exp_div VALUES (8,9,'154.875085756903716715488911525453064308758123952566428258639786597308109810869086867746263482721081985848551254298524280231489145092826397833394044637104667137816928932471315095067524966582810436282901424423215992139000153713476369887383242289102867530775908269805285313842050961754114751975054515055089553180717444020378611767296609130477264722612784088270193199394531972594028420402254831778715196248487757266330454269044609134602570688339750190391651801546906342796660819535014295618246236706572780627362908121159003488810140236665846928586992082180006454824311789091323774002510945263351862712964422865623934112293184149374573706760114682326698881257123280119140924775171374360283137569618025005229268057970275164869735173660958715166148344076027212231446680947914004346760896298312286730627916684448923824769');
390 INSERT INTO num_exp_add VALUES (9,0,'54863480.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
391 INSERT INTO num_exp_sub VALUES (9,0,'54863480.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
392 INSERT INTO num_exp_mul VALUES (9,0,'0');
393 INSERT INTO num_exp_div VALUES (9,0,'NaN');
394 INSERT INTO num_exp_add VALUES (9,1,'54948723.74225051983134098996071145685528795757427462111901537365053896571438476055974853245403475510333627298551845046116291696445177112567064282766115207407461565363967417615506303416694032848457927390574251904212425813072768882213388082765916956736282110801611726537663292922699021333445658549608928179155685881583228490235606377831724593358583903616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
395 INSERT INTO num_exp_sub VALUES (9,1,'54778236.95145002027881946516375418483956830283115745569981757335827825115701888818627237691936643048426179661497641859124500994829625897874508497095086558766563666622720535497438693688376602804651302002795213923698663694204683995198328880575615535181012624198813873609885725228117274934655048553507421448724831939026752650108735245933317237310133362383704426321489070979168993853338252728216162346796960170352897972568238870481118474064783391570102958474141459619245240874849766946530000977144965');
396 INSERT INTO num_exp_mul VALUES (9,1,'4676749348240.390309875431213992853550297086049749814750492488995108783145961719774217441193547534210468967573344456866203963659951312519988497979489304488948342258375915152429008993288817366720647491166024151209542534474867042837694499222928509320280684557676243780452100132238968233413333851595648146954975713386711764268506890884764704949969602122157394714663532141060559896359465918874990769222345665160127552795532197771168442486088776803398878354288847069602460071745966589164282641033852314335279121191855487126430176047553895892632834940595958394834437871886013513058514896870683979585091413977173250824451205330441299000850618134248917380244749589254309567551846327349592529960432446947239714236828401206843011440433362544797025114476612133622499094287321570559088587999417440664282418005102546343020409520421747216');
397 INSERT INTO num_exp_div VALUES (9,1,'643.609749344751131516972294140174556703217311736700045690413622699888869645595256683013323517984528456698303984909359393772036036540901870537096836621035845014213031549051156299974682317824766457362427063305495772666640279328909129870227828460705733995380145417663304348663705694070309475835826101153850359826502235923289787750107778906593010060115662191620280031872002110849782776325630424918493602259707267214006217268630948545349980430128422952869610116216278256812581821942763705098526140427280008360043829906543029486315209818099697988089748683904695870401517598840185535891464842870210715421728852789815860153472208176465166954851895457846723102438114697692610933532992841803219018495137378534010155991355251803548866919409031477821173935696065078362044927492034445482457329200246282082707380974745411383781');
398 INSERT INTO num_exp_add VALUES (9,2,'-994877526002806872754342093885760.69667996446358567630831677089993316481039076439881735980566785462673358516198695146576524119916430759085192883825888457383242076882081857926408611052522393579396644731758241837010163568445385303315267086044455246361273561294141518329233754041352632499787199926225490924591851865949646448441825186059741089695009429827829188117479084665641367');
399 INSERT INTO num_exp_sub VALUES (9,2,'994877526002806872754342203612721.39038050457374613143278241259478942521582284121765030681448507149813723390800786083916642678676237719134679789066681148658045087323654637787610377226547625566084597844703238942080799221554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
400 INSERT INTO num_exp_mul VALUES (9,2,'-54582443595378013373024060492546032003692.4875677735896411267274323339692558458420972958075073392126734000341372096298914875892612108329218081214550050039133117695428196702128258481789017059073444323729583900855712795086447886053552786449313809589992185978097430132940882612817775035217244553616977182049775786664446683332098226841743818600819221587510039430478859412452506872131851471967577741190323481953867845129745440745526578327709351120432530702446916035797432129052518980799424635406993848916727957825620638983706180841278402925286540375225365057191075559133035');
401 INSERT INTO num_exp_div VALUES (9,2,'-.000000000000000000000000055145964114074763360265614481666934002579974728749248345352023099030383962250681574081874554842623852433135871821620640200582985140388676650602814646133317791813938390695683843848260103199745295436998313216878337673674660966362155480524935736646623766057029148471463569162153009963312016563281545776175277904913263614668092319707343286073000287493274965714031678784835459999763925833141049057636632430975424499618419962303087175237320046300285962065818926167792812657620724550768858763098967149546312995222223400007044549870620849992226072041407997925405957501929449911416474388622107825120486594723448780503829317691081601820425151593487431389373265285594626753418140874747955925763163132984655078996173911578832035721963554569605730262976354029623260224710106409129114204296314733036');
402 INSERT INTO num_exp_add VALUES (9,3,'-60302029489319384367663884408030893999.8854209703537480818248540990234567956069965340942024890856088355839135538265116174644003927269495876835324407641642359213535695803871472434650475144516723617632059130297610134243891145006222068960999879308472500422640481972089756410157246974765071949782242392661524488959954348903412713930092273629207697480131360047867213863018127928853922173643946404281422516357503746700705970360169619852905053433235726497292406142332833');
403 INSERT INTO num_exp_sub VALUES (9,3,'60302029489319384367663884408140620960.5791215104639085369493197407183130560124286109130354360944260524553172025725325268378015783145476572840273098165721628341015996848028750420770651761919246816300854441592109844750954710317145008297946462099581451150385769713261452744310496166494545449824802407416426304041583975713483424241727236417259479541129474082301376239522310995725648773643946404281422516357503746700705970360169619852905053433235726497292406142332833');
404 INSERT INTO num_exp_mul VALUES (9,3,'-3308379209762459471107480259839508279070920437.883503980178028214343751083865562028455061662673132221930429904398963590401793045470444301883103141901787466923883803951815572606105617157736442670792467625964359169270739534412932791178258858918086886061702512427989129732248215348301444245772127142869263635282888226326427510486246184233225114523636171202034558843515894542952126988613018789833835507734620046994907453602573865012044120483116345444810078666601100257620969379968264504287700045822481492526688635364586344704730579892342786173395802035361824932075736340405960099542224953439044947229246847140957298841482874444906129049023002897135347878048572628834749795298712449864571996898774444932083319581439741625832405434317985988163261591679157437224404970927012111196724239860528859217322132733404472897289');
405 INSERT INTO num_exp_div VALUES (9,3,'-.000000000000000000000000000000909811507365065002714756487495210579371808512079908127938523896001746219475805196061435010714649189975968123072269549018826343830061696154665503565341929634172463095299662727352635590451263034658630449260378893723785917860125051787451512267088404686342938118993621396641623525252649748977992770709930435013456855344203854749977414354164157192885125263071636468941596567220391082793700307461350484216679632552883058303710297475827456761138832914743429330069022439380297715971317819244718196187172770061156794130040674050533617155253444764036426045091327368023602807193742585178432544430741520636125146531502042579276206322507516332917325631822606079220413965396706334639331097621824106950192993127113903265025719013680733760540930122186345919977470628988674677630636632053583144327');
406 INSERT INTO num_exp_add VALUES (9,4,'5329378275943663377078725.59616792993138452386059664269485161374191901124632386474661634799161523147237015531446709484039091244606359050341194730653343894986479159670583937529516163204904273806158788218327396375034882788180783796976731912141525319602448709213495905899041406302673881364465504945113279286939663215197485367850132991968081639290297033476859158044889351836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
407 INSERT INTO num_exp_sub VALUES (9,4,'-5329378275943663267351764.90246738982122406873613100099999535333648693442749091773779913112021158272634924594106590925279284284556872145100402039378540884544906379809382171355490931218216320693213791113256760721925653394811317969065642404864072442190731745871963413981746671302248281216916486794296983018838956112081135739969615171358100498945955409711817327376172085836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
408 INSERT INTO num_exp_mul VALUES (9,4,'292388240303165948041827159734686.255558469787242316676287235194652580157149226950109397295920730296960145548003120827363226435916209781396711693581454960342091452830648929118261388933297036933167543189308061917640517578583521401267417187854611829815212778183983326568586118831109538377828156118900313778053576483381085207892754728937946691892849474364477434665960112125254104966566712906532318984871145605839506991591027939136026602051635433295687547552796828217859648186757719639965988287173297286034098497871707197092627676226053609131138590878743560287292934815277894463305001278326023708395571840850120055316276256138004565442099731931051413153564744766098053176049414330146267604802971221161572130161432525297614616942172815141372973870720928125699420370428856022295499447755488148545048400795053604349570217878099721865670458104653570360');
409 INSERT INTO num_exp_div VALUES (9,4,'.000000000000000010294536718194523982241053267404812827031741197656209184880073175960433631103885281961037127283726462743623757855378209281373475473018922090781553213750339001555832360656399849031527008437303091226051008068950896796359518673740801770866360774945096397034708173365378527676779736929035450380795854046109380272505550244458858231227568118355064007614608452292270378691774826689216790090661497154742954386244856792006376222923780801296832612827123778915598893970651480451509706836620045721191411824060983487064555397842027454385628620582036592315345973096405447742002746762099231557054678593446667904250189208490698468539396733604833688133512716508825505666644390119877423938820483653319376926639295680552194966870285838815705038244628263602997511842285889300557188773128635554621378148419364876651');
410 INSERT INTO num_exp_add VALUES (9,5,'-597892150.08771044822540810796370552966707032464017958269847934730769542644402913723848026909285133109089452632480800168074607090893991283808726990171062867538012237270000932798704781608969096508450960185964292594677356241956277714380500188870696516251767979457838109804726539408115452577436052503866633026489282425086547752714324273565900641436632912781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
411 INSERT INTO num_exp_sub VALUES (9,5,'707619110.78141098833556856308817117136192658504561165951731229431651264331543278598450117846625251667849259592530287073315399782168794294250299770032264633712037469256688885911649778714039732161560189579333758422588445749233730591792217152212229008169062714458263709952275557558931748845536759606982982654369800245696528893058665897330942472105350178781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
412 INSERT INTO num_exp_mul VALUES (9,5,'-35812445701642379.972368737320206275515144213236752803936806738624588812089615098329765811617509505790110909629109400553415312470540217508070421816878544125783329593128638405659896184248784794258084116406472768709113030915308410565617764394827427154923321461158387012978726512246146545834669665093228316853342805604075936530371665576147966721599968786161939347726656168798065647411457701453987215491345496003650288850096338695703984042549594979897253521041581573388369367579323607093487743440894765114619634001789457486407909224339065748496715380572175183589195611952939575073075140094901024063428239223964510824958346570603142906309198033196987949067156046076497974760641964978711558209708743776024313916111738542765749928287600981397080809041007714387564206594515733287925008053261840295560398311905155157989225181164097547541');
413 INSERT INTO num_exp_div VALUES (9,5,'-.084049034261605466896663277055600903951276881294745183935726262038673990196778002490449355450474227878560465916800470848046625257516764244432096856845087412397406701521972651300484716852035267197801389708234913163750232707469240634303111868882057393120649919262424619226282082184091177505826009374043368623853156698509808569378758387708910629731005691079770517679511879694426434724918004419953301426679939010592502325130576915399009756468717124460489039474155719834555522581553817856854607844133431854471292027873672356863673617090151801474016666978499651970627896504709551656249007718965259502928591648533670568214972768900993459927860068104745163979267716597907297073374689384723943955361288974065531322408839914599555769945298758102515352082822617428033648130099822033393662643586331479103933840387663729387');
414 INSERT INTO num_exp_add VALUES (9,6,'54863480.39378734225015137845671346015520435061071252892396685718794832880965812803098645730572474084523997120024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
415 INSERT INTO num_exp_sub VALUES (9,6,'54863480.29991319786000907666775218153965190979471954789486608982086888806174552071503445206767644474235809840024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
416 INSERT INTO num_exp_mul VALUES (9,6,'2575131.137912978352131546639620215541477987701194164886305951830806120142596646541302305984776928560906754259789485960991272272782091464270104432109904222200473616116525297615725803495463468272171161659654385929185160689572943852767523792651123455283534072794326647404332228203001469884016996499768656263775233430922446983838511590562929268821678518640501686017030536100955531423152839988008496919169395159653034847677470665418765966542111749439412');
417 INSERT INTO num_exp_div VALUES (9,6,'1168873084.346566233232746391559830634361431940000227460271861554316197556566224118756340501278103405856646766537018954185964066240457859194626558143313125824412559635129130086906976028635444060218797992547370132082916380788496584864016645155338102476357490305222392452114945853620686975383081427840791892729407194179236897452655907829255937027286698570784397487382242990326347080472574546312522326038419753951437799831430690304084087684303035538181812523230890783372773953961677974396907303758903934808035747944477277528267001070234880092255363221274303820343225415479126819937070570562654065195009839593938440374000473302075568746771126391307584779249330981594640387657042725725493800876630516005713789705652827210295338592985225924959199657729900181287069808881130884115897407246324220524401243575641227725030779990490');
418 INSERT INTO num_exp_add VALUES (9,7,'-818934540016982261.65314972994491977243776717915257186979728396159058352649559139156429817562698954531329940720620096519975256547379603654362598494779213610069399116912987384006656023443527501447464682173445385303315267086044455246361273561294141518329233754041352632499787199926225490924591851865949646448441825186059741089695009429827829188117479084665641367');
419 INSERT INTO num_exp_sub VALUES (9,7,'818934540126709222.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
420 INSERT INTO num_exp_mul VALUES (9,7,'-44929599044588573810654775.83678007633232843418115790847152455559258007804727916986432256198687661496804050903769496933400455947645400628259699874770581538122521805603947464462448454681701547899144129061961394870320463199545502030106801911915987309444301341575451240764927967432593181449618816978119423290767783843864768557371257918447461479570164065303599994081990686');
421 INSERT INTO num_exp_div VALUES (9,7,'-.000000000066993731076524206362744068866774567920404984046399050881532938231826344009126898802592302273719505485084766150904380671495128604515800845609713368334606489445184535043833069145643553083555507533900955661105251251918425885537513359541698046533092111969478225528665278023069818968531644884466229545497943710817187632203193468836772459599856856811131193744272314519908999458320275710240994009061040198159739169960258978462113813370513611735006229733329565083659159456172425715216475781507996483885669437855000029758892126410922067202159414570164537031153818197618428471046051340835826664787585016361564969663413176434498159140395476980277574789931364078570781760777773379636490084338326576889857824344578398580499610233575273027387501809967324874264742269453420400624883982643066864175851881870402856698');
422 INSERT INTO num_exp_add VALUES (9,8,'8551849703.98748751358673528924211852802333963452553842636251612056366144128630740476125273064380199240146487881028508694029546139131732304020786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
423 INSERT INTO num_exp_sub VALUES (9,8,'-8442122743.29378697347657483411765288632848337412010634954368317355484422441490375601523182127040080681386680920979021788788753447856929293579213610069399116912987384006656023443527501447464682173445385303315267086044455246361273561294141518329233754041352632499787199926225490924591851865949646448441825186059741089695009429827829188117479084665641367');
424 INSERT INTO num_exp_mul VALUES (9,8,'466174236688165594.9218054325256670866060556227711696100465581464881295978997280335378678072434776702952026828137140986670189756965420183565968027969700090735690246176791371115610886533930223141650377886909408268207750238603105232560663571044993507074695683027062426288270199495225881785499139012931143826099668999261931834700467395442768201666740663642498098541516326470052372008385656719236306238735524802875519713512894448940917708118676095378518264553310312628830009314653641136566040400');
425 INSERT INTO num_exp_div VALUES (9,8,'.006456816440893715330247418029019114736889626790871612141686117271826070935285769018710680035004320626745647926106882508048159628931624522666638442625219959259156539178378186912871506893482633695438850964052285542425753626455183282159259999492971992739484319464700978750304962671213318202670228197968646486740006148091321740497272644910882302412140576608739962605210964504469426861972705740810533465451230811358870068391007718532021526225893542801514255726272411690175555142385382688220121052891017808391607717500701760375927811435030512071347521837090721052128992926357375527600337655573639413811262412492632491693179011503973930804928749370652038245414768103001067902012962988384812280453070895781287237746786414435546976395632454474312533482077585837153357017362048554313154580576238549196250793055676215164');
426 INSERT INTO num_exp_add VALUES (9,9,'109726960.69370054011016045512446564169485626040543207681883294700881721687140364874602090937340118558759806960049486905240792691274803010441572779861201766174025231986687953112944997105070635653109229393369465827911089507277452877411716963341532491917294735000425600147549018150816296268100707103116349627880517820609981140344341623765041830668717266');
427 INSERT INTO num_exp_sub VALUES (9,9,'0');
428 INSERT INTO num_exp_mul VALUES (9,9,'3010001475769225.8286280957637941018500905354415197182850820227163907782811814730309044010416886791014702373809932926301368137684091094408663914110947072451332976891128659038142954192986392936981664792370678656287232795203974766040821110221158579481177539669363513848425151485663431478439528936592701070340012569297177488556353760756495238304538439278682066056721729656193616571456456325016960870401748115848423105783116854283646624807603476682295234280408938557209608025246638166902335016025467565869375885610813662767004038102486303756741615124814580306266901273803721191779461890468156043551004644728343579032524687612403663816107770451694666844862368101122025340182510019516924578414085461628689');
429 INSERT INTO num_exp_div VALUES (9,9,'1.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
430 COMMIT TRANSACTION;
431 BEGIN TRANSACTION;
432 INSERT INTO num_exp_sqrt VALUES (0,'0');
433 INSERT INTO num_exp_sqrt VALUES (1,'291.964716019333021494947753821238960905461614737525349376826064492714634914263808902604580614735501799528494357560837535773816469841426747889103714048646989532842972129124080559131220979335403729022278994440514872845756198274805589586120535745968205107562348427941379641465378272611453955517402598409789621997041856848783989993820946766177453801729783316269310186191833995557234577548740940419224137195404391193633808203715191863638616433190672511651125299379882126530500870287424768024674231651229908224729856278167033444719242144302972892419034855417126978468296581589282861879645409909873113678361180607775255758820910366926076380306290306477790931129670172989289536405788838857428768869345763784112862591549008321546447442552533919976570125718481191724503352619626562352280522949665158335559389298720990302071');
434 INSERT INTO num_exp_sqrt VALUES (2,'31541679188064906.712574384704440356216787857626740375004266523720148374188511622980520374202725176835435173058936870163875556102907654264048353814040480579464700545975346621546520503928314632418705230212623378642743044255181848913683862360044189531298446109955034944189751302497670367665492719604026161836224535961347218522748523360100432275693829501972749859329753224444694962089604095212784768854310289429208671271394086829270986183171968944659703708706544668326267327938226750760690620258967209626420981505237183055363540806281098871221581265173394406715458619627534396065960117454160969749739483126059760636526242783235685190739315590041294766649891987044641492234243404608847939002062827210734973778130441825067858641461599799772535304379732674727995848518807202053316225824685704785148921785964036119338754973714515974054');
435 INSERT INTO num_exp_sqrt VALUES (3,'7765438138915239878.949520541017683429203286303188179443533225547096446554008374834292278237558244698868300666061834105683999048386497322007336816482648302911579331582895326423063492240235074387242190187374869842856897538718280497895072291181675294000739548676781615025944675912072664211455701112700937190832332966000160156597821149428032612782336278939437593991008833233156511435294360065004167893309428565243314846456225604669764879344135321428948841659419438769652686215993544390780212859309497190065178705035652106614050448518931820975038314187040226298661787490226917902356569717171481159691409131778764973037046501816919243659681416263730519167614043077472097520207347950292377914586524327206547377189493301153212000966249655331053184913579513686655963686155890934436604123384536027235444923674128269748280097789270784333442');
436 INSERT INTO num_exp_sqrt VALUES (4,'2308544622905.016172868282330339228589083058636874526727829838244942341440716909466939214393597311710652963849541394758298277969240038668406494621950956862959196896847352631445328917063551082418729435554972200530109505384839391233286173517804321019323644218483570886304028175359854335870835404627608254205407525763332087823548640923282031978903399118139052814618531713327991857575390136755426466065839913887477577516426991104516201265995293600539957187007068885368699949673989051443005684755994465547159213587471972139403333249259808344536605314911144950465968669770276463111776581675944967401948957460097365849699783091843609965345747287667911324039374314413430490112443463386381631812537639503425989372084906324702158112088898424705684574998783112519152403201231176840068666882123684602080460378627639651465436618032671756');
437 INSERT INTO num_exp_sqrt VALUES (5,'25549.082770905117529972076915050747181125832857399138345044265535151111965091602789684342996759657333588444489085160336703294705499665424408218434077722506748278242942379566431768762487954917389137120540138359870652558814224523699917122023018717544160579704907452934297025088008618627873220397030397424422097405152321366495319708580932627092620533785271831833326130796638935296720064431288560292191928489034307645738331451165431755179025359993690642194334018457793169983249853388987495489562746304107188105521296156525984787815685365255240654972150342496329030279439124533240114879332406941960563154881888172285475336782757262639979527682925214971861707635327995621436598536743180180978457735632181738067997521785965451385630326464388080990200265186437768409003553910194212076755448477164192901658547251079126833187');
438 INSERT INTO num_exp_sqrt VALUES (6,'.216649653115510782473161631235601739254284877523828136703593069337209747459679979369185882839688430004369697316986054374456779366220242645866798278985273820408495361607183119980716020227424205519727777568954933592987351750339481522149106749713967143685591960510946511796062486795368200503801097611436787402191532618456991115230272084771674098613479989808680789347124789253499967359190605681912854639520917409710307182238065185749856554472717209097115325999946728168357936779767099041518574001682560265549916593333117469681763348860131760281253987626822958726920016922608371657319505153308390495179319529587670415367205193280809809356733443291197315823747505896510820272670040485083775482983378341120809542502350385555577946098824446199419354197416933858522419312733314383889554606932774046771497129486979593226');
439 INSERT INTO num_exp_sqrt VALUES (7,'904950020.759072496304165474991957396337281699986101765045213964054286624338102141970514306010139529492299343393832200631760194440206005974547202512275476562767685193838576516154915404389465528270010938533075930081897392863141132529694804621418663424569202655893682412466871297412964570322984865326770090075582481194532433411398133265643849129084449161396724635797324126396071308557057830046688990212282866035593809633839882468628249964862932050189148498591642162462777480125024786829078066012617362076651920045684345679767223337287825546294839320770903419463644110383560050404456170063805115223954191445548226706113970164823214416171441655706141596091717118495955441099867737827763335880891937222647408575142200256804313345924443344596462585960919126827045197885802122062165934504665811115031150357820196176799560314653');
440 INSERT INTO num_exp_sqrt VALUES (8,'92179.098626752893864900181023972781406074846653380680747862421481598042923358730531575438403865501429843141967819802251116774924400485954931201776260931315313253827346015775662310076094882239170765060649024538403329505426563390044695320714825481746233901773893996663258170360232639353378395244461670781152793416950717050461856097473105730100523010642696332151571372764781034028324977128554099993021459338419164426784774496292405945103200724413639660488309795423335142455569853549710795692020963174011003447023610692365550245567840477105794884132665155376243735213346877116105595296043532605899184658904822980397411096930267453332143879534914237169761039374689145860503772331147367757318826885494994339695470190886515765452545019167989882527248872835783707554463866334705735781549392895480816605355996057201589681125');
441 INSERT INTO num_exp_sqrt VALUES (9,'7406.988615277484686670011157489572203134420118818648711986549881046321377798441006745317356200279801348355202517703531020643333388857073977704009782384103170022716610432579974132111487533733493986910583223121269323909760573942980360508642443245341392335557152177332615977623338526935953706604224108508582338123915133189529507760875123300397933931420500010248194253078118618381590347297853307090813639981736227771834732256867579490224181748450683295253634852775448770576585177080941820456051588076218688792321741398867304684922665590162004919486643750098085197190000638539994723704724550600891137853975703823903659121582583388450687255538838161486019214242094423895463814933532217776443473765708693285683261505695170847285063013324823850724236845500162436661946026097459146424122412596018946436589967013641971183281');
442 COMMIT TRANSACTION;
443 BEGIN TRANSACTION;
444 INSERT INTO num_exp_ln VALUES (0,'NaN');
445 INSERT INTO num_exp_ln VALUES (1,'11.353265918833698201334218522735144514838241118349715803442713722607336732214173255618762341321138898556011520430414052782971985419141860417968593746833898952016980791997105866598425597066404919489902082738711038276194174786383758877067916049129476352925010880025206629976454341252818402788928939407784629386362069592202090897264194883276572978998896242281239126931595483958092059051047739223830394259082355969005503976135238921488192773135287876801394308064862257453262299764712613486466254696464150007113953810688169396432889052881763511661127351872408811370081346456019961324265446884877073712053408327408917588393884214304220369626106333713688792094943405258431214313197283237071070354654837081449831786573831004911008790533179001070424813584405346221388686999574752038655226138085374176702005198770598232862');
446 INSERT INTO num_exp_ln VALUES (2,'75.980172429959420723484178622920965327708652620924912610122049843800380131746381968266727388919414524075492921510147435877107720844487333947572033626887969846858337336557672107987074468763307953130616555202495401302128216460637786993535376622372745654109623249396257174895352222213037880060756992073605135503615371392439827458529942230210514752764526895030759481226199720092008002458654297737883219558685499445394647863430593136350562417924068100891680398878483362058595716232013516337079804607378041880078724811071904523716775991447489914128580100888252698281559809224785596795038122963619830942475652745611551345360922016753939774272970008770647516790944335173711498988149783075646985898883858697162003144539047532603946093022417842140993960433780913606807466518632121884254341907122163281927271483110212890483');
447 INSERT INTO num_exp_ln VALUES (3,'86.992429107491709045555322727377654177072455841678650084144967727028762699430180506209786297136121512625728883607972513154010138109866327600596617277403558404624813332464431424791338402731178416819791932126837396086742033973404980654712734845137075562739300866280737071167943367603243180515859476717635339619107593771719314284984269343476343816253634799874584843436046260962736006310389088154751401911743739429257286834178656182340416539923956100441369280015412718483971113838923221170027312390404790743389872757674342133486652087007983701950040432125562287337697971646750563062524010514537132255605131615248097901911480464339325353279118429890601202554448469387179349495284716473293965884844451619766312048304583068386805927433174443889441171878078987788018564357316138422561213329104267180509029624308926098065');
448 INSERT INTO num_exp_ln VALUES (4,'56.935276817066740776567329017240462885579486075188456418197311631774373422196025180114152248099799048545382060930401786002025479108787121595516444894009593031141335985913019897883627990503003577804436730367402618412514152465206336556967419434371593632864308139215157721913158949066717186782560422199668568894551013785702491365073449320535603830475158258853167712460432995074161536886421366716995573365924430692151761737886552457036412140640821310927642146210426044265504978418405684030862182425702683702307323138985481047994648222224089112998195621687911787785594701557252468626097576375468916953563766801336922479861708649876362257086586679701715813254414915314296890025577780265459584203893089574567331742100451277992780400302806430264717887468808962517029442262560742822875484362427192693300423729233467613910');
449 INSERT INTO num_exp_ln VALUES (5,'20.296713391219923821414834924710998522858242536565236229645868008008504475111229451635162536658197320282791428572861452713483981402773630985812066048575864982038046409484905688236579134672910905547858248343712686247795669280482288748331949478864729205285910525962001251260319741279139167559906461672936902355959755164523720443059989357054368460911050707727029320725144824995614445423492687177126412520389766864793826362309254124276325522276592246655562770110024099522184080118637524912964002223613671995639705240767929562023556724031894855094820328152633412077228479168557819219970917880393852962560319397442566813746504969336443969816954424715197797253670026862362130664772772977978222813915593329422557592316429203293264572088112274848838446633519530653849595288125585730314673691986554304725866754516304420665');
450 INSERT INTO num_exp_ln VALUES (6,'-3.058947463851998053084898503420969773173569760507671013593014983772013099601022840164736581595033399273677583253456908293015637115395777673836877852797643436458673662566205707359569792482081945396989472318998080581824382006377064185813936544714612287417301161454496258176319380348780934551188852900784476213986897306897793456700682073399936398243222895442594762628402487110466705108765286617060826203345783502301472192906817785365563881556293576463515218574477264521950513789471494214626744754200844840310516235570475410854073969787604451971790833680742315518808178608136598148628107328076871698598743664423452623124027059698038466681488746505289551548778131621576387262707147068500249466398507704796800459013580425992071957391417767257856002976954566094297724379688683375704613872658653366052459242767328235849');
451 INSERT INTO num_exp_ln VALUES (7,'41.246780548917246608934265057073076900048579756649769602488660179351587788197892095257027979113051775079905924990472069951828742350559917110289416201523653941731339141666097617614477426376799479821365070373247490598890520285155435501242427296281987676879064510605563522117334502131946383957407685328562874307957108543536378261847119286989184256009392692140821396916222386573424618796707564187152459973446833193743614720624765332006827171872712331032607870580880807058576154429597725560836582655488602546786785520452359711161305828045237044625934404295366273012300148250900116489718279757540843657039519736455668388572899273464839528462223812926410544976290646668870192676914370659142463304861500879195867873346447316374869974900582948166687948531910220128160490935170837209017355954301127162240133341813847180541');
452 INSERT INTO num_exp_ln VALUES (8,'22.862977375646110045361670561177818139082238721442691850491173190000619222046296383571431877856442345505931635735363450488731186880557789439424987680284612480261693386095598289519783790826332183796775862215503493910816035128476952347072320869461206895223935484838130924268616681347949695029657753251443811448783435000569829291535036468240771401957519222523032235686030017496209956550934543164421459898155836108824017735809352580723262896259290484291175350770265895317482371895188221452083719817251845416195168686335127805092334984596224320638378502008767433534450949989322562311171685891891122105437154553106840103473941148230953978989145470651955269817951560544095229079088083494695756914405635176899994279484466773598435268700064279990885608144109747858515514066444373797446449729058958270758597627587968112958');
453 INSERT INTO num_exp_ln VALUES (9,'17.820358481980064387183481028572263407130633079314879566896470101569251997264841660326428805413719418277889123643557369421967068805165885825106611310020187894256310674762734896979157570968168599492401269694048046876387337971177513661006711375440365724346137980004810780215236524986274043416621637509807126148966029923572853117418545426960105154053049098579812135003711132897895016476695223444397389521434633067499404903493027304737402519428197015899833229473322655155458942323004249812974150129789653469524573801259946118454333405580647485894435301530550214095993989552176497867244278699359917247910082169086524111229983698975613609318418313798992088206507831757327320958918656453341769110558376097374227592021075267882222057385413453949580066342977546145482215220982989992069525148522710254796105001938615214263');
454 COMMIT TRANSACTION;
455 BEGIN TRANSACTION;
456 INSERT INTO num_exp_log10 VALUES (0,'NaN');
457 INSERT INTO num_exp_log10 VALUES (1,'4.930660740129727276654889314296515979425461685461970306647398411855044094312185293195497201658739777714943974003690119189101973212927970410047992001003936259467465542044528955416040460487922970233600641954269411521809500203864460110903973264337093883907933081597350982496469748131390809569321256206859934619579029279954574676601709408712255490686948453752571699579252140062805776361984468580258289509013081691778727372026090522694670379557247829136504595898935235926069699309392675806881162434168418505908116911054206058735257796918687777716036307205415038158583184624809880157060625643069601549803887864772092583549388533013233603450097615537162442973385137488450178790573546382354482351187412256794374383453695483855501587939419102008302408157959291557415763034668013452188944554607063362933134950906875499201');
458 INSERT INTO num_exp_log10 VALUES (2,'32.997769620388965086774969704518222090258389987679691893351902336370051104718852164011301929506188893338106627980171059175447833290713847317665944354651476245003161501753612545484635275306181777040447675475670149066399611203341262105766118892586541910243351018829302798733989560900125591073082441126709911019648451232244139674063434385451279378543163944005973452562993913383659295688375546058256196254319767218634546732685705517341998116744642480938405113447415486950667007645850519659606476727681944251201236366198374488204017630268083077471516734133869728427050843306716313813724061560369884508660845630727190444623729815564381063131729592825825486515070406390371638817503915214206586939112681762984038333298146999891250107667687034785493312416966635780188163871680959873288697497561452228182734430749066579749');
459 INSERT INTO num_exp_log10 VALUES (3,'37.780331928743475574895606142114739140772838801045013007323050327909196792739138159615327729728110344767302636436234256468332011934881494997184865617793179255006442447189720642997935223133982347184994174261506212652322213673745795726283311685835974151422721233207287206894148660531800622455957268888702309499182978182878524951883775154983702898237404558813230370364953160102391101897560104513279410610948028599674950811462114131673380477843456965645417025376374320207504913806546872166094337441573669261285052323206348035827948287081776955945081345131570610652073053464020209215624179904586956137079321655773178387441622685682721151900601340680061607114354850640946256225260430676099781727317540719923791064452012925902993317349390523278687089530234444415688602090547516647302454865526291471706301790881694022223');
460 INSERT INTO num_exp_log10 VALUES (4,'24.726676547286224970759328746582840552419566534667446425423046931401641497155587075591229106937829957279943690528061985864558314570189069764367933957499905044566413640017549478921384160584906257607957223101377816440084188042395098536074479064548620374152344954289432050971466476174493306432228880930006524504974367146536665170956555486181410864034862861231267121149652317599303804477688621597163730470970207231328339082779056152481480926452142005969020950341307977091850953883445808399574256295803245530993204179747743812544604144379381347499056545148243304041538981954204310612049423688645476667184129189153715486929216331980316967699254518020077226689317148303152585009031597809279387172427408557115400021035692880631275593381822805377317270568779655383061987766693697518921188619814204902583361096973421134004');
461 INSERT INTO num_exp_log10 VALUES (5,'8.814750626578650238811431417807018895270298639823442501111235973209197727215795256506525221092818797578008152140054383421240180435087611869193019443372556081555311825248667278358330916098378127100899126895012782320751838528480712942601038190627182482614147263228588284866661508052724762701223357327343090598060805245853527435948381893458352744679795853650453594546267600486696643924152372736774331080527157374379043696696647158270918245668579680394279565181670004245143555617589138267976417280970718829942998800499312890580011246294669585429723974582350357991472101919333996770115834067969654217063942059882195268353998096891812525364797586486311202350700339609637274043915687880562465121559531284337603363356183320193656553931871200575467929714875483123706358278876389849119105053294688326141759401230994901405');
462 INSERT INTO num_exp_log10 VALUES (6,'-1.328484003982869642690619298690906747763234110040562640557173509402512757735587333095924652711056556491908059708986413635120656426593745303715671199761364516107844087845783714418487426723538440387069985879601248897538855843115404484229652166941838283489828419407478748732927617251897244190697443966424660881366993754577233476597163021768156814527570512834684713730559883782625870597080940193303268818336816535968869931456641949301731046034660616615392129109391145214470757259042172416816936479713743188047425796931722546185493217275537303458837771965375448968719169174136287532752370175863826715450565025635651343928205805494319778539652563499901671319955144823432132740582617949774638538594081514904904341299199113721131520557004571803778698005652464301037962272085633628653321081368256925971558076970172779715');
463 INSERT INTO num_exp_log10 VALUES (7,'17.913249188669140643510654105014358282516966474257460687880559542190804665566625978925406311113121982595279826214959603627387555578965653325278444455875162277940655989601428868642914577248262147833499137348602966573601719040813549936948178463592211685237720748377879836890106515699728652218324794927458352954247096536337594789471529493944292143186953509162522579060020018226817623648563806559917579317916242706559131476179714031602207057714677845347616752450567251644277767418397621490301286115159509360375419599968738067461569666699939732107480135216621373057421990702923042287910730395998082514702629760389192370666675364405730936537832803383367187639209534697198515928978064543150195911463663617683085348965065679311986715357338675515370634753254774665197233934933271954463040729779956682570415317734489164385');
464 INSERT INTO num_exp_log10 VALUES (8,'9.929264914121995501917993119394933531225401243275938207624866270551448544301376913376130982251708700134720886862945040266148728213253651323129942781577143957084726727561987639140151337848818195806259935747329665025823709044567138449084349729747202164413995795609659711723455165142329822773177102845804114214340046404641970845707372809306219463962664551623665322610139794354769767829380018857313559373283673392337954610346290037758389035140213224696023751541663171574697035012610534455189013755134090933979479069288110010954211669067225249755249337768792642303351914884187159646984708862430789018895140670365476746734456807215043628059581947593694929159076346249490593187993386780521089745819640214783614157516171005086731241769146397577246387886107367648843380733370112546792442909347322732196805316614555689762');
465 INSERT INTO num_exp_log10 VALUES (9,'7.739283354261751283625223433456284905560931805428759681411970457812279544250432389511382263439324085689734710188041049046660480575958686859942980599595036769090747781359217248301544587434077376812293034848418204834388504169166350770257248896025815531248627658465029806509131631454856186387892627989218208026727504548130018922325585619738185507999433763118148418722504204066578294826264005398891049629199412773138457218976050467479292777172717500219850781664314597312411301296201533610562886229900497272268364496763758868455934979903774531992886483396489868888731578355541611359130188566524240259770918423445785338175040098706500034487703124623745259139247432324145633151895802637182446905097253961951018926565652497920605819785424451050191604602898777804133717341512568151920576684198443843944721398831404081859');
466 COMMIT TRANSACTION;
467 BEGIN TRANSACTION;
468 INSERT INTO num_exp_power_10_ln VALUES (0,'NaN');
469 INSERT INTO num_exp_power_10_ln VALUES (1,'225561990715.277245515991117670624124484084762557459065170589803293759247930753528436379932442146759103295277479258327642314622036941865221478746258727236601688778946696303277607709407496616423493315166963938393760548678730128692212077086588682984700837334554241405763691119669847463520746595280034536307041368063462023793177898200220207765205127584303464304601759554817607633012272490650155253979182893585119965271975927569080191838676053084168631217591768468344106219831174026139608715965691941366334940196517120885214887008671956523579678156919416435031020452971977153991139145404842034138317592877675821045409772456977018293365238179815614004574330200783530118851005077771478448804470170641452481992602803877112958872108069738434946694089025321283178188028224338756015337492913115267362635647236447601252924834642796058');
470 INSERT INTO num_exp_power_10_ln VALUES (2,'9553718264533556311125292459627965006385666643531070061102266984368939757379.536714147420215784125170401370065894858487440153494392538261078415409784085960333028254155527328359894197540839556987826344995348426293585457768226283066583722499658006242709930685932246087653832230889613022921575445199055131152661556678809191264086381976922223866204038615136758192929883317207903579770917317641181652055458721731297347443662717939116561947785705140374908203404860090658919334137955075887697259604047657534191202566335372150375993361370075961180728155127447781364264047857624746079509591666068708743260905728661917791822925979235918475633100283148558978385583805341715868143937062092264994833222352433299015979561976964779350640064096690062929265992966564232453102431600199173711947391200249130712039686700111791790265309426741120465259677894665532560198051256215915373145226284270408649736509');
471 INSERT INTO num_exp_power_10_ln VALUES (3,'982718444846268846508445482774217796844461660819285525931206164100817251856409365450682.362683768066405322653747385034480250394145008573806022660379219602846285813744865438912887625784087005970975437905783802114553690522787857272953842288090141945268495451006273685577260054069522075046955466204804067271437138871789034722069934693546671607506851844248427950939791205412350536883779850165603116191193657054604569586553874805856647223849267039531773072343908345333155562072887754900969504551717514980465801806565999410206735831440712124661645970935112535081991606671600328471264697018198676317466846450405861359235297846597981143547119390922405594115478086038680663368675222949247096131378724350715530605691796680604309063173515781378545860473572389718345696107553363715518601596249508215455106779522851210398208919496668879040223859884166805448827948087400426315425231119801173387715922086154065273');
472 INSERT INTO num_exp_power_10_ln VALUES (4,'861542720105376650266753999919217194383259935058507531116.774511336660822591851369622743235084609149542494189385785321912210129989390054947787009383210009523204976629456268332186620016067379702483800883493431423160815760933380418976582725913410929214462739708321325884209636272001805871036779154087677637129248122540412937033791526383240502286607736226090213753913654673523613612439527815137888202973659987501649474772884055648603290154867585312925699571949539600328906295652872654314913539778815035321695215634102441494403825526533235061083947035338872599854931230001361227174477274708230470794066733245241594719912710139298949856243576688344051439047966427547889756037265151798639614843866387316916203238068277912991427278268083231579195846744438643659745041780103653332041031419793815914447232121937821142169172566753399257291244398531365781832297786941359729799400');
473 INSERT INTO num_exp_power_10_ln VALUES (5,'198021976607570296508.271597639984889464620426933601643322058775615235389194561064983706229795978402690473201671702614911129095149240715527556855309177671128442458698638704394974473956869419481315262823632891676087912529523219333012290621046361106033860210270638559271706082115529424772192777643046125905852037759566224116373416253787241195450409652089019290072319861181399387753223422998872180810295299831487867222464355713552301775702554189470264147325049133532522718679336524769566984150923939420759804463781082299907043016120177416779442865059261387111806785876531152192378576258351599534512031062777609734092707165605364139201322351960602280089186180302246827234844736393745487324460438448807241887783263546165171099497316415863122023114646876909575845860402164818094500541234974716577550807551946414081410743197768993152975501');
474 INSERT INTO num_exp_power_10_ln VALUES (6,'.000873076977206566818052116526263730226812004454463281371489634779519089200224205946321120805055212090024554381349223642352209212670470260295303361873760972918129853308169576675500721645609379420329169271088810484607337679253503247351324049221970104335289487989027621978310506220905131150125321713385148268584530413680037620544212746920563790371941626294733473967065607791756894237438288480748407449237446113996117912144587258434808327522518688617394025018756570740098795745692805352377041347367240475846033282850136270250633825482156304826383360291164928049344226886150285595932088884965511963310715773499733217615863523253012606066583814112265708693122563204149232245895551314975524172504103194858904869273185785182598234060315036187756490539352752560361560286717869643902435677448962235275054804452967413005');
475 INSERT INTO num_exp_power_10_ln VALUES (7,'176514565873872717825163931126806100435750.096278384530154766967061948052237623936423931849868926020451465515367348890410352640552194499619062823622476972850692557798609619250753020363520533767813563613425606228355802781302735485038377521515850536680425059519814786118919994914180918228654298075183514200191737597656810036850772127169441661576862538643715648802139886576391427423689320082366572297580054381937437005879583216745596935643579262248665490169331304003204939561361718554509909313409421397022626924406091551900222555950699170864234411017062042057683304265485826061096835531732950909546314722726990314852356462874701181085379772134121978510387397276859318242238150439474660772561390798432890789762504242822787017140808209820627435991445529404692793744568204608385843245177656436105160780897472099970336514833257055017279707999437302548655364559');
476 INSERT INTO num_exp_power_10_ln VALUES (8,'72941951052009383458167.300747500436981484566111756088702608000390737594784514635592222758882092500858797317505303492923829092720870826490477962201959426813271424853341826896270963213736922458746003100613943600855942721319226948714369219316345322636075285343544788982588956431405042577296229122673590336976893594798942025893296105815818487227300314490440902574022885833779324177053242170024559675073866612316965636832258283516275906085642459351367507561963945012828379111856700009391438637054015804558386733558956649061672420804826896303889067785497738203077050774825608647969196321506624991188638449047860249367840775936911749905927108478444112230174584693363226143549933224252679398881354887872642908328737917862751077365602631600279486028043329404269490375935308156815477700961014566228692743960491745353377403533037122586797765130');
477 INSERT INTO num_exp_power_10_ln VALUES (9,'661239032819374816.097553651299556484820492272269662685578275493609248662925676004753503494252951243895572437264999063878330704584509915845096232798927524470286655554736724913758600775591269525423912692080421094644542553026831758426157681271572808657664918053119324646138457659418857926209701677786068580819823633713337632456905824562235373422309621872998037966404189020165296080436871220718574009921789858751384547836431858428729570977259373272041837411903005303672798845573379758630607982213326716018594073712340609488043353995410508475153538231445235003980586600882223782814368245305160648543466496726973755388826656879616734762068443462618454921858705377028522664844761719759342490380417060255776725333319537746890406213693117052223545525717132695297770810635066731941724108167146710297146989770382041617889670713111888375717');
478 COMMIT TRANSACTION;
479 BEGIN TRANSACTION;
480 INSERT INTO num_data VALUES (0, '0');
481 INSERT INTO num_data VALUES (1, '85243.39540024977626076239847863600785982737155858270959890014613035727868293618673807776733416230953723818527101593495895350807775607346277892835514324320448949370623441059033804864158715021903312693889518990256881059434042443507529601095150710777634743301398926463888783847290873199395304998050753365215426971278237920063435565949203678024225270616295573678510929020831006146661747271783837653203039829647102027431761129518881525935216608429897041525858540380754759125150233053469999022855035');
482 INSERT INTO num_data VALUES (2, '-994877526002806872754342148749241.04353023451866590387054959174736129501310680280823383331007646306243540953499740615246583399296334239109936336446284803020643582102868247857009494139535009572740621288230740389545481395');
483 INSERT INTO num_data VALUES (3, '-60302029489319384367663884408085757480.2322712404088283093870869198708849258097125725036189625900174440196153781995220721511009855207486224837798752903681993777275846325950111427710563453217985216966456785944859989497422927661683538629473170704026975786513125842675604577233871570629808699803522400038975396500769162308448069085909755023233588510630417065084295051270219462289785473643946404281422516357503746700705970360169619852905053433235726497292406142332833');
484 INSERT INTO num_data VALUES (4, '5329378275943663322215245.24931765987630429629836382184742348353920297283690739124220773955591340709935970062776650204659187764581615597720798385015942389765692769739983054442503547211560297249686289665792078548480268091496050883021187158502798880896590227542729659940394038802461081290690995869705131152889309663639310553909874081663091069118126221594338242710530718836025225507189149221049928936955230868771875644038572888630664890573507822342998964954667474300944699078658989010257103569231493090050659723450626338923049035040974032671138430612839043269997482582763267536489504794826476836323549796385028155416935072959933315468068930689064483178204550825728947252440604703474049780550458442808479096492346910001692358508618202898514895453589357');
485 INSERT INTO num_data VALUES (5, '-652755630.43456071828048833552593835051449845484289562110789582081210403487973096161149072377955192388469356112505543620695003436531392789029513380101663750625024853263344909355177280161504414335005574882649025508632900995595004153086358670541462762210415346958050909878501048483523600711486406055424807840429541335391538322886495085448421556770991545781035298449067051916630343957356635391594362639819978677032855590055900561501350354631803808000307050416047072513406855040715556454205065332997338225626635780147287003130754254277103928406089109802521803537038957372612837169223905290912251006321930223154562110264217937');
486 INSERT INTO num_data VALUES (6, '0.0469370721950711508944806393077762204079964905145503836835397203739563036579760026190241480514409364');
487 INSERT INTO num_data VALUES (7, '-818934540071845742');
488 INSERT INTO num_data VALUES (8, '8496986223.64063724353165506167988570717591150432282238795309964705925283285060558038824227595710139960766584401003765241409149793494330798800');
489 INSERT INTO num_data VALUES (9, '054863480.34685027005508022756223282084742813020271603840941647350440860843570182437301045468670059279379903480024743452620396345637401505220786389930600883087012615993343976556472498552535317826554614696684732913955544753638726438705858481670766245958647367500212800073774509075408148134050353551558174813940258910304990570172170811882520915334358633');
490 COMMIT TRANSACTION;
491 -- ******************************
492 -- * Create indices for faster checks
493 -- ******************************
494 CREATE UNIQUE INDEX num_exp_add_idx ON num_exp_add (id1, id2);
495 CREATE UNIQUE INDEX num_exp_sub_idx ON num_exp_sub (id1, id2);
496 CREATE UNIQUE INDEX num_exp_div_idx ON num_exp_div (id1, id2);
497 CREATE UNIQUE INDEX num_exp_mul_idx ON num_exp_mul (id1, id2);
498 CREATE UNIQUE INDEX num_exp_sqrt_idx ON num_exp_sqrt (id);
499 CREATE UNIQUE INDEX num_exp_ln_idx ON num_exp_ln (id);
500 CREATE UNIQUE INDEX num_exp_log10_idx ON num_exp_log10 (id);
501 CREATE UNIQUE INDEX num_exp_power_10_ln_idx ON num_exp_power_10_ln (id);
502 VACUUM ANALYZE num_exp_add;
503 VACUUM ANALYZE num_exp_sub;
504 VACUUM ANALYZE num_exp_div;
505 VACUUM ANALYZE num_exp_mul;
506 VACUUM ANALYZE num_exp_sqrt;
507 VACUUM ANALYZE num_exp_ln;
508 VACUUM ANALYZE num_exp_log10;
509 VACUUM ANALYZE num_exp_power_10_ln;
510 -- ******************************
511 -- * Now check the behaviour of the NUMERIC type
512 -- ******************************
513 -- ******************************
514 -- * Addition check
515 -- ******************************
516 DELETE FROM num_result;
517 INSERT INTO num_result SELECT t1.id, t2.id, t1.val + t2.val
518     FROM num_data t1, num_data t2;
519 SELECT t1.id1, t1.id2, t1.result, t2.expected
520     FROM num_result t1, num_exp_add t2
521     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
522     AND t1.result != t2.expected;
523  id1 | id2 | result | expected 
524 -----+-----+--------+----------
525 (0 rows)
527 DELETE FROM num_result;
528 INSERT INTO num_result SELECT t1.id, t2.id, round(t1.val + t2.val, 10)
529     FROM num_data t1, num_data t2;
530 SELECT t1.id1, t1.id2, t1.result, round(t2.expected, 10) as expected
531     FROM num_result t1, num_exp_add t2
532     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
533     AND t1.result != round(t2.expected, 10);
534  id1 | id2 | result | expected 
535 -----+-----+--------+----------
536 (0 rows)
538 -- ******************************
539 -- * Subtraction check
540 -- ******************************
541 DELETE FROM num_result;
542 INSERT INTO num_result SELECT t1.id, t2.id, t1.val - t2.val
543     FROM num_data t1, num_data t2;
544 SELECT t1.id1, t1.id2, t1.result, t2.expected
545     FROM num_result t1, num_exp_sub t2
546     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
547     AND t1.result != t2.expected;
548  id1 | id2 | result | expected 
549 -----+-----+--------+----------
550 (0 rows)
552 DELETE FROM num_result;
553 INSERT INTO num_result SELECT t1.id, t2.id, round(t1.val - t2.val, 40)
554     FROM num_data t1, num_data t2;
555 SELECT t1.id1, t1.id2, t1.result, round(t2.expected, 40)
556     FROM num_result t1, num_exp_sub t2
557     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
558     AND t1.result != round(t2.expected, 40);
559  id1 | id2 | result | round 
560 -----+-----+--------+-------
561 (0 rows)
563 -- ******************************
564 -- * Multiply check
565 -- ******************************
566 DELETE FROM num_result;
567 INSERT INTO num_result SELECT t1.id, t2.id, t1.val * t2.val
568     FROM num_data t1, num_data t2;
569 SELECT t1.id1, t1.id2, t1.result, t2.expected
570     FROM num_result t1, num_exp_mul t2
571     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
572     AND t1.result != t2.expected;
573  id1 | id2 | result | expected 
574 -----+-----+--------+----------
575 (0 rows)
577 DELETE FROM num_result;
578 INSERT INTO num_result SELECT t1.id, t2.id, round(t1.val * t2.val, 30)
579     FROM num_data t1, num_data t2;
580 SELECT t1.id1, t1.id2, t1.result, round(t2.expected, 30) as expected
581     FROM num_result t1, num_exp_mul t2
582     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
583     AND t1.result != round(t2.expected, 30);
584  id1 | id2 | result | expected 
585 -----+-----+--------+----------
586 (0 rows)
588 -- ******************************
589 -- * Division check
590 -- ******************************
591 DELETE FROM num_result;
592 INSERT INTO num_result SELECT t1.id, t2.id, t1.val / t2.val
593     FROM num_data t1, num_data t2
594     WHERE t2.val != '0.0';
595 SELECT t1.id1, t1.id2, t1.result, t2.expected
596     FROM num_result t1, num_exp_div t2
597     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
598     AND t1.result != t2.expected;
599  id1 | id2 | result | expected 
600 -----+-----+--------+----------
601 (0 rows)
603 DELETE FROM num_result;
604 INSERT INTO num_result SELECT t1.id, t2.id, round(t1.val / t2.val, 80)
605     FROM num_data t1, num_data t2
606     WHERE t2.val != '0.0';
607 SELECT t1.id1, t1.id2, t1.result, round(t2.expected, 80) as expected
608     FROM num_result t1, num_exp_div t2
609     WHERE t1.id1 = t2.id1 AND t1.id2 = t2.id2
610     AND t1.result != round(t2.expected, 80);
611  id1 | id2 | result | expected 
612 -----+-----+--------+----------
613 (0 rows)
615 -- ******************************
616 -- * Square root check
617 -- ******************************
618 DELETE FROM num_result;
619 INSERT INTO num_result SELECT id, 0, SQRT(ABS(val))
620     FROM num_data;
621 SELECT t1.id1, t1.result, t2.expected
622     FROM num_result t1, num_exp_sqrt t2
623     WHERE t1.id1 = t2.id
624     AND t1.result != t2.expected;
625  id1 | result | expected 
626 -----+--------+----------
627 (0 rows)
629 -- ******************************
630 -- * Natural logarithm check
631 -- ******************************
632 DELETE FROM num_result;
633 INSERT INTO num_result SELECT id, 0, LN(ABS(val))
634     FROM num_data
635     WHERE val != '0.0';
636 SELECT t1.id1, t1.result, t2.expected
637     FROM num_result t1, num_exp_ln t2
638     WHERE t1.id1 = t2.id
639     AND t1.result != t2.expected;
640  id1 | result | expected 
641 -----+--------+----------
642 (0 rows)
644 -- ******************************
645 -- * Logarithm base 10 check
646 -- ******************************
647 DELETE FROM num_result;
648 INSERT INTO num_result SELECT id, 0, LOG('10'::numeric, ABS(val))
649     FROM num_data
650     WHERE val != '0.0';
651 SELECT t1.id1, t1.result, t2.expected
652     FROM num_result t1, num_exp_log10 t2
653     WHERE t1.id1 = t2.id
654     AND t1.result != t2.expected;
655  id1 | result | expected 
656 -----+--------+----------
657 (0 rows)
659 -- ******************************
660 -- * POW(10, LN(value)) check
661 -- ******************************
662 DELETE FROM num_result;
663 INSERT INTO num_result SELECT id, 0, POW(numeric '10', LN(ABS(round(val,1000))))
664     FROM num_data
665     WHERE val != '0.0';
666 SELECT t1.id1, t1.result, t2.expected
667     FROM num_result t1, num_exp_power_10_ln t2
668     WHERE t1.id1 = t2.id
669     AND t1.result != t2.expected;
670  id1 | result | expected 
671 -----+--------+----------
672 (0 rows)
675 -- Test code path for raising to integer powers
677 -- base less than 1
679 -- bc(1) results computed with a scale of 500 and truncated using the script
680 -- below, and then rounded by hand to match the precision of POW():
682 -- for p in {-20..20}
683 -- do
684 --   b="0.084738"
685 --   r=$(bc -ql <<< "scale=500 ; $b^$p" | head -n 1)
686 --   echo "($b, $p, $r),"
687 -- done
688 WITH t(b, p, bc_result) AS (VALUES
689 (0.084738, -20, 2744326694304960114888.7859130502035257),
690 (0.084738, -19, 232548755422013710215.4459407000481464),
691 (0.084738, -18, 19705716436950597776.2364581230406798),
692 (0.084738, -17, 1669822999434319754.3627249884302211),
693 (0.084738, -16, 141497461326065387.3451885900696001),
694 (0.084738, -15, 11990211877848128.7928565907453178),
695 (0.084738, -14, 1016026574105094.7376490817865767),
696 (0.084738, -13, 86096059836517.5178789078924309),
697 (0.084738, -12, 7295607918426.8214300228969888),
698 (0.084738, -11, 618215223791.6519943372802450),
699 (0.084738, -10, 52386321633.6570066961524534),
700 (0.084738, -9, 4439112122.5928274334185666),
701 (0.084738, -8, 376161483.0442710110530225),
702 (0.084738, -7, 31875171.7502054369346110),
703 (0.084738, -6, 2701038.3037689083149651),
704 (0.084738, -5, 228880.5837847697527935),
705 (0.084738, -4, 19394.8829087538193122),
706 (0.084738, -3, 1643.4835879219811409),
707 (0.084738, -2, 139.2655122733328379),
708 (0.084738, -1, 11.8010809790176780),
709 (0.084738, 0, 1),
710 (0.084738, 1, .084738),
711 (0.084738, 2, .007180528644),
712 (0.084738, 3, .0006084636362353),
713 (0.084738, 4, .0000515599916073),
714 (0.084738, 5, .0000043690905688),
715 (0.084738, 6, .0000003702279966),
716 (0.084738, 7, .0000000313723800),
717 (0.084738, 8, .0000000026584327),
718 (0.084738, 9, .0000000002252703),
719 (0.084738, 10, .0000000000190890),
720 (0.084738, 11, .0000000000016176),
721 (0.084738, 12, .0000000000001371),
722 (0.084738, 13, .0000000000000116),
723 (0.084738, 14, .0000000000000010),
724 (0.084738, 15, .0000000000000001),
725 (0.084738, 16, .0000000000000000),
726 (0.084738, 17, .0000000000000000),
727 (0.084738, 18, .0000000000000000),
728 (0.084738, 19, .0000000000000000),
729 (0.084738, 20, .0000000000000000))
730 SELECT b, p, bc_result, b^p AS power, b^p - bc_result AS diff FROM t;
731     b     |  p  |                bc_result                |                  power                  |        diff        
732 ----------+-----+-----------------------------------------+-----------------------------------------+--------------------
733  0.084738 | -20 | 2744326694304960114888.7859130502035257 | 2744326694304960114888.7859130502035257 | 0.0000000000000000
734  0.084738 | -19 |  232548755422013710215.4459407000481464 |  232548755422013710215.4459407000481464 | 0.0000000000000000
735  0.084738 | -18 |   19705716436950597776.2364581230406798 |   19705716436950597776.2364581230406798 | 0.0000000000000000
736  0.084738 | -17 |    1669822999434319754.3627249884302211 |    1669822999434319754.3627249884302211 | 0.0000000000000000
737  0.084738 | -16 |     141497461326065387.3451885900696001 |     141497461326065387.3451885900696001 | 0.0000000000000000
738  0.084738 | -15 |      11990211877848128.7928565907453178 |      11990211877848128.7928565907453178 | 0.0000000000000000
739  0.084738 | -14 |       1016026574105094.7376490817865767 |       1016026574105094.7376490817865767 | 0.0000000000000000
740  0.084738 | -13 |         86096059836517.5178789078924309 |         86096059836517.5178789078924309 | 0.0000000000000000
741  0.084738 | -12 |          7295607918426.8214300228969888 |          7295607918426.8214300228969888 | 0.0000000000000000
742  0.084738 | -11 |           618215223791.6519943372802450 |           618215223791.6519943372802450 | 0.0000000000000000
743  0.084738 | -10 |            52386321633.6570066961524534 |            52386321633.6570066961524534 | 0.0000000000000000
744  0.084738 |  -9 |             4439112122.5928274334185666 |             4439112122.5928274334185666 | 0.0000000000000000
745  0.084738 |  -8 |              376161483.0442710110530225 |              376161483.0442710110530225 | 0.0000000000000000
746  0.084738 |  -7 |               31875171.7502054369346110 |               31875171.7502054369346110 | 0.0000000000000000
747  0.084738 |  -6 |                2701038.3037689083149651 |                2701038.3037689083149651 | 0.0000000000000000
748  0.084738 |  -5 |                 228880.5837847697527935 |                 228880.5837847697527935 | 0.0000000000000000
749  0.084738 |  -4 |                  19394.8829087538193122 |                  19394.8829087538193122 | 0.0000000000000000
750  0.084738 |  -3 |                   1643.4835879219811409 |                   1643.4835879219811409 | 0.0000000000000000
751  0.084738 |  -2 |                    139.2655122733328379 |                    139.2655122733328379 | 0.0000000000000000
752  0.084738 |  -1 |                     11.8010809790176780 |                     11.8010809790176780 | 0.0000000000000000
753  0.084738 |   0 |                                       1 |                      1.0000000000000000 | 0.0000000000000000
754  0.084738 |   1 |                                0.084738 |                      0.0847380000000000 | 0.0000000000000000
755  0.084738 |   2 |                          0.007180528644 |                      0.0071805286440000 | 0.0000000000000000
756  0.084738 |   3 |                      0.0006084636362353 |                      0.0006084636362353 | 0.0000000000000000
757  0.084738 |   4 |                      0.0000515599916073 |                      0.0000515599916073 | 0.0000000000000000
758  0.084738 |   5 |                      0.0000043690905688 |                      0.0000043690905688 | 0.0000000000000000
759  0.084738 |   6 |                      0.0000003702279966 |                      0.0000003702279966 | 0.0000000000000000
760  0.084738 |   7 |                      0.0000000313723800 |                      0.0000000313723800 | 0.0000000000000000
761  0.084738 |   8 |                      0.0000000026584327 |                      0.0000000026584327 | 0.0000000000000000
762  0.084738 |   9 |                      0.0000000002252703 |                      0.0000000002252703 | 0.0000000000000000
763  0.084738 |  10 |                      0.0000000000190890 |                      0.0000000000190890 | 0.0000000000000000
764  0.084738 |  11 |                      0.0000000000016176 |                      0.0000000000016176 | 0.0000000000000000
765  0.084738 |  12 |                      0.0000000000001371 |                      0.0000000000001371 | 0.0000000000000000
766  0.084738 |  13 |                      0.0000000000000116 |                      0.0000000000000116 | 0.0000000000000000
767  0.084738 |  14 |                      0.0000000000000010 |                      0.0000000000000010 | 0.0000000000000000
768  0.084738 |  15 |                      0.0000000000000001 |                      0.0000000000000001 | 0.0000000000000000
769  0.084738 |  16 |                      0.0000000000000000 |                      0.0000000000000000 | 0.0000000000000000
770  0.084738 |  17 |                      0.0000000000000000 |                      0.0000000000000000 | 0.0000000000000000
771  0.084738 |  18 |                      0.0000000000000000 |                      0.0000000000000000 | 0.0000000000000000
772  0.084738 |  19 |                      0.0000000000000000 |                      0.0000000000000000 | 0.0000000000000000
773  0.084738 |  20 |                      0.0000000000000000 |                      0.0000000000000000 | 0.0000000000000000
774 (41 rows)
776 -- base greater than 1
778 -- bc(1) results computed with a scale of 500 and truncated using the script
779 -- below, and then rounded by hand to match the precision of POW():
781 -- for p in {-20..20}
782 -- do
783 --   b="37.821637"
784 --   r=$(bc -ql <<< "scale=500 ; $b^$p" | head -n 1)
785 --   echo "($b, $p, $r),"
786 -- done
787 WITH t(b, p, bc_result) AS (VALUES
788 (37.821637, -20, .0000000000000000),
789 (37.821637, -19, .0000000000000000),
790 (37.821637, -18, .0000000000000000),
791 (37.821637, -17, .0000000000000000),
792 (37.821637, -16, .0000000000000000),
793 (37.821637, -15, .0000000000000000),
794 (37.821637, -14, .0000000000000000),
795 (37.821637, -13, .0000000000000000),
796 (37.821637, -12, .0000000000000000),
797 (37.821637, -11, .0000000000000000),
798 (37.821637, -10, .0000000000000002),
799 (37.821637, -9, .0000000000000063),
800 (37.821637, -8, .0000000000002388),
801 (37.821637, -7, .0000000000090327),
802 (37.821637, -6, .0000000003416316),
803 (37.821637, -5, .0000000129210673),
804 (37.821637, -4, .0000004886959182),
805 (37.821637, -3, .0000184832796213),
806 (37.821637, -2, .0006990678924066),
807 (37.821637, -1, .0264398920649574),
808 (37.821637, 0, 1),
809 (37.821637, 1, 37.821637),
810 (37.821637, 2, 1430.476225359769),
811 (37.821637, 3, 54102.9525326873775219),
812 (37.821637, 4, 2046262.2313195326271135),
813 (37.821637, 5, 77392987.3197773940323425),
814 (37.821637, 6, 2927129472.7542235178972258),
815 (37.821637, 7, 110708828370.5116321107718772),
816 (37.821637, 8, 4187189119324.7924539711577286),
817 (37.821637, 9, 158366346921451.9852944363360812),
818 (37.821637, 10, 5989674486279224.5007355092228730),
819 (37.821637, 11, 226539294168214309.7083246628376531),
820 (37.821637, 12, 8568086950266418559.9938312759931069),
821 (37.821637, 13, 324059074417413536066.1494087598581043),
822 (37.821637, 14, 12256444679171401239980.3109258799733927),
823 (37.821637, 15, 463558801566202198479885.2069857662592280),
824 (37.821637, 16, 17532552720991931019508170.1002855156233684),
825 (37.821637, 17, 663109844696719094948877928.0672523682648687),
826 (37.821637, 18, 25079899837245684700124994552.6717306599041850),
827 (37.821637, 19, 948562867640665366544581398598.1275771806665398),
828 (37.821637, 20, 35876200451584291931921101974730.6901038166532866))
829 SELECT b, p, bc_result, b^p AS power, b^p - bc_result AS diff FROM t;
830      b     |  p  |                     bc_result                     |                       power                       |        diff        
831 -----------+-----+---------------------------------------------------+---------------------------------------------------+--------------------
832  37.821637 | -20 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
833  37.821637 | -19 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
834  37.821637 | -18 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
835  37.821637 | -17 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
836  37.821637 | -16 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
837  37.821637 | -15 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
838  37.821637 | -14 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
839  37.821637 | -13 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
840  37.821637 | -12 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
841  37.821637 | -11 |                                0.0000000000000000 |                                0.0000000000000000 | 0.0000000000000000
842  37.821637 | -10 |                                0.0000000000000002 |                                0.0000000000000002 | 0.0000000000000000
843  37.821637 |  -9 |                                0.0000000000000063 |                                0.0000000000000063 | 0.0000000000000000
844  37.821637 |  -8 |                                0.0000000000002388 |                                0.0000000000002388 | 0.0000000000000000
845  37.821637 |  -7 |                                0.0000000000090327 |                                0.0000000000090327 | 0.0000000000000000
846  37.821637 |  -6 |                                0.0000000003416316 |                                0.0000000003416316 | 0.0000000000000000
847  37.821637 |  -5 |                                0.0000000129210673 |                                0.0000000129210673 | 0.0000000000000000
848  37.821637 |  -4 |                                0.0000004886959182 |                                0.0000004886959182 | 0.0000000000000000
849  37.821637 |  -3 |                                0.0000184832796213 |                                0.0000184832796213 | 0.0000000000000000
850  37.821637 |  -2 |                                0.0006990678924066 |                                0.0006990678924066 | 0.0000000000000000
851  37.821637 |  -1 |                                0.0264398920649574 |                                0.0264398920649574 | 0.0000000000000000
852  37.821637 |   0 |                                                 1 |                                1.0000000000000000 | 0.0000000000000000
853  37.821637 |   1 |                                         37.821637 |                               37.8216370000000000 | 0.0000000000000000
854  37.821637 |   2 |                                 1430.476225359769 |                             1430.4762253597690000 | 0.0000000000000000
855  37.821637 |   3 |                            54102.9525326873775219 |                            54102.9525326873775219 | 0.0000000000000000
856  37.821637 |   4 |                          2046262.2313195326271135 |                          2046262.2313195326271135 | 0.0000000000000000
857  37.821637 |   5 |                         77392987.3197773940323425 |                         77392987.3197773940323425 | 0.0000000000000000
858  37.821637 |   6 |                       2927129472.7542235178972258 |                       2927129472.7542235178972258 | 0.0000000000000000
859  37.821637 |   7 |                     110708828370.5116321107718772 |                     110708828370.5116321107718772 | 0.0000000000000000
860  37.821637 |   8 |                    4187189119324.7924539711577286 |                    4187189119324.7924539711577286 | 0.0000000000000000
861  37.821637 |   9 |                  158366346921451.9852944363360812 |                  158366346921451.9852944363360812 | 0.0000000000000000
862  37.821637 |  10 |                 5989674486279224.5007355092228730 |                 5989674486279224.5007355092228730 | 0.0000000000000000
863  37.821637 |  11 |               226539294168214309.7083246628376531 |               226539294168214309.7083246628376531 | 0.0000000000000000
864  37.821637 |  12 |              8568086950266418559.9938312759931069 |              8568086950266418559.9938312759931069 | 0.0000000000000000
865  37.821637 |  13 |            324059074417413536066.1494087598581043 |            324059074417413536066.1494087598581043 | 0.0000000000000000
866  37.821637 |  14 |          12256444679171401239980.3109258799733927 |          12256444679171401239980.3109258799733927 | 0.0000000000000000
867  37.821637 |  15 |         463558801566202198479885.2069857662592280 |         463558801566202198479885.2069857662592280 | 0.0000000000000000
868  37.821637 |  16 |       17532552720991931019508170.1002855156233684 |       17532552720991931019508170.1002855156233684 | 0.0000000000000000
869  37.821637 |  17 |      663109844696719094948877928.0672523682648687 |      663109844696719094948877928.0672523682648687 | 0.0000000000000000
870  37.821637 |  18 |    25079899837245684700124994552.6717306599041850 |    25079899837245684700124994552.6717306599041850 | 0.0000000000000000
871  37.821637 |  19 |   948562867640665366544581398598.1275771806665398 |   948562867640665366544581398598.1275771806665398 | 0.0000000000000000
872  37.821637 |  20 | 35876200451584291931921101974730.6901038166532866 | 35876200451584291931921101974730.6901038166532866 | 0.0000000000000000
873 (41 rows)
876 -- Tests for raising to non-integer powers
878 -- base less than 1
880 -- bc(1) results computed with a scale of 500 and truncated using the script
881 -- below, and then rounded by hand to match the precision of POW():
883 -- for n in {-20..20}
884 -- do
885 --   b="0.06933247"
886 --   p="$n.342987"
887 --   r=$(bc -ql <<< "scale=500 ; e($p*l($b))" | head -n 1)
888 --   echo "($b, $p, $r),"
889 -- done
890 WITH t(b, p, bc_result) AS (VALUES
891 (0.06933247, -20.342987, 379149253615977128356318.39406340),
892 (0.06933247, -19.342987, 26287354251852125772450.59436685),
893 (0.06933247, -18.342987, 1822567200045909954554.65766042),
894 (0.06933247, -17.342987, 126363085720167050546.86216560),
895 (0.06933247, -16.342987, 8761064849800910427.02880469),
896 (0.06933247, -15.342987, 607426265866876128.15466179),
897 (0.06933247, -14.342987, 42114363355427213.14899924),
898 (0.06933247, -13.342987, 2919892833909256.59283660),
899 (0.06933247, -12.342987, 202443382310228.51544515),
900 (0.06933247, -11.342987, 14035899730722.44924025),
901 (0.06933247, -10.342987, 973143597003.32229028),
902 (0.06933247, -9.342987, 67470449244.92493259),
903 (0.06933247, -8.342987, 4677892898.16028054),
904 (0.06933247, -7.342987, 324329869.02491071),
905 (0.06933247, -6.342987, 22486590.914273551),
906 (0.06933247, -5.342987, 1559050.8899661435),
907 (0.06933247, -4.342987, 108092.84905705095),
908 (0.06933247, -3.342987, 7494.3442144625131),
909 (0.06933247, -2.342987, 519.60139541889576),
910 (0.06933247, -1.342987, 36.025248159838727),
911 (0.06933247, 0.342987, .40036522320023350),
912 (0.06933247, 1.342987, .02775830982657349),
913 (0.06933247, 2.342987, .001924552183301612),
914 (0.06933247, 3.342987, .0001334339565121935),
915 (0.06933247, 4.342987, .000009251305786862961),
916 (0.06933247, 5.342987, .0000006414158809285026),
917 (0.06933247, 6.342987, .00000004447094732199898),
918 (0.06933247, 7.342987, .000000003083280621074075),
919 (0.06933247, 8.342987, .0000000002137714611621997),
920 (0.06933247, 9.342987, .00000000001482130341788437),
921 (0.06933247, 10.342987, .000000000001027597574581366),
922 (0.06933247, 11.342987, .00000000000007124587801173530),
923 (0.06933247, 12.342987, .000000000000004939652699872298),
924 (0.06933247, 13.342987, .0000000000000003424783226243151),
925 (0.06933247, 14.342987, .00000000000000002374486802900065),
926 (0.06933247, 15.342987, .000000000000000001646290350274646),
927 (0.06933247, 16.342987, .0000000000000000001141413763217064),
928 (0.06933247, 17.342987, .000000000000000000007913703549583420),
929 (0.06933247, 18.342987, .0000000000000000000005486766139403860),
930 (0.06933247, 19.342987, .00000000000000000000003804110487572339),
931 (0.06933247, 20.342987, .000000000000000000000002637483762562946))
932 SELECT b, p, bc_result, b^p AS power, b^p - bc_result AS diff FROM t;
933      b      |     p      |                 bc_result                 |                   power                   |                   diff                    
934 ------------+------------+-------------------------------------------+-------------------------------------------+-------------------------------------------
935  0.06933247 | -20.342987 |         379149253615977128356318.39406340 |         379149253615977128356318.39406340 |                                0.00000000
936  0.06933247 | -19.342987 |          26287354251852125772450.59436685 |          26287354251852125772450.59436685 |                                0.00000000
937  0.06933247 | -18.342987 |           1822567200045909954554.65766042 |           1822567200045909954554.65766042 |                                0.00000000
938  0.06933247 | -17.342987 |            126363085720167050546.86216560 |            126363085720167050546.86216560 |                                0.00000000
939  0.06933247 | -16.342987 |              8761064849800910427.02880469 |              8761064849800910427.02880469 |                                0.00000000
940  0.06933247 | -15.342987 |               607426265866876128.15466179 |               607426265866876128.15466179 |                                0.00000000
941  0.06933247 | -14.342987 |                42114363355427213.14899924 |                42114363355427213.14899924 |                                0.00000000
942  0.06933247 | -13.342987 |                 2919892833909256.59283660 |                 2919892833909256.59283660 |                                0.00000000
943  0.06933247 | -12.342987 |                  202443382310228.51544515 |                  202443382310228.51544515 |                                0.00000000
944  0.06933247 | -11.342987 |                   14035899730722.44924025 |                   14035899730722.44924025 |                                0.00000000
945  0.06933247 | -10.342987 |                     973143597003.32229028 |                     973143597003.32229028 |                                0.00000000
946  0.06933247 |  -9.342987 |                      67470449244.92493259 |                      67470449244.92493259 |                                0.00000000
947  0.06933247 |  -8.342987 |                       4677892898.16028054 |                       4677892898.16028054 |                                0.00000000
948  0.06933247 |  -7.342987 |                        324329869.02491071 |                        324329869.02491071 |                                0.00000000
949  0.06933247 |  -6.342987 |                        22486590.914273551 |                        22486590.914273551 |                               0.000000000
950  0.06933247 |  -5.342987 |                        1559050.8899661435 |                        1559050.8899661435 |                              0.0000000000
951  0.06933247 |  -4.342987 |                        108092.84905705095 |                        108092.84905705095 |                             0.00000000000
952  0.06933247 |  -3.342987 |                        7494.3442144625131 |                        7494.3442144625131 |                           0.0000000000000
953  0.06933247 |  -2.342987 |                        519.60139541889576 |                        519.60139541889576 |                          0.00000000000000
954  0.06933247 |  -1.342987 |                        36.025248159838727 |                        36.025248159838727 |                         0.000000000000000
955  0.06933247 |   0.342987 |                       0.40036522320023350 |                        0.4003652232002335 |                       0.00000000000000000
956  0.06933247 |   1.342987 |                       0.02775830982657349 |                       0.02775830982657349 |                       0.00000000000000000
957  0.06933247 |   2.342987 |                      0.001924552183301612 |                      0.001924552183301612 |                      0.000000000000000000
958  0.06933247 |   3.342987 |                     0.0001334339565121935 |                     0.0001334339565121935 |                     0.0000000000000000000
959  0.06933247 |   4.342987 |                   0.000009251305786862961 |                   0.000009251305786862961 |                   0.000000000000000000000
960  0.06933247 |   5.342987 |                  0.0000006414158809285026 |                  0.0000006414158809285026 |                  0.0000000000000000000000
961  0.06933247 |   6.342987 |                 0.00000004447094732199898 |                 0.00000004447094732199898 |                 0.00000000000000000000000
962  0.06933247 |   7.342987 |                0.000000003083280621074075 |                0.000000003083280621074075 |                0.000000000000000000000000
963  0.06933247 |   8.342987 |               0.0000000002137714611621997 |               0.0000000002137714611621997 |               0.0000000000000000000000000
964  0.06933247 |   9.342987 |              0.00000000001482130341788437 |              0.00000000001482130341788437 |              0.00000000000000000000000000
965  0.06933247 |  10.342987 |             0.000000000001027597574581366 |             0.000000000001027597574581366 |             0.000000000000000000000000000
966  0.06933247 |  11.342987 |           0.00000000000007124587801173530 |           0.00000000000007124587801173530 |           0.00000000000000000000000000000
967  0.06933247 |  12.342987 |          0.000000000000004939652699872298 |          0.000000000000004939652699872298 |          0.000000000000000000000000000000
968  0.06933247 |  13.342987 |         0.0000000000000003424783226243151 |         0.0000000000000003424783226243151 |         0.0000000000000000000000000000000
969  0.06933247 |  14.342987 |        0.00000000000000002374486802900065 |        0.00000000000000002374486802900065 |        0.00000000000000000000000000000000
970  0.06933247 |  15.342987 |       0.000000000000000001646290350274646 |       0.000000000000000001646290350274646 |       0.000000000000000000000000000000000
971  0.06933247 |  16.342987 |      0.0000000000000000001141413763217064 |      0.0000000000000000001141413763217064 |      0.0000000000000000000000000000000000
972  0.06933247 |  17.342987 |    0.000000000000000000007913703549583420 |    0.000000000000000000007913703549583420 |    0.000000000000000000000000000000000000
973  0.06933247 |  18.342987 |   0.0000000000000000000005486766139403860 |   0.0000000000000000000005486766139403860 |   0.0000000000000000000000000000000000000
974  0.06933247 |  19.342987 |  0.00000000000000000000003804110487572339 |  0.00000000000000000000003804110487572339 |  0.00000000000000000000000000000000000000
975  0.06933247 |  20.342987 | 0.000000000000000000000002637483762562946 | 0.000000000000000000000002637483762562946 | 0.000000000000000000000000000000000000000
976 (41 rows)
978 -- base greater than 1
980 -- bc(1) results computed with a scale of 500 and truncated using the script
981 -- below, and then rounded by hand to match the precision of POW():
983 -- for n in {-20..20}
984 -- do
985 --   b="27.234987"
986 --   p="$n.230957"
987 --   r=$(bc -ql <<< "scale=500 ; e($p*l($b))" | head -n 1)
988 --   echo "($b, $p, $r),"
989 -- done
990 WITH t(b, p, bc_result) AS (VALUES
991 (27.234987, -20.230957, .000000000000000000000000000009247064512095633),
992 (27.234987, -19.230957, .0000000000000000000000000002518436817750859),
993 (27.234987, -18.230957, .000000000000000000000000006858959399176602),
994 (27.234987, -17.230957, .0000000000000000000000001868036700701026),
995 (27.234987, -16.230957, .000000000000000000000005087595525911532),
996 (27.234987, -15.230957, .0000000000000000000001385605980094587),
997 (27.234987, -14.230957, .000000000000000000003773696085499835),
998 (27.234987, -13.230957, .0000000000000000001027765638305389),
999 (27.234987, -12.230957, .000000000000000002799118379829397),
1000 (27.234987, -11.230957, .00000000000000007623395268611469),
1001 (27.234987, -10.230957, .000000000000002076230710364949),
1002 (27.234987, -9.230957, .00000000000005654611640579014),
1003 (27.234987, -8.230957, .000000000001540032745212181),
1004 (27.234987, -7.230957, .00000000004194277179542807),
1005 (27.234987, -6.230957, .000000001142310844592450),
1006 (27.234987, -5.230957, .00000003111082100243440),
1007 (27.234987, -4.230957, .0000008473028055606278),
1008 (27.234987, -3.230957, .00002307628089450723),
1009 (27.234987, -2.230957, .0006284822101702527),
1010 (27.234987, -1.230957, .01711670482371810),
1011 (27.234987, 0.230957, 2.1451253063142300),
1012 (27.234987, 1.230957, 58.422459830839071),
1013 (27.234987, 2.230957, 1591.1349340009243),
1014 (27.234987, 3.230957, 43334.539242761031),
1015 (27.234987, 4.230957, 1180215.6129275865),
1016 (27.234987, 5.230957, 32143156.875279851),
1017 (27.234987, 6.230957, 875418459.63720737),
1018 (27.234987, 7.230957, 23842010367.779367),
1019 (27.234987, 8.230957, 649336842420.336290),
1020 (27.234987, 9.230957, 17684680461938.907402),
1021 (27.234987, 10.230957, 481642042480060.137900),
1022 (27.234987, 11.230957, 13117514765597885.614921),
1023 (27.234987, 12.230957, 357255344113366461.949871),
1024 (27.234987, 13.230957, 9729844652608062117.440722),
1025 (27.234987, 14.230957, 264992192625800087863.690528),
1026 (27.234987, 15.230957, 7217058921265161257566.469315),
1027 (27.234987, 16.230957, 196556505898890690402726.443417),
1028 (27.234987, 17.230957, 5353213882921711267539279.451015),
1029 (27.234987, 18.230957, 145794710509592328389185797.837767),
1030 (27.234987, 19.230957, 3970717045397510438979206144.696206),
1031 (27.234987, 20.230957, 108142427112079606637962972621.121293))
1032 SELECT b, p, bc_result, b^p AS power, b^p - bc_result AS diff FROM t;
1033      b     |     p      |                    bc_result                    |                      power                      |                      diff                       
1034 -----------+------------+-------------------------------------------------+-------------------------------------------------+-------------------------------------------------
1035  27.234987 | -20.230957 | 0.000000000000000000000000000009247064512095633 | 0.000000000000000000000000000009247064512095633 | 0.000000000000000000000000000000000000000000000
1036  27.234987 | -19.230957 |   0.0000000000000000000000000002518436817750859 |   0.0000000000000000000000000002518436817750859 |   0.0000000000000000000000000000000000000000000
1037  27.234987 | -18.230957 |    0.000000000000000000000000006858959399176602 |    0.000000000000000000000000006858959399176602 |    0.000000000000000000000000000000000000000000
1038  27.234987 | -17.230957 |      0.0000000000000000000000001868036700701026 |      0.0000000000000000000000001868036700701026 |      0.0000000000000000000000000000000000000000
1039  27.234987 | -16.230957 |       0.000000000000000000000005087595525911532 |       0.000000000000000000000005087595525911532 |       0.000000000000000000000000000000000000000
1040  27.234987 | -15.230957 |         0.0000000000000000000001385605980094587 |         0.0000000000000000000001385605980094587 |         0.0000000000000000000000000000000000000
1041  27.234987 | -14.230957 |          0.000000000000000000003773696085499835 |          0.000000000000000000003773696085499835 |          0.000000000000000000000000000000000000
1042  27.234987 | -13.230957 |            0.0000000000000000001027765638305389 |            0.0000000000000000001027765638305389 |            0.0000000000000000000000000000000000
1043  27.234987 | -12.230957 |             0.000000000000000002799118379829397 |             0.000000000000000002799118379829397 |             0.000000000000000000000000000000000
1044  27.234987 | -11.230957 |              0.00000000000000007623395268611469 |              0.00000000000000007623395268611469 |              0.00000000000000000000000000000000
1045  27.234987 | -10.230957 |                0.000000000000002076230710364949 |                0.000000000000002076230710364949 |                0.000000000000000000000000000000
1046  27.234987 |  -9.230957 |                 0.00000000000005654611640579014 |                 0.00000000000005654611640579014 |                 0.00000000000000000000000000000
1047  27.234987 |  -8.230957 |                   0.000000000001540032745212181 |                   0.000000000001540032745212181 |                   0.000000000000000000000000000
1048  27.234987 |  -7.230957 |                    0.00000000004194277179542807 |                    0.00000000004194277179542807 |                    0.00000000000000000000000000
1049  27.234987 |  -6.230957 |                      0.000000001142310844592450 |                      0.000000001142310844592450 |                      0.000000000000000000000000
1050  27.234987 |  -5.230957 |                       0.00000003111082100243440 |                       0.00000003111082100243440 |                       0.00000000000000000000000
1051  27.234987 |  -4.230957 |                        0.0000008473028055606278 |                        0.0000008473028055606278 |                        0.0000000000000000000000
1052  27.234987 |  -3.230957 |                          0.00002307628089450723 |                          0.00002307628089450723 |                          0.00000000000000000000
1053  27.234987 |  -2.230957 |                           0.0006284822101702527 |                           0.0006284822101702527 |                           0.0000000000000000000
1054  27.234987 |  -1.230957 |                             0.01711670482371810 |                             0.01711670482371810 |                             0.00000000000000000
1055  27.234987 |   0.230957 |                              2.1451253063142300 |                              2.1451253063142300 |                              0.0000000000000000
1056  27.234987 |   1.230957 |                              58.422459830839071 |                              58.422459830839071 |                               0.000000000000000
1057  27.234987 |   2.230957 |                              1591.1349340009243 |                              1591.1349340009243 |                                 0.0000000000000
1058  27.234987 |   3.230957 |                              43334.539242761031 |                              43334.539242761031 |                                  0.000000000000
1059  27.234987 |   4.230957 |                              1180215.6129275865 |                              1180215.6129275865 |                                    0.0000000000
1060  27.234987 |   5.230957 |                              32143156.875279851 |                              32143156.875279851 |                                     0.000000000
1061  27.234987 |   6.230957 |                              875418459.63720737 |                              875418459.63720737 |                                      0.00000000
1062  27.234987 |   7.230957 |                              23842010367.779367 |                              23842010367.779367 |                                        0.000000
1063  27.234987 |   8.230957 |                             649336842420.336290 |                             649336842420.336290 |                                        0.000000
1064  27.234987 |   9.230957 |                           17684680461938.907402 |                           17684680461938.907402 |                                        0.000000
1065  27.234987 |  10.230957 |                          481642042480060.137900 |                          481642042480060.137900 |                                        0.000000
1066  27.234987 |  11.230957 |                        13117514765597885.614921 |                        13117514765597885.614921 |                                        0.000000
1067  27.234987 |  12.230957 |                       357255344113366461.949871 |                       357255344113366461.949871 |                                        0.000000
1068  27.234987 |  13.230957 |                      9729844652608062117.440722 |                      9729844652608062117.440722 |                                        0.000000
1069  27.234987 |  14.230957 |                    264992192625800087863.690528 |                    264992192625800087863.690528 |                                        0.000000
1070  27.234987 |  15.230957 |                   7217058921265161257566.469315 |                   7217058921265161257566.469315 |                                        0.000000
1071  27.234987 |  16.230957 |                 196556505898890690402726.443417 |                 196556505898890690402726.443417 |                                        0.000000
1072  27.234987 |  17.230957 |                5353213882921711267539279.451015 |                5353213882921711267539279.451015 |                                        0.000000
1073  27.234987 |  18.230957 |              145794710509592328389185797.837767 |              145794710509592328389185797.837767 |                                        0.000000
1074  27.234987 |  19.230957 |             3970717045397510438979206144.696206 |             3970717045397510438979206144.696206 |                                        0.000000
1075  27.234987 |  20.230957 |           108142427112079606637962972621.121293 |           108142427112079606637962972621.121293 |                                        0.000000
1076 (41 rows)
1078 -- Inputs close to overflow
1080 -- bc(1) results computed with a scale of 2700 and truncated to 4 decimal
1081 -- places.
1082 WITH t(b, p, bc_result) AS (VALUES
1083 (0.12, -2829.8369, 58463948950011752465280493160293790845494328939320966633018493248607815580903065923369555885857984675501574162389726507612128133630191173383130639968378879506624785786843501848666498440326970769604109017960864573408272864266102690849952650095786874354625921641729880352858506454246180842452983243549491658464046163869265572232996388827878976066830374513768599285647145439771472435206769249126377164951470622827631950210853282324510655982757098065657709137845327135766013147354253426364240746381620690117663724329288646510198895137275207992825719846135857839292915100523542874885080351683587865157015032404901182924720371819942957083390475846809517968191151435281268695782594904484795360890092607679215675240583291240729468370895035823777914792823688291214492607109455017754453939895630226174304357121900605689015734289765672740769194115142607443713769825894380064727556869268488695795705030158832909348803019429370973064732712469794182891757241046263341655894972953512257981661670321890336672832647028099324621932563236459127918144141230217523147304565594514812518826936144181257723061181656522095236928347413997136815409159361412494284201481609684892562646522086577634100783077813105675590737823924220663206479031113753135119759722725207724879578900186075841393115040465401462266086907464970054073340036852442184414587772177753008511913377364966775792477387717262694468450099866775550614257191941835797445874557362115814601886902749237439492398087966544817154173072811937702110580330775581851211123491341435883319798273456296794954514173820352334127081705706502510709179711510240917772628308487366740741280043704807717608366220401933596364641284631036907635403895053036499618723044314773148779735006542501244942039455169872946018271985844759209768927953340447524637670938413827595013338859796135512187473850161303598087634723542727044978083220970836296653305188470017342167913572166172051819741354902582606590658382067039498769674611071582171914886494269818475850690414812481252963932223686078322390396586222238852602472958831686564971334200490182175112490433364675164900946902818404704835106260174052265784055642968397240262737313737007322288203637798365320295080314524864099419556398713380156353062937736280885716820226469419928595465390700629307079710611273715705695938635644841913194091407807776191951797748706106000922803167645881087385311847268311361092838264814899353459146959869764278464187826798546290981492648723002412475976344071283321798061003719251864595518596639432393032991023409676558943539937377229130132816883146259468718344018277257037013406135980469482324577407154032999045733141275895.3432),
1084 (1.2, 32908.8896, 58463467728170833376633133695001863276259293590926929026251227859007891876739460057725441400966420577009060860805883032969522911803372870882799865787473726926215148161529632590083389287080925059682489116446754279752928005457087175157581627230586554364417068189211136840990661174760199073702207450133797324318403866058202372178813998850887986769280847189341565507156189065295823921162851958925352114220880236114784962150135485415106748467247897246441194126125699204912883449386043559785865023459356275014504597646990160571664166410683323036984805434677654413174177920726210827006973855410386789516533036723888687725436216478665958434776205940192130053647653715221076841771578099896259902368829351569726536927952661429685419815305418450230567773264738536471211804481206474781470237730069753206249915908804615495060673071058534441654604668770343616386612119048579369195201590008082689834456232255266932976831478404670192731621439902738547169253818323045451045749609624500171633897705543164388470746657118050314064066768449450440405619135824055131398727045420324382226572368236570500391463795989258779677208133531636928003546809249007993065200108076924439703799231711400266122025052209803513232429907231051873161206025860851056337427740362763618748092029386371493898291580557004812947013231371383576580415676519066503391905962989205397824064923920045371823949776899815750413244195402085917098964452866825666226141169411712884994564949174271056284898570445214367063763956186792886147126466387576513166370247576466566827375268334148320298849218878848928271566491769458471357076035396330179659440244425914213309776100351793665960978678576150833311810944729586040624059867137538839913141142139636023129691775489034134511666020819676247950267220131499463010350308195762769192775344260909521732256844149916046793599150786757764962585268686580124987490115873389726527572428003433405659445349155536369077209682951123806333170190998931670309088422483075609203671527331975811507450670132060984691061148836994322505371265263690017938762760088575875666254883673433331627055180154954694693433502522592907190906966067656027637884202418119121728966267936832338377284832958974299187166554160783467156478554899314000348357280306042140481751668215838656488457943830180819301102535170705017482946779698265096226184239631924271857062033454725540956591929965181603262502135610768915716020374362368495244256420143645126927013882334008435586481691725030031204304273292938132599127402133470745819213047706793887965197191137237066440328777206799072470374264316425913530947082957300047105685634407092811630672103242089966046839626911122.7149))
1085 SELECT b, p, bc_result, b^p AS power, b^p - bc_result AS diff FROM t;
1086   b   |     p      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      bc_result                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        power                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |  diff  
1087 ------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------
1088  0.12 | -2829.8369 | 58463948950011752465280493160293790845494328939320966633018493248607815580903065923369555885857984675501574162389726507612128133630191173383130639968378879506624785786843501848666498440326970769604109017960864573408272864266102690849952650095786874354625921641729880352858506454246180842452983243549491658464046163869265572232996388827878976066830374513768599285647145439771472435206769249126377164951470622827631950210853282324510655982757098065657709137845327135766013147354253426364240746381620690117663724329288646510198895137275207992825719846135857839292915100523542874885080351683587865157015032404901182924720371819942957083390475846809517968191151435281268695782594904484795360890092607679215675240583291240729468370895035823777914792823688291214492607109455017754453939895630226174304357121900605689015734289765672740769194115142607443713769825894380064727556869268488695795705030158832909348803019429370973064732712469794182891757241046263341655894972953512257981661670321890336672832647028099324621932563236459127918144141230217523147304565594514812518826936144181257723061181656522095236928347413997136815409159361412494284201481609684892562646522086577634100783077813105675590737823924220663206479031113753135119759722725207724879578900186075841393115040465401462266086907464970054073340036852442184414587772177753008511913377364966775792477387717262694468450099866775550614257191941835797445874557362115814601886902749237439492398087966544817154173072811937702110580330775581851211123491341435883319798273456296794954514173820352334127081705706502510709179711510240917772628308487366740741280043704807717608366220401933596364641284631036907635403895053036499618723044314773148779735006542501244942039455169872946018271985844759209768927953340447524637670938413827595013338859796135512187473850161303598087634723542727044978083220970836296653305188470017342167913572166172051819741354902582606590658382067039498769674611071582171914886494269818475850690414812481252963932223686078322390396586222238852602472958831686564971334200490182175112490433364675164900946902818404704835106260174052265784055642968397240262737313737007322288203637798365320295080314524864099419556398713380156353062937736280885716820226469419928595465390700629307079710611273715705695938635644841913194091407807776191951797748706106000922803167645881087385311847268311361092838264814899353459146959869764278464187826798546290981492648723002412475976344071283321798061003719251864595518596639432393032991023409676558943539937377229130132816883146259468718344018277257037013406135980469482324577407154032999045733141275895.3432 | 58463948950011752465280493160293790845494328939320966633018493248607815580903065923369555885857984675501574162389726507612128133630191173383130639968378879506624785786843501848666498440326970769604109017960864573408272864266102690849952650095786874354625921641729880352858506454246180842452983243549491658464046163869265572232996388827878976066830374513768599285647145439771472435206769249126377164951470622827631950210853282324510655982757098065657709137845327135766013147354253426364240746381620690117663724329288646510198895137275207992825719846135857839292915100523542874885080351683587865157015032404901182924720371819942957083390475846809517968191151435281268695782594904484795360890092607679215675240583291240729468370895035823777914792823688291214492607109455017754453939895630226174304357121900605689015734289765672740769194115142607443713769825894380064727556869268488695795705030158832909348803019429370973064732712469794182891757241046263341655894972953512257981661670321890336672832647028099324621932563236459127918144141230217523147304565594514812518826936144181257723061181656522095236928347413997136815409159361412494284201481609684892562646522086577634100783077813105675590737823924220663206479031113753135119759722725207724879578900186075841393115040465401462266086907464970054073340036852442184414587772177753008511913377364966775792477387717262694468450099866775550614257191941835797445874557362115814601886902749237439492398087966544817154173072811937702110580330775581851211123491341435883319798273456296794954514173820352334127081705706502510709179711510240917772628308487366740741280043704807717608366220401933596364641284631036907635403895053036499618723044314773148779735006542501244942039455169872946018271985844759209768927953340447524637670938413827595013338859796135512187473850161303598087634723542727044978083220970836296653305188470017342167913572166172051819741354902582606590658382067039498769674611071582171914886494269818475850690414812481252963932223686078322390396586222238852602472958831686564971334200490182175112490433364675164900946902818404704835106260174052265784055642968397240262737313737007322288203637798365320295080314524864099419556398713380156353062937736280885716820226469419928595465390700629307079710611273715705695938635644841913194091407807776191951797748706106000922803167645881087385311847268311361092838264814899353459146959869764278464187826798546290981492648723002412475976344071283321798061003719251864595518596639432393032991023409676558943539937377229130132816883146259468718344018277257037013406135980469482324577407154032999045733141275895.3432 | 0.0000
1089   1.2 | 32908.8896 | 58463467728170833376633133695001863276259293590926929026251227859007891876739460057725441400966420577009060860805883032969522911803372870882799865787473726926215148161529632590083389287080925059682489116446754279752928005457087175157581627230586554364417068189211136840990661174760199073702207450133797324318403866058202372178813998850887986769280847189341565507156189065295823921162851958925352114220880236114784962150135485415106748467247897246441194126125699204912883449386043559785865023459356275014504597646990160571664166410683323036984805434677654413174177920726210827006973855410386789516533036723888687725436216478665958434776205940192130053647653715221076841771578099896259902368829351569726536927952661429685419815305418450230567773264738536471211804481206474781470237730069753206249915908804615495060673071058534441654604668770343616386612119048579369195201590008082689834456232255266932976831478404670192731621439902738547169253818323045451045749609624500171633897705543164388470746657118050314064066768449450440405619135824055131398727045420324382226572368236570500391463795989258779677208133531636928003546809249007993065200108076924439703799231711400266122025052209803513232429907231051873161206025860851056337427740362763618748092029386371493898291580557004812947013231371383576580415676519066503391905962989205397824064923920045371823949776899815750413244195402085917098964452866825666226141169411712884994564949174271056284898570445214367063763956186792886147126466387576513166370247576466566827375268334148320298849218878848928271566491769458471357076035396330179659440244425914213309776100351793665960978678576150833311810944729586040624059867137538839913141142139636023129691775489034134511666020819676247950267220131499463010350308195762769192775344260909521732256844149916046793599150786757764962585268686580124987490115873389726527572428003433405659445349155536369077209682951123806333170190998931670309088422483075609203671527331975811507450670132060984691061148836994322505371265263690017938762760088575875666254883673433331627055180154954694693433502522592907190906966067656027637884202418119121728966267936832338377284832958974299187166554160783467156478554899314000348357280306042140481751668215838656488457943830180819301102535170705017482946779698265096226184239631924271857062033454725540956591929965181603262502135610768915716020374362368495244256420143645126927013882334008435586481691725030031204304273292938132599127402133470745819213047706793887965197191137237066440328777206799072470374264316425913530947082957300047105685634407092811630672103242089966046839626911122.7149 | 58463467728170833376633133695001863276259293590926929026251227859007891876739460057725441400966420577009060860805883032969522911803372870882799865787473726926215148161529632590083389287080925059682489116446754279752928005457087175157581627230586554364417068189211136840990661174760199073702207450133797324318403866058202372178813998850887986769280847189341565507156189065295823921162851958925352114220880236114784962150135485415106748467247897246441194126125699204912883449386043559785865023459356275014504597646990160571664166410683323036984805434677654413174177920726210827006973855410386789516533036723888687725436216478665958434776205940192130053647653715221076841771578099896259902368829351569726536927952661429685419815305418450230567773264738536471211804481206474781470237730069753206249915908804615495060673071058534441654604668770343616386612119048579369195201590008082689834456232255266932976831478404670192731621439902738547169253818323045451045749609624500171633897705543164388470746657118050314064066768449450440405619135824055131398727045420324382226572368236570500391463795989258779677208133531636928003546809249007993065200108076924439703799231711400266122025052209803513232429907231051873161206025860851056337427740362763618748092029386371493898291580557004812947013231371383576580415676519066503391905962989205397824064923920045371823949776899815750413244195402085917098964452866825666226141169411712884994564949174271056284898570445214367063763956186792886147126466387576513166370247576466566827375268334148320298849218878848928271566491769458471357076035396330179659440244425914213309776100351793665960978678576150833311810944729586040624059867137538839913141142139636023129691775489034134511666020819676247950267220131499463010350308195762769192775344260909521732256844149916046793599150786757764962585268686580124987490115873389726527572428003433405659445349155536369077209682951123806333170190998931670309088422483075609203671527331975811507450670132060984691061148836994322505371265263690017938762760088575875666254883673433331627055180154954694693433502522592907190906966067656027637884202418119121728966267936832338377284832958974299187166554160783467156478554899314000348357280306042140481751668215838656488457943830180819301102535170705017482946779698265096226184239631924271857062033454725540956591929965181603262502135610768915716020374362368495244256420143645126927013882334008435586481691725030031204304273292938132599127402133470745819213047706793887965197191137237066440328777206799072470374264316425913530947082957300047105685634407092811630672103242089966046839626911122.7149 | 0.0000
1090 (2 rows)
1093 -- Tests for EXP()
1095 -- bc(1) results computed with a scale of 500 and truncated using the script
1096 -- below, and then rounded by hand to match the precision of EXP():
1098 -- for n in {-20..20}
1099 -- do
1100 --   x="$n.29837"
1101 --   r=$(bc -ql <<< "scale=500 ; e($x)" | head -n 1)
1102 --   echo "($x, $r),"
1103 -- done
1104 WITH t(x, bc_result) AS (VALUES
1105 (-20.29837, .000000001529431101152222),
1106 (-19.29837, .000000004157424770142192),
1107 (-18.29837, .00000001130105220586304),
1108 (-17.29837, .00000003071944485366452),
1109 (-16.29837, .00000008350410872606600),
1110 (-15.29837, .0000002269877013517336),
1111 (-14.29837, .0000006170165438681061),
1112 (-13.29837, .000001677224859055276),
1113 (-12.29837, .000004559169856609741),
1114 (-11.29837, .00001239310857408049),
1115 (-10.29837, .00003368796183504298),
1116 (-9.29837, .00009157337449401917),
1117 (-8.29837, .0002489222398577673),
1118 (-7.29837, .0006766408013046928),
1119 (-6.29837, .001839300394580514),
1120 (-5.29837, .004999736839665763),
1121 (-4.29837, .01359069379834070),
1122 (-3.29837, .03694333598818056),
1123 (-2.29837, .1004223988993283),
1124 (-1.29837, .2729763820983097),
1125 (0.29837, 1.3476603299656679),
1126 (1.29837, 3.6633205858807959),
1127 (2.29837, 9.9579377804197108),
1128 (3.29837, 27.068481317440698),
1129 (4.29837, 73.579760889182206),
1130 (5.29837, 200.01052696742555),
1131 (6.29837, 543.68498095607070),
1132 (7.29837, 1477.8890041389891),
1133 (8.29837, 4017.3188244304487),
1134 (9.29837, 10920.204759575742),
1135 (10.29837, 29684.194161006717),
1136 (11.29837, 80690.005580314652),
1137 (12.29837, 219338.17590722828),
1138 (13.29837, 596222.97785597218),
1139 (14.29837, 1620702.0864156289),
1140 (15.29837, 4405525.0308492653),
1141 (16.29837, 11975458.636179032),
1142 (17.29837, 32552671.598188404),
1143 (18.29837, 88487335.673150406),
1144 (19.29837, 240533516.60908059),
1145 (20.29837, 653837887.33381570))
1146 SELECT x, bc_result, exp(x), exp(x)-bc_result AS diff FROM t;
1147      x     |         bc_result          |            exp             |            diff            
1148 -----------+----------------------------+----------------------------+----------------------------
1149  -20.29837 | 0.000000001529431101152222 | 0.000000001529431101152222 | 0.000000000000000000000000
1150  -19.29837 | 0.000000004157424770142192 | 0.000000004157424770142192 | 0.000000000000000000000000
1151  -18.29837 |  0.00000001130105220586304 |  0.00000001130105220586304 |  0.00000000000000000000000
1152  -17.29837 |  0.00000003071944485366452 |  0.00000003071944485366452 |  0.00000000000000000000000
1153  -16.29837 |  0.00000008350410872606600 |  0.00000008350410872606600 |  0.00000000000000000000000
1154  -15.29837 |   0.0000002269877013517336 |   0.0000002269877013517336 |   0.0000000000000000000000
1155  -14.29837 |   0.0000006170165438681061 |   0.0000006170165438681061 |   0.0000000000000000000000
1156  -13.29837 |    0.000001677224859055276 |    0.000001677224859055276 |    0.000000000000000000000
1157  -12.29837 |    0.000004559169856609741 |    0.000004559169856609741 |    0.000000000000000000000
1158  -11.29837 |     0.00001239310857408049 |     0.00001239310857408049 |     0.00000000000000000000
1159  -10.29837 |     0.00003368796183504298 |     0.00003368796183504298 |     0.00000000000000000000
1160   -9.29837 |     0.00009157337449401917 |     0.00009157337449401917 |     0.00000000000000000000
1161   -8.29837 |      0.0002489222398577673 |      0.0002489222398577673 |      0.0000000000000000000
1162   -7.29837 |      0.0006766408013046928 |      0.0006766408013046928 |      0.0000000000000000000
1163   -6.29837 |       0.001839300394580514 |       0.001839300394580514 |       0.000000000000000000
1164   -5.29837 |       0.004999736839665763 |       0.004999736839665763 |       0.000000000000000000
1165   -4.29837 |        0.01359069379834070 |        0.01359069379834070 |        0.00000000000000000
1166   -3.29837 |        0.03694333598818056 |        0.03694333598818056 |        0.00000000000000000
1167   -2.29837 |         0.1004223988993283 |         0.1004223988993283 |         0.0000000000000000
1168   -1.29837 |         0.2729763820983097 |         0.2729763820983097 |         0.0000000000000000
1169    0.29837 |         1.3476603299656679 |         1.3476603299656679 |         0.0000000000000000
1170    1.29837 |         3.6633205858807959 |         3.6633205858807959 |         0.0000000000000000
1171    2.29837 |         9.9579377804197108 |         9.9579377804197108 |         0.0000000000000000
1172    3.29837 |         27.068481317440698 |         27.068481317440698 |          0.000000000000000
1173    4.29837 |         73.579760889182206 |         73.579760889182206 |          0.000000000000000
1174    5.29837 |         200.01052696742555 |         200.01052696742555 |           0.00000000000000
1175    6.29837 |         543.68498095607070 |         543.68498095607070 |           0.00000000000000
1176    7.29837 |         1477.8890041389891 |         1477.8890041389891 |            0.0000000000000
1177    8.29837 |         4017.3188244304487 |         4017.3188244304487 |            0.0000000000000
1178    9.29837 |         10920.204759575742 |         10920.204759575742 |             0.000000000000
1179   10.29837 |         29684.194161006717 |         29684.194161006717 |             0.000000000000
1180   11.29837 |         80690.005580314652 |         80690.005580314652 |             0.000000000000
1181   12.29837 |         219338.17590722828 |         219338.17590722828 |              0.00000000000
1182   13.29837 |         596222.97785597218 |         596222.97785597218 |              0.00000000000
1183   14.29837 |         1620702.0864156289 |         1620702.0864156289 |               0.0000000000
1184   15.29837 |         4405525.0308492653 |         4405525.0308492653 |               0.0000000000
1185   16.29837 |         11975458.636179032 |         11975458.636179032 |                0.000000000
1186   17.29837 |         32552671.598188404 |         32552671.598188404 |                0.000000000
1187   18.29837 |         88487335.673150406 |         88487335.673150406 |                0.000000000
1188   19.29837 |         240533516.60908059 |         240533516.60908059 |                 0.00000000
1189   20.29837 |         653837887.33381570 |         653837887.33381570 |                 0.00000000
1190 (41 rows)
1193 -- Tests for LN()
1195 -- input very small
1197 -- bc(1) results computed with a scale of 500 and truncated using the script
1198 -- below, and then rounded by hand to match the precision of LN():
1200 -- for p in {1..40}
1201 -- do
1202 --   l=$(bc -ql <<< "scale=500 ; l(10^-$p)" | head -n 1)
1203 --   echo "('1.0e-$p', $l),"
1204 -- done
1205 WITH t(x, bc_result) AS (VALUES
1206 ('1.0e-1', -2.3025850929940457),
1207 ('1.0e-2', -4.6051701859880914),
1208 ('1.0e-3', -6.9077552789821371),
1209 ('1.0e-4', -9.2103403719761827),
1210 ('1.0e-5', -11.512925464970228),
1211 ('1.0e-6', -13.815510557964274),
1212 ('1.0e-7', -16.118095650958320),
1213 ('1.0e-8', -18.420680743952365),
1214 ('1.0e-9', -20.723265836946411),
1215 ('1.0e-10', -23.025850929940457),
1216 ('1.0e-11', -25.328436022934503),
1217 ('1.0e-12', -27.631021115928548),
1218 ('1.0e-13', -29.933606208922594),
1219 ('1.0e-14', -32.236191301916640),
1220 ('1.0e-15', -34.5387763949106853),
1221 ('1.0e-16', -36.84136148790473094),
1222 ('1.0e-17', -39.143946580898776628),
1223 ('1.0e-18', -41.4465316738928223123),
1224 ('1.0e-19', -43.74911676688686799634),
1225 ('1.0e-20', -46.051701859880913680360),
1226 ('1.0e-21', -48.3542869528749593643778),
1227 ('1.0e-22', -50.65687204586900504839581),
1228 ('1.0e-23', -52.959457138863050732413803),
1229 ('1.0e-24', -55.2620422318570964164317949),
1230 ('1.0e-25', -57.56462732485114210044978637),
1231 ('1.0e-26', -59.867212417845187784467777822),
1232 ('1.0e-27', -62.1697975108392334684857692765),
1233 ('1.0e-28', -64.47238260383327915250376073116),
1234 ('1.0e-29', -66.774967696827324836521752185847),
1235 ('1.0e-30', -69.0775527898213705205397436405309),
1236 ('1.0e-31', -71.38013788281541620455773509521529),
1237 ('1.0e-32', -73.682722975809461888575726549899655),
1238 ('1.0e-33', -75.9853080688035075725937180045840189),
1239 ('1.0e-34', -78.28789316179755325661170945926838306),
1240 ('1.0e-35', -80.590478254791598940629700913952747266),
1241 ('1.0e-36', -82.8930633477856446246476923686371114736),
1242 ('1.0e-37', -85.19564844077969030866568382332147568124),
1243 ('1.0e-38', -87.498233533773735992683675278005839888842),
1244 ('1.0e-39', -89.8008186267677816767016667326902040964430),
1245 ('1.0e-40', -92.10340371976182736071965818737456830404406))
1246 SELECT x, bc_result, ln(x::numeric), ln(x::numeric)-bc_result AS diff FROM t;
1247     x    |                   bc_result                   |                      ln                       |                    diff                     
1248 ---------+-----------------------------------------------+-----------------------------------------------+---------------------------------------------
1249  1.0e-1  |                           -2.3025850929940457 |                           -2.3025850929940457 |                          0.0000000000000000
1250  1.0e-2  |                           -4.6051701859880914 |                           -4.6051701859880914 |                          0.0000000000000000
1251  1.0e-3  |                           -6.9077552789821371 |                           -6.9077552789821371 |                          0.0000000000000000
1252  1.0e-4  |                           -9.2103403719761827 |                           -9.2103403719761827 |                          0.0000000000000000
1253  1.0e-5  |                           -11.512925464970228 |                           -11.512925464970228 |                           0.000000000000000
1254  1.0e-6  |                           -13.815510557964274 |                           -13.815510557964274 |                           0.000000000000000
1255  1.0e-7  |                           -16.118095650958320 |                           -16.118095650958320 |                           0.000000000000000
1256  1.0e-8  |                           -18.420680743952365 |                           -18.420680743952365 |                           0.000000000000000
1257  1.0e-9  |                           -20.723265836946411 |                           -20.723265836946411 |                           0.000000000000000
1258  1.0e-10 |                           -23.025850929940457 |                           -23.025850929940457 |                           0.000000000000000
1259  1.0e-11 |                           -25.328436022934503 |                           -25.328436022934503 |                           0.000000000000000
1260  1.0e-12 |                           -27.631021115928548 |                           -27.631021115928548 |                           0.000000000000000
1261  1.0e-13 |                           -29.933606208922594 |                           -29.933606208922594 |                           0.000000000000000
1262  1.0e-14 |                           -32.236191301916640 |                           -32.236191301916640 |                           0.000000000000000
1263  1.0e-15 |                          -34.5387763949106853 |                          -34.5387763949106853 |                          0.0000000000000000
1264  1.0e-16 |                         -36.84136148790473094 |                         -36.84136148790473094 |                         0.00000000000000000
1265  1.0e-17 |                        -39.143946580898776628 |                        -39.143946580898776628 |                        0.000000000000000000
1266  1.0e-18 |                       -41.4465316738928223123 |                       -41.4465316738928223123 |                       0.0000000000000000000
1267  1.0e-19 |                      -43.74911676688686799634 |                      -43.74911676688686799634 |                      0.00000000000000000000
1268  1.0e-20 |                     -46.051701859880913680360 |                     -46.051701859880913680360 |                     0.000000000000000000000
1269  1.0e-21 |                    -48.3542869528749593643778 |                    -48.3542869528749593643778 |                    0.0000000000000000000000
1270  1.0e-22 |                   -50.65687204586900504839581 |                   -50.65687204586900504839581 |                   0.00000000000000000000000
1271  1.0e-23 |                  -52.959457138863050732413803 |                  -52.959457138863050732413803 |                  0.000000000000000000000000
1272  1.0e-24 |                 -55.2620422318570964164317949 |                 -55.2620422318570964164317949 |                 0.0000000000000000000000000
1273  1.0e-25 |                -57.56462732485114210044978637 |                -57.56462732485114210044978637 |                0.00000000000000000000000000
1274  1.0e-26 |               -59.867212417845187784467777822 |               -59.867212417845187784467777822 |               0.000000000000000000000000000
1275  1.0e-27 |              -62.1697975108392334684857692765 |              -62.1697975108392334684857692765 |              0.0000000000000000000000000000
1276  1.0e-28 |             -64.47238260383327915250376073116 |             -64.47238260383327915250376073116 |             0.00000000000000000000000000000
1277  1.0e-29 |            -66.774967696827324836521752185847 |            -66.774967696827324836521752185847 |            0.000000000000000000000000000000
1278  1.0e-30 |           -69.0775527898213705205397436405309 |           -69.0775527898213705205397436405309 |           0.0000000000000000000000000000000
1279  1.0e-31 |          -71.38013788281541620455773509521529 |          -71.38013788281541620455773509521529 |          0.00000000000000000000000000000000
1280  1.0e-32 |         -73.682722975809461888575726549899655 |         -73.682722975809461888575726549899655 |         0.000000000000000000000000000000000
1281  1.0e-33 |        -75.9853080688035075725937180045840189 |        -75.9853080688035075725937180045840189 |        0.0000000000000000000000000000000000
1282  1.0e-34 |       -78.28789316179755325661170945926838306 |       -78.28789316179755325661170945926838306 |       0.00000000000000000000000000000000000
1283  1.0e-35 |      -80.590478254791598940629700913952747266 |      -80.590478254791598940629700913952747266 |      0.000000000000000000000000000000000000
1284  1.0e-36 |     -82.8930633477856446246476923686371114736 |     -82.8930633477856446246476923686371114736 |     0.0000000000000000000000000000000000000
1285  1.0e-37 |    -85.19564844077969030866568382332147568124 |    -85.19564844077969030866568382332147568124 |    0.00000000000000000000000000000000000000
1286  1.0e-38 |   -87.498233533773735992683675278005839888842 |   -87.498233533773735992683675278005839888842 |   0.000000000000000000000000000000000000000
1287  1.0e-39 |  -89.8008186267677816767016667326902040964430 |  -89.8008186267677816767016667326902040964430 |  0.0000000000000000000000000000000000000000
1288  1.0e-40 | -92.10340371976182736071965818737456830404406 | -92.10340371976182736071965818737456830404406 | 0.00000000000000000000000000000000000000000
1289 (40 rows)
1291 -- input very close to but smaller than 1
1293 -- bc(1) results computed with a scale of 500 and truncated using the script
1294 -- below, and then rounded by hand to match the precision of LN():
1296 -- for p in {1..40}
1297 -- do
1298 --   l=$(bc -ql <<< "scale=500 ; l(1-10^-$p)" | head -n 1)
1299 --   echo "('1.0e-$p', $l),"
1300 -- done
1301 WITH t(x, bc_result) AS (VALUES
1302 ('1.0e-1', -.10536051565782630),
1303 ('1.0e-2', -.010050335853501441),
1304 ('1.0e-3', -.0010005003335835335),
1305 ('1.0e-4', -.00010000500033335834),
1306 ('1.0e-5', -.000010000050000333336),
1307 ('1.0e-6', -.0000010000005000003333),
1308 ('1.0e-7', -.00000010000000500000033),
1309 ('1.0e-8', -.000000010000000050000000),
1310 ('1.0e-9', -.0000000010000000005000000),
1311 ('1.0e-10', -.00000000010000000000500000),
1312 ('1.0e-11', -.000000000010000000000050000),
1313 ('1.0e-12', -.0000000000010000000000005000),
1314 ('1.0e-13', -.00000000000010000000000000500),
1315 ('1.0e-14', -.000000000000010000000000000050),
1316 ('1.0e-15', -.0000000000000010000000000000005),
1317 ('1.0e-16', -.00000000000000010000000000000001),
1318 ('1.0e-17', -.000000000000000010000000000000000),
1319 ('1.0e-18', -.0000000000000000010000000000000000),
1320 ('1.0e-19', -.00000000000000000010000000000000000),
1321 ('1.0e-20', -.000000000000000000010000000000000000),
1322 ('1.0e-21', -.0000000000000000000010000000000000000),
1323 ('1.0e-22', -.00000000000000000000010000000000000000),
1324 ('1.0e-23', -.000000000000000000000010000000000000000),
1325 ('1.0e-24', -.0000000000000000000000010000000000000000),
1326 ('1.0e-25', -.00000000000000000000000010000000000000000),
1327 ('1.0e-26', -.000000000000000000000000010000000000000000),
1328 ('1.0e-27', -.0000000000000000000000000010000000000000000),
1329 ('1.0e-28', -.00000000000000000000000000010000000000000000),
1330 ('1.0e-29', -.000000000000000000000000000010000000000000000),
1331 ('1.0e-30', -.0000000000000000000000000000010000000000000000),
1332 ('1.0e-31', -.00000000000000000000000000000010000000000000000),
1333 ('1.0e-32', -.000000000000000000000000000000010000000000000000),
1334 ('1.0e-33', -.0000000000000000000000000000000010000000000000000),
1335 ('1.0e-34', -.00000000000000000000000000000000010000000000000000),
1336 ('1.0e-35', -.000000000000000000000000000000000010000000000000000),
1337 ('1.0e-36', -.0000000000000000000000000000000000010000000000000000),
1338 ('1.0e-37', -.00000000000000000000000000000000000010000000000000000),
1339 ('1.0e-38', -.000000000000000000000000000000000000010000000000000000),
1340 ('1.0e-39', -.0000000000000000000000000000000000000010000000000000000),
1341 ('1.0e-40', -.00000000000000000000000000000000000000010000000000000000))
1342 SELECT '1-'||x, bc_result, ln(1.0-x::numeric), ln(1.0-x::numeric)-bc_result AS diff FROM t;
1343  ?column?  |                          bc_result                          |                             ln                              |                            diff                            
1344 -----------+-------------------------------------------------------------+-------------------------------------------------------------+------------------------------------------------------------
1345  1-1.0e-1  |                                        -0.10536051565782630 |                                        -0.10536051565782630 |                                        0.00000000000000000
1346  1-1.0e-2  |                                       -0.010050335853501441 |                                       -0.010050335853501441 |                                       0.000000000000000000
1347  1-1.0e-3  |                                      -0.0010005003335835335 |                                      -0.0010005003335835335 |                                      0.0000000000000000000
1348  1-1.0e-4  |                                     -0.00010000500033335834 |                                     -0.00010000500033335834 |                                     0.00000000000000000000
1349  1-1.0e-5  |                                    -0.000010000050000333336 |                                    -0.000010000050000333336 |                                    0.000000000000000000000
1350  1-1.0e-6  |                                   -0.0000010000005000003333 |                                   -0.0000010000005000003333 |                                   0.0000000000000000000000
1351  1-1.0e-7  |                                  -0.00000010000000500000033 |                                  -0.00000010000000500000033 |                                  0.00000000000000000000000
1352  1-1.0e-8  |                                 -0.000000010000000050000000 |                                 -0.000000010000000050000000 |                                 0.000000000000000000000000
1353  1-1.0e-9  |                                -0.0000000010000000005000000 |                                -0.0000000010000000005000000 |                                0.0000000000000000000000000
1354  1-1.0e-10 |                               -0.00000000010000000000500000 |                               -0.00000000010000000000500000 |                               0.00000000000000000000000000
1355  1-1.0e-11 |                              -0.000000000010000000000050000 |                              -0.000000000010000000000050000 |                              0.000000000000000000000000000
1356  1-1.0e-12 |                             -0.0000000000010000000000005000 |                             -0.0000000000010000000000005000 |                             0.0000000000000000000000000000
1357  1-1.0e-13 |                            -0.00000000000010000000000000500 |                            -0.00000000000010000000000000500 |                            0.00000000000000000000000000000
1358  1-1.0e-14 |                           -0.000000000000010000000000000050 |                           -0.000000000000010000000000000050 |                           0.000000000000000000000000000000
1359  1-1.0e-15 |                          -0.0000000000000010000000000000005 |                          -0.0000000000000010000000000000005 |                          0.0000000000000000000000000000000
1360  1-1.0e-16 |                         -0.00000000000000010000000000000001 |                         -0.00000000000000010000000000000001 |                         0.00000000000000000000000000000000
1361  1-1.0e-17 |                        -0.000000000000000010000000000000000 |                        -0.000000000000000010000000000000000 |                        0.000000000000000000000000000000000
1362  1-1.0e-18 |                       -0.0000000000000000010000000000000000 |                       -0.0000000000000000010000000000000000 |                       0.0000000000000000000000000000000000
1363  1-1.0e-19 |                      -0.00000000000000000010000000000000000 |                      -0.00000000000000000010000000000000000 |                      0.00000000000000000000000000000000000
1364  1-1.0e-20 |                     -0.000000000000000000010000000000000000 |                     -0.000000000000000000010000000000000000 |                     0.000000000000000000000000000000000000
1365  1-1.0e-21 |                    -0.0000000000000000000010000000000000000 |                    -0.0000000000000000000010000000000000000 |                    0.0000000000000000000000000000000000000
1366  1-1.0e-22 |                   -0.00000000000000000000010000000000000000 |                   -0.00000000000000000000010000000000000000 |                   0.00000000000000000000000000000000000000
1367  1-1.0e-23 |                  -0.000000000000000000000010000000000000000 |                  -0.000000000000000000000010000000000000000 |                  0.000000000000000000000000000000000000000
1368  1-1.0e-24 |                 -0.0000000000000000000000010000000000000000 |                 -0.0000000000000000000000010000000000000000 |                 0.0000000000000000000000000000000000000000
1369  1-1.0e-25 |                -0.00000000000000000000000010000000000000000 |                -0.00000000000000000000000010000000000000000 |                0.00000000000000000000000000000000000000000
1370  1-1.0e-26 |               -0.000000000000000000000000010000000000000000 |               -0.000000000000000000000000010000000000000000 |               0.000000000000000000000000000000000000000000
1371  1-1.0e-27 |              -0.0000000000000000000000000010000000000000000 |              -0.0000000000000000000000000010000000000000000 |              0.0000000000000000000000000000000000000000000
1372  1-1.0e-28 |             -0.00000000000000000000000000010000000000000000 |             -0.00000000000000000000000000010000000000000000 |             0.00000000000000000000000000000000000000000000
1373  1-1.0e-29 |            -0.000000000000000000000000000010000000000000000 |            -0.000000000000000000000000000010000000000000000 |            0.000000000000000000000000000000000000000000000
1374  1-1.0e-30 |           -0.0000000000000000000000000000010000000000000000 |           -0.0000000000000000000000000000010000000000000000 |           0.0000000000000000000000000000000000000000000000
1375  1-1.0e-31 |          -0.00000000000000000000000000000010000000000000000 |          -0.00000000000000000000000000000010000000000000000 |          0.00000000000000000000000000000000000000000000000
1376  1-1.0e-32 |         -0.000000000000000000000000000000010000000000000000 |         -0.000000000000000000000000000000010000000000000000 |         0.000000000000000000000000000000000000000000000000
1377  1-1.0e-33 |        -0.0000000000000000000000000000000010000000000000000 |        -0.0000000000000000000000000000000010000000000000000 |        0.0000000000000000000000000000000000000000000000000
1378  1-1.0e-34 |       -0.00000000000000000000000000000000010000000000000000 |       -0.00000000000000000000000000000000010000000000000000 |       0.00000000000000000000000000000000000000000000000000
1379  1-1.0e-35 |      -0.000000000000000000000000000000000010000000000000000 |      -0.000000000000000000000000000000000010000000000000000 |      0.000000000000000000000000000000000000000000000000000
1380  1-1.0e-36 |     -0.0000000000000000000000000000000000010000000000000000 |     -0.0000000000000000000000000000000000010000000000000000 |     0.0000000000000000000000000000000000000000000000000000
1381  1-1.0e-37 |    -0.00000000000000000000000000000000000010000000000000000 |    -0.00000000000000000000000000000000000010000000000000000 |    0.00000000000000000000000000000000000000000000000000000
1382  1-1.0e-38 |   -0.000000000000000000000000000000000000010000000000000000 |   -0.000000000000000000000000000000000000010000000000000000 |   0.000000000000000000000000000000000000000000000000000000
1383  1-1.0e-39 |  -0.0000000000000000000000000000000000000010000000000000000 |  -0.0000000000000000000000000000000000000010000000000000000 |  0.0000000000000000000000000000000000000000000000000000000
1384  1-1.0e-40 | -0.00000000000000000000000000000000000000010000000000000000 | -0.00000000000000000000000000000000000000010000000000000000 | 0.00000000000000000000000000000000000000000000000000000000
1385 (40 rows)
1387 -- input very close to but larger than 1
1389 -- bc(1) results computed with a scale of 500 and truncated using the script
1390 -- below, and then rounded by hand to match the precision of LN():
1392 -- for p in {1..40}
1393 -- do
1394 --   l=$(bc -ql <<< "scale=500 ; l(1+10^-$p)" | head -n 1)
1395 --   echo "('1.0e-$p', $l),"
1396 -- done
1397 WITH t(x, bc_result) AS (VALUES
1398 ('1.0e-1', .09531017980432486),
1399 ('1.0e-2', .009950330853168083),
1400 ('1.0e-3', .0009995003330835332),
1401 ('1.0e-4', .00009999500033330834),
1402 ('1.0e-5', .000009999950000333331),
1403 ('1.0e-6', .0000009999995000003333),
1404 ('1.0e-7', .00000009999999500000033),
1405 ('1.0e-8', .000000009999999950000000),
1406 ('1.0e-9', .0000000009999999995000000),
1407 ('1.0e-10', .00000000009999999999500000),
1408 ('1.0e-11', .000000000009999999999950000),
1409 ('1.0e-12', .0000000000009999999999995000),
1410 ('1.0e-13', .00000000000009999999999999500),
1411 ('1.0e-14', .000000000000009999999999999950),
1412 ('1.0e-15', .0000000000000009999999999999995),
1413 ('1.0e-16', .00000000000000010000000000000000),
1414 ('1.0e-17', .000000000000000010000000000000000),
1415 ('1.0e-18', .0000000000000000010000000000000000),
1416 ('1.0e-19', .00000000000000000010000000000000000),
1417 ('1.0e-20', .000000000000000000010000000000000000),
1418 ('1.0e-21', .0000000000000000000010000000000000000),
1419 ('1.0e-22', .00000000000000000000010000000000000000),
1420 ('1.0e-23', .000000000000000000000010000000000000000),
1421 ('1.0e-24', .0000000000000000000000010000000000000000),
1422 ('1.0e-25', .00000000000000000000000010000000000000000),
1423 ('1.0e-26', .000000000000000000000000010000000000000000),
1424 ('1.0e-27', .0000000000000000000000000010000000000000000),
1425 ('1.0e-28', .00000000000000000000000000010000000000000000),
1426 ('1.0e-29', .000000000000000000000000000010000000000000000),
1427 ('1.0e-30', .0000000000000000000000000000010000000000000000),
1428 ('1.0e-31', .00000000000000000000000000000010000000000000000),
1429 ('1.0e-32', .000000000000000000000000000000010000000000000000),
1430 ('1.0e-33', .0000000000000000000000000000000010000000000000000),
1431 ('1.0e-34', .00000000000000000000000000000000010000000000000000),
1432 ('1.0e-35', .000000000000000000000000000000000010000000000000000),
1433 ('1.0e-36', .0000000000000000000000000000000000010000000000000000),
1434 ('1.0e-37', .00000000000000000000000000000000000010000000000000000),
1435 ('1.0e-38', .000000000000000000000000000000000000010000000000000000),
1436 ('1.0e-39', .0000000000000000000000000000000000000010000000000000000),
1437 ('1.0e-40', .00000000000000000000000000000000000000010000000000000000))
1438 SELECT '1+'||x, bc_result, ln(1.0+x::numeric), ln(1.0+x::numeric)-bc_result AS diff FROM t;
1439  ?column?  |                         bc_result                          |                             ln                             |                            diff                            
1440 -----------+------------------------------------------------------------+------------------------------------------------------------+------------------------------------------------------------
1441  1+1.0e-1  |                                        0.09531017980432486 |                                        0.09531017980432486 |                                        0.00000000000000000
1442  1+1.0e-2  |                                       0.009950330853168083 |                                       0.009950330853168083 |                                       0.000000000000000000
1443  1+1.0e-3  |                                      0.0009995003330835332 |                                      0.0009995003330835332 |                                      0.0000000000000000000
1444  1+1.0e-4  |                                     0.00009999500033330834 |                                     0.00009999500033330834 |                                     0.00000000000000000000
1445  1+1.0e-5  |                                    0.000009999950000333331 |                                    0.000009999950000333331 |                                    0.000000000000000000000
1446  1+1.0e-6  |                                   0.0000009999995000003333 |                                   0.0000009999995000003333 |                                   0.0000000000000000000000
1447  1+1.0e-7  |                                  0.00000009999999500000033 |                                  0.00000009999999500000033 |                                  0.00000000000000000000000
1448  1+1.0e-8  |                                 0.000000009999999950000000 |                                 0.000000009999999950000000 |                                 0.000000000000000000000000
1449  1+1.0e-9  |                                0.0000000009999999995000000 |                                0.0000000009999999995000000 |                                0.0000000000000000000000000
1450  1+1.0e-10 |                               0.00000000009999999999500000 |                               0.00000000009999999999500000 |                               0.00000000000000000000000000
1451  1+1.0e-11 |                              0.000000000009999999999950000 |                              0.000000000009999999999950000 |                              0.000000000000000000000000000
1452  1+1.0e-12 |                             0.0000000000009999999999995000 |                             0.0000000000009999999999995000 |                             0.0000000000000000000000000000
1453  1+1.0e-13 |                            0.00000000000009999999999999500 |                            0.00000000000009999999999999500 |                            0.00000000000000000000000000000
1454  1+1.0e-14 |                           0.000000000000009999999999999950 |                           0.000000000000009999999999999950 |                           0.000000000000000000000000000000
1455  1+1.0e-15 |                          0.0000000000000009999999999999995 |                          0.0000000000000009999999999999995 |                          0.0000000000000000000000000000000
1456  1+1.0e-16 |                         0.00000000000000010000000000000000 |                         0.00000000000000010000000000000000 |                         0.00000000000000000000000000000000
1457  1+1.0e-17 |                        0.000000000000000010000000000000000 |                        0.000000000000000010000000000000000 |                        0.000000000000000000000000000000000
1458  1+1.0e-18 |                       0.0000000000000000010000000000000000 |                       0.0000000000000000010000000000000000 |                       0.0000000000000000000000000000000000
1459  1+1.0e-19 |                      0.00000000000000000010000000000000000 |                      0.00000000000000000010000000000000000 |                      0.00000000000000000000000000000000000
1460  1+1.0e-20 |                     0.000000000000000000010000000000000000 |                     0.000000000000000000010000000000000000 |                     0.000000000000000000000000000000000000
1461  1+1.0e-21 |                    0.0000000000000000000010000000000000000 |                    0.0000000000000000000010000000000000000 |                    0.0000000000000000000000000000000000000
1462  1+1.0e-22 |                   0.00000000000000000000010000000000000000 |                   0.00000000000000000000010000000000000000 |                   0.00000000000000000000000000000000000000
1463  1+1.0e-23 |                  0.000000000000000000000010000000000000000 |                  0.000000000000000000000010000000000000000 |                  0.000000000000000000000000000000000000000
1464  1+1.0e-24 |                 0.0000000000000000000000010000000000000000 |                 0.0000000000000000000000010000000000000000 |                 0.0000000000000000000000000000000000000000
1465  1+1.0e-25 |                0.00000000000000000000000010000000000000000 |                0.00000000000000000000000010000000000000000 |                0.00000000000000000000000000000000000000000
1466  1+1.0e-26 |               0.000000000000000000000000010000000000000000 |               0.000000000000000000000000010000000000000000 |               0.000000000000000000000000000000000000000000
1467  1+1.0e-27 |              0.0000000000000000000000000010000000000000000 |              0.0000000000000000000000000010000000000000000 |              0.0000000000000000000000000000000000000000000
1468  1+1.0e-28 |             0.00000000000000000000000000010000000000000000 |             0.00000000000000000000000000010000000000000000 |             0.00000000000000000000000000000000000000000000
1469  1+1.0e-29 |            0.000000000000000000000000000010000000000000000 |            0.000000000000000000000000000010000000000000000 |            0.000000000000000000000000000000000000000000000
1470  1+1.0e-30 |           0.0000000000000000000000000000010000000000000000 |           0.0000000000000000000000000000010000000000000000 |           0.0000000000000000000000000000000000000000000000
1471  1+1.0e-31 |          0.00000000000000000000000000000010000000000000000 |          0.00000000000000000000000000000010000000000000000 |          0.00000000000000000000000000000000000000000000000
1472  1+1.0e-32 |         0.000000000000000000000000000000010000000000000000 |         0.000000000000000000000000000000010000000000000000 |         0.000000000000000000000000000000000000000000000000
1473  1+1.0e-33 |        0.0000000000000000000000000000000010000000000000000 |        0.0000000000000000000000000000000010000000000000000 |        0.0000000000000000000000000000000000000000000000000
1474  1+1.0e-34 |       0.00000000000000000000000000000000010000000000000000 |       0.00000000000000000000000000000000010000000000000000 |       0.00000000000000000000000000000000000000000000000000
1475  1+1.0e-35 |      0.000000000000000000000000000000000010000000000000000 |      0.000000000000000000000000000000000010000000000000000 |      0.000000000000000000000000000000000000000000000000000
1476  1+1.0e-36 |     0.0000000000000000000000000000000000010000000000000000 |     0.0000000000000000000000000000000000010000000000000000 |     0.0000000000000000000000000000000000000000000000000000
1477  1+1.0e-37 |    0.00000000000000000000000000000000000010000000000000000 |    0.00000000000000000000000000000000000010000000000000000 |    0.00000000000000000000000000000000000000000000000000000
1478  1+1.0e-38 |   0.000000000000000000000000000000000000010000000000000000 |   0.000000000000000000000000000000000000010000000000000000 |   0.000000000000000000000000000000000000000000000000000000
1479  1+1.0e-39 |  0.0000000000000000000000000000000000000010000000000000000 |  0.0000000000000000000000000000000000000010000000000000000 |  0.0000000000000000000000000000000000000000000000000000000
1480  1+1.0e-40 | 0.00000000000000000000000000000000000000010000000000000000 | 0.00000000000000000000000000000000000000010000000000000000 | 0.00000000000000000000000000000000000000000000000000000000
1481 (40 rows)
1483 -- input very large
1485 -- bc(1) results computed with a scale of 500 and truncated using the script
1486 -- below, and then rounded by hand to match the precision of LN():
1488 -- for p in {1..40}
1489 -- do
1490 --   l=$(bc -ql <<< "scale=500 ; l(10^$p)" | head -n 1)
1491 --   echo "('1.0e$p', $l),"
1492 -- done
1493 WITH t(x, bc_result) AS (VALUES
1494 ('1.0e1', 2.3025850929940457),
1495 ('1.0e2', 4.6051701859880914),
1496 ('1.0e3', 6.9077552789821371),
1497 ('1.0e4', 9.2103403719761827),
1498 ('1.0e5', 11.512925464970228),
1499 ('1.0e6', 13.815510557964274),
1500 ('1.0e7', 16.118095650958320),
1501 ('1.0e8', 18.420680743952365),
1502 ('1.0e9', 20.723265836946411),
1503 ('1.0e10', 23.025850929940457),
1504 ('1.0e11', 25.328436022934503),
1505 ('1.0e12', 27.631021115928548),
1506 ('1.0e13', 29.933606208922594),
1507 ('1.0e14', 32.236191301916640),
1508 ('1.0e15', 34.538776394910685),
1509 ('1.0e16', 36.841361487904731),
1510 ('1.0e17', 39.143946580898777),
1511 ('1.0e18', 41.446531673892822),
1512 ('1.0e19', 43.749116766886868),
1513 ('1.0e20', 46.051701859880914),
1514 ('1.0e21', 48.354286952874959),
1515 ('1.0e22', 50.656872045869005),
1516 ('1.0e23', 52.959457138863051),
1517 ('1.0e24', 55.262042231857096),
1518 ('1.0e25', 57.564627324851142),
1519 ('1.0e26', 59.867212417845188),
1520 ('1.0e27', 62.169797510839233),
1521 ('1.0e28', 64.472382603833279),
1522 ('1.0e29', 66.774967696827325),
1523 ('1.0e30', 69.077552789821371),
1524 ('1.0e31', 71.380137882815416),
1525 ('1.0e32', 73.682722975809462),
1526 ('1.0e33', 75.985308068803508),
1527 ('1.0e34', 78.287893161797553),
1528 ('1.0e35', 80.590478254791599),
1529 ('1.0e36', 82.893063347785645),
1530 ('1.0e37', 85.195648440779690),
1531 ('1.0e38', 87.498233533773736),
1532 ('1.0e39', 89.800818626767782),
1533 ('1.0e40', 92.103403719761827))
1534 SELECT x, bc_result, ln(x::numeric), ln(x::numeric)-bc_result AS diff FROM t;
1535    x    |     bc_result      |         ln         |        diff        
1536 --------+--------------------+--------------------+--------------------
1537  1.0e1  | 2.3025850929940457 | 2.3025850929940457 | 0.0000000000000000
1538  1.0e2  | 4.6051701859880914 | 4.6051701859880914 | 0.0000000000000000
1539  1.0e3  | 6.9077552789821371 | 6.9077552789821371 | 0.0000000000000000
1540  1.0e4  | 9.2103403719761827 | 9.2103403719761827 | 0.0000000000000000
1541  1.0e5  | 11.512925464970228 | 11.512925464970228 |  0.000000000000000
1542  1.0e6  | 13.815510557964274 | 13.815510557964274 |  0.000000000000000
1543  1.0e7  | 16.118095650958320 | 16.118095650958320 |  0.000000000000000
1544  1.0e8  | 18.420680743952365 | 18.420680743952365 |  0.000000000000000
1545  1.0e9  | 20.723265836946411 | 20.723265836946411 |  0.000000000000000
1546  1.0e10 | 23.025850929940457 | 23.025850929940457 |  0.000000000000000
1547  1.0e11 | 25.328436022934503 | 25.328436022934503 |  0.000000000000000
1548  1.0e12 | 27.631021115928548 | 27.631021115928548 |  0.000000000000000
1549  1.0e13 | 29.933606208922594 | 29.933606208922594 |  0.000000000000000
1550  1.0e14 | 32.236191301916640 | 32.236191301916640 |  0.000000000000000
1551  1.0e15 | 34.538776394910685 | 34.538776394910685 |  0.000000000000000
1552  1.0e16 | 36.841361487904731 | 36.841361487904731 |  0.000000000000000
1553  1.0e17 | 39.143946580898777 | 39.143946580898777 |  0.000000000000000
1554  1.0e18 | 41.446531673892822 | 41.446531673892822 |  0.000000000000000
1555  1.0e19 | 43.749116766886868 | 43.749116766886868 |  0.000000000000000
1556  1.0e20 | 46.051701859880914 | 46.051701859880914 |  0.000000000000000
1557  1.0e21 | 48.354286952874959 | 48.354286952874959 |  0.000000000000000
1558  1.0e22 | 50.656872045869005 | 50.656872045869005 |  0.000000000000000
1559  1.0e23 | 52.959457138863051 | 52.959457138863051 |  0.000000000000000
1560  1.0e24 | 55.262042231857096 | 55.262042231857096 |  0.000000000000000
1561  1.0e25 | 57.564627324851142 | 57.564627324851142 |  0.000000000000000
1562  1.0e26 | 59.867212417845188 | 59.867212417845188 |  0.000000000000000
1563  1.0e27 | 62.169797510839233 | 62.169797510839233 |  0.000000000000000
1564  1.0e28 | 64.472382603833279 | 64.472382603833279 |  0.000000000000000
1565  1.0e29 | 66.774967696827325 | 66.774967696827325 |  0.000000000000000
1566  1.0e30 | 69.077552789821371 | 69.077552789821371 |  0.000000000000000
1567  1.0e31 | 71.380137882815416 | 71.380137882815416 |  0.000000000000000
1568  1.0e32 | 73.682722975809462 | 73.682722975809462 |  0.000000000000000
1569  1.0e33 | 75.985308068803508 | 75.985308068803508 |  0.000000000000000
1570  1.0e34 | 78.287893161797553 | 78.287893161797553 |  0.000000000000000
1571  1.0e35 | 80.590478254791599 | 80.590478254791599 |  0.000000000000000
1572  1.0e36 | 82.893063347785645 | 82.893063347785645 |  0.000000000000000
1573  1.0e37 | 85.195648440779690 | 85.195648440779690 |  0.000000000000000
1574  1.0e38 | 87.498233533773736 | 87.498233533773736 |  0.000000000000000
1575  1.0e39 | 89.800818626767782 | 89.800818626767782 |  0.000000000000000
1576  1.0e40 | 92.103403719761827 | 92.103403719761827 |  0.000000000000000
1577 (40 rows)
1579 -- input huge
1581 -- bc(1) results computed with a scale of 1000 and truncated using the script
1582 -- below, and then rounded by hand to match the precision of LN():
1584 -- for p in {1..10}
1585 -- do
1586 --   l=$(bc -ql <<< "scale=1000 ; l(10^${p}00)" | head -n 1)
1587 --  echo "('1.0e${p}00', $l),"
1588 -- done
1589 WITH t(x, bc_result) AS (VALUES
1590 ('1.0e100', 230.25850929940457),
1591 ('1.0e200', 460.51701859880914),
1592 ('1.0e300', 690.77552789821371),
1593 ('1.0e400', 921.03403719761827),
1594 ('1.0e500', 1151.2925464970228),
1595 ('1.0e600', 1381.5510557964274),
1596 ('1.0e700', 1611.8095650958320),
1597 ('1.0e800', 1842.0680743952365),
1598 ('1.0e900', 2072.3265836946411),
1599 ('1.0e1000', 2302.5850929940457))
1600 SELECT x, bc_result, ln(x::numeric), ln(x::numeric)-bc_result AS diff FROM t;
1601     x     |     bc_result      |         ln         |       diff       
1602 ----------+--------------------+--------------------+------------------
1603  1.0e100  | 230.25850929940457 | 230.25850929940457 | 0.00000000000000
1604  1.0e200  | 460.51701859880914 | 460.51701859880914 | 0.00000000000000
1605  1.0e300  | 690.77552789821371 | 690.77552789821371 | 0.00000000000000
1606  1.0e400  | 921.03403719761827 | 921.03403719761827 | 0.00000000000000
1607  1.0e500  | 1151.2925464970228 | 1151.2925464970228 |  0.0000000000000
1608  1.0e600  | 1381.5510557964274 | 1381.5510557964274 |  0.0000000000000
1609  1.0e700  | 1611.8095650958320 | 1611.8095650958320 |  0.0000000000000
1610  1.0e800  | 1842.0680743952365 | 1842.0680743952365 |  0.0000000000000
1611  1.0e900  | 2072.3265836946411 | 2072.3265836946411 |  0.0000000000000
1612  1.0e1000 | 2302.5850929940457 | 2302.5850929940457 |  0.0000000000000
1613 (10 rows)
1615 -- inputs with 1000 decimal places
1617 -- bc(1) results computed with a scale of 2000 and rounded to 1000 decimal
1618 -- places
1619 WITH t(x, bc_result) AS (VALUES
1620 (484990182159328900690402236933516249572671683638747490717351807610531884491845416923860371219625151551889257298200816555016472471293780254009492949585031653913930735918829139712249577547959394351523545901788627247613322896296041868431769047433229466634098452564756860190085118463828382895145244362033728480588969626012192733802377468089120757046364393407262957242230928854711898925295251902007136232994524624903257456111389508582206404271734668422903183500589303866613158037169610592539145461637447957948521714058034772237111009429638870236361143304703683377693378577075353794118557951847394763531830696578809001981568860219578880229402696449243344235099860421846016326538272155937175661905904288335499593232232926636205909086901191153907183842087577811871344870731324067822883041265129394268082883745408414994.8967939438561591657171240282983703914075472645212002662497023142663831371447287624846942598424990784971781730103682951722370983277124599054059027055336437808366784501932987082321905202623642371063626378290734289114618092750984153422293450048717769065428713836637664433167768445609659527458911187829232316677137895259433038764404970599325009178297626038331436654541552998098529141205301472138026818453893127265938030066392881979113522757891639646670670272542401773230506961559808927249585675430838495658225557294666522469887436551840596777627408780618586500922973500018513068499587683746133637919751545157547095670767246977244726331271787622126889459658539988980096764323712767863722912919120929339399753431689512753214200090670880647731689804555417871258907716687575767185444541243606329768784843125926070743277339790277626515824924290352180761378846035233155198504033292692893297993698953705472933411199778880561376633444249703838589180474329586470353212010427945060694794274109764269805332803290229,
1621  1864.3702986939570026328504202935192533137907736189919154633800554877738455118081651650863235106905871352085850240570561347180517240105510505203972860921397909573687877993477806728098306202020229409548306695695574102950949468160529713610952021974630774784174851619325758380143625473386495586347322798415543385655090746985183329114860118551572428921774322172798724455202876781611633419444058398798142214904998877857425038669920064728855823072107227506485770367799671977282350083029452784747350395161797215115525867416898416360638482342253129160308632504217096916335590470843180746834864303790913372081974355613359678634194879425862536147988835528973291020680020540866655622823550861337486588647231688134992810403147262346312159819432914207194632564009749236609081399504118359354620598232725290537215007867979331582119891661859015726276335168158288396939655310210558566592649049602925182137256134162660116182293851038854455437841571331011002023088829768308520393956515509475418031437505751407687618234418262),
1622 (87190145885430429849953615409019208993240447426362428988181639909267773304254748257120061524000254226856815085523676417146197197996896030672521334101413071112068202429835905642444187493717977611730127126387257253646790849384975208460867137315507010888782632024640844766297185244443116696943912406389670302370461137850160539373600494054874979342373255280815156048999900951842673141766630630919020492255966628630634124452614590400422133958133100159154995520080124736657520969784129924799670552560034302960877087853678350801769339861812435411200669026902417951572668727488315537985378304242438181615160041688723201917323705450185975141141262578884689500612295576288125956289035673242989906973367691922065122033180281670221390667818909912035903387888639331486823729897326624516015340.0330856710565117793999512551468220085711713631167607285185762046751452975325645379302403715842570486302993296501788672462090620871511446272026693318239212657949496275318383141403236705902077406660768573015707706831878445598837931116223956945944726162551477136715847593742032488181481888084716920605114101902724395659898621880016853548602514706686907951229872573180602614761229992106144727082722940736406782659562775289407005631298246624198606031298081220736931229256511054595028182057216042683060059115371651410352645266000330509331097811566633211452233019461903115970558624057877018778178814946285827512359903934291318219271464841957435711594154280905473802599888081783098187210283997106131616471807951265003903143099667366508222327805543948921694362089860577380749774036318574113007382111997454202845559941557812813566442364810680529092880773126707073967537693927177460459341763934709686530005721141046645111784404932103241501569571235364365556796422998363930810983452790309019295181282099408260156,
1623  1793.5767085750017553306932533574391150814202249805881581227430032600579405884415934520704053351781361105595296647510475380766428668443641914861849764330704062323054023252886955844207807229267936432730818329225450152491146839618683772020068682795388746108876393249306737841247788224204701299467519965182171772253974884845661168860422489046657965359832930382114760565628765599962013955588754803194908990025689040598990346417563277021386852342928910383706995866844541160576254266641602065102228267316550706943783591722246885978355472097314691737807509436806788803362444745551013400341861820755594413819894154786253014501454443272120342005711761286524843010157182464200556865694401941794983935172457481497909987740544409272349152397774548604845897687504977786762391359552407068124283290504752932824699865504970420939586707791994870941813718246825616335675307740641350673558328821461530563823677144691877374809441673507467507447891562257806191361453045937798278733402269265623588493124129181374135958668436774),
1624 (93936642222690597390233191619858485419795942047468396309991947772747208870873993801669373075421461116465960407843923269693395211616591453397070258466704654943689268224479477016161636938138334729982904232438440955361656138189836032891825113139184685132178764873033678116450665758561650355252211196676137179184043639278410827092182700922151290703747496962700158844772453483316974221113826173404445159281421213715669245417896170368554410830320000019029956317336703559699859949692222685614036912057150632902650913831404804982509990655560731349634628713944739168096272097122388116038119844786988276635032016787352796502360718569977397214936366251320294621522016.6483354941025384161536675750898007896744690911429670830432784905421638721478353275821072200938900938046264210604940707974410950770029535636602548377806284157951164875821446035013896786653932045182167021839184824627082391478016195098055107001433336586881395912782883663046617432598969149948351689103230162742769845955320418573803127107923535948653168889411316007796459064267436246637115946581149511513369842911210359447262641996566147462977170742544980481275049898092152042927981394239266559286915303786701737610786594006685748456635797125029722684151298695274097006242412384086302106763844070230264910503179385988626477852818174114043927841085089058972074427820150462261941575665882880501074676800316585217150509780489224388148722603385921057007086785238310735038314861960410473809826927329368597558806004392175746233568789445929554890241140656324160187253042639339549705859147930476532359840809944163908006480881926041259363654863689570520534301207043189181147254153307163555433328278834311658232337,
1625  1510.4332713542154696529645934345554302578243896764921637693542962119938599884313210100957753316832762996428481801312323020427109678979117469716796746760060470871840325255146954580681101106876674367471955788143763250819168311353856748872452260808797135108102729064040463343792765872545182299889360257515315869180266759715933989413256377582681707188367254513700731642913479683031478361835565783219287780434673712341147656477670848734998849030451414278832848680301511646182446524915091598080243532068451726548537866633622180283865668708517173065893429240665300584705585310049892047293928733753369421499719516009692095913169665213597158441636480707309244604139865130782756488091268094213446272360006907802989573582755585110277620911226015342778471352130366770729972784317323917141031824334355639769512749560550167491709646539950725523461943580211843652293561678342656010571108219244870234329176123205423872844099992204896411752620881541000940129833754169391528449211839693800724450201835161044717173715867437))
1626 SELECT trim_scale(ln(x::numeric)-bc_result) AS diff FROM t;
1627  diff 
1628 ------
1629     0
1630     0
1631     0
1632 (3 rows)
1635 -- Tests for LOG() (base 10)
1637 -- input very small, exact result known
1638 WITH t(x) AS (SELECT '1e-'||n FROM generate_series(1, 100) g(n))
1639 SELECT x, log(x::numeric) FROM t;
1640    x    |                                                    log                                                    
1641 --------+-----------------------------------------------------------------------------------------------------------
1642  1e-1   |                                                                                       -1.0000000000000000
1643  1e-2   |                                                                                       -2.0000000000000000
1644  1e-3   |                                                                                       -3.0000000000000000
1645  1e-4   |                                                                                       -4.0000000000000000
1646  1e-5   |                                                                                        -5.000000000000000
1647  1e-6   |                                                                                        -6.000000000000000
1648  1e-7   |                                                                                        -7.000000000000000
1649  1e-8   |                                                                                        -8.000000000000000
1650  1e-9   |                                                                                        -9.000000000000000
1651  1e-10  |                                                                                       -10.000000000000000
1652  1e-11  |                                                                                       -11.000000000000000
1653  1e-12  |                                                                                       -12.000000000000000
1654  1e-13  |                                                                                       -13.000000000000000
1655  1e-14  |                                                                                       -14.000000000000000
1656  1e-15  |                                                                                       -15.000000000000000
1657  1e-16  |                                                                                      -16.0000000000000000
1658  1e-17  |                                                                                     -17.00000000000000000
1659  1e-18  |                                                                                    -18.000000000000000000
1660  1e-19  |                                                                                   -19.0000000000000000000
1661  1e-20  |                                                                                  -20.00000000000000000000
1662  1e-21  |                                                                                 -21.000000000000000000000
1663  1e-22  |                                                                                -22.0000000000000000000000
1664  1e-23  |                                                                               -23.00000000000000000000000
1665  1e-24  |                                                                              -24.000000000000000000000000
1666  1e-25  |                                                                             -25.0000000000000000000000000
1667  1e-26  |                                                                            -26.00000000000000000000000000
1668  1e-27  |                                                                           -27.000000000000000000000000000
1669  1e-28  |                                                                          -28.0000000000000000000000000000
1670  1e-29  |                                                                         -29.00000000000000000000000000000
1671  1e-30  |                                                                        -30.000000000000000000000000000000
1672  1e-31  |                                                                       -31.0000000000000000000000000000000
1673  1e-32  |                                                                      -32.00000000000000000000000000000000
1674  1e-33  |                                                                     -33.000000000000000000000000000000000
1675  1e-34  |                                                                    -34.0000000000000000000000000000000000
1676  1e-35  |                                                                   -35.00000000000000000000000000000000000
1677  1e-36  |                                                                  -36.000000000000000000000000000000000000
1678  1e-37  |                                                                 -37.0000000000000000000000000000000000000
1679  1e-38  |                                                                -38.00000000000000000000000000000000000000
1680  1e-39  |                                                               -39.000000000000000000000000000000000000000
1681  1e-40  |                                                              -40.0000000000000000000000000000000000000000
1682  1e-41  |                                                             -41.00000000000000000000000000000000000000000
1683  1e-42  |                                                            -42.000000000000000000000000000000000000000000
1684  1e-43  |                                                           -43.0000000000000000000000000000000000000000000
1685  1e-44  |                                                          -44.00000000000000000000000000000000000000000000
1686  1e-45  |                                                         -45.000000000000000000000000000000000000000000000
1687  1e-46  |                                                        -46.0000000000000000000000000000000000000000000000
1688  1e-47  |                                                       -47.00000000000000000000000000000000000000000000000
1689  1e-48  |                                                      -48.000000000000000000000000000000000000000000000000
1690  1e-49  |                                                     -49.0000000000000000000000000000000000000000000000000
1691  1e-50  |                                                    -50.00000000000000000000000000000000000000000000000000
1692  1e-51  |                                                   -51.000000000000000000000000000000000000000000000000000
1693  1e-52  |                                                  -52.0000000000000000000000000000000000000000000000000000
1694  1e-53  |                                                 -53.00000000000000000000000000000000000000000000000000000
1695  1e-54  |                                                -54.000000000000000000000000000000000000000000000000000000
1696  1e-55  |                                               -55.0000000000000000000000000000000000000000000000000000000
1697  1e-56  |                                              -56.00000000000000000000000000000000000000000000000000000000
1698  1e-57  |                                             -57.000000000000000000000000000000000000000000000000000000000
1699  1e-58  |                                            -58.0000000000000000000000000000000000000000000000000000000000
1700  1e-59  |                                           -59.00000000000000000000000000000000000000000000000000000000000
1701  1e-60  |                                          -60.000000000000000000000000000000000000000000000000000000000000
1702  1e-61  |                                         -61.0000000000000000000000000000000000000000000000000000000000000
1703  1e-62  |                                        -62.00000000000000000000000000000000000000000000000000000000000000
1704  1e-63  |                                       -63.000000000000000000000000000000000000000000000000000000000000000
1705  1e-64  |                                      -64.0000000000000000000000000000000000000000000000000000000000000000
1706  1e-65  |                                     -65.00000000000000000000000000000000000000000000000000000000000000000
1707  1e-66  |                                    -66.000000000000000000000000000000000000000000000000000000000000000000
1708  1e-67  |                                   -67.0000000000000000000000000000000000000000000000000000000000000000000
1709  1e-68  |                                  -68.00000000000000000000000000000000000000000000000000000000000000000000
1710  1e-69  |                                 -69.000000000000000000000000000000000000000000000000000000000000000000000
1711  1e-70  |                                -70.0000000000000000000000000000000000000000000000000000000000000000000000
1712  1e-71  |                               -71.00000000000000000000000000000000000000000000000000000000000000000000000
1713  1e-72  |                              -72.000000000000000000000000000000000000000000000000000000000000000000000000
1714  1e-73  |                             -73.0000000000000000000000000000000000000000000000000000000000000000000000000
1715  1e-74  |                            -74.00000000000000000000000000000000000000000000000000000000000000000000000000
1716  1e-75  |                           -75.000000000000000000000000000000000000000000000000000000000000000000000000000
1717  1e-76  |                          -76.0000000000000000000000000000000000000000000000000000000000000000000000000000
1718  1e-77  |                         -77.00000000000000000000000000000000000000000000000000000000000000000000000000000
1719  1e-78  |                        -78.000000000000000000000000000000000000000000000000000000000000000000000000000000
1720  1e-79  |                       -79.0000000000000000000000000000000000000000000000000000000000000000000000000000000
1721  1e-80  |                      -80.00000000000000000000000000000000000000000000000000000000000000000000000000000000
1722  1e-81  |                     -81.000000000000000000000000000000000000000000000000000000000000000000000000000000000
1723  1e-82  |                    -82.0000000000000000000000000000000000000000000000000000000000000000000000000000000000
1724  1e-83  |                   -83.00000000000000000000000000000000000000000000000000000000000000000000000000000000000
1725  1e-84  |                  -84.000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1726  1e-85  |                 -85.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1727  1e-86  |                -86.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1728  1e-87  |               -87.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1729  1e-88  |              -88.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1730  1e-89  |             -89.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1731  1e-90  |            -90.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1732  1e-91  |           -91.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1733  1e-92  |          -92.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1734  1e-93  |         -93.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1735  1e-94  |        -94.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1736  1e-95  |       -95.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1737  1e-96  |      -96.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1738  1e-97  |     -97.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1739  1e-98  |    -98.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1740  1e-99  |   -99.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1741  1e-100 | -100.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1742 (100 rows)
1744 -- input very small, non-exact results
1746 -- bc(1) results computed with a scale of 500 and truncated using the script
1747 -- below, and then rounded by hand to match the precision of LN():
1749 -- for p in {1..50..7}
1750 -- do
1751 --   for d in {9..1..3}
1752 --   do
1753 --     l=$(bc -ql <<< "scale=500 ; l($d*10^-$p) / l(10)" | head -n 1)
1754 --     echo "('${d}.0e-$p', $l),"
1755 --   done
1756 -- done
1757 WITH t(x, bc_result) AS (VALUES
1758 ('9.0e-1', -.04575749056067513),
1759 ('6.0e-1', -.2218487496163564),
1760 ('3.0e-1', -.5228787452803376),
1761 ('9.0e-8', -7.045757490560675),
1762 ('6.0e-8', -7.221848749616356),
1763 ('3.0e-8', -7.522878745280338),
1764 ('9.0e-15', -14.0457574905606751),
1765 ('6.0e-15', -14.2218487496163564),
1766 ('3.0e-15', -14.5228787452803376),
1767 ('9.0e-22', -21.04575749056067512540994),
1768 ('6.0e-22', -21.22184874961635636749123),
1769 ('3.0e-22', -21.52287874528033756270497),
1770 ('9.0e-29', -28.045757490560675125409944193490),
1771 ('6.0e-29', -28.221848749616356367491233202020),
1772 ('3.0e-29', -28.522878745280337562704972096745),
1773 ('9.0e-36', -35.0457574905606751254099441934897693816),
1774 ('6.0e-36', -35.2218487496163563674912332020203916640),
1775 ('3.0e-36', -35.5228787452803375627049720967448846908),
1776 ('9.0e-43', -42.04575749056067512540994419348976938159974227),
1777 ('6.0e-43', -42.22184874961635636749123320202039166403168125),
1778 ('3.0e-43', -42.52287874528033756270497209674488469079987114),
1779 ('9.0e-50', -49.045757490560675125409944193489769381599742271618608),
1780 ('6.0e-50', -49.221848749616356367491233202020391664031681254347196),
1781 ('3.0e-50', -49.522878745280337562704972096744884690799871135809304))
1782 SELECT x, bc_result, log(x::numeric), log(x::numeric)-bc_result AS diff FROM t;
1783     x    |                        bc_result                        |                           log                           |                         diff                          
1784 ---------+---------------------------------------------------------+---------------------------------------------------------+-------------------------------------------------------
1785  9.0e-1  |                                    -0.04575749056067513 |                                    -0.04575749056067513 |                                   0.00000000000000000
1786  6.0e-1  |                                     -0.2218487496163564 |                                     -0.2218487496163564 |                                    0.0000000000000000
1787  3.0e-1  |                                     -0.5228787452803376 |                                     -0.5228787452803376 |                                    0.0000000000000000
1788  9.0e-8  |                                      -7.045757490560675 |                                      -7.045757490560675 |                                     0.000000000000000
1789  6.0e-8  |                                      -7.221848749616356 |                                      -7.221848749616356 |                                     0.000000000000000
1790  3.0e-8  |                                      -7.522878745280338 |                                      -7.522878745280338 |                                     0.000000000000000
1791  9.0e-15 |                                    -14.0457574905606751 |                                    -14.0457574905606751 |                                    0.0000000000000000
1792  6.0e-15 |                                    -14.2218487496163564 |                                    -14.2218487496163564 |                                    0.0000000000000000
1793  3.0e-15 |                                    -14.5228787452803376 |                                    -14.5228787452803376 |                                    0.0000000000000000
1794  9.0e-22 |                             -21.04575749056067512540994 |                             -21.04575749056067512540994 |                             0.00000000000000000000000
1795  6.0e-22 |                             -21.22184874961635636749123 |                             -21.22184874961635636749123 |                             0.00000000000000000000000
1796  3.0e-22 |                             -21.52287874528033756270497 |                             -21.52287874528033756270497 |                             0.00000000000000000000000
1797  9.0e-29 |                      -28.045757490560675125409944193490 |                      -28.045757490560675125409944193490 |                      0.000000000000000000000000000000
1798  6.0e-29 |                      -28.221848749616356367491233202020 |                      -28.221848749616356367491233202020 |                      0.000000000000000000000000000000
1799  3.0e-29 |                      -28.522878745280337562704972096745 |                      -28.522878745280337562704972096745 |                      0.000000000000000000000000000000
1800  9.0e-36 |               -35.0457574905606751254099441934897693816 |               -35.0457574905606751254099441934897693816 |               0.0000000000000000000000000000000000000
1801  6.0e-36 |               -35.2218487496163563674912332020203916640 |               -35.2218487496163563674912332020203916640 |               0.0000000000000000000000000000000000000
1802  3.0e-36 |               -35.5228787452803375627049720967448846908 |               -35.5228787452803375627049720967448846908 |               0.0000000000000000000000000000000000000
1803  9.0e-43 |        -42.04575749056067512540994419348976938159974227 |        -42.04575749056067512540994419348976938159974227 |        0.00000000000000000000000000000000000000000000
1804  6.0e-43 |        -42.22184874961635636749123320202039166403168125 |        -42.22184874961635636749123320202039166403168125 |        0.00000000000000000000000000000000000000000000
1805  3.0e-43 |        -42.52287874528033756270497209674488469079987114 |        -42.52287874528033756270497209674488469079987114 |        0.00000000000000000000000000000000000000000000
1806  9.0e-50 | -49.045757490560675125409944193489769381599742271618608 | -49.045757490560675125409944193489769381599742271618608 | 0.000000000000000000000000000000000000000000000000000
1807  6.0e-50 | -49.221848749616356367491233202020391664031681254347196 | -49.221848749616356367491233202020391664031681254347196 | 0.000000000000000000000000000000000000000000000000000
1808  3.0e-50 | -49.522878745280337562704972096744884690799871135809304 | -49.522878745280337562704972096744884690799871135809304 | 0.000000000000000000000000000000000000000000000000000
1809 (24 rows)
1811 -- input very close to but smaller than 1
1813 -- bc(1) results computed with a scale of 500 and truncated using the script
1814 -- below, and then rounded by hand to match the precision of LN():
1816 -- for p in {1..40..7}
1817 -- do
1818 --   for d in {9..1..3}
1819 --   do
1820 --     l=$(bc -ql <<< "scale=500 ; l(1-$d*10^-$p) / l(10)" | head -n 1)
1821 --     echo "('${d}.0e-$p', $l),"
1822 --   done
1823 -- done
1824 WITH t(x, bc_result) AS (VALUES
1825 ('9.0e-1', -1.0000000000000000),
1826 ('6.0e-1', -.3979400086720376),
1827 ('3.0e-1', -.1549019599857432),
1828 ('9.0e-8', -.000000039086505130185422),
1829 ('6.0e-8', -.000000026057669695925208),
1830 ('3.0e-8', -.000000013028834652530076),
1831 ('9.0e-15', -.0000000000000039086503371292840),
1832 ('6.0e-15', -.0000000000000026057668914195188),
1833 ('3.0e-15', -.0000000000000013028834457097574),
1834 ('9.0e-22', -.00000000000000000000039086503371292664),
1835 ('6.0e-22', -.00000000000000000000026057668914195110),
1836 ('3.0e-22', -.00000000000000000000013028834457097555),
1837 ('9.0e-29', -.000000000000000000000000000039086503371292664),
1838 ('6.0e-29', -.000000000000000000000000000026057668914195110),
1839 ('3.0e-29', -.000000000000000000000000000013028834457097555),
1840 ('9.0e-36', -.0000000000000000000000000000000000039086503371292664),
1841 ('6.0e-36', -.0000000000000000000000000000000000026057668914195110),
1842 ('3.0e-36', -.0000000000000000000000000000000000013028834457097555))
1843 SELECT '1-'||x, bc_result, log(1.0-x::numeric), log(1.0-x::numeric)-bc_result AS diff FROM t;
1844  ?column?  |                        bc_result                        |                           log                           |                          diff                          
1845 -----------+---------------------------------------------------------+---------------------------------------------------------+--------------------------------------------------------
1846  1-9.0e-1  |                                     -1.0000000000000000 |                                     -1.0000000000000000 |                                     0.0000000000000000
1847  1-6.0e-1  |                                     -0.3979400086720376 |                                     -0.3979400086720376 |                                     0.0000000000000000
1848  1-3.0e-1  |                                     -0.1549019599857432 |                                     -0.1549019599857432 |                                     0.0000000000000000
1849  1-9.0e-8  |                             -0.000000039086505130185422 |                             -0.000000039086505130185422 |                             0.000000000000000000000000
1850  1-6.0e-8  |                             -0.000000026057669695925208 |                             -0.000000026057669695925208 |                             0.000000000000000000000000
1851  1-3.0e-8  |                             -0.000000013028834652530076 |                             -0.000000013028834652530076 |                             0.000000000000000000000000
1852  1-9.0e-15 |                      -0.0000000000000039086503371292840 |                      -0.0000000000000039086503371292840 |                      0.0000000000000000000000000000000
1853  1-6.0e-15 |                      -0.0000000000000026057668914195188 |                      -0.0000000000000026057668914195188 |                      0.0000000000000000000000000000000
1854  1-3.0e-15 |                      -0.0000000000000013028834457097574 |                      -0.0000000000000013028834457097574 |                      0.0000000000000000000000000000000
1855  1-9.0e-22 |               -0.00000000000000000000039086503371292664 |               -0.00000000000000000000039086503371292664 |               0.00000000000000000000000000000000000000
1856  1-6.0e-22 |               -0.00000000000000000000026057668914195110 |               -0.00000000000000000000026057668914195110 |               0.00000000000000000000000000000000000000
1857  1-3.0e-22 |               -0.00000000000000000000013028834457097555 |               -0.00000000000000000000013028834457097555 |               0.00000000000000000000000000000000000000
1858  1-9.0e-29 |        -0.000000000000000000000000000039086503371292664 |        -0.000000000000000000000000000039086503371292664 |        0.000000000000000000000000000000000000000000000
1859  1-6.0e-29 |        -0.000000000000000000000000000026057668914195110 |        -0.000000000000000000000000000026057668914195110 |        0.000000000000000000000000000000000000000000000
1860  1-3.0e-29 |        -0.000000000000000000000000000013028834457097555 |        -0.000000000000000000000000000013028834457097555 |        0.000000000000000000000000000000000000000000000
1861  1-9.0e-36 | -0.0000000000000000000000000000000000039086503371292664 | -0.0000000000000000000000000000000000039086503371292664 | 0.0000000000000000000000000000000000000000000000000000
1862  1-6.0e-36 | -0.0000000000000000000000000000000000026057668914195110 | -0.0000000000000000000000000000000000026057668914195110 | 0.0000000000000000000000000000000000000000000000000000
1863  1-3.0e-36 | -0.0000000000000000000000000000000000013028834457097555 | -0.0000000000000000000000000000000000013028834457097555 | 0.0000000000000000000000000000000000000000000000000000
1864 (18 rows)
1866 -- input very close to but larger than 1
1868 -- bc(1) results computed with a scale of 500 and truncated using the script
1869 -- below, and then rounded by hand to match the precision of LN():
1871 -- for p in {1..40..7}
1872 -- do
1873 --   for d in {9..1..3}
1874 --   do
1875 --     l=$(bc -ql <<< "scale=500 ; l(1+$d*10^-$p) / l(10)" | head -n 1)
1876 --     echo "('${d}.0e-$p', $l),"
1877 --   done
1878 -- done
1879 WITH t(x, bc_result) AS (VALUES
1880 ('9.0e-1', .2787536009528290),
1881 ('6.0e-1', .2041199826559248),
1882 ('3.0e-1', .1139433523068368),
1883 ('9.0e-8', .000000039086501612400118),
1884 ('6.0e-8', .000000026057668132465074),
1885 ('3.0e-8', .000000013028834261665042),
1886 ('9.0e-15', .0000000000000039086503371292489),
1887 ('6.0e-15', .0000000000000026057668914195031),
1888 ('3.0e-15', .0000000000000013028834457097535),
1889 ('9.0e-22', .00000000000000000000039086503371292664),
1890 ('6.0e-22', .00000000000000000000026057668914195110),
1891 ('3.0e-22', .00000000000000000000013028834457097555),
1892 ('9.0e-29', .000000000000000000000000000039086503371292664),
1893 ('6.0e-29', .000000000000000000000000000026057668914195110),
1894 ('3.0e-29', .000000000000000000000000000013028834457097555),
1895 ('9.0e-36', .0000000000000000000000000000000000039086503371292664),
1896 ('6.0e-36', .0000000000000000000000000000000000026057668914195110),
1897 ('3.0e-36', .0000000000000000000000000000000000013028834457097555))
1898 SELECT '1+'||x, bc_result, log(1.0+x::numeric), log(1.0+x::numeric)-bc_result AS diff FROM t;
1899  ?column?  |                       bc_result                        |                          log                           |                          diff                          
1900 -----------+--------------------------------------------------------+--------------------------------------------------------+--------------------------------------------------------
1901  1+9.0e-1  |                                     0.2787536009528290 |                                     0.2787536009528290 |                                     0.0000000000000000
1902  1+6.0e-1  |                                     0.2041199826559248 |                                     0.2041199826559248 |                                     0.0000000000000000
1903  1+3.0e-1  |                                     0.1139433523068368 |                                     0.1139433523068368 |                                     0.0000000000000000
1904  1+9.0e-8  |                             0.000000039086501612400118 |                             0.000000039086501612400118 |                             0.000000000000000000000000
1905  1+6.0e-8  |                             0.000000026057668132465074 |                             0.000000026057668132465074 |                             0.000000000000000000000000
1906  1+3.0e-8  |                             0.000000013028834261665042 |                             0.000000013028834261665042 |                             0.000000000000000000000000
1907  1+9.0e-15 |                      0.0000000000000039086503371292489 |                      0.0000000000000039086503371292489 |                      0.0000000000000000000000000000000
1908  1+6.0e-15 |                      0.0000000000000026057668914195031 |                      0.0000000000000026057668914195031 |                      0.0000000000000000000000000000000
1909  1+3.0e-15 |                      0.0000000000000013028834457097535 |                      0.0000000000000013028834457097535 |                      0.0000000000000000000000000000000
1910  1+9.0e-22 |               0.00000000000000000000039086503371292664 |               0.00000000000000000000039086503371292664 |               0.00000000000000000000000000000000000000
1911  1+6.0e-22 |               0.00000000000000000000026057668914195110 |               0.00000000000000000000026057668914195110 |               0.00000000000000000000000000000000000000
1912  1+3.0e-22 |               0.00000000000000000000013028834457097555 |               0.00000000000000000000013028834457097555 |               0.00000000000000000000000000000000000000
1913  1+9.0e-29 |        0.000000000000000000000000000039086503371292664 |        0.000000000000000000000000000039086503371292664 |        0.000000000000000000000000000000000000000000000
1914  1+6.0e-29 |        0.000000000000000000000000000026057668914195110 |        0.000000000000000000000000000026057668914195110 |        0.000000000000000000000000000000000000000000000
1915  1+3.0e-29 |        0.000000000000000000000000000013028834457097555 |        0.000000000000000000000000000013028834457097555 |        0.000000000000000000000000000000000000000000000
1916  1+9.0e-36 | 0.0000000000000000000000000000000000039086503371292664 | 0.0000000000000000000000000000000000039086503371292664 | 0.0000000000000000000000000000000000000000000000000000
1917  1+6.0e-36 | 0.0000000000000000000000000000000000026057668914195110 | 0.0000000000000000000000000000000000026057668914195110 | 0.0000000000000000000000000000000000000000000000000000
1918  1+3.0e-36 | 0.0000000000000000000000000000000000013028834457097555 | 0.0000000000000000000000000000000000013028834457097555 | 0.0000000000000000000000000000000000000000000000000000
1919 (18 rows)
1921 -- input very large, exact result known
1922 WITH t(x) AS (SELECT '1e'||n FROM generate_series(1, 100) g(n))
1923 SELECT x, log(x::numeric) FROM t;
1924    x   |        log         
1925 -------+--------------------
1926  1e1   | 1.0000000000000000
1927  1e2   | 2.0000000000000000
1928  1e3   | 3.0000000000000000
1929  1e4   | 4.0000000000000000
1930  1e5   |  5.000000000000000
1931  1e6   |  6.000000000000000
1932  1e7   |  7.000000000000000
1933  1e8   |  8.000000000000000
1934  1e9   |  9.000000000000000
1935  1e10  | 10.000000000000000
1936  1e11  | 11.000000000000000
1937  1e12  | 12.000000000000000
1938  1e13  | 13.000000000000000
1939  1e14  | 14.000000000000000
1940  1e15  | 15.000000000000000
1941  1e16  | 16.000000000000000
1942  1e17  | 17.000000000000000
1943  1e18  | 18.000000000000000
1944  1e19  | 19.000000000000000
1945  1e20  | 20.000000000000000
1946  1e21  | 21.000000000000000
1947  1e22  | 22.000000000000000
1948  1e23  | 23.000000000000000
1949  1e24  | 24.000000000000000
1950  1e25  | 25.000000000000000
1951  1e26  | 26.000000000000000
1952  1e27  | 27.000000000000000
1953  1e28  | 28.000000000000000
1954  1e29  | 29.000000000000000
1955  1e30  | 30.000000000000000
1956  1e31  | 31.000000000000000
1957  1e32  | 32.000000000000000
1958  1e33  | 33.000000000000000
1959  1e34  | 34.000000000000000
1960  1e35  | 35.000000000000000
1961  1e36  | 36.000000000000000
1962  1e37  | 37.000000000000000
1963  1e38  | 38.000000000000000
1964  1e39  | 39.000000000000000
1965  1e40  | 40.000000000000000
1966  1e41  | 41.000000000000000
1967  1e42  | 42.000000000000000
1968  1e43  | 43.000000000000000
1969  1e44  |  44.00000000000000
1970  1e45  |  45.00000000000000
1971  1e46  |  46.00000000000000
1972  1e47  |  47.00000000000000
1973  1e48  |  48.00000000000000
1974  1e49  |  49.00000000000000
1975  1e50  |  50.00000000000000
1976  1e51  |  51.00000000000000
1977  1e52  |  52.00000000000000
1978  1e53  |  53.00000000000000
1979  1e54  |  54.00000000000000
1980  1e55  |  55.00000000000000
1981  1e56  |  56.00000000000000
1982  1e57  |  57.00000000000000
1983  1e58  |  58.00000000000000
1984  1e59  |  59.00000000000000
1985  1e60  |  60.00000000000000
1986  1e61  |  61.00000000000000
1987  1e62  |  62.00000000000000
1988  1e63  |  63.00000000000000
1989  1e64  |  64.00000000000000
1990  1e65  |  65.00000000000000
1991  1e66  |  66.00000000000000
1992  1e67  |  67.00000000000000
1993  1e68  |  68.00000000000000
1994  1e69  |  69.00000000000000
1995  1e70  |  70.00000000000000
1996  1e71  |  71.00000000000000
1997  1e72  |  72.00000000000000
1998  1e73  |  73.00000000000000
1999  1e74  |  74.00000000000000
2000  1e75  |  75.00000000000000
2001  1e76  |  76.00000000000000
2002  1e77  |  77.00000000000000
2003  1e78  |  78.00000000000000
2004  1e79  |  79.00000000000000
2005  1e80  |  80.00000000000000
2006  1e81  |  81.00000000000000
2007  1e82  |  82.00000000000000
2008  1e83  |  83.00000000000000
2009  1e84  |  84.00000000000000
2010  1e85  |  85.00000000000000
2011  1e86  |  86.00000000000000
2012  1e87  |  87.00000000000000
2013  1e88  |  88.00000000000000
2014  1e89  |  89.00000000000000
2015  1e90  |  90.00000000000000
2016  1e91  |  91.00000000000000
2017  1e92  |  92.00000000000000
2018  1e93  |  93.00000000000000
2019  1e94  |  94.00000000000000
2020  1e95  |  95.00000000000000
2021  1e96  |  96.00000000000000
2022  1e97  |  97.00000000000000
2023  1e98  |  98.00000000000000
2024  1e99  |  99.00000000000000
2025  1e100 | 100.00000000000000
2026 (100 rows)
2028 -- input very large, non-exact results
2030 -- bc(1) results computed with a scale of 500 and truncated using the script
2031 -- below, and then rounded by hand to match the precision of LN():
2033 -- for p in {10..50..7}
2034 --   do
2035 --   for d in {2..9..3}
2036 --   do
2037 --     l=$(bc -ql <<< "scale=500 ; l($d*10^$p) / l(10)" | head -n 1)
2038 --     echo "('${d}.0e$p', $l),"
2039 --   done
2040 -- done
2041 WITH t(x, bc_result) AS (VALUES
2042 ('2.0e10', 10.301029995663981),
2043 ('5.0e10', 10.698970004336019),
2044 ('8.0e10', 10.903089986991944),
2045 ('2.0e17', 17.301029995663981),
2046 ('5.0e17', 17.698970004336019),
2047 ('8.0e17', 17.903089986991944),
2048 ('2.0e24', 24.301029995663981),
2049 ('5.0e24', 24.698970004336019),
2050 ('8.0e24', 24.903089986991944),
2051 ('2.0e31', 31.301029995663981),
2052 ('5.0e31', 31.698970004336019),
2053 ('8.0e31', 31.903089986991944),
2054 ('2.0e38', 38.301029995663981),
2055 ('5.0e38', 38.698970004336019),
2056 ('8.0e38', 38.903089986991944),
2057 ('2.0e45', 45.30102999566398),
2058 ('5.0e45', 45.69897000433602),
2059 ('8.0e45', 45.90308998699194))
2060 SELECT x, bc_result, log(x::numeric), log(x::numeric)-bc_result AS diff FROM t;
2061    x    |     bc_result      |        log         |       diff        
2062 --------+--------------------+--------------------+-------------------
2063  2.0e10 | 10.301029995663981 | 10.301029995663981 | 0.000000000000000
2064  5.0e10 | 10.698970004336019 | 10.698970004336019 | 0.000000000000000
2065  8.0e10 | 10.903089986991944 | 10.903089986991944 | 0.000000000000000
2066  2.0e17 | 17.301029995663981 | 17.301029995663981 | 0.000000000000000
2067  5.0e17 | 17.698970004336019 | 17.698970004336019 | 0.000000000000000
2068  8.0e17 | 17.903089986991944 | 17.903089986991944 | 0.000000000000000
2069  2.0e24 | 24.301029995663981 | 24.301029995663981 | 0.000000000000000
2070  5.0e24 | 24.698970004336019 | 24.698970004336019 | 0.000000000000000
2071  8.0e24 | 24.903089986991944 | 24.903089986991944 | 0.000000000000000
2072  2.0e31 | 31.301029995663981 | 31.301029995663981 | 0.000000000000000
2073  5.0e31 | 31.698970004336019 | 31.698970004336019 | 0.000000000000000
2074  8.0e31 | 31.903089986991944 | 31.903089986991944 | 0.000000000000000
2075  2.0e38 | 38.301029995663981 | 38.301029995663981 | 0.000000000000000
2076  5.0e38 | 38.698970004336019 | 38.698970004336019 | 0.000000000000000
2077  8.0e38 | 38.903089986991944 | 38.903089986991944 | 0.000000000000000
2078  2.0e45 |  45.30102999566398 |  45.30102999566398 |  0.00000000000000
2079  5.0e45 |  45.69897000433602 |  45.69897000433602 |  0.00000000000000
2080  8.0e45 |  45.90308998699194 |  45.90308998699194 |  0.00000000000000
2081 (18 rows)