[sdks] Fixes llvm branch name (#8926)
[mono-project.git] / mono / metadata / number-formatter.h
blobe1e4eb2d8519d1230b8894a22b825c3cd34f21ae
1 /**
2 * \file
3 */
5 #ifndef _MONO_METADATA_NUMBER_FORMATTER_H_
6 #define _MONO_METADATA_NUMBER_FORMATTER_H_ 1
8 static const guint64 Formatter_MantissaBitsTable [] = {
9 4556951262222748432ULL, 9113902524445496865ULL, 1822780504889099373ULL,
10 3645561009778198746ULL, 7291122019556397492ULL, 14582244039112794984ULL,
11 2916448807822558996ULL, 5832897615645117993ULL, 11665795231290235987ULL,
12 2333159046258047197ULL, 4666318092516094394ULL, 9332636185032188789ULL,
13 1866527237006437757ULL, 3733054474012875515ULL, 7466108948025751031ULL,
14 14932217896051502063ULL, 2986443579210300412ULL, 5972887158420600825ULL,
15 11945774316841201651ULL, 2389154863368240330ULL, 4778309726736480660ULL,
16 9556619453472961320ULL, 1911323890694592264ULL, 3822647781389184528ULL,
17 7645295562778369056ULL, 15290591125556738113ULL, 3058118225111347622ULL,
18 6116236450222695245ULL, 12232472900445390490ULL, 2446494580089078098ULL,
19 4892989160178156196ULL, 9785978320356312392ULL, 1957195664071262478ULL,
20 3914391328142524957ULL, 7828782656285049914ULL, 15657565312570099828ULL,
21 3131513062514019965ULL, 6263026125028039931ULL, 12526052250056079862ULL,
22 2505210450011215972ULL, 5010420900022431944ULL, 10020841800044863889ULL,
23 2004168360008972777ULL, 4008336720017945555ULL, 8016673440035891111ULL,
24 16033346880071782223ULL, 3206669376014356444ULL, 6413338752028712889ULL,
25 12826677504057425779ULL, 2565335500811485155ULL, 5130671001622970311ULL,
26 10261342003245940623ULL, 2052268400649188124ULL, 4104536801298376249ULL,
27 8209073602596752498ULL, 16418147205193504997ULL, 3283629441038700999ULL,
28 6567258882077401998ULL, 13134517764154803997ULL, 2626903552830960799ULL,
29 5253807105661921599ULL, 10507614211323843198ULL, 2101522842264768639ULL,
30 4203045684529537279ULL, 8406091369059074558ULL, 16812182738118149117ULL,
31 3362436547623629823ULL, 6724873095247259646ULL, 13449746190494519293ULL,
32 2689949238098903858ULL, 5379898476197807717ULL, 10759796952395615435ULL,
33 2151959390479123087ULL, 4303918780958246174ULL, 8607837561916492348ULL,
34 17215675123832984696ULL, 3443135024766596939ULL, 6886270049533193878ULL,
35 13772540099066387756ULL, 2754508019813277551ULL, 5509016039626555102ULL,
36 11018032079253110205ULL, 2203606415850622041ULL, 4407212831701244082ULL,
37 8814425663402488164ULL, 17628851326804976328ULL, 3525770265360995265ULL,
38 7051540530721990531ULL, 14103081061443981063ULL, 2820616212288796212ULL,
39 5641232424577592425ULL, 11282464849155184850ULL, 2256492969831036970ULL,
40 4512985939662073940ULL, 9025971879324147880ULL, 18051943758648295760ULL,
41 3610388751729659152ULL, 7220777503459318304ULL, 14441555006918636608ULL,
42 2888311001383727321ULL, 5776622002767454643ULL, 11553244005534909286ULL,
43 2310648801106981857ULL, 4621297602213963714ULL, 9242595204427927429ULL,
44 1848519040885585485ULL, 3697038081771170971ULL, 7394076163542341943ULL,
45 14788152327084683887ULL, 2957630465416936777ULL, 5915260930833873554ULL,
46 11830521861667747109ULL, 2366104372333549421ULL, 4732208744667098843ULL,
47 9464417489334197687ULL, 1892883497866839537ULL, 3785766995733679075ULL,
48 7571533991467358150ULL, 15143067982934716300ULL, 3028613596586943260ULL,
49 6057227193173886520ULL, 12114454386347773040ULL, 2422890877269554608ULL,
50 4845781754539109216ULL, 9691563509078218432ULL, 1938312701815643686ULL,
51 3876625403631287372ULL, 7753250807262574745ULL, 15506501614525149491ULL,
52 3101300322905029898ULL, 6202600645810059796ULL, 12405201291620119593ULL,
53 2481040258324023918ULL, 4962080516648047837ULL, 9924161033296095674ULL,
54 1984832206659219134ULL, 3969664413318438269ULL, 7939328826636876539ULL,
55 15878657653273753079ULL, 3175731530654750615ULL, 6351463061309501231ULL,
56 12702926122619002463ULL, 2540585224523800492ULL, 5081170449047600985ULL,
57 10162340898095201970ULL, 2032468179619040394ULL, 4064936359238080788ULL,
58 8129872718476161576ULL, 16259745436952323153ULL, 3251949087390464630ULL,
59 6503898174780929261ULL, 13007796349561858522ULL, 2601559269912371704ULL,
60 5203118539824743409ULL, 10406237079649486818ULL, 2081247415929897363ULL,
61 4162494831859794727ULL, 8324989663719589454ULL, 16649979327439178909ULL,
62 3329995865487835781ULL, 6659991730975671563ULL, 13319983461951343127ULL,
63 2663996692390268625ULL, 5327993384780537250ULL, 10655986769561074501ULL,
64 2131197353912214900ULL, 4262394707824429800ULL, 8524789415648859601ULL,
65 17049578831297719202ULL, 3409915766259543840ULL, 6819831532519087681ULL,
66 13639663065038175362ULL, 2727932613007635072ULL, 5455865226015270144ULL,
67 10911730452030540289ULL, 2182346090406108057ULL, 4364692180812216115ULL,
68 8729384361624432231ULL, 17458768723248864463ULL, 3491753744649772892ULL,
69 6983507489299545785ULL, 13967014978599091570ULL, 2793402995719818314ULL,
70 5586805991439636628ULL, 11173611982879273256ULL, 2234722396575854651ULL,
71 4469444793151709302ULL, 8938889586303418605ULL, 17877779172606837210ULL,
72 3575555834521367442ULL, 7151111669042734884ULL, 14302223338085469768ULL,
73 2860444667617093953ULL, 5720889335234187907ULL, 11441778670468375814ULL,
74 2288355734093675162ULL, 4576711468187350325ULL, 9153422936374700651ULL,
75 1830684587274940130ULL, 3661369174549880260ULL, 7322738349099760521ULL,
76 14645476698199521043ULL, 2929095339639904208ULL, 5858190679279808417ULL,
77 11716381358559616834ULL, 2343276271711923366ULL, 4686552543423846733ULL,
78 9373105086847693467ULL, 1874621017369538693ULL, 3749242034739077387ULL,
79 7498484069478154774ULL, 14996968138956309548ULL, 2999393627791261909ULL,
80 5998787255582523819ULL, 11997574511165047638ULL, 2399514902233009527ULL,
81 4799029804466019055ULL, 9598059608932038110ULL, 1919611921786407622ULL,
82 3839223843572815244ULL, 7678447687145630488ULL, 15356895374291260977ULL,
83 3071379074858252195ULL, 6142758149716504390ULL, 12285516299433008781ULL,
84 2457103259886601756ULL, 4914206519773203512ULL, 9828413039546407025ULL,
85 1965682607909281405ULL, 3931365215818562810ULL, 7862730431637125620ULL,
86 15725460863274251240ULL, 3145092172654850248ULL, 6290184345309700496ULL,
87 12580368690619400992ULL, 2516073738123880198ULL, 5032147476247760397ULL,
88 10064294952495520794ULL, 2012858990499104158ULL, 4025717980998208317ULL,
89 8051435961996416635ULL, 16102871923992833270ULL, 3220574384798566654ULL,
90 6441148769597133308ULL, 12882297539194266616ULL, 2576459507838853323ULL,
91 5152919015677706646ULL, 10305838031355413293ULL, 2061167606271082658ULL,
92 4122335212542165317ULL, 8244670425084330634ULL, 16489340850168661269ULL,
93 3297868170033732253ULL, 6595736340067464507ULL, 13191472680134929015ULL,
94 2638294536026985803ULL, 5276589072053971606ULL, 10553178144107943212ULL,
95 2110635628821588642ULL, 4221271257643177284ULL, 8442542515286354569ULL,
96 16885085030572709139ULL, 3377017006114541827ULL, 6754034012229083655ULL,
97 13508068024458167311ULL, 2701613604891633462ULL, 5403227209783266924ULL,
98 10806454419566533849ULL, 2161290883913306769ULL, 4322581767826613539ULL,
99 8645163535653227079ULL, 17290327071306454158ULL, 3458065414261290831ULL,
100 6916130828522581663ULL, 13832261657045163327ULL, 2766452331409032665ULL,
101 5532904662818065330ULL, 11065809325636130661ULL, 2213161865127226132ULL,
102 4426323730254452264ULL, 8852647460508904529ULL, 17705294921017809058ULL,
103 3541058984203561811ULL, 7082117968407123623ULL, 14164235936814247246ULL,
104 2832847187362849449ULL, 5665694374725698898ULL, 11331388749451397797ULL,
105 2266277749890279559ULL, 4532555499780559119ULL, 9065110999561118238ULL,
106 1813022199912223647ULL, 3626044399824447295ULL, 7252088799648894590ULL,
107 14504177599297789180ULL, 2900835519859557836ULL, 5801671039719115672ULL,
108 11603342079438231344ULL, 2320668415887646268ULL, 4641336831775292537ULL,
109 9282673663550585075ULL, 1856534732710117015ULL, 3713069465420234030ULL,
110 7426138930840468060ULL, 14852277861680936121ULL, 2970455572336187224ULL,
111 5940911144672374448ULL, 11881822289344748896ULL, 2376364457868949779ULL,
112 4752728915737899558ULL, 9505457831475799117ULL, 1901091566295159823ULL,
113 3802183132590319647ULL, 7604366265180639294ULL, 15208732530361278588ULL,
114 3041746506072255717ULL, 6083493012144511435ULL, 12166986024289022870ULL,
115 2433397204857804574ULL, 4866794409715609148ULL, 9733588819431218296ULL,
116 1946717763886243659ULL, 3893435527772487318ULL, 7786871055544974637ULL,
117 15573742111089949274ULL, 3114748422217989854ULL, 6229496844435979709ULL,
118 12458993688871959419ULL, 2491798737774391883ULL, 4983597475548783767ULL,
119 9967194951097567535ULL, 1993438990219513507ULL, 3986877980439027014ULL,
120 7973755960878054028ULL, 15947511921756108056ULL, 3189502384351221611ULL,
121 6379004768702443222ULL, 12758009537404886445ULL, 2551601907480977289ULL,
122 5103203814961954578ULL, 10206407629923909156ULL, 2041281525984781831ULL,
123 4082563051969563662ULL, 8165126103939127325ULL, 16330252207878254650ULL,
124 3266050441575650930ULL, 6532100883151301860ULL, 13064201766302603720ULL,
125 2612840353260520744ULL, 5225680706521041488ULL, 10451361413042082976ULL,
126 2090272282608416595ULL, 4180544565216833190ULL, 8361089130433666380ULL,
127 16722178260867332761ULL, 3344435652173466552ULL, 6688871304346933104ULL,
128 13377742608693866209ULL, 2675548521738773241ULL, 5351097043477546483ULL,
129 10702194086955092967ULL, 2140438817391018593ULL, 4280877634782037187ULL,
130 8561755269564074374ULL, 17123510539128148748ULL, 3424702107825629749ULL,
131 6849404215651259499ULL, 13698808431302518998ULL, 2739761686260503799ULL,
132 5479523372521007599ULL, 10959046745042015198ULL, 2191809349008403039ULL,
133 4383618698016806079ULL, 8767237396033612159ULL, 17534474792067224318ULL,
134 3506894958413444863ULL, 7013789916826889727ULL, 14027579833653779454ULL,
135 2805515966730755890ULL, 5611031933461511781ULL, 11222063866923023563ULL,
136 2244412773384604712ULL, 4488825546769209425ULL, 8977651093538418850ULL,
137 17955302187076837701ULL, 3591060437415367540ULL, 7182120874830735080ULL,
138 14364241749661470161ULL, 2872848349932294032ULL, 5745696699864588064ULL,
139 11491393399729176129ULL, 2298278679945835225ULL, 4596557359891670451ULL,
140 9193114719783340903ULL, 1838622943956668180ULL, 3677245887913336361ULL,
141 7354491775826672722ULL, 14708983551653345445ULL, 2941796710330669089ULL,
142 5883593420661338178ULL, 11767186841322676356ULL, 2353437368264535271ULL,
143 4706874736529070542ULL, 9413749473058141084ULL, 1882749894611628216ULL,
144 3765499789223256433ULL, 7530999578446512867ULL, 15061999156893025735ULL,
145 3012399831378605147ULL, 6024799662757210294ULL, 12049599325514420588ULL,
146 2409919865102884117ULL, 4819839730205768235ULL, 9639679460411536470ULL,
147 1927935892082307294ULL, 3855871784164614588ULL, 7711743568329229176ULL,
148 15423487136658458353ULL, 3084697427331691670ULL, 6169394854663383341ULL,
149 12338789709326766682ULL, 2467757941865353336ULL, 4935515883730706673ULL,
150 9871031767461413346ULL, 1974206353492282669ULL, 3948412706984565338ULL,
151 7896825413969130677ULL, 15793650827938261354ULL, 3158730165587652270ULL,
152 6317460331175304541ULL, 12634920662350609083ULL, 2526984132470121816ULL,
153 5053968264940243633ULL, 10107936529880487266ULL, 2021587305976097453ULL,
154 4043174611952194906ULL, 8086349223904389813ULL, 16172698447808779626ULL,
155 3234539689561755925ULL, 6469079379123511850ULL, 12938158758247023701ULL,
156 2587631751649404740ULL, 5175263503298809480ULL, 10350527006597618960ULL,
157 2070105401319523792ULL, 4140210802639047584ULL, 8280421605278095168ULL,
158 16560843210556190337ULL, 3312168642111238067ULL, 6624337284222476135ULL,
159 13248674568444952270ULL, 2649734913688990454ULL, 5299469827377980908ULL,
160 10598939654755961816ULL, 2119787930951192363ULL, 4239575861902384726ULL,
161 8479151723804769452ULL, 16958303447609538905ULL, 3391660689521907781ULL,
162 6783321379043815562ULL, 13566642758087631124ULL, 2713328551617526224ULL,
163 5426657103235052449ULL, 10853314206470104899ULL, 2170662841294020979ULL,
164 4341325682588041959ULL, 8682651365176083919ULL, 17365302730352167839ULL,
165 3473060546070433567ULL, 6946121092140867135ULL, 13892242184281734271ULL,
166 2778448436856346854ULL, 5556896873712693708ULL, 11113793747425387417ULL,
167 2222758749485077483ULL, 4445517498970154966ULL, 8891034997940309933ULL,
168 17782069995880619867ULL, 3556413999176123973ULL, 7112827998352247947ULL,
169 14225655996704495894ULL, 2845131199340899178ULL, 5690262398681798357ULL,
170 11380524797363596715ULL, 2276104959472719343ULL, 4552209918945438686ULL,
171 9104419837890877372ULL, 1820883967578175474ULL, 3641767935156350948ULL,
172 7283535870312701897ULL, 14567071740625403795ULL, 2913414348125080759ULL,
173 5826828696250161518ULL, 11653657392500323036ULL, 2330731478500064607ULL,
174 4661462957000129214ULL, 9322925914000258429ULL, 1864585182800051685ULL,
175 3729170365600103371ULL, 7458340731200206743ULL, 14916681462400413486ULL,
176 2983336292480082697ULL, 5966672584960165394ULL, 11933345169920330789ULL,
177 2386669033984066157ULL, 4773338067968132315ULL, 9546676135936264631ULL,
178 1909335227187252926ULL, 3818670454374505852ULL, 7637340908749011705ULL,
179 15274681817498023410ULL, 3054936363499604682ULL, 6109872726999209364ULL,
180 12219745453998418728ULL, 2443949090799683745ULL, 4887898181599367491ULL,
181 9775796363198734982ULL, 1955159272639746996ULL, 3910318545279493993ULL,
182 7820637090558987986ULL, 15641274181117975972ULL, 3128254836223595194ULL,
183 6256509672447190388ULL, 12513019344894380777ULL, 2502603868978876155ULL,
184 5005207737957752311ULL, 10010415475915504622ULL, 2002083095183100924ULL,
185 4004166190366201848ULL, 8008332380732403697ULL, 16016664761464807395ULL,
186 3203332952292961479ULL, 6406665904585922958ULL, 12813331809171845916ULL,
187 2562666361834369183ULL, 5125332723668738366ULL, 10250665447337476733ULL,
188 2050133089467495346ULL, 4100266178934990693ULL, 8200532357869981386ULL,
189 16401064715739962772ULL, 3280212943147992554ULL, 6560425886295985109ULL,
190 13120851772591970218ULL, 2624170354518394043ULL, 5248340709036788087ULL,
191 10496681418073576174ULL, 2099336283614715234ULL, 4198672567229430469ULL,
192 8397345134458860939ULL, 16794690268917721879ULL, 3358938053783544375ULL,
193 6717876107567088751ULL, 13435752215134177503ULL, 2687150443026835500ULL,
194 5374300886053671001ULL, 10748601772107342002ULL, 2149720354421468400ULL,
195 4299440708842936801ULL, 8598881417685873602ULL, 17197762835371747204ULL,
196 3439552567074349440ULL, 6879105134148698881ULL, 13758210268297397763ULL,
197 2751642053659479552ULL, 5503284107318959105ULL, 11006568214637918210ULL,
198 2201313642927583642ULL, 4402627285855167284ULL, 8805254571710334568ULL,
199 17610509143420669137ULL, 3522101828684133827ULL, 7044203657368267654ULL,
200 14088407314736535309ULL, 2817681462947307061ULL, 5635362925894614123ULL,
201 11270725851789228247ULL, 2254145170357845649ULL, 4508290340715691299ULL,
202 9016580681431382598ULL, 18033161362862765196ULL, 3606632272572553039ULL,
203 7213264545145106078ULL, 14426529090290212157ULL, 2885305818058042431ULL,
204 5770611636116084862ULL, 11541223272232169725ULL, 2308244654446433945ULL,
205 4616489308892867890ULL, 9232978617785735780ULL, 1846595723557147156ULL,
206 3693191447114294312ULL, 7386382894228588624ULL, 14772765788457177249ULL,
207 2954553157691435449ULL, 5909106315382870899ULL, 11818212630765741799ULL,
208 2363642526153148359ULL, 4727285052306296719ULL, 9454570104612593439ULL,
209 1890914020922518687ULL, 3781828041845037375ULL, 7563656083690074751ULL,
210 15127312167380149503ULL, 3025462433476029900ULL, 6050924866952059801ULL,
211 12101849733904119602ULL, 2420369946780823920ULL, 4840739893561647841ULL,
212 9681479787123295682ULL, 1936295957424659136ULL, 3872591914849318272ULL,
213 7745183829698636545ULL, 15490367659397273091ULL, 3098073531879454618ULL,
214 6196147063758909236ULL, 12392294127517818473ULL, 2478458825503563694ULL,
215 4956917651007127389ULL, 9913835302014254778ULL, 1982767060402850955ULL,
216 3965534120805701911ULL, 7931068241611403822ULL, 15862136483222807645ULL,
217 3172427296644561529ULL, 6344854593289123058ULL, 12689709186578246116ULL,
218 2537941837315649223ULL, 5075883674631298446ULL, 10151767349262596893ULL,
219 2030353469852519378ULL, 4060706939705038757ULL, 8121413879410077514ULL,
220 16242827758820155028ULL, 3248565551764031005ULL, 6497131103528062011ULL,
221 12994262207056124023ULL, 2598852441411224804ULL, 5197704882822449609ULL,
222 10395409765644899218ULL, 2079081953128979843ULL, 4158163906257959687ULL,
223 8316327812515919374ULL, 16632655625031838749ULL, 3326531125006367749ULL,
224 6653062250012735499ULL, 13306124500025470999ULL, 2661224900005094199ULL,
225 5322449800010188399ULL, 10644899600020376799ULL, 2128979920004075359ULL,
226 4257959840008150719ULL, 8515919680016301439ULL, 17031839360032602879ULL,
227 3406367872006520575ULL, 6812735744013041151ULL, 13625471488026082303ULL,
228 2725094297605216460ULL, 5450188595210432921ULL, 10900377190420865842ULL,
229 2180075438084173168ULL, 4360150876168346337ULL, 8720301752336692674ULL,
230 17440603504673385348ULL, 3488120700934677069ULL, 6976241401869354139ULL,
231 13952482803738708279ULL, 2790496560747741655ULL, 5580993121495483311ULL,
232 11161986242990966623ULL, 2232397248598193324ULL, 4464794497196386649ULL,
233 8929588994392773298ULL, 17859177988785546597ULL, 3571835597757109319ULL,
234 7143671195514218638ULL, 14287342391028437277ULL, 2857468478205687455ULL,
235 5714936956411374911ULL, 11429873912822749822ULL, 2285974782564549964ULL,
236 4571949565129099928ULL, 9143899130258199857ULL, 1828779826051639971ULL,
237 3657559652103279943ULL, 7315119304206559886ULL, 14630238608413119772ULL,
238 2926047721682623954ULL, 5852095443365247908ULL, 11704190886730495817ULL,
239 2340838177346099163ULL, 4681676354692198327ULL, 9363352709384396654ULL,
240 1872670541876879330ULL, 3745341083753758661ULL, 7490682167507517323ULL,
241 14981364335015034646ULL, 2996272867003006929ULL, 5992545734006013858ULL,
242 11985091468012027717ULL, 2397018293602405543ULL, 4794036587204811087ULL,
243 9588073174409622174ULL, 1917614634881924434ULL, 3835229269763848869ULL,
244 7670458539527697739ULL, 15340917079055395478ULL, 3068183415811079095ULL,
245 6136366831622158191ULL, 12272733663244316382ULL, 2454546732648863276ULL,
246 4909093465297726553ULL, 9818186930595453106ULL, 1963637386119090621ULL,
247 3927274772238181242ULL, 7854549544476362484ULL, 15709099088952724969ULL,
248 3141819817790544993ULL, 6283639635581089987ULL, 12567279271162179975ULL,
249 2513455854232435995ULL, 5026911708464871990ULL, 10053823416929743980ULL,
250 2010764683385948796ULL, 4021529366771897592ULL, 8043058733543795184ULL,
251 16086117467087590369ULL, 3217223493417518073ULL, 6434446986835036147ULL,
252 12868893973670072295ULL, 2573778794734014459ULL, 5147557589468028918ULL,
253 10295115178936057836ULL, 2059023035787211567ULL, 4118046071574423134ULL,
254 8236092143148846269ULL, 16472184286297692538ULL, 3294436857259538507ULL,
255 6588873714519077015ULL, 13177747429038154030ULL, 2635549485807630806ULL,
256 5271098971615261612ULL, 10542197943230523224ULL, 2108439588646104644ULL,
257 4216879177292209289ULL, 8433758354584418579ULL, 16867516709168837158ULL,
258 3373503341833767431ULL, 6747006683667534863ULL, 13494013367335069727ULL,
259 2698802673467013945ULL, 5397605346934027890ULL, 10795210693868055781ULL,
260 2159042138773611156ULL, 4318084277547222312ULL, 8636168555094444625ULL,
261 17272337110188889250ULL, 3454467422037777850ULL, 6908934844075555700ULL,
262 13817869688151111400ULL, 2763573937630222280ULL, 5527147875260444560ULL,
263 11054295750520889120ULL, 2210859150104177824ULL, 4421718300208355648ULL,
264 8843436600416711296ULL, 17686873200833422592ULL, 3537374640166684518ULL,
265 7074749280333369037ULL, 14149498560666738074ULL, 2829899712133347614ULL,
266 5659799424266695229ULL, 11319598848533390459ULL, 2263919769706678091ULL,
267 4527839539413356183ULL, 9055679078826712367ULL, 1811135815765342473ULL,
268 3622271631530684947ULL, 7244543263061369894ULL, 14489086526122739788ULL,
269 2897817305224547957ULL, 5795634610449095915ULL, 11591269220898191830ULL,
270 2318253844179638366ULL, 4636507688359276732ULL, 9273015376718553464ULL,
271 1854603075343710692ULL, 3709206150687421385ULL, 7418412301374842771ULL,
272 14836824602749685542ULL, 2967364920549937108ULL, 5934729841099874217ULL,
273 11869459682199748434ULL, 2373891936439949686ULL, 4747783872879899373ULL,
274 9495567745759798747ULL, 1899113549151959749ULL, 3798227098303919498ULL,
275 7596454196607838997ULL, 15192908393215677995ULL, 3038581678643135599ULL,
276 6077163357286271198ULL, 12154326714572542396ULL, 2430865342914508479ULL,
277 4861730685829016958ULL, 9723461371658033917ULL, 1944692274331606783ULL,
278 3889384548663213566ULL, 7778769097326427133ULL, 15557538194652854267ULL,
279 3111507638930570853ULL, 6223015277861141707ULL, 12446030555722283414ULL,
280 2489206111144456682ULL, 4978412222288913365ULL, 9956824444577826731ULL,
281 1991364888915565346ULL, 3982729777831130692ULL, 7965459555662261385ULL,
282 15930919111324522770ULL, 3186183822264904554ULL, 6372367644529809108ULL,
283 12744735289059618216ULL, 2548947057811923643ULL, 5097894115623847286ULL,
284 10195788231247694572ULL, 2039157646249538914ULL, 4078315292499077829ULL,
285 8156630584998155658ULL, 16313261169996311316ULL, 3262652233999262263ULL,
286 6525304467998524526ULL, 13050608935997049053ULL, 2610121787199409810ULL,
287 5220243574398819621ULL, 10440487148797639242ULL, 2088097429759527848ULL,
288 4176194859519055697ULL, 8352389719038111394ULL, 16704779438076222788ULL,
289 3340955887615244557ULL, 6681911775230489115ULL, 13363823550460978230ULL,
290 2672764710092195646ULL, 5345529420184391292ULL, 10691058840368782584ULL,
291 2138211768073756516ULL, 4276423536147513033ULL, 8552847072295026067ULL,
292 17105694144590052135ULL, 3421138828918010427ULL, 6842277657836020854ULL,
293 13684555315672041708ULL, 2736911063134408341ULL, 5473822126268816683ULL,
294 10947644252537633366ULL, 2189528850507526673ULL, 4379057701015053346ULL,
295 8758115402030106693ULL, 17516230804060213386ULL, 3503246160812042677ULL,
296 7006492321624085354ULL, 14012984643248170709ULL, 2802596928649634141ULL,
297 5605193857299268283ULL, 11210387714598536567ULL, 2242077542919707313ULL,
298 4484155085839414626ULL, 8968310171678829253ULL, 17936620343357658507ULL,
299 3587324068671531701ULL, 7174648137343063403ULL, 14349296274686126806ULL,
300 2869859254937225361ULL, 5739718509874450722ULL, 11479437019748901445ULL,
301 2295887403949780289ULL, 4591774807899560578ULL, 9183549615799121156ULL,
302 1836709923159824231ULL, 3673419846319648462ULL, 7346839692639296924ULL,
303 14693679385278593849ULL, 2938735877055718769ULL, 5877471754111437539ULL,
304 11754943508222875079ULL, 2350988701644575015ULL, 4701977403289150031ULL,
305 9403954806578300063ULL, 1880790961315660012ULL, 3761581922631320025ULL,
306 7523163845262640050ULL, 15046327690525280101ULL, 3009265538105056020ULL,
307 6018531076210112040ULL, 12037062152420224081ULL, 2407412430484044816ULL,
308 4814824860968089632ULL, 9629649721936179265ULL, 1925929944387235853ULL,
309 3851859888774471706ULL, 7703719777548943412ULL, 15407439555097886824ULL,
310 3081487911019577364ULL, 6162975822039154729ULL, 12325951644078309459ULL,
311 2465190328815661891ULL, 4930380657631323783ULL, 9860761315262647567ULL,
312 1972152263052529513ULL, 3944304526105059027ULL, 7888609052210118054ULL,
313 15777218104420236108ULL, 3155443620884047221ULL, 6310887241768094443ULL,
314 12621774483536188886ULL, 2524354896707237777ULL, 5048709793414475554ULL,
315 10097419586828951109ULL, 2019483917365790221ULL, 4038967834731580443ULL,
316 8077935669463160887ULL, 16155871338926321774ULL, 3231174267785264354ULL,
317 6462348535570528709ULL, 12924697071141057419ULL, 2584939414228211483ULL,
318 5169878828456422967ULL, 10339757656912845935ULL, 2067951531382569187ULL,
319 4135903062765138374ULL, 8271806125530276748ULL, 16543612251060553497ULL,
320 3308722450212110699ULL, 6617444900424221398ULL, 13234889800848442797ULL,
321 2646977960169688559ULL, 5293955920339377119ULL, 10587911840678754238ULL,
322 2117582368135750847ULL, 4235164736271501695ULL, 8470329472543003390ULL,
323 16940658945086006781ULL, 3388131789017201356ULL, 6776263578034402712ULL,
324 13552527156068805425ULL, 2710505431213761085ULL, 5421010862427522170ULL,
325 10842021724855044340ULL, 2168404344971008868ULL, 4336808689942017736ULL,
326 8673617379884035472ULL, 17347234759768070944ULL, 3469446951953614188ULL,
327 6938893903907228377ULL, 13877787807814456755ULL, 2775557561562891351ULL,
328 5551115123125782702ULL, 11102230246251565404ULL, 2220446049250313080ULL,
329 4440892098500626161ULL, 8881784197001252323ULL, 17763568394002504646ULL,
330 3552713678800500929ULL, 7105427357601001858ULL, 14210854715202003717ULL,
331 2842170943040400743ULL, 5684341886080801486ULL, 11368683772161602973ULL,
332 2273736754432320594ULL, 4547473508864641189ULL, 9094947017729282379ULL,
333 1818989403545856475ULL, 3637978807091712951ULL, 7275957614183425903ULL,
334 14551915228366851806ULL, 2910383045673370361ULL, 5820766091346740722ULL,
335 11641532182693481445ULL, 2328306436538696289ULL, 4656612873077392578ULL,
336 9313225746154785156ULL, 1862645149230957031ULL, 3725290298461914062ULL,
337 7450580596923828125ULL, 14901161193847656250ULL, 2980232238769531250ULL,
338 5960464477539062500ULL, 11920928955078125000ULL, 2384185791015625000ULL,
339 4768371582031250000ULL, 9536743164062500000ULL, 1907348632812500000ULL,
340 3814697265625000000ULL, 7629394531250000000ULL, 15258789062500000000ULL,
341 3051757812500000000ULL, 6103515625000000000ULL, 12207031250000000000ULL,
342 2441406250000000000ULL, 4882812500000000000ULL, 9765625000000000000ULL,
343 1953125000000000000ULL, 3906250000000000000ULL, 7812500000000000000ULL,
344 15625000000000000000ULL, 3125000000000000000ULL, 6250000000000000000ULL,
345 12500000000000000000ULL, 2500000000000000000ULL, 5000000000000000000ULL,
346 10000000000000000000ULL, 2000000000000000000ULL, 4000000000000000000ULL,
347 8000000000000000000ULL, 16000000000000000000ULL, 3200000000000000000ULL,
348 6400000000000000000ULL, 12800000000000000000ULL, 2560000000000000000ULL,
349 5120000000000000000ULL, 10240000000000000000ULL, 2048000000000000000ULL,
350 4096000000000000000ULL, 8192000000000000000ULL, 16384000000000000000ULL,
351 3276800000000000000ULL, 6553600000000000000ULL, 13107200000000000000ULL,
352 2621440000000000000ULL, 5242880000000000000ULL, 10485760000000000000ULL,
353 2097152000000000000ULL, 4194304000000000000ULL, 8388608000000000000ULL,
354 16777216000000000000ULL, 3355443200000000000ULL, 6710886400000000000ULL,
355 13421772800000000000ULL, 2684354560000000000ULL, 5368709120000000000ULL,
356 10737418240000000000ULL, 2147483648000000000ULL, 4294967296000000000ULL,
357 8589934592000000000ULL, 17179869184000000000ULL, 3435973836800000000ULL,
358 6871947673600000000ULL, 13743895347200000000ULL, 2748779069440000000ULL,
359 5497558138880000000ULL, 10995116277760000000ULL, 2199023255552000000ULL,
360 4398046511104000000ULL, 8796093022208000000ULL, 17592186044416000000ULL,
361 3518437208883200000ULL, 7036874417766400000ULL, 14073748835532800000ULL,
362 2814749767106560000ULL, 5629499534213120000ULL, 11258999068426240000ULL,
363 2251799813685248000ULL, 4503599627370496000ULL, 9007199254740992000ULL,
364 18014398509481984000ULL, 3602879701896396800ULL, 7205759403792793600ULL,
365 14411518807585587200ULL, 2882303761517117440ULL, 5764607523034234880ULL,
366 11529215046068469760ULL, 2305843009213693952ULL, 4611686018427387904ULL,
367 9223372036854775808ULL, 1844674407370955161ULL, 3689348814741910323ULL,
368 7378697629483820646ULL, 14757395258967641292ULL, 2951479051793528258ULL,
369 5902958103587056517ULL, 11805916207174113034ULL, 2361183241434822606ULL,
370 4722366482869645213ULL, 9444732965739290427ULL, 1888946593147858085ULL,
371 3777893186295716170ULL, 7555786372591432341ULL, 15111572745182864683ULL,
372 3022314549036572936ULL, 6044629098073145873ULL, 12089258196146291747ULL,
373 2417851639229258349ULL, 4835703278458516698ULL, 9671406556917033397ULL,
374 1934281311383406679ULL, 3868562622766813359ULL, 7737125245533626718ULL,
375 15474250491067253436ULL, 3094850098213450687ULL, 6189700196426901374ULL,
376 12379400392853802748ULL, 2475880078570760549ULL, 4951760157141521099ULL,
377 9903520314283042199ULL, 1980704062856608439ULL, 3961408125713216879ULL,
378 7922816251426433759ULL, 15845632502852867518ULL, 3169126500570573503ULL,
379 6338253001141147007ULL, 12676506002282294014ULL, 2535301200456458802ULL,
380 5070602400912917605ULL, 10141204801825835211ULL, 2028240960365167042ULL,
381 4056481920730334084ULL, 8112963841460668169ULL, 16225927682921336339ULL,
382 3245185536584267267ULL, 6490371073168534535ULL, 12980742146337069071ULL,
383 2596148429267413814ULL, 5192296858534827628ULL, 10384593717069655257ULL,
384 2076918743413931051ULL, 4153837486827862102ULL, 8307674973655724205ULL,
385 16615349947311448411ULL, 3323069989462289682ULL, 6646139978924579364ULL,
386 13292279957849158729ULL, 2658455991569831745ULL, 5316911983139663491ULL,
387 10633823966279326983ULL, 2126764793255865396ULL, 4253529586511730793ULL,
388 8507059173023461586ULL, 17014118346046923173ULL, 3402823669209384634ULL,
389 6805647338418769269ULL, 13611294676837538538ULL, 2722258935367507707ULL,
390 5444517870735015415ULL, 10889035741470030830ULL, 2177807148294006166ULL,
391 4355614296588012332ULL, 8711228593176024664ULL, 17422457186352049329ULL,
392 3484491437270409865ULL, 6968982874540819731ULL, 13937965749081639463ULL,
393 2787593149816327892ULL, 5575186299632655785ULL, 11150372599265311570ULL,
394 2230074519853062314ULL, 4460149039706124628ULL, 8920298079412249256ULL,
395 17840596158824498513ULL, 3568119231764899702ULL, 7136238463529799405ULL,
396 14272476927059598810ULL, 2854495385411919762ULL, 5708990770823839524ULL,
397 11417981541647679048ULL, 2283596308329535809ULL, 4567192616659071619ULL,
398 9134385233318143238ULL, 1826877046663628647ULL, 3653754093327257295ULL,
399 7307508186654514591ULL, 14615016373309029182ULL, 2923003274661805836ULL,
400 5846006549323611672ULL, 11692013098647223345ULL, 2338402619729444669ULL,
401 4676805239458889338ULL, 9353610478917778676ULL, 1870722095783555735ULL,
402 3741444191567111470ULL, 7482888383134222941ULL, 14965776766268445882ULL,
403 2993155353253689176ULL, 5986310706507378352ULL, 11972621413014756705ULL,
404 2394524282602951341ULL, 4789048565205902682ULL, 9578097130411805364ULL,
405 1915619426082361072ULL, 3831238852164722145ULL, 7662477704329444291ULL,
406 15324955408658888583ULL, 3064991081731777716ULL, 6129982163463555433ULL,
407 12259964326927110866ULL, 2451992865385422173ULL, 4903985730770844346ULL,
408 9807971461541688693ULL, 1961594292308337738ULL, 3923188584616675477ULL,
409 7846377169233350954ULL, 15692754338466701909ULL, 3138550867693340381ULL,
410 6277101735386680763ULL, 12554203470773361527ULL, 2510840694154672305ULL,
411 5021681388309344611ULL, 10043362776618689222ULL, 2008672555323737844ULL,
412 4017345110647475688ULL, 8034690221294951377ULL, 16069380442589902755ULL,
413 3213876088517980551ULL, 6427752177035961102ULL, 12855504354071922204ULL,
414 2571100870814384440ULL, 5142201741628768881ULL, 10284403483257537763ULL,
415 2056880696651507552ULL, 4113761393303015105ULL, 8227522786606030210ULL,
416 16455045573212060421ULL, 3291009114642412084ULL, 6582018229284824168ULL,
417 13164036458569648337ULL, 2632807291713929667ULL, 5265614583427859334ULL,
418 10531229166855718669ULL, 2106245833371143733ULL, 4212491666742287467ULL,
419 8424983333484574935ULL, 16849966666969149871ULL, 3369993333393829974ULL,
420 6739986666787659948ULL, 13479973333575319897ULL, 2695994666715063979ULL,
421 5391989333430127958ULL, 10783978666860255917ULL, 2156795733372051183ULL,
422 4313591466744102367ULL, 8627182933488204734ULL, 17254365866976409468ULL,
423 3450873173395281893ULL, 6901746346790563787ULL, 13803492693581127574ULL,
424 2760698538716225514ULL, 5521397077432451029ULL, 11042794154864902059ULL,
425 2208558830972980411ULL, 4417117661945960823ULL, 8834235323891921647ULL,
426 17668470647783843295ULL, 3533694129556768659ULL, 7067388259113537318ULL,
427 14134776518227074636ULL, 2826955303645414927ULL, 5653910607290829854ULL,
428 11307821214581659709ULL, 2261564242916331941ULL, 4523128485832663883ULL,
429 9046256971665327767ULL, 18092513943330655534ULL, 3618502788666131106ULL,
430 7237005577332262213ULL, 14474011154664524427ULL, 2894802230932904885ULL,
431 5789604461865809771ULL, 11579208923731619542ULL, 2315841784746323908ULL,
432 4631683569492647816ULL, 9263367138985295633ULL, 1852673427797059126ULL,
433 3705346855594118253ULL, 7410693711188236507ULL, 14821387422376473014ULL,
434 2964277484475294602ULL, 5928554968950589205ULL, 11857109937901178411ULL,
435 2371421987580235682ULL, 4742843975160471364ULL, 9485687950320942729ULL,
436 1897137590064188545ULL, 3794275180128377091ULL, 7588550360256754183ULL,
437 15177100720513508366ULL, 3035420144102701673ULL, 6070840288205403346ULL,
438 12141680576410806693ULL, 2428336115282161338ULL, 4856672230564322677ULL,
439 9713344461128645354ULL, 1942668892225729070ULL, 3885337784451458141ULL,
440 7770675568902916283ULL, 15541351137805832567ULL, 3108270227561166513ULL,
441 6216540455122333026ULL, 12433080910244666053ULL, 2486616182048933210ULL,
442 4973232364097866421ULL, 9946464728195732843ULL, 1989292945639146568ULL,
443 3978585891278293137ULL, 7957171782556586274ULL, 15914343565113172548ULL,
444 3182868713022634509ULL, 6365737426045269019ULL, 12731474852090538039ULL,
445 2546294970418107607ULL, 5092589940836215215ULL, 10185179881672430431ULL,
446 2037035976334486086ULL, 4074071952668972172ULL, 8148143905337944345ULL,
447 16296287810675888690ULL, 3259257562135177738ULL, 6518515124270355476ULL,
448 13037030248540710952ULL, 2607406049708142190ULL, 5214812099416284380ULL,
449 10429624198832568761ULL, 2085924839766513752ULL, 4171849679533027504ULL,
450 8343699359066055009ULL, 16687398718132110018ULL, 3337479743626422003ULL,
451 6674959487252844007ULL, 13349918974505688014ULL, 2669983794901137602ULL,
452 5339967589802275205ULL, 10679935179604550411ULL, 2135987035920910082ULL,
453 4271974071841820164ULL, 8543948143683640329ULL, 17087896287367280659ULL,
454 3417579257473456131ULL, 6835158514946912263ULL, 13670317029893824527ULL,
455 2734063405978764905ULL, 5468126811957529810ULL, 10936253623915059621ULL,
456 2187250724783011924ULL, 4374501449566023848ULL, 8749002899132047697ULL,
457 17498005798264095394ULL, 3499601159652819078ULL, 6999202319305638157ULL,
458 13998404638611276315ULL, 2799680927722255263ULL, 5599361855444510526ULL,
459 11198723710889021052ULL, 2239744742177804210ULL, 4479489484355608421ULL,
460 8958978968711216842ULL, 17917957937422433684ULL, 3583591587484486736ULL,
461 7167183174968973473ULL, 14334366349937946947ULL, 2866873269987589389ULL,
462 5733746539975178779ULL, 11467493079950357558ULL, 2293498615990071511ULL,
463 4586997231980143023ULL, 9173994463960286046ULL, 1834798892792057209ULL,
464 3669597785584114418ULL, 7339195571168228837ULL, 14678391142336457674ULL,
465 2935678228467291534ULL, 5871356456934583069ULL, 11742712913869166139ULL,
466 2348542582773833227ULL, 4697085165547666455ULL, 9394170331095332911ULL,
467 1878834066219066582ULL, 3757668132438133164ULL, 7515336264876266329ULL,
468 15030672529752532658ULL, 3006134505950506531ULL, 6012269011901013063ULL,
469 12024538023802026126ULL, 2404907604760405225ULL, 4809815209520810450ULL,
470 9619630419041620901ULL, 1923926083808324180ULL, 3847852167616648360ULL,
471 7695704335233296721ULL, 15391408670466593442ULL, 3078281734093318688ULL,
472 6156563468186637376ULL, 12313126936373274753ULL, 2462625387274654950ULL,
473 4925250774549309901ULL, 9850501549098619803ULL, 1970100309819723960ULL,
474 3940200619639447921ULL, 7880401239278895842ULL, 15760802478557791684ULL,
475 3152160495711558336ULL, 6304320991423116673ULL, 12608641982846233347ULL,
476 2521728396569246669ULL, 5043456793138493339ULL, 10086913586276986678ULL,
477 2017382717255397335ULL, 4034765434510794671ULL, 8069530869021589342ULL,
478 16139061738043178685ULL, 3227812347608635737ULL, 6455624695217271474ULL,
479 12911249390434542948ULL, 2582249878086908589ULL, 5164499756173817179ULL,
480 10328999512347634358ULL, 2065799902469526871ULL, 4131599804939053743ULL,
481 8263199609878107486ULL, 16526399219756214973ULL, 3305279843951242994ULL,
482 6610559687902485989ULL, 13221119375804971979ULL, 2644223875160994395ULL,
483 5288447750321988791ULL, 10576895500643977583ULL, 2115379100128795516ULL,
484 4230758200257591033ULL, 8461516400515182066ULL, 16923032801030364133ULL,
485 3384606560206072826ULL, 6769213120412145653ULL, 13538426240824291306ULL,
486 2707685248164858261ULL, 5415370496329716522ULL, 10830740992659433045ULL,
487 2166148198531886609ULL, 4332296397063773218ULL, 8664592794127546436ULL,
488 17329185588255092872ULL, 3465837117651018574ULL, 6931674235302037148ULL,
489 13863348470604074297ULL, 2772669694120814859ULL, 5545339388241629719ULL,
490 11090678776483259438ULL, 2218135755296651887ULL, 4436271510593303775ULL,
491 8872543021186607550ULL, 17745086042373215101ULL, 3549017208474643020ULL,
492 7098034416949286040ULL, 14196068833898572081ULL, 2839213766779714416ULL,
493 5678427533559428832ULL, 11356855067118857664ULL, 2271371013423771532ULL,
494 4542742026847543065ULL, 9085484053695086131ULL, 1817096810739017226ULL,
495 3634193621478034452ULL, 7268387242956068905ULL, 14536774485912137810ULL,
496 2907354897182427562ULL, 5814709794364855124ULL, 11629419588729710248ULL,
497 2325883917745942049ULL, 4651767835491884099ULL, 9303535670983768199ULL,
498 1860707134196753639ULL, 3721414268393507279ULL, 7442828536787014559ULL,
499 14885657073574029118ULL, 2977131414714805823ULL, 5954262829429611647ULL,
500 11908525658859223294ULL, 2381705131771844658ULL, 4763410263543689317ULL,
501 9526820527087378635ULL, 1905364105417475727ULL, 3810728210834951454ULL,
502 7621456421669902908ULL, 15242912843339805817ULL, 3048582568667961163ULL,
503 6097165137335922326ULL, 12194330274671844653ULL, 2438866054934368930ULL,
504 4877732109868737861ULL, 9755464219737475723ULL, 1951092843947495144ULL,
505 3902185687894990289ULL, 7804371375789980578ULL, 15608742751579961156ULL,
506 3121748550315992231ULL, 6243497100631984462ULL, 12486994201263968925ULL,
507 2497398840252793785ULL, 4994797680505587570ULL, 9989595361011175140ULL,
508 1997919072202235028ULL, 3995838144404470056ULL, 7991676288808940112ULL,
509 15983352577617880224ULL, 3196670515523576044ULL, 6393341031047152089ULL,
510 12786682062094304179ULL, 2557336412418860835ULL, 5114672824837721671ULL,
511 10229345649675443343ULL, 2045869129935088668ULL, 4091738259870177337ULL,
512 8183476519740354675ULL, 16366953039480709350ULL, 3273390607896141870ULL,
513 6546781215792283740ULL, 13093562431584567480ULL, 2618712486316913496ULL,
514 5237424972633826992ULL, 10474849945267653984ULL, 2094969989053530796ULL,
515 4189939978107061593ULL, 8379879956214123187ULL, 16759759912428246374ULL,
516 3351951982485649274ULL, 6703903964971298549ULL, 13407807929942597099ULL,
517 2681561585988519419ULL, 5363123171977038839ULL, 10726246343954077679ULL,
518 2145249268790815535ULL, 4290498537581631071ULL, 8580997075163262143ULL,
519 17161994150326524287ULL, 3432398830065304857ULL, 6864797660130609714ULL,
520 13729595320261219429ULL, 2745919064052243885ULL, 5491838128104487771ULL,
521 10983676256208975543ULL, 2196735251241795108ULL, 4393470502483590217ULL,
522 8786941004967180435ULL, 17573882009934360870ULL, 3514776401986872174ULL,
523 7029552803973744348ULL, 14059105607947488696ULL, 2811821121589497739ULL,
524 5623642243178995478ULL, 11247284486357990957ULL, 2249456897271598191ULL,
525 4498913794543196382ULL, 8997827589086392765ULL, 17995655178172785531ULL,
526 3599131035634557106ULL, 7198262071269114212ULL, 14396524142538228424ULL,
527 2879304828507645684ULL, 5758609657015291369ULL, 11517219314030582739ULL,
528 2303443862806116547ULL, 4606887725612233095ULL, 9213775451224466191ULL,
529 1842755090244893238ULL, 3685510180489786476ULL, 7371020360979572953ULL,
530 14742040721959145907ULL, 2948408144391829181ULL, 5896816288783658362ULL,
531 11793632577567316725ULL, 2358726515513463345ULL, 4717453031026926690ULL,
532 9434906062053853380ULL, 1886981212410770676ULL, 3773962424821541352ULL,
533 7547924849643082704ULL, 15095849699286165408ULL, 3019169939857233081ULL,
534 6038339879714466163ULL, 12076679759428932327ULL, 2415335951885786465ULL,
535 4830671903771572930ULL, 9661343807543145861ULL, 1932268761508629172ULL,
536 3864537523017258344ULL, 7729075046034516689ULL, 15458150092069033378ULL,
537 3091630018413806675ULL, 6183260036827613351ULL, 12366520073655226703ULL,
538 2473304014731045340ULL, 4946608029462090681ULL, 9893216058924181362ULL,
539 1978643211784836272ULL, 3957286423569672544ULL, 7914572847139345089ULL,
540 15829145694278690179ULL, 3165829138855738035ULL, 6331658277711476071ULL,
541 12663316555422952143ULL, 2532663311084590428ULL, 5065326622169180857ULL,
542 10130653244338361715ULL, 2026130648867672343ULL, 4052261297735344686ULL,
543 8104522595470689372ULL, 16209045190941378744ULL, 3241809038188275748ULL,
544 6483618076376551497ULL, 12967236152753102995ULL, 2593447230550620599ULL,
545 5186894461101241198ULL, 10373788922202482396ULL, 2074757784440496479ULL,
546 4149515568880992958ULL, 8299031137761985917ULL, 16598062275523971834ULL,
547 3319612455104794366ULL, 6639224910209588733ULL, 13278449820419177467ULL,
548 2655689964083835493ULL, 5311379928167670986ULL, 10622759856335341973ULL,
549 2124551971267068394ULL, 4249103942534136789ULL, 8498207885068273579ULL,
550 16996415770136547158ULL, 3399283154027309431ULL, 6798566308054618863ULL,
551 13597132616109237726ULL, 2719426523221847545ULL, 5438853046443695090ULL,
552 10877706092887390181ULL, 2175541218577478036ULL, 4351082437154956072ULL,
553 8702164874309912144ULL, 17404329748619824289ULL, 3480865949723964857ULL,
554 6961731899447929715ULL, 13923463798895859431ULL, 2784692759779171886ULL,
555 5569385519558343772ULL, 11138771039116687545ULL, 2227754207823337509ULL,
556 4455508415646675018ULL, 8911016831293350036ULL, 17822033662586700072ULL,
557 3564406732517340014ULL, 7128813465034680029ULL, 14257626930069360058ULL,
558 2851525386013872011ULL, 5703050772027744023ULL, 11406101544055488046ULL,
559 2281220308811097609ULL, 4562440617622195218ULL, 9124881235244390437ULL,
560 1824976247048878087ULL, 3649952494097756174ULL, 7299904988195512349ULL,
561 14599809976391024699ULL, 2919961995278204939ULL, 5839923990556409879ULL,
562 11679847981112819759ULL, 2335969596222563951ULL, 4671939192445127903ULL,
563 9343878384890255807ULL, 1868775676978051161ULL, 3737551353956102323ULL,
564 7475102707912204646ULL, 14950205415824409292ULL, 2990041083164881858ULL,
565 5980082166329763716ULL, 11960164332659527433ULL, 2392032866531905486ULL,
566 4784065733063810973ULL, 9568131466127621947ULL, 1913626293225524389ULL,
567 3827252586451048778ULL, 7654505172902097557ULL, 15309010345804195115ULL,
568 3061802069160839023ULL, 6123604138321678046ULL, 12247208276643356092ULL,
569 2449441655328671218ULL, 4898883310657342436ULL, 9797766621314684873ULL,
570 1959553324262936974ULL, 3919106648525873949ULL, 7838213297051747899ULL,
571 15676426594103495798ULL, 3135285318820699159ULL, 6270570637641398319ULL,
572 12541141275282796638ULL, 2508228255056559327ULL, 5016456510113118655ULL,
573 10032913020226237310ULL, 2006582604045247462ULL, 4013165208090494924ULL,
574 8026330416180989848ULL, 16052660832361979697ULL, 3210532166472395939ULL,
575 6421064332944791878ULL, 12842128665889583757ULL, 2568425733177916751ULL,
576 5136851466355833503ULL, 10273702932711667006ULL, 2054740586542333401ULL,
577 4109481173084666802ULL, 8218962346169333605ULL, 16437924692338667210ULL,
578 3287584938467733442ULL, 6575169876935466884ULL, 13150339753870933768ULL,
579 2630067950774186753ULL, 5260135901548373507ULL, 10520271803096747014ULL,
580 2104054360619349402ULL, 4208108721238698805ULL, 8416217442477397611ULL,
581 16832434884954795223ULL, 3366486976990959044ULL, 6732973953981918089ULL,
582 13465947907963836178ULL, 2693189581592767235ULL, 5386379163185534471ULL,
583 10772758326371068942ULL, 2154551665274213788ULL, 4309103330548427577ULL,
584 8618206661096855154ULL, 17236413322193710308ULL, 3447282664438742061ULL,
585 6894565328877484123ULL, 13789130657754968246ULL, 2757826131550993649ULL,
586 5515652263101987298ULL, 11031304526203974597ULL, 2206260905240794919ULL,
587 4412521810481589838ULL, 8825043620963179677ULL, 17650087241926359355ULL,
588 3530017448385271871ULL, 7060034896770543742ULL, 14120069793541087484ULL,
589 2824013958708217496ULL, 5648027917416434993ULL, 11296055834832869987ULL,
590 2259211166966573997ULL, 4518422333933147995ULL, 9036844667866295990ULL,
591 18073689335732591980ULL, 3614737867146518396ULL, 7229475734293036792ULL,
592 14458951468586073584ULL, 2891790293717214716ULL, 5783580587434429433ULL,
593 11567161174868858867ULL, 2313432234973771773ULL, 4626864469947543547ULL,
594 9253728939895087094ULL, 1850745787979017418ULL, 3701491575958034837ULL,
595 7402983151916069675ULL, 14805966303832139350ULL, 2961193260766427870ULL,
596 5922386521532855740ULL, 11844773043065711480ULL, 2368954608613142296ULL,
597 4737909217226284592ULL, 9475818434452569184ULL, 1895163686890513836ULL,
598 3790327373781027673ULL, 7580654747562055347ULL, 15161309495124110694ULL,
599 3032261899024822138ULL, 6064523798049644277ULL, 12129047596099288555ULL,
600 2425809519219857711ULL, 4851619038439715422ULL, 9703238076879430844ULL,
601 1940647615375886168ULL, 3881295230751772337ULL, 7762590461503544675ULL,
602 15525180923007089351ULL, 3105036184601417870ULL, 6210072369202835740ULL,
603 12420144738405671481ULL, 2484028947681134296ULL, 4968057895362268592ULL,
604 9936115790724537184ULL, 1987223158144907436ULL, 3974446316289814873ULL,
605 7948892632579629747ULL, 15897785265159259495ULL, 3179557053031851899ULL,
606 6359114106063703798ULL, 12718228212127407596ULL, 2543645642425481519ULL,
607 5087291284850963038ULL, 10174582569701926077ULL, 2034916513940385215ULL,
608 4069833027880770430ULL, 8139666055761540861ULL, 16279332111523081723ULL,
609 3255866422304616344ULL, 6511732844609232689ULL, 13023465689218465379ULL,
610 2604693137843693075ULL, 5209386275687386151ULL, 10418772551374772303ULL,
611 2083754510274954460ULL, 4167509020549908921ULL, 8335018041099817842ULL,
612 16670036082199635685ULL, 3334007216439927137ULL, 6668014432879854274ULL,
613 13336028865759708548ULL, 2667205773151941709ULL, 5334411546303883419ULL,
614 10668823092607766838ULL, 2133764618521553367ULL, 4267529237043106735ULL,
615 8535058474086213470ULL, 17070116948172426941ULL, 3414023389634485388ULL,
616 6828046779268970776ULL, 13656093558537941553ULL, 2731218711707588310ULL,
617 5462437423415176621ULL, 10924874846830353242ULL, 2184974969366070648ULL,
618 4369949938732141297ULL, 8739899877464282594ULL, 17479799754928565188ULL,
619 3495959950985713037ULL, 6991919901971426075ULL, 13983839803942852150ULL,
620 2796767960788570430ULL, 5593535921577140860ULL, 11187071843154281720ULL,
621 2237414368630856344ULL, 4474828737261712688ULL, 8949657474523425376ULL,
622 17899314949046850752ULL, 3579862989809370150ULL, 7159725979618740301ULL,
623 14319451959237480602ULL, 2863890391847496120ULL, 5727780783694992240ULL,
624 11455561567389984481ULL, 2291112313477996896ULL, 4582224626955993792ULL,
625 9164449253911987585ULL, 1832889850782397517ULL, 3665779701564795034ULL,
626 7331559403129590068ULL, 14663118806259180136ULL, 2932623761251836027ULL,
627 5865247522503672054ULL, 11730495045007344109ULL, 2346099009001468821ULL,
628 4692198018002937643ULL, 9384396036005875287ULL, 1876879207201175057ULL,
629 3753758414402350114ULL, 7507516828804700229ULL, 15015033657609400459ULL,
630 3003006731521880091ULL, 6006013463043760183ULL, 12012026926087520367ULL,
631 2402405385217504073ULL, 4804810770435008147ULL, 9609621540870016294ULL,
632 1921924308174003258ULL, 3843848616348006517ULL, 7687697232696013035ULL,
633 15375394465392026070ULL, 3075078893078405214ULL, 6150157786156810428ULL,
634 12300315572313620856ULL, 2460063114462724171ULL, 4920126228925448342ULL,
635 9840252457850896685ULL, 1968050491570179337ULL, 3936100983140358674ULL,
636 7872201966280717348ULL, 15744403932561434696ULL, 3148880786512286939ULL,
637 6297761573024573878ULL, 12595523146049147757ULL, 2519104629209829551ULL,
638 5038209258419659102ULL, 10076418516839318205ULL, 2015283703367863641ULL,
639 4030567406735727282ULL, 8061134813471454564ULL, 16122269626942909129ULL,
640 3224453925388581825ULL, 6448907850777163651ULL, 12897815701554327303ULL,
641 2579563140310865460ULL, 5159126280621730921ULL, 10318252561243461842ULL,
642 2063650512248692368ULL, 4127301024497384737ULL, 8254602048994769474ULL,
643 16509204097989538948ULL, 3301840819597907789ULL, 6603681639195815579ULL,
644 13207363278391631158ULL, 2641472655678326231ULL, 5282945311356652463ULL,
645 10565890622713304927ULL, 2113178124542660985ULL, 4226356249085321970ULL,
646 8452712498170643941ULL, 16905424996341287883ULL, 3381084999268257576ULL,
647 6762169998536515153ULL, 13524339997073030306ULL, 2704867999414606061ULL,
648 5409735998829212122ULL, 10819471997658424245ULL, 2163894399531684849ULL,
649 4327788799063369698ULL, 8655577598126739396ULL, 17311155196253478792ULL,
650 3462231039250695758ULL, 6924462078501391516ULL, 13848924157002783033ULL,
651 2769784831400556606ULL, 5539569662801113213ULL, 11079139325602226427ULL,
652 2215827865120445285ULL, 4431655730240890570ULL, 8863311460481781141ULL,
653 17726622920963562283ULL, 3545324584192712456ULL, 7090649168385424913ULL,
654 14181298336770849826ULL, 2836259667354169965ULL, 5672519334708339930ULL,
655 11345038669416679861ULL, 2269007733883335972ULL, 4538015467766671944ULL,
656 9076030935533343889ULL, 18152061871066687778ULL, 3630412374213337555ULL,
657 7260824748426675111ULL, 14521649496853350222ULL, 2904329899370670044ULL,
658 5808659798741340089ULL, 11617319597482680178ULL, 2323463919496536035ULL,
659 4646927838993072071ULL, 9293855677986144142ULL, 1858771135597228828ULL,
660 3717542271194457656ULL, 7435084542388915313ULL, 14870169084777830627ULL,
661 2974033816955566125ULL, 5948067633911132251ULL, 11896135267822264502ULL,
662 2379227053564452900ULL, 4758454107128905800ULL, 9516908214257811601ULL,
663 1903381642851562320ULL, 3806763285703124640ULL, 7613526571406249281ULL,
664 15227053142812498563ULL, 3045410628562499712ULL, 6090821257124999425ULL,
665 12181642514249998850ULL, 2436328502849999770ULL, 4872657005699999540ULL,
666 9745314011399999080ULL, 1949062802279999816ULL, 3898125604559999632ULL,
667 7796251209119999264ULL, 15592502418239998528ULL, 3118500483647999705ULL,
668 6237000967295999411ULL, 12474001934591998822ULL, 2494800386918399764ULL,
669 4989600773836799529ULL, 9979201547673599058ULL, 1995840309534719811ULL,
670 3991680619069439623ULL, 7983361238138879246ULL, 15966722476277758493ULL,
671 3193344495255551698ULL, 6386688990511103397ULL, 12773377981022206794ULL,
672 2554675596204441358ULL, 5109351192408882717ULL, 10218702384817765435ULL,
673 2043740476963553087ULL, 4087480953927106174ULL, 8174961907854212348ULL,
674 16349923815708424697ULL, 3269984763141684939ULL, 6539969526283369878ULL,
675 13079939052566739757ULL, 2615987810513347951ULL, 5231975621026695903ULL,
676 10463951242053391806ULL, 2092790248410678361ULL, 4185580496821356722ULL,
677 8371160993642713444ULL, 16742321987285426889ULL, 3348464397457085377ULL,
678 6696928794914170755ULL, 13393857589828341511ULL, 2678771517965668302ULL,
679 5357543035931336604ULL, 10715086071862673209ULL, 2143017214372534641ULL,
680 4286034428745069283ULL, 8572068857490138567ULL, 17144137714980277135ULL,
681 3428827542996055427ULL, 6857655085992110854ULL, 13715310171984221708ULL,
682 2743062034396844341ULL, 5486124068793688683ULL, 10972248137587377366ULL,
683 2194449627517475473ULL, 4388899255034950946ULL, 8777798510069901893ULL,
684 17555597020139803786ULL, 3511119404027960757ULL, 7022238808055921514ULL,
685 14044477616111843029ULL, 2808895523222368605ULL, 5617791046444737211ULL,
686 11235582092889474423ULL, 2247116418577894884ULL, 4494232837155789769ULL,
687 8988465674311579538ULL, 17976931348623159077ULL, 3595386269724631815ULL,
688 7190772539449263630ULL, 14381545078898527261ULL, 2876309015779705452ULL,
689 5752618031559410904ULL, 11505236063118821809ULL, 2301047212623764361ULL,
690 4602094425247528723ULL, 9204188850495057447ULL, 1840837770099011489ULL,
691 3681675540198022979ULL, 7363351080396045958ULL,
694 static const gint32 Formatter_TensExponentTable [] = {
695 -323, -323, -322, -322, -322, -322, -321, -321, -321, -320, -320, -320,
696 -319, -319, -319, -319, -318, -318, -318, -317, -317, -317, -316, -316,
697 -316, -316, -315, -315, -315, -314, -314, -314, -313, -313, -313, -313,
698 -312, -312, -312, -311, -311, -311, -310, -310, -310, -310, -309, -309,
699 -309, -308, -308, -308, -307, -307, -307, -307, -306, -306, -306, -305,
700 -305, -305, -304, -304, -304, -304, -303, -303, -303, -302, -302, -302,
701 -301, -301, -301, -301, -300, -300, -300, -299, -299, -299, -298, -298,
702 -298, -298, -297, -297, -297, -296, -296, -296, -295, -295, -295, -295,
703 -294, -294, -294, -293, -293, -293, -292, -292, -292, -291, -291, -291,
704 -291, -290, -290, -290, -289, -289, -289, -288, -288, -288, -288, -287,
705 -287, -287, -286, -286, -286, -285, -285, -285, -285, -284, -284, -284,
706 -283, -283, -283, -282, -282, -282, -282, -281, -281, -281, -280, -280,
707 -280, -279, -279, -279, -279, -278, -278, -278, -277, -277, -277, -276,
708 -276, -276, -276, -275, -275, -275, -274, -274, -274, -273, -273, -273,
709 -273, -272, -272, -272, -271, -271, -271, -270, -270, -270, -270, -269,
710 -269, -269, -268, -268, -268, -267, -267, -267, -267, -266, -266, -266,
711 -265, -265, -265, -264, -264, -264, -263, -263, -263, -263, -262, -262,
712 -262, -261, -261, -261, -260, -260, -260, -260, -259, -259, -259, -258,
713 -258, -258, -257, -257, -257, -257, -256, -256, -256, -255, -255, -255,
714 -254, -254, -254, -254, -253, -253, -253, -252, -252, -252, -251, -251,
715 -251, -251, -250, -250, -250, -249, -249, -249, -248, -248, -248, -248,
716 -247, -247, -247, -246, -246, -246, -245, -245, -245, -245, -244, -244,
717 -244, -243, -243, -243, -242, -242, -242, -242, -241, -241, -241, -240,
718 -240, -240, -239, -239, -239, -239, -238, -238, -238, -237, -237, -237,
719 -236, -236, -236, -235, -235, -235, -235, -234, -234, -234, -233, -233,
720 -233, -232, -232, -232, -232, -231, -231, -231, -230, -230, -230, -229,
721 -229, -229, -229, -228, -228, -228, -227, -227, -227, -226, -226, -226,
722 -226, -225, -225, -225, -224, -224, -224, -223, -223, -223, -223, -222,
723 -222, -222, -221, -221, -221, -220, -220, -220, -220, -219, -219, -219,
724 -218, -218, -218, -217, -217, -217, -217, -216, -216, -216, -215, -215,
725 -215, -214, -214, -214, -214, -213, -213, -213, -212, -212, -212, -211,
726 -211, -211, -211, -210, -210, -210, -209, -209, -209, -208, -208, -208,
727 -208, -207, -207, -207, -206, -206, -206, -205, -205, -205, -204, -204,
728 -204, -204, -203, -203, -203, -202, -202, -202, -201, -201, -201, -201,
729 -200, -200, -200, -199, -199, -199, -198, -198, -198, -198, -197, -197,
730 -197, -196, -196, -196, -195, -195, -195, -195, -194, -194, -194, -193,
731 -193, -193, -192, -192, -192, -192, -191, -191, -191, -190, -190, -190,
732 -189, -189, -189, -189, -188, -188, -188, -187, -187, -187, -186, -186,
733 -186, -186, -185, -185, -185, -184, -184, -184, -183, -183, -183, -183,
734 -182, -182, -182, -181, -181, -181, -180, -180, -180, -180, -179, -179,
735 -179, -178, -178, -178, -177, -177, -177, -176, -176, -176, -176, -175,
736 -175, -175, -174, -174, -174, -173, -173, -173, -173, -172, -172, -172,
737 -171, -171, -171, -170, -170, -170, -170, -169, -169, -169, -168, -168,
738 -168, -167, -167, -167, -167, -166, -166, -166, -165, -165, -165, -164,
739 -164, -164, -164, -163, -163, -163, -162, -162, -162, -161, -161, -161,
740 -161, -160, -160, -160, -159, -159, -159, -158, -158, -158, -158, -157,
741 -157, -157, -156, -156, -156, -155, -155, -155, -155, -154, -154, -154,
742 -153, -153, -153, -152, -152, -152, -152, -151, -151, -151, -150, -150,
743 -150, -149, -149, -149, -149, -148, -148, -148, -147, -147, -147, -146,
744 -146, -146, -145, -145, -145, -145, -144, -144, -144, -143, -143, -143,
745 -142, -142, -142, -142, -141, -141, -141, -140, -140, -140, -139, -139,
746 -139, -139, -138, -138, -138, -137, -137, -137, -136, -136, -136, -136,
747 -135, -135, -135, -134, -134, -134, -133, -133, -133, -133, -132, -132,
748 -132, -131, -131, -131, -130, -130, -130, -130, -129, -129, -129, -128,
749 -128, -128, -127, -127, -127, -127, -126, -126, -126, -125, -125, -125,
750 -124, -124, -124, -124, -123, -123, -123, -122, -122, -122, -121, -121,
751 -121, -121, -120, -120, -120, -119, -119, -119, -118, -118, -118, -117,
752 -117, -117, -117, -116, -116, -116, -115, -115, -115, -114, -114, -114,
753 -114, -113, -113, -113, -112, -112, -112, -111, -111, -111, -111, -110,
754 -110, -110, -109, -109, -109, -108, -108, -108, -108, -107, -107, -107,
755 -106, -106, -106, -105, -105, -105, -105, -104, -104, -104, -103, -103,
756 -103, -102, -102, -102, -102, -101, -101, -101, -100, -100, -100, -99,
757 -99, -99, -99, -98, -98, -98, -97, -97, -97, -96, -96, -96,
758 -96, -95, -95, -95, -94, -94, -94, -93, -93, -93, -93, -92,
759 -92, -92, -91, -91, -91, -90, -90, -90, -89, -89, -89, -89,
760 -88, -88, -88, -87, -87, -87, -86, -86, -86, -86, -85, -85,
761 -85, -84, -84, -84, -83, -83, -83, -83, -82, -82, -82, -81,
762 -81, -81, -80, -80, -80, -80, -79, -79, -79, -78, -78, -78,
763 -77, -77, -77, -77, -76, -76, -76, -75, -75, -75, -74, -74,
764 -74, -74, -73, -73, -73, -72, -72, -72, -71, -71, -71, -71,
765 -70, -70, -70, -69, -69, -69, -68, -68, -68, -68, -67, -67,
766 -67, -66, -66, -66, -65, -65, -65, -65, -64, -64, -64, -63,
767 -63, -63, -62, -62, -62, -62, -61, -61, -61, -60, -60, -60,
768 -59, -59, -59, -58, -58, -58, -58, -57, -57, -57, -56, -56,
769 -56, -55, -55, -55, -55, -54, -54, -54, -53, -53, -53, -52,
770 -52, -52, -52, -51, -51, -51, -50, -50, -50, -49, -49, -49,
771 -49, -48, -48, -48, -47, -47, -47, -46, -46, -46, -46, -45,
772 -45, -45, -44, -44, -44, -43, -43, -43, -43, -42, -42, -42,
773 -41, -41, -41, -40, -40, -40, -40, -39, -39, -39, -38, -38,
774 -38, -37, -37, -37, -37, -36, -36, -36, -35, -35, -35, -34,
775 -34, -34, -34, -33, -33, -33, -32, -32, -32, -31, -31, -31,
776 -30, -30, -30, -30, -29, -29, -29, -28, -28, -28, -27, -27,
777 -27, -27, -26, -26, -26, -25, -25, -25, -24, -24, -24, -24,
778 -23, -23, -23, -22, -22, -22, -21, -21, -21, -21, -20, -20,
779 -20, -19, -19, -19, -18, -18, -18, -18, -17, -17, -17, -16,
780 -16, -16, -15, -15, -15, -15, -14, -14, -14, -13, -13, -13,
781 -12, -12, -12, -12, -11, -11, -11, -10, -10, -10, -9, -9,
782 -9, -9, -8, -8, -8, -7, -7, -7, -6, -6, -6, -6,
783 -5, -5, -5, -4, -4, -4, -3, -3, -3, -3, -2, -2,
784 -2, -1, -1, -1, 0, 0, 0, 1, 1, 1, 1, 2,
785 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5,
786 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9,
787 9, 10, 10, 10, 10, 11, 11, 11, 12, 12, 12, 13,
788 13, 13, 13, 14, 14, 14, 15, 15, 15, 16, 16, 16,
789 16, 17, 17, 17, 18, 18, 18, 19, 19, 19, 19, 20,
790 20, 20, 21, 21, 21, 22, 22, 22, 22, 23, 23, 23,
791 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 27, 27,
792 27, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 31,
793 31, 31, 32, 32, 32, 32, 33, 33, 33, 34, 34, 34,
794 35, 35, 35, 35, 36, 36, 36, 37, 37, 37, 38, 38,
795 38, 38, 39, 39, 39, 40, 40, 40, 41, 41, 41, 41,
796 42, 42, 42, 43, 43, 43, 44, 44, 44, 44, 45, 45,
797 45, 46, 46, 46, 47, 47, 47, 47, 48, 48, 48, 49,
798 49, 49, 50, 50, 50, 50, 51, 51, 51, 52, 52, 52,
799 53, 53, 53, 53, 54, 54, 54, 55, 55, 55, 56, 56,
800 56, 56, 57, 57, 57, 58, 58, 58, 59, 59, 59, 60,
801 60, 60, 60, 61, 61, 61, 62, 62, 62, 63, 63, 63,
802 63, 64, 64, 64, 65, 65, 65, 66, 66, 66, 66, 67,
803 67, 67, 68, 68, 68, 69, 69, 69, 69, 70, 70, 70,
804 71, 71, 71, 72, 72, 72, 72, 73, 73, 73, 74, 74,
805 74, 75, 75, 75, 75, 76, 76, 76, 77, 77, 77, 78,
806 78, 78, 78, 79, 79, 79, 80, 80, 80, 81, 81, 81,
807 81, 82, 82, 82, 83, 83, 83, 84, 84, 84, 84, 85,
808 85, 85, 86, 86, 86, 87, 87, 87, 88, 88, 88, 88,
809 89, 89, 89, 90, 90, 90, 91, 91, 91, 91, 92, 92,
810 92, 93, 93, 93, 94, 94, 94, 94, 95, 95, 95, 96,
811 96, 96, 97, 97, 97, 97, 98, 98, 98, 99, 99, 99,
812 100, 100, 100, 100, 101, 101, 101, 102, 102, 102, 103, 103,
813 103, 103, 104, 104, 104, 105, 105, 105, 106, 106, 106, 106,
814 107, 107, 107, 108, 108, 108, 109, 109, 109, 109, 110, 110,
815 110, 111, 111, 111, 112, 112, 112, 112, 113, 113, 113, 114,
816 114, 114, 115, 115, 115, 116, 116, 116, 116, 117, 117, 117,
817 118, 118, 118, 119, 119, 119, 119, 120, 120, 120, 121, 121,
818 121, 122, 122, 122, 122, 123, 123, 123, 124, 124, 124, 125,
819 125, 125, 125, 126, 126, 126, 127, 127, 127, 128, 128, 128,
820 128, 129, 129, 129, 130, 130, 130, 131, 131, 131, 131, 132,
821 132, 132, 133, 133, 133, 134, 134, 134, 134, 135, 135, 135,
822 136, 136, 136, 137, 137, 137, 137, 138, 138, 138, 139, 139,
823 139, 140, 140, 140, 140, 141, 141, 141, 142, 142, 142, 143,
824 143, 143, 143, 144, 144, 144, 145, 145, 145, 146, 146, 146,
825 147, 147, 147, 147, 148, 148, 148, 149, 149, 149, 150, 150,
826 150, 150, 151, 151, 151, 152, 152, 152, 153, 153, 153, 153,
827 154, 154, 154, 155, 155, 155, 156, 156, 156, 156, 157, 157,
828 157, 158, 158, 158, 159, 159, 159, 159, 160, 160, 160, 161,
829 161, 161, 162, 162, 162, 162, 163, 163, 163, 164, 164, 164,
830 165, 165, 165, 165, 166, 166, 166, 167, 167, 167, 168, 168,
831 168, 168, 169, 169, 169, 170, 170, 170, 171, 171, 171, 171,
832 172, 172, 172, 173, 173, 173, 174, 174, 174, 175, 175, 175,
833 175, 176, 176, 176, 177, 177, 177, 178, 178, 178, 178, 179,
834 179, 179, 180, 180, 180, 181, 181, 181, 181, 182, 182, 182,
835 183, 183, 183, 184, 184, 184, 184, 185, 185, 185, 186, 186,
836 186, 187, 187, 187, 187, 188, 188, 188, 189, 189, 189, 190,
837 190, 190, 190, 191, 191, 191, 192, 192, 192, 193, 193, 193,
838 193, 194, 194, 194, 195, 195, 195, 196, 196, 196, 196, 197,
839 197, 197, 198, 198, 198, 199, 199, 199, 199, 200, 200, 200,
840 201, 201, 201, 202, 202, 202, 202, 203, 203, 203, 204, 204,
841 204, 205, 205, 205, 206, 206, 206, 206, 207, 207, 207, 208,
842 208, 208, 209, 209, 209, 209, 210, 210, 210, 211, 211, 211,
843 212, 212, 212, 212, 213, 213, 213, 214, 214, 214, 215, 215,
844 215, 215, 216, 216, 216, 217, 217, 217, 218, 218, 218, 218,
845 219, 219, 219, 220, 220, 220, 221, 221, 221, 221, 222, 222,
846 222, 223, 223, 223, 224, 224, 224, 224, 225, 225, 225, 226,
847 226, 226, 227, 227, 227, 227, 228, 228, 228, 229, 229, 229,
848 230, 230, 230, 230, 231, 231, 231, 232, 232, 232, 233, 233,
849 233, 234, 234, 234, 234, 235, 235, 235, 236, 236, 236, 237,
850 237, 237, 237, 238, 238, 238, 239, 239, 239, 240, 240, 240,
851 240, 241, 241, 241, 242, 242, 242, 243, 243, 243, 243, 244,
852 244, 244, 245, 245, 245, 246, 246, 246, 246, 247, 247, 247,
853 248, 248, 248, 249, 249, 249, 249, 250, 250, 250, 251, 251,
854 251, 252, 252, 252, 252, 253, 253, 253, 254, 254, 254, 255,
855 255, 255, 255, 256, 256, 256, 257, 257, 257, 258, 258, 258,
856 258, 259, 259, 259, 260, 260, 260, 261, 261, 261, 261, 262,
857 262, 262, 263, 263, 263, 264, 264, 264, 265, 265, 265, 265,
858 266, 266, 266, 267, 267, 267, 268, 268, 268, 268, 269, 269,
859 269, 270, 270, 270, 271, 271, 271, 271, 272, 272, 272, 273,
860 273, 273, 274, 274, 274, 274, 275, 275, 275, 276, 276, 276,
861 277, 277, 277, 277, 278, 278, 278, 279, 279, 279, 280, 280,
862 280, 280, 281, 281, 281, 282, 282, 282, 283, 283, 283, 283,
863 284, 284, 284, 285, 285, 285, 286, 286, 286, 286, 287, 287,
864 287, 288, 288, 288, 289, 289, 289, 289, 290, 290, 290, 291,
865 291, 291, 292, 292, 292, 293, 293, 293,
868 static const gunichar2 Formatter_DigitLowerTable [] = {
869 '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'
872 static const gunichar2 Formatter_DigitUpperTable [] = {
873 '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
876 static const gint64 Formatter_TenPowersList [] = {
877 1LL,
878 10LL,
879 100LL,
880 1000LL,
881 10000LL,
882 100000LL,
883 1000000LL,
884 10000000LL,
885 100000000LL,
886 1000000000LL,
887 10000000000LL,
888 100000000000LL,
889 1000000000000LL,
890 10000000000000LL,
891 100000000000000LL,
892 1000000000000000LL,
893 10000000000000000LL,
894 100000000000000000LL,
895 1000000000000000000LL,
898 // DecHexDigits s a translation table from a decimal number to its
899 // digits hexadecimal representation (e.g. DecHexDigits [34] = 0x34).
900 static const gint32 Formatter_DecHexDigits [] = {
901 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09,
902 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
903 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
904 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
905 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
906 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
907 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
908 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
909 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
910 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99,
913 #endif