1 package org.djutils.stats;
2
3 import org.djutils.exceptions.Throw;
4
5
6
7
8
9
10
11
12
13
14
15
16
17 public final class DistNormalTable
18 {
19
20
21
22 private DistNormalTable()
23 {
24
25 }
26
27
28
29
30
31
32
33
34
35 public static double getCumulativeProbability(final double mu, final double sigma, final double x)
36 {
37 Throw.when(sigma < 0.0, IllegalArgumentException.class, "sigma cannot be < 0");
38 int z = (int) Math.rint((x - mu) / sigma * 100);
39 int absZ = Math.abs(z);
40 if (absZ > 1000)
41 {
42 absZ = 1000;
43 }
44 if (z >= 0)
45 {
46 return DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[absZ];
47 }
48 if (absZ < 0)
49 {
50 absZ = 1000;
51 }
52 return 1 - DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[absZ];
53 }
54
55
56
57
58
59
60
61
62
63
64
65
66 public static double getInverseCumulativeProbability(final double mu, final double sigma,
67 final double cumulativeProbability)
68 {
69 Throw.when(sigma < 0.0, IllegalArgumentException.class, "sigma cannot be < 0");
70 Throw.when(cumulativeProbability < 0 || cumulativeProbability > 1, IllegalArgumentException.class,
71 "cumulativeProbability should be between 0 and 1 (inclusive)");
72 if (cumulativeProbability < 0.5)
73 {
74 return mu - getInverseCumulativeProbability(0, 1, 1.0 - cumulativeProbability) * sigma;
75 }
76 Throw.when(Double.isNaN(mu) || Double.isNaN(sigma), IllegalArgumentException.class, "my and sigma may not be NaN");
77 double prob = cumulativeProbability;
78 int tableSize = DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES.length - 1;
79 int pivot = tableSize / 2;
80 int stepSize = tableSize / 2;
81 while (DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[pivot] > prob
82 || DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[pivot + 1] < prob)
83 {
84 stepSize = (stepSize + 1) / 2;
85 if (DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[pivot] > prob)
86 {
87 pivot -= stepSize;
88 }
89 else
90 {
91 pivot = Math.min(tableSize - 1, pivot + stepSize);
92 }
93 }
94
95 double interpolatedPivot = pivot;
96 if (pivot < tableSize)
97 {
98 double pivotFraction = (prob - DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[pivot])
99 / (DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[pivot + 1]
100 - DistNormalTable.CUMULATIVE_NORMAL_PROBABILITIES[pivot]);
101 if (Double.isFinite(pivotFraction))
102 {
103 interpolatedPivot += pivotFraction;
104 }
105 }
106 return mu + CUMULATIVE_NORMAL_PROBABILITIES_TABLE_RANGE * interpolatedPivot / tableSize * sigma;
107 }
108
109
110 public static final double CUMULATIVE_NORMAL_PROBABILITIES_TABLE_RANGE = 10.0;
111
112
113
114
115
116
117
118 public static final double[] CUMULATIVE_NORMAL_PROBABILITIES = {
119 0.5000000000000000, 0.5039893563146316, 0.5079783137169019, 0.5119664734141126, 0.5159534368528308,
120 0.5199388058383725, 0.5239221826541068, 0.5279031701805211, 0.5318813720139873, 0.5358563925851721,
121 0.5398278372770290, 0.5437953125423168, 0.5477584260205839, 0.5517167866545611, 0.5556700048059064,
122 0.5596176923702425, 0.5635594628914329, 0.5674949316750384, 0.5714237159009007, 0.5753454347347955,
123 0.5792597094391030, 0.5831661634824423, 0.5870644226482146, 0.5909541151420059, 0.5948348716977958,
124 0.5987063256829237, 0.6025681132017605, 0.6064198731980395, 0.6102612475557972, 0.6140918811988773,
125 0.6179114221889526, 0.6217195218220193, 0.6255158347233201, 0.6293000189406536, 0.6330717360360281,
126 0.6368306511756190, 0.6405764332179912, 0.6443087548005468, 0.6480272924241628, 0.6517317265359823,
127 0.6554217416103242, 0.6590970262276774, 0.6627572731517505, 0.6664021794045425, 0.6700314463394064,
128 0.6736447797120800, 0.6772418897496524, 0.6808224912174441, 0.6843863034837774, 0.6879330505826095,
129 0.6914624612740130, 0.6949742691024805, 0.6984682124530338, 0.7019440346051236, 0.7054014837843019,
130 0.7088403132116536, 0.7122602811509730, 0.7156611509536759, 0.7190426911014356, 0.7224046752465351,
131 0.7257468822499265, 0.7290690962169943, 0.7323711065310170, 0.7356527078843225, 0.7389137003071385,
132 0.7421538891941353, 0.7453730853286639, 0.7485711049046899, 0.7517477695464295, 0.7549029063256905,
133 0.7580363477769270, 0.7611479319100133, 0.7642375022207488, 0.7673049076991025, 0.7703500028352093,
134 0.7733726476231317, 0.7763727075624005, 0.7793500536573503, 0.7823045624142668, 0.7852361158363629,
135 0.7881446014166031, 0.7910299121283983, 0.7938919464141868, 0.7967306081719316, 0.7995458067395502,
136 0.8023374568773076, 0.8051054787481916, 0.8078497978963040, 0.8105703452232880, 0.8132670569628273,
137 0.8159398746532404, 0.8185887451082028, 0.8212136203856282, 0.8238144577547422, 0.8263912196613754,
138 0.8289438736915181, 0.8314723925331622, 0.8339767539364704, 0.8364569406723077, 0.8389129404891691,
139 0.8413447460685430, 0.8437523549787456, 0.8461357696272651, 0.8484949972116563, 0.8508300496690185,
140 0.8531409436241040, 0.8554277003360904, 0.8576903456440608, 0.8599289099112310, 0.8621434279679645,
141 0.8643339390536173, 0.8665004867572528, 0.8686431189572692, 0.8707618877599823, 0.8728568494372015,
142 0.8749280643628496, 0.8769755969486566, 0.8789995155789816, 0.8809998925447993, 0.8829768039768913,
143 0.8849303297782918, 0.8868605535560226, 0.8887675625521654, 0.8906514475743081, 0.8925123029254132,
144 0.8943502263331446, 0.8961653188786995, 0.8979576849251809, 0.8997274320455578, 0.9014746709502524,
145 0.9031995154143897, 0.9049020822047611, 0.9065824910065281, 0.9082408643497192, 0.9098773275355476,
146 0.9114920085625982, 0.9130850380529150, 0.9146565491780330, 0.9162066775849856, 0.9177355613223310,
147 0.9192433407662289, 0.9207301585466074, 0.9221961594734538, 0.9236414904632609, 0.9250663004656731,
148 0.9264707403903514, 0.9278549630341062, 0.9292191230083147, 0.9305633766666681, 0.9318878820332746,
149 0.9331927987311419, 0.9344782879110833, 0.9357445121810641, 0.9369916355360215, 0.9382198232881882,
150 0.9394292419979409, 0.9406200594052068, 0.9417924443614469, 0.9429465667622456, 0.9440825974805306,
151 0.9452007083004421, 0.9463010718518804, 0.9473838615457479, 0.9484492515099107, 0.9494974165258964,
152 0.9505285319663519, 0.9515427737332771, 0.9525403181970525, 0.9535213421362800, 0.9544860226784503,
153 0.9554345372414568, 0.9563670634759682, 0.9572837792086711, 0.9581848623864051, 0.9590704910211927,
154 0.9599408431361829, 0.9607960967125174, 0.9616364296371288, 0.9624620196514834, 0.9632730443012738,
155 0.9640696808870743, 0.9648521064159611, 0.9656204975541101, 0.9663750305803716, 0.9671158813408361,
156 0.9678432252043865, 0.9685572370192472, 0.9692580910705340, 0.9699459610388002, 0.9706210199595906,
157 0.9712834401839983, 0.9719333933402277, 0.9725710502961632, 0.9731965811229450, 0.9738101550595473,
158 0.9744119404783614, 0.9750021048517796, 0.9755808147197775, 0.9761482356584914, 0.9767045322497883,
159 0.9772498680518209, 0.9777844055705684, 0.9783083062323533, 0.9788217303573277, 0.9793248371339299,
160 0.9798177845942956, 0.9803007295906232, 0.9807738277724828, 0.9812372335650623, 0.9816911001483410,
161 0.9821355794371835, 0.9825708220623429, 0.9829969773523672, 0.9834141933163950, 0.9838226166278339,
162 0.9842223926089095, 0.9846136652160746, 0.9849965770262679, 0.9853712692240107, 0.9857378815893312,
163 0.9860965524865013, 0.9864474188535800, 0.9867906161927438, 0.9871262785613980, 0.9874545385640534,
164 0.9877755273449553, 0.9880893745814530, 0.9883962084780965, 0.9886961557614472, 0.9889893416755886,
165 0.9892758899783243, 0.9895559229380490, 0.9898295613312803, 0.9900969244408357, 0.9903581300546417,
166 0.9906132944651614, 0.9908625324694273, 0.9911059573696632, 0.9913436809744834, 0.9915758136006543,
167 0.9918024640754040, 0.9920237397392663, 0.9922397464494463, 0.9924505885836907, 0.9926563690446517,
168 0.9928571892647287, 0.9930531492113757, 0.9932443473928594, 0.9934308808644532, 0.9936128452350568,
169 0.9937903346742238, 0.9939634419195873, 0.9941322582846674, 0.9942968736670492, 0.9944573765569173,
170 0.9946138540459333, 0.9947663918364442, 0.9949150742510089, 0.9950599842422294, 0.9952012034028739,
171 0.9953388119762813, 0.9954728888670327, 0.9956035116518787, 0.9957307565909106, 0.9958546986389640,
172 0.9959754114572417, 0.9960929674251472, 0.9962074376523145, 0.9963188919908250, 0.9964273990476002,
173 0.9965330261969594, 0.9966358395933308, 0.9967359041841086, 0.9968332837226421, 0.9969280407813494,
174 0.9970202367649454, 0.9971099319237738, 0.9971971853672350, 0.9972820550772987, 0.9973645979220951,
175 0.9974448696695721, 0.9975229250012141, 0.9975988175258108, 0.9976725997932685, 0.9977443233084577,
176 0.9978140385450868, 0.9978817949595954, 0.9979476410050603, 0.9980116241451057, 0.9980737908678121,
177 0.9981341866996160, 0.9981928562191935, 0.9982498430713239, 0.9983051899807227, 0.9983589387658430,
178 0.9984111303526351, 0.9984618047882620, 0.9985110012547626, 0.9985587580826600, 0.9986051127645077,
179 0.9986501019683699, 0.9986937615512306, 0.9987361265723277, 0.9987772313064077, 0.9988171092568956,
180 0.9988557931689773, 0.9988933150425907, 0.9989297061453211, 0.9989649970251971, 0.9989992175233859,
181 0.9990323967867816, 0.9990645632804859, 0.9990957448001776, 0.9991259684843684, 0.9991552608265414,
182 0.9991836476871714, 0.9992111543056243, 0.9992378053119327, 0.9992636247384461, 0.9992886360313546,
183 0.9993128620620841, 0.9993363251385601, 0.9993590470163399, 0.9993810489096131, 0.9994023515020656,
184 0.9994229749576092, 0.9994429389309754, 0.9994622625781703, 0.9994809645667930, 0.9994990630862143,
185 0.9995165758576162, 0.9995335201438924, 0.9995499127594079, 0.9995657700796183, 0.9995811080505497,
186 0.9995959421981360, 0.9996102876374180, 0.9996241590816000, 0.9996375708509669, 0.9996505368816620,
187 0.9996630707343231, 0.9996751856025812, 0.9996868943214188, 0.9996982093753914, 0.9997091429067093,
188 0.9997197067231838, 0.9997299123060366, 0.9997397708175726, 0.9997492931087195, 0.9997584897264322,
189 0.9997673709209645, 0.9997759466530090, 0.9997842266007053, 0.9997922201665194, 0.9997999364839927,
190 0.9998073844243643, 0.9998145726030667, 0.9998215093860952, 0.9998282028962541, 0.9998346610192799,
191 0.9998408914098424, 0.9998469014974263, 0.9998526984920926, 0.9998582893901242, 0.9998636809795542,
192 0.9998688798455795, 0.9998738923758614, 0.9998787247657146, 0.9998833830231846, 0.9998878729740177,
193 0.9998922002665226, 0.9998963703763260, 0.9999003886110240, 0.9999042601147311, 0.9999079898725258,
194 0.9999115827147992, 0.9999150433215020, 0.9999183762262973, 0.9999215858206164, 0.9999246763576213,
195 0.9999276519560749, 0.9999305166041201, 0.9999332741629703, 0.9999359283705112, 0.9999384828448168,
196 0.9999409410875810, 0.9999433064874658, 0.9999455823233663, 0.9999477717675982, 0.9999498778890038,
197 0.9999519036559824, 0.9999538519394437, 0.9999557255156879, 0.9999575270692113, 0.9999592591954414,
198 0.9999609244034022, 0.9999625251183089, 0.9999640636840972, 0.9999655423658850, 0.9999669633523707,
199 0.9999683287581669, 0.9999696406260734, 0.9999709009292881, 0.9999721115735594, 0.9999732743992805,
200 0.9999743911835259, 0.9999754636420336, 0.9999764934311315, 0.9999774821496115, 0.9999784313405518,
201 0.9999793424930874, 0.9999802170441318, 0.9999810563800495, 0.9999818618382819, 0.9999826347089265,
202 0.9999833762362704, 0.9999840876202809, 0.9999847700180520, 0.9999854245452091, 0.9999860522772731,
203 0.9999866542509841, 0.9999872314655862, 0.9999877848840748, 0.9999883154344054, 0.9999888240106678,
204 0.9999893114742251, 0.9999897786548160, 0.9999902263516272, 0.9999906553343298, 0.9999910663440872,
205 0.9999914600945290, 0.9999918372726972, 0.9999921985399619, 0.9999925445329086, 0.9999928758641985,
206 0.9999931931234007, 0.9999934968777990, 0.9999937876731730, 0.9999940660345543, 0.9999943324669582,
207 0.9999945874560923, 0.9999948314690428, 0.9999950649549374, 0.9999952883455880, 0.9999955020561114,
208 0.9999957064855300, 0.9999959020173534, 0.9999960890201397, 0.9999962678480394, 0.9999964388413204,
209 0.9999966023268753, 0.9999967586187126, 0.9999969080184310, 0.9999970508156771, 0.9999971872885882,
210 0.9999973177042203, 0.9999974423189606, 0.9999975613789263, 0.9999976751203501, 0.9999977837699519,
211 0.9999978875452975, 0.9999979866551452, 0.9999980812997800, 0.9999981716713364, 0.9999982579541097,
212 0.9999983403248556, 0.9999984189530811, 0.9999984940013225, 0.9999985656254156, 0.9999986339747554,
213 0.9999986991925460, 0.9999987614160426, 0.9999988207767835, 0.9999988774008146, 0.9999989314089055,
214 0.9999989829167575, 0.9999990320352039, 0.9999990788704038, 0.9999991235240271, 0.9999991660934341,
215 0.9999992066718480, 0.9999992453485209, 0.9999992822088930, 0.9999993173347475, 0.9999993508043572,
216 0.9999993826926280, 0.9999994130712355, 0.9999994420087568, 0.9999994695707970, 0.9999994958201117,
217 0.9999995208167234, 0.9999995446180352, 0.9999995672789381, 0.9999995888519162, 0.9999996093871457,
218 0.9999996289325921, 0.9999996475341018, 0.9999996652354917, 0.9999996820786339, 0.9999996981035375,
219 0.9999997133484282, 0.9999997278498227, 0.9999997416426023, 0.9999997547600820, 0.9999997672340770,
220 0.9999997790949677, 0.9999997903717610, 0.9999998010921489, 0.9999998112825659, 0.9999998209682428,
221 0.9999998301732593, 0.9999998389205939, 0.9999998472321717, 0.9999998551289107, 0.9999998626307656,
222 0.9999998697567705, 0.9999998765250788, 0.9999998829530026, 0.9999998890570498, 0.9999998948529597,
223 0.9999999003557368, 0.9999999055796842, 0.9999999105384346, 0.9999999152449801, 0.9999999197117013,
224 0.9999999239503948, 0.9999999279722992, 0.9999999317881205, 0.9999999354080568, 0.9999999388418200,
225 0.9999999420986596, 0.9999999451873824, 0.9999999481163739, 0.9999999508936166, 0.9999999535267092,
226 0.9999999560228840, 0.9999999583890240, 0.9999999606316790, 0.9999999627570806, 0.9999999647711582,
227 0.9999999666795515, 0.9999999684876255, 0.9999999702004823, 0.9999999718229740, 0.9999999733597145,
228 0.9999999748150900, 0.9999999761932709, 0.9999999774982211, 0.9999999787337082, 0.9999999799033128,
229 0.9999999810104375, 0.9999999820583151, 0.9999999830500168, 0.9999999839884606, 0.9999999848764176,
230 0.9999999857165200, 0.9999999865112674, 0.9999999872630332, 0.9999999879740707, 0.9999999886465194,
231 0.9999999892824097, 0.9999999898836692, 0.9999999904521271, 0.9999999909895190, 0.9999999914974917,
232 0.9999999919776081, 0.9999999924313503, 0.9999999928601240, 0.9999999932652629, 0.9999999936480314,
233 0.9999999940096286, 0.9999999943511912, 0.9999999946737974, 0.9999999949784683, 0.9999999952661724,
234 0.9999999955378276, 0.9999999957943032, 0.9999999960364234, 0.9999999962649687, 0.9999999964806787,
235 0.9999999966842541, 0.9999999968763579, 0.9999999970576186, 0.9999999972286312, 0.9999999973899589,
236 0.9999999975421350, 0.9999999976856642, 0.9999999978210243, 0.9999999979486676, 0.9999999980690220,
237 0.9999999981824921, 0.9999999982894614, 0.9999999983902919, 0.9999999984853266, 0.9999999985748896,
238 0.9999999986592876, 0.9999999987388104, 0.9999999988137320, 0.9999999988843119, 0.9999999989507948,
239 0.9999999990134123, 0.9999999990723833, 0.9999999991279147, 0.9999999991802015, 0.9999999992294288,
240 0.9999999992757709, 0.9999999993193922, 0.9999999993604487, 0.9999999993990872, 0.9999999994354465,
241 0.9999999994696577, 0.9999999995018443, 0.9999999995321232, 0.9999999995606046, 0.9999999995873926,
242 0.9999999996125852, 0.9999999996362753, 0.9999999996585500, 0.9999999996794919, 0.9999999996991789,
243 0.9999999997176843, 0.9999999997350770, 0.9999999997514226, 0.9999999997667823, 0.9999999997812146,
244 0.9999999997947737, 0.9999999998075113, 0.9999999998194760, 0.9999999998307134, 0.9999999998412670,
245 0.9999999998511772, 0.9999999998604823, 0.9999999998692184, 0.9999999998774194, 0.9999999998851175,
246 0.9999999998923426, 0.9999999998991231, 0.9999999999054858, 0.9999999999114559, 0.9999999999170571,
247 0.9999999999223115, 0.9999999999272402, 0.9999999999318628, 0.9999999999361980, 0.9999999999402632,
248 0.9999999999440750, 0.9999999999476485, 0.9999999999509985, 0.9999999999541387, 0.9999999999570819,
249 0.9999999999598400, 0.9999999999624246, 0.9999999999648463, 0.9999999999671152, 0.9999999999692406,
250 0.9999999999712315, 0.9999999999730962, 0.9999999999748423, 0.9999999999764776, 0.9999999999780087,
251 0.9999999999794421, 0.9999999999807840, 0.9999999999820400, 0.9999999999832156, 0.9999999999843159,
252 0.9999999999853453, 0.9999999999863086, 0.9999999999872098, 0.9999999999880529, 0.9999999999888415,
253 0.9999999999895790, 0.9999999999902688, 0.9999999999909137, 0.9999999999915168, 0.9999999999920807,
254 0.9999999999926077, 0.9999999999931004, 0.9999999999935609, 0.9999999999939913, 0.9999999999943934,
255 0.9999999999947691, 0.9999999999951201, 0.9999999999954480, 0.9999999999957543, 0.9999999999960403,
256 0.9999999999963075, 0.9999999999965570, 0.9999999999967899, 0.9999999999970074, 0.9999999999972105,
257 0.9999999999973999, 0.9999999999975767, 0.9999999999977418, 0.9999999999978958, 0.9999999999980396,
258 0.9999999999981736, 0.9999999999982987, 0.9999999999984153, 0.9999999999985241, 0.9999999999986255,
259 0.9999999999987201, 0.9999999999988084, 0.9999999999988907, 0.9999999999989673, 0.9999999999990388,
260 0.9999999999991054, 0.9999999999991676, 0.9999999999992253, 0.9999999999992792, 0.9999999999993294,
261 0.9999999999993763, 0.9999999999994198, 0.9999999999994604, 0.9999999999994982, 0.9999999999995333,
262 0.9999999999995661, 0.9999999999995965, 0.9999999999996250, 0.9999999999996514, 0.9999999999996760,
263 0.9999999999996989, 0.9999999999997202, 0.9999999999997400, 0.9999999999997585, 0.9999999999997757,
264 0.9999999999997916, 0.9999999999998064, 0.9999999999998203, 0.9999999999998330, 0.9999999999998450,
265 0.9999999999998561, 0.9999999999998664, 0.9999999999998760, 0.9999999999998850, 0.9999999999998932,
266 0.9999999999999010, 0.9999999999999081, 0.9999999999999147, 0.9999999999999208, 0.9999999999999265,
267 0.9999999999999318, 0.9999999999999368, 0.9999999999999414, 0.9999999999999457, 0.9999999999999496,
268 0.9999999999999534, 0.9999999999999567, 0.9999999999999599, 0.9999999999999629, 0.9999999999999656,
269 0.9999999999999680, 0.9999999999999705, 0.9999999999999727, 0.9999999999999747, 0.9999999999999765,
270 0.9999999999999782, 0.9999999999999798, 0.9999999999999813, 0.9999999999999827, 0.9999999999999840,
271 0.9999999999999851, 0.9999999999999862, 0.9999999999999873, 0.9999999999999882, 0.9999999999999891,
272 0.9999999999999900, 0.9999999999999907, 0.9999999999999913, 0.9999999999999920, 0.9999999999999927,
273 0.9999999999999931, 0.9999999999999938, 0.9999999999999942, 0.9999999999999947, 0.9999999999999950,
274 0.9999999999999953, 0.9999999999999958, 0.9999999999999960, 0.9999999999999964, 0.9999999999999967,
275 0.9999999999999969, 0.9999999999999971, 0.9999999999999973, 0.9999999999999976, 0.9999999999999978,
276 0.9999999999999980, 0.9999999999999980, 0.9999999999999982, 0.9999999999999984, 0.9999999999999984,
277 0.9999999999999987, 0.9999999999999987, 0.9999999999999989, 0.9999999999999989, 0.9999999999999990,
278 0.9999999999999991, 0.9999999999999991, 0.9999999999999992, 0.9999999999999993, 0.9999999999999993,
279 0.9999999999999993, 0.9999999999999994, 0.9999999999999994, 0.9999999999999996, 0.9999999999999996,
280 0.9999999999999996, 0.9999999999999996, 0.9999999999999997, 0.9999999999999997, 0.9999999999999998,
281 0.9999999999999998, 0.9999999999999998, 0.9999999999999998, 0.9999999999999998, 0.9999999999999998,
282 0.9999999999999998, 0.9999999999999998, 0.9999999999999998, 0.9999999999999998, 0.9999999999999999,
283 0.9999999999999999, 0.9999999999999999, 0.9999999999999999, 0.9999999999999999, 0.9999999999999999,
284 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
285 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
286 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
287 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
288 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
289 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
290 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
291 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
292 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
293 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
294 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
295 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
296 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
297 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
298 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
299 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
300 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
301 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
302 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
303 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
304 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
305 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
306 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
307 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
308 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
309 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
310 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
311 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
312 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
313 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
314 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
315 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
316 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
317 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
318 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
319 1.0000000000000000
320 };
321
322 }