1 /**
2  * \file
3  */
4 
5 #ifndef _MONO_METADATA_NUMBER_FORMATTER_H_
6 #define _MONO_METADATA_NUMBER_FORMATTER_H_ 1
7 
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,
692 };
693 
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,
866 };
867 
868 static const gunichar2 Formatter_DigitLowerTable [] = {
869 	'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'
870 };
871 
872 static const gunichar2 Formatter_DigitUpperTable [] = {
873 	'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
874 };
875 
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,
896 };
897 
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,
911 };
912 
913 #endif
914