1023dd3b8Sopenharmony_ciif (typeof T === 'undefined') require('../setup');
2023dd3b8Sopenharmony_ci
3023dd3b8Sopenharmony_ciT('log', function () {
4023dd3b8Sopenharmony_ci
5023dd3b8Sopenharmony_ci  function t(n, base, expected, sd, rm) {
6023dd3b8Sopenharmony_ci    Decimal.precision = sd;
7023dd3b8Sopenharmony_ci    Decimal.rounding = rm;
8023dd3b8Sopenharmony_ci    T.assertEqual(expected, new Decimal(n).log(base).valueOf());
9023dd3b8Sopenharmony_ci  }
10023dd3b8Sopenharmony_ci
11023dd3b8Sopenharmony_ci  Decimal.config({
12023dd3b8Sopenharmony_ci    precision: 40,
13023dd3b8Sopenharmony_ci    rounding: 4,
14023dd3b8Sopenharmony_ci    toExpNeg: -9e15,
15023dd3b8Sopenharmony_ci    toExpPos: 9e15,
16023dd3b8Sopenharmony_ci    minE: -9e15,
17023dd3b8Sopenharmony_ci    maxE: 9e15
18023dd3b8Sopenharmony_ci  });
19023dd3b8Sopenharmony_ci
20023dd3b8Sopenharmony_ci  /*
21023dd3b8Sopenharmony_ci   Example of a log that will fail.
22023dd3b8Sopenharmony_ci   It results in 2.6 due to having 15 or more zeros from the first rounding digit.
23023dd3b8Sopenharmony_ci   t('4503599627370502', '1048576', '2.7', 2, 2);  // 2.60000000000000009610279511444746656225...
24023dd3b8Sopenharmony_ci   */
25023dd3b8Sopenharmony_ci
26023dd3b8Sopenharmony_ci  t('0', '10', '-Infinity', 40, 4);
27023dd3b8Sopenharmony_ci  t('-0', '10', '-Infinity', 40, 4);
28023dd3b8Sopenharmony_ci  t('1', '10', '0', 40, 4);
29023dd3b8Sopenharmony_ci  t('-1', '10', 'NaN', 40, 4);
30023dd3b8Sopenharmony_ci  t('Infinity', '10', 'Infinity', 40, 4);
31023dd3b8Sopenharmony_ci  t('Infinity', '0', 'NaN', 40, 4);
32023dd3b8Sopenharmony_ci  t('-Infinity', 'Infinity', 'NaN', 40, 4);
33023dd3b8Sopenharmony_ci  t('NaN', '10', 'NaN', 40, 4);
34023dd3b8Sopenharmony_ci
35023dd3b8Sopenharmony_ci  t('1', '0', 'NaN', 40, 4);           // Math.log(1)  / Math.log(0)  == -0
36023dd3b8Sopenharmony_ci  t('10', '0', 'NaN', 40, 4);          // Math.log(10) / Math.log(0)  == -0
37023dd3b8Sopenharmony_ci  t('10', '-0', 'NaN', 40, 4);           // Math.log(10) / Math.log(-0) == -0
38023dd3b8Sopenharmony_ci  t('10', '1', 'NaN', 40, 4);          // Math.log(10) / Math.log(1)  == Infinity
39023dd3b8Sopenharmony_ci  t('10', '-1', 'NaN', 40, 4);
40023dd3b8Sopenharmony_ci  t('10', 'Infinity', 'NaN', 40, 4);       // Math.log(10) / Math.log(Infinity) == 0
41023dd3b8Sopenharmony_ci  t('10', '-Infinity', 'NaN', 40, 4);
42023dd3b8Sopenharmony_ci  t('10', 'NaN', 'NaN', 40, 4);
43023dd3b8Sopenharmony_ci  t('-1', '-1', 'NaN', 40, 4);
44023dd3b8Sopenharmony_ci  t('0', '0', 'NaN', 40, 4);
45023dd3b8Sopenharmony_ci
46023dd3b8Sopenharmony_ci  t('7625597484987', '59049', '2.7', 2, 5);
47023dd3b8Sopenharmony_ci  t('839756321.64088511', '28', '6.16667503', 9, 0);
48023dd3b8Sopenharmony_ci  t('94143178827', '3486784401', '1.15', 3, 0);
49023dd3b8Sopenharmony_ci  t('243', '9', '3', 1, 4);
50023dd3b8Sopenharmony_ci  t('512', '16', '2.25', 7, 0);
51023dd3b8Sopenharmony_ci  t('512', '16', '2.25', 7, 2);
52023dd3b8Sopenharmony_ci  t('512', '16', '2.2', 2, 5);
53023dd3b8Sopenharmony_ci  t('512', '16', '2.2', 2, 6);
54023dd3b8Sopenharmony_ci
55023dd3b8Sopenharmony_ci  t('16', '2', '4', 7, 0);
56023dd3b8Sopenharmony_ci  t('16', '2', '4', 7, 2);
57023dd3b8Sopenharmony_ci  t('243', '3', '5', 7, 1);
58023dd3b8Sopenharmony_ci  t('243', '9', '2.5', 7, 1);
59023dd3b8Sopenharmony_ci  t('243', '3', '5', 7, 3);
60023dd3b8Sopenharmony_ci  t('243', '9', '2.5', 7, 3);
61023dd3b8Sopenharmony_ci  t('32', '4', '2.5', 7, 0);
62023dd3b8Sopenharmony_ci  t('32', '4', '2.5', 7, 2);
63023dd3b8Sopenharmony_ci  t('4', '2', '2', 1, 2);
64023dd3b8Sopenharmony_ci  t('8', '2', '3', 2, 0);
65023dd3b8Sopenharmony_ci  t('16', '2', '4', 2, 0);
66023dd3b8Sopenharmony_ci  t('32', '2', '5', 3, 0);
67023dd3b8Sopenharmony_ci  t('64', '2', '6', 3, 0);
68023dd3b8Sopenharmony_ci  t('64', '2', '6', 2, 0);
69023dd3b8Sopenharmony_ci  t('64', '2', '6', 1, 2);
70023dd3b8Sopenharmony_ci  t('128', '2', '7', 1, 0);
71023dd3b8Sopenharmony_ci  t('256', '2', '8', 1, 2);
72023dd3b8Sopenharmony_ci  t('1024', '2', '10', 2, 0);
73023dd3b8Sopenharmony_ci  t('1024', '2', '10', 10, 0);
74023dd3b8Sopenharmony_ci  t('16384', '2', '14', 2, 0);
75023dd3b8Sopenharmony_ci  t('16384', '2', '14', 10, 0);
76023dd3b8Sopenharmony_ci  t('243', '3', '5', 7, 4);
77023dd3b8Sopenharmony_ci  t('243', '9', '2.5', 7, 4);
78023dd3b8Sopenharmony_ci  t('243', '3', '5', 7, 4);
79023dd3b8Sopenharmony_ci  t('243', '9', '2.5', 7, 4);
80023dd3b8Sopenharmony_ci  t('16', '2', '4', 7, 4);
81023dd3b8Sopenharmony_ci  t('32', '4', '2.5', 7, 4);
82023dd3b8Sopenharmony_ci  t('16', '2', '4', 7, 4);
83023dd3b8Sopenharmony_ci  t('32', '4', '2.5', 7, 4);
84023dd3b8Sopenharmony_ci
85023dd3b8Sopenharmony_ci  t('1.2589254117', 10, '0.1', 1, 2);
86023dd3b8Sopenharmony_ci  t('1.023292992', 10, '0.01', 1, 2);
87023dd3b8Sopenharmony_ci  t('1.258925411794167210423954106395800606', 10, '0.1', 1, 4);
88023dd3b8Sopenharmony_ci  t('1.25892541179416721', 10, '0.1', 1, 0);
89023dd3b8Sopenharmony_ci  t('1.258925411', 10, '0.1', 1, 5);
90023dd3b8Sopenharmony_ci  t('1.258925411794167210423954', 10, '0.1', 1, 4);
91023dd3b8Sopenharmony_ci
92023dd3b8Sopenharmony_ci  /*
93023dd3b8Sopenharmony_ci   6.166675020000903537297764507632802193308677149
94023dd3b8Sopenharmony_ci   28^6.16667502 = 839756321.6383567959704282429971526703012698
95023dd3b8Sopenharmony_ci   28^6.16667503 = 839756349.6207552863005150010387178739013142
96023dd3b8Sopenharmony_ci   */
97023dd3b8Sopenharmony_ci  t('839756321.64088511', '28', '6.16667503', 9, 0);
98023dd3b8Sopenharmony_ci  t('576306512.96177', '985212731.27158', '0.9742', 4, 2);
99023dd3b8Sopenharmony_ci  t('97.65625', '6.25', '2.5', 3, 0);
100023dd3b8Sopenharmony_ci  t('223677472.0384754303304727631735', '26', '5.900904252190486450814', 22, 5);
101023dd3b8Sopenharmony_ci  t('2063000845.3020737243910803079', '35', '6.0324410183892767982149330415', 29, 0);
102023dd3b8Sopenharmony_ci  t('302381977.956021650184952836276441035025875682714942', '2623', '2.4805663226398755020289647999', 29, 6);
103023dd3b8Sopenharmony_ci  t('456870693.58', '238920772.66', '1.0336035877093034523', 21, 4);
104023dd3b8Sopenharmony_ci  t('16', '2', '4', 10, 4);
105023dd3b8Sopenharmony_ci  t('32', '4', '2.5', 10, 1);
106023dd3b8Sopenharmony_ci  t('316.2277660168379331998893544432645719585553021316022642247511089459022980600999502961482777894980004', '10', '2.49999999999999999999', 21, 1);
107023dd3b8Sopenharmony_ci
108023dd3b8Sopenharmony_ci  // Base 10 therefore the following tests pass despite 15 or more zeros or nines as the rounding digits.
109023dd3b8Sopenharmony_ci
110023dd3b8Sopenharmony_ci  // 4.0000000000000000000173...
111023dd3b8Sopenharmony_ci  t('10000.0000000000000004', 10, '4.01', 3, 2);
112023dd3b8Sopenharmony_ci
113023dd3b8Sopenharmony_ci  // 4.00000000000000000173...
114023dd3b8Sopenharmony_ci  t('10000.00000000000004', 10, '4.01', 3, 2);
115023dd3b8Sopenharmony_ci
116023dd3b8Sopenharmony_ci  // 2.000000000000000000000004342944...
117023dd3b8Sopenharmony_ci  t('100.000000000000000000001', 10, '2.1', 2, 0);
118023dd3b8Sopenharmony_ci
119023dd3b8Sopenharmony_ci  // 2.00000000000000004342944...
120023dd3b8Sopenharmony_ci  t('100.00000000000001', 10, '2.1', 2, 0);
121023dd3b8Sopenharmony_ci
122023dd3b8Sopenharmony_ci  // 4.9999999999999999999960913...
123023dd3b8Sopenharmony_ci  t('99999.9999999999999991', 10, '4.999', 4, 1);
124023dd3b8Sopenharmony_ci
125023dd3b8Sopenharmony_ci  // 0.09360000000000000000000000020197...
126023dd3b8Sopenharmony_ci  t('124050.923004222533485495840', 10, '5.093601', 7, 2);
127023dd3b8Sopenharmony_ci
128023dd3b8Sopenharmony_ci  // 0.09999999999999999999999999999972381...
129023dd3b8Sopenharmony_ci  // 10^0.1 = 1.258925411794167210423954106395800606093617409466...
130023dd3b8Sopenharmony_ci  t('1.258925411794167210423954106395', 10, '0.09999', 4, 1);
131023dd3b8Sopenharmony_ci
132023dd3b8Sopenharmony_ci  // 8.959609629999999999999999999999431251938064
133023dd3b8Sopenharmony_ci  t('911191437.48166728043529900000', 10, '8.959609629999999999999999', 25, 3);
134023dd3b8Sopenharmony_ci
135023dd3b8Sopenharmony_ci  // 2.4038746000000000000000000000000268051243...
136023dd3b8Sopenharmony_ci  t('253.4396732554691740503010363220', 10, '2.403874600001', 13, 2);
137023dd3b8Sopenharmony_ci
138023dd3b8Sopenharmony_ci  // 3.391702100000000000000000000000000025534271040...
139023dd3b8Sopenharmony_ci  t('2464.348361986885121671329250344224', 10, '3.3917021', 18, 1);
140023dd3b8Sopenharmony_ci  t('2464.348361986885121671329250344224', 10, '3.39170210000000001', 18, 0);
141023dd3b8Sopenharmony_ci
142023dd3b8Sopenharmony_ci  // 4.0000000000000000173...
143023dd3b8Sopenharmony_ci  t('10000.0000000000004', 10, '4.01', 3, 2);
144023dd3b8Sopenharmony_ci
145023dd3b8Sopenharmony_ci  // 4.00000000000000173...
146023dd3b8Sopenharmony_ci  t('10000.00000000004', 10, '4.01', 3, 2);
147023dd3b8Sopenharmony_ci
148023dd3b8Sopenharmony_ci  // 2.0000000000000004342944...
149023dd3b8Sopenharmony_ci  t('100.0000000000001', 10, '2.1', 2, 0);
150023dd3b8Sopenharmony_ci
151023dd3b8Sopenharmony_ci  // 4.99999999999999999960913...
152023dd3b8Sopenharmony_ci  t('99999.99999999999991', 10, '4.999', 4, 1);
153023dd3b8Sopenharmony_ci
154023dd3b8Sopenharmony_ci  // 4.9999999999999999960913...
155023dd3b8Sopenharmony_ci  t('99999.9999999999991', 10, '4.999', 4, 1);
156023dd3b8Sopenharmony_ci
157023dd3b8Sopenharmony_ci  // 4.99999999999960913...
158023dd3b8Sopenharmony_ci  t('99999.99999991', 10, '4.999', 4, 1);
159023dd3b8Sopenharmony_ci
160023dd3b8Sopenharmony_ci  t('6.626757835589191227753975149737456562020794782', 10, '0.8213011002743699999999999999999999999999999', 43, 1);
161023dd3b8Sopenharmony_ci  t('4.20732041199815040736678139715312481859825562145776045079', 10, '0.6240055873352599999999999999999999999999999999999999', 52, 3);
162023dd3b8Sopenharmony_ci  t('64513410281785809574142282220919135969.8537876292904158501590880', 10, '37.80964999999999999999', 22, 1);
163023dd3b8Sopenharmony_ci  t('33.51145738694771448172942314968136067036971739113975569076629', 10, '1.5251933153717162999999999999999999999999999999999999999', 56, 3);
164023dd3b8Sopenharmony_ci  t('10232.9299228075413096627', 10, '4.009999999999999', 16, 1);
165023dd3b8Sopenharmony_ci  t('1.258925411794167210423954106395', 10, '0.099999999999999999999999999999723814', 35, 0);
166023dd3b8Sopenharmony_ci  t('1.29891281037500', 10, '0.11357', 5, 1);
167023dd3b8Sopenharmony_ci  t('16.399137225681149762104868844', 10, '1.21482099999999999999999', 24, 3);
168023dd3b8Sopenharmony_ci  t('0.01', 10, '-2', 17, 3);
169023dd3b8Sopenharmony_ci  t('0.0000000001', 10, '-10', 4, 2);
170023dd3b8Sopenharmony_ci  t('0.00001', 10, '-5', 35, 3);
171023dd3b8Sopenharmony_ci  t('0.00000001', 10, '-8', 24, 2);
172023dd3b8Sopenharmony_ci  t('0.0000100000000000010000005060000000000800030000000400908', 10, '-4.99', 3, 1);
173023dd3b8Sopenharmony_ci
174023dd3b8Sopenharmony_ci  t('94143178827', '3486784401', '1.15', 3, 0);
175023dd3b8Sopenharmony_ci  t('15625', '3125', '1.2', 2, 3);
176023dd3b8Sopenharmony_ci  t('3', '3486784401', '0.05', 1, 8);
177023dd3b8Sopenharmony_ci  t('268435456', '1048576', '1.4', 2, 3);
178023dd3b8Sopenharmony_ci  t('25', '9765625', '0.2', 1, 7);
179023dd3b8Sopenharmony_ci  t('524288', '256', '2.375', 4, 8);
180023dd3b8Sopenharmony_ci  t('177147', '81', '2.75', 3, 5);
181023dd3b8Sopenharmony_ci  t('531441', '59049', '1.2', 2, 8);
182023dd3b8Sopenharmony_ci  t('387420489', '59049', '1.8', 2, 6);
183023dd3b8Sopenharmony_ci  t('16384', '65536', '0.875', 3, 6);
184023dd3b8Sopenharmony_ci  t('31381059609', '59049', '2.2', 2, 5);
185023dd3b8Sopenharmony_ci  t('8589934592', '65536', '2.0625', 5, 3);
186023dd3b8Sopenharmony_ci  t('33554432', '256', '3.125', 4, 3);
187023dd3b8Sopenharmony_ci  t('4503599627370496', '65536', '3.25', 3, 3);
188023dd3b8Sopenharmony_ci  t('68630377364883', '59049', '2.9', 2, 3);
189023dd3b8Sopenharmony_ci  t('68630377364883', '847288609443', '1.16', 3, 5);
190023dd3b8Sopenharmony_ci  t('16', '1125899906842624', '0.08', 1, 2);
191023dd3b8Sopenharmony_ci  t('3814697265625', '390625', '2.25', 3, 8);
192023dd3b8Sopenharmony_ci  t('8', '4294967296', '0.09375', 4, 1);
193023dd3b8Sopenharmony_ci  t('22876792454961', '59049', '2.8', 2, 2);
194023dd3b8Sopenharmony_ci  t('32', '33554432', '0.2', 1, 2);
195023dd3b8Sopenharmony_ci  t('16', '1125899906842624', '0.08', 1, 2);
196023dd3b8Sopenharmony_ci  t('16777216', '1024', '2.4', 2, 2);
197023dd3b8Sopenharmony_ci  t('31381059609', '3486784401', '1.1', 2, 4);
198023dd3b8Sopenharmony_ci  t('131072', '16', '4.25', 3, 7);
199023dd3b8Sopenharmony_ci  t('17179869184', '65536', '2.125', 4, 2);
200023dd3b8Sopenharmony_ci  t('131072', '32', '3.4', 2, 5);
201023dd3b8Sopenharmony_ci  t('31381059609', '6561', '2.75', 3, 4);
202023dd3b8Sopenharmony_ci  t('1162261467', '81', '4.75', 3, 2);
203023dd3b8Sopenharmony_ci  t('5', '152587890625', '0.0625', 3, 8);
204023dd3b8Sopenharmony_ci  t('4', '1024', '0.2', 1, 2);
205023dd3b8Sopenharmony_ci  t('268435456', '1048576', '1.4', 2, 8);
206023dd3b8Sopenharmony_ci
207023dd3b8Sopenharmony_ci  t('456870693.58', '238920772.66', '1.0336035877093034523', 21, 4);
208023dd3b8Sopenharmony_ci  t('575547956.8582', '824684975.3545', '0.98248076', 8, 4);
209023dd3b8Sopenharmony_ci  t('82275648.874341603', '959190115.624130088', '0.88124641544168894893181429200832363', 35, 4);
210023dd3b8Sopenharmony_ci  t('74257343.4', '743703514.4', '0.88720377341908842250463392057841865999040289364224', 50, 4);
211023dd3b8Sopenharmony_ci  t('617556576.22', '1390349767.37', '0.96145220002205342499', 20, 4);
212023dd3b8Sopenharmony_ci  t('385659206.402956', '306197094.245356', '1.0118079926535367225661814147003237994862', 41, 4);
213023dd3b8Sopenharmony_ci  t('1739848017', '139741504', '1.134455757605027173760473871049514546484', 40, 4);
214023dd3b8Sopenharmony_ci  t('684413372.332', '749444030.62', '0.99556', 5, 4);
215023dd3b8Sopenharmony_ci  t('1276559129.76358811', '1814329747.19301894', '0.983510102095361604388', 21, 4);
216023dd3b8Sopenharmony_ci  t('470873324.56', '770017206.95', '0.975963952980122531477453931545461086248352', 42, 4);
217023dd3b8Sopenharmony_ci  t('142843622.855', '188030025.676', '0.985573716314165', 15, 4);
218023dd3b8Sopenharmony_ci  t('208762187.506204', '15673510.715596', '1.1563', 5, 4);
219023dd3b8Sopenharmony_ci  t('1066260899.1963', '954219284.761', '1.005369396783858165862954752482856604', 37, 4);
220023dd3b8Sopenharmony_ci  t('98615189.15', '75483684.05', '1.0147363402964731399253', 23, 4);
221023dd3b8Sopenharmony_ci  t('134306349.93018997', '262971762.95484809', '0.965342550919082621945239', 24, 4);
222023dd3b8Sopenharmony_ci  t('964681161.089224', '1910911588.814815', '0.9680153968863558918522522557796148', 34, 4);
223023dd3b8Sopenharmony_ci  t('9303669', '272208139', '0.8262', 4, 4);
224023dd3b8Sopenharmony_ci  t('388804210', '196979048', '1.035603565223696855965', 22, 4);
225023dd3b8Sopenharmony_ci  t('699589959.2322617', '574032511.7854473', '1.0098079347111332288609', 23, 4);
226023dd3b8Sopenharmony_ci  t('100575245.36', '172874206.82', '0.971443699412905370317336892965778', 33, 4);
227023dd3b8Sopenharmony_ci  t('188632711.8541175', '1056627336.0975408', '0.9170754305183363941127042', 25, 4);
228023dd3b8Sopenharmony_ci  t('267522787.94', '528716571.79', '0.966083390988836341228896', 24, 4);
229023dd3b8Sopenharmony_ci  t('145509306.43395', '472783713.04935', '0.941003844701466585568051857', 28, 4);
230023dd3b8Sopenharmony_ci  t('991525965.6381098', '609527830.0476525', '1.024053580832128', 16, 4);
231023dd3b8Sopenharmony_ci  t('1023653880.6218838', '953120602.1428507', '1.00345303146', 13, 4);
232023dd3b8Sopenharmony_ci  t('55755796.19', '1330531177.01', '0.84899920538009273', 17, 4);
233023dd3b8Sopenharmony_ci  t('334096229.1342503', '563056758.6770503', '0.97409528', 8, 4);
234023dd3b8Sopenharmony_ci  t('9635164', '231514430', '0.834932623823994616103829175346875687708', 39, 4);
235023dd3b8Sopenharmony_ci  t('131654133.157309973', '115412751.259558256', '1.007092396906741330059871530698890891053443', 43, 4);
236023dd3b8Sopenharmony_ci
237023dd3b8Sopenharmony_ci  // base 2
238023dd3b8Sopenharmony_ci  t('26880.2432276408875624', 2, '14.7142585720457255', 19, 3);
239023dd3b8Sopenharmony_ci  t('18216.8140929585641372', 2, '14.152983050314836771855701', 26, 1);
240023dd3b8Sopenharmony_ci  t('28062.73494235358182', 2, '14.776367997755111083362495', 26, 0);
241023dd3b8Sopenharmony_ci  t('7408.82842447993', 2, '12.8550297084583087071', 21, 1);
242023dd3b8Sopenharmony_ci  t('395.067', 2, '8.62595353', 9, 3);
243023dd3b8Sopenharmony_ci  t('27442.6587462411378', 2, '14.74414', 7, 0);
244023dd3b8Sopenharmony_ci  t('29259.23925137426', 2, '14.83660463902', 13, 1);
245023dd3b8Sopenharmony_ci  t('31809.09321', 2, '14.95715162', 10, 3);
246023dd3b8Sopenharmony_ci  t('21088.306138691278', 2, '14.3641556', 9, 4);
247023dd3b8Sopenharmony_ci  t('21417.99322', 2, '14.386535691235055367', 20, 4);
248023dd3b8Sopenharmony_ci  t('30749.008158228314845157', 2, '14.9', 3, 3);
249023dd3b8Sopenharmony_ci  t('11701.5', 2, '13.51440585840535244680127', 25, 0);
250023dd3b8Sopenharmony_ci  t('31737.6741', 2, '14.954', 5, 2);
251023dd3b8Sopenharmony_ci  t('1688.88816886', 2, '10.7218580867075137099751634', 27, 3);
252023dd3b8Sopenharmony_ci  t('31553.4', 2, '14.945507849063278420302384', 26, 1);
253023dd3b8Sopenharmony_ci  t('28215.19', 2, '14.7841844442', 12, 3);
254023dd3b8Sopenharmony_ci  t('6080.97', 2, '12.57008575', 10, 1);
255023dd3b8Sopenharmony_ci  t('575.881932366571406', 2, '9.16962924962079798', 18, 1);
256023dd3b8Sopenharmony_ci  t('4573.55560689675', 2, '12.1591004766309775332', 21, 1);
257023dd3b8Sopenharmony_ci  t('24202.85989198517539', 2, '15', 2, 4);
258023dd3b8Sopenharmony_ci  t('18334.9', 2, '14.16230477704721387108079127958', 31, 4);
259023dd3b8Sopenharmony_ci  t('20179.623017', 2, '14.4', 3, 0);
260023dd3b8Sopenharmony_ci  t('8607.97004888426002071', 2, '13.07145734276093159769689946319', 31, 1);
261023dd3b8Sopenharmony_ci  t('27231.463745', 2, '14.732986911725376996874804951679', 32, 3);
262023dd3b8Sopenharmony_ci  t('24325.08', 2, '14.57015693', 10, 0);
263023dd3b8Sopenharmony_ci  t('826.3541073', 2, '9.69', 3, 3);
264023dd3b8Sopenharmony_ci  t('6877.51851488', 2, '12.7476724030697', 15, 3);
265023dd3b8Sopenharmony_ci  t('13510.031', 2, '13.7217433646123774736072103937', 30, 4);
266023dd3b8Sopenharmony_ci  t('559.1647711259', 2, '9.12712965971023632', 18, 1);
267023dd3b8Sopenharmony_ci  t('1262.018796786493279', 2, '10.30151768', 10, 3);
268023dd3b8Sopenharmony_ci  t('31897.9889', 2, '14.9611778475691091525075', 24, 1);
269023dd3b8Sopenharmony_ci  t('24187.818942357666924548', 2, '14.561', 5, 3);
270023dd3b8Sopenharmony_ci  t('7233.846688339241', 2, '12.820547306996872048936910678432', 32, 3);
271023dd3b8Sopenharmony_ci  t('10162.3041', 2, '13.31093992111', 13, 4);
272023dd3b8Sopenharmony_ci  t('9091.859714971663525', 2, '13.1503597085807068872335', 24, 1);
273023dd3b8Sopenharmony_ci  t('16205.492', 2, '13.984195201', 11, 3);
274023dd3b8Sopenharmony_ci  t('17578.3501161869916711', 2, '14.101512046680555', 18, 3);
275023dd3b8Sopenharmony_ci  t('5661.58', 2, '12.466989012642603919950322048', 29, 1);
276023dd3b8Sopenharmony_ci});
277