-
Notifications
You must be signed in to change notification settings - Fork 0
/
ComplexCoreClass.h
805 lines (732 loc) · 114 KB
/
ComplexCoreClass.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
#pragma once
#ifndef ComplexCoreClass_h
#define ComplexCoreClass_h
#include <math.h>
#include <iostream>
#include <complex>
#include "MyTypes.h"
#include "InstructionSet.h"
#define TemplateParameter Tca, Tca2d, Ta, Ta2d, Tc, Ts, Tc_sum, Ts_sum
#define TemplateDefinition template<class Tca, class Tca2d, class Ta, class Ta2d, class Tc, class Ts, class Tc_sum, class Ts_sum>
#if defined __INTEL_COMPILER
#define ConstructorParam <TemplateParameter>{MemoryManager}
#define BaseConstructor ComplexCoreClass<TemplateParameter>{MemoryManager}
#elif defined _MSC_VER
#define ConstructorParam {MemoryManager}
#define BaseConstructor ComplexCoreClass{MemoryManager}
#else //GCC
#define ConstructorParam <TemplateParameter>{MemoryManager}
#define BaseConstructor ComplexCoreClass<TemplateParameter>{MemoryManager}
#endif
enum AssignmentOperator
{
Assignment, // =
AdditionAssignment, // +=
SubtractionAssignment, // -=
MultiplicationAssignment, // *=
divisionAssignment // /=
};
enum AccuracyDegree
{
LowAccuracy,
HighAccuracy
};
TemplateDefinition
class ComplexCoreClass
{
protected:
// all public members and methods should have using in ComplexClass. for resolve linker error.
double _180_p = 57.295779513082320876798154814105;
double _p_180 = 0.01745329251994329576923690768489;
double _2pi = 6.283185307179586;
double __2pi = -6.283185307179586;
double pi = 3.1415926535897932384626433832795;
double pi_2 = 1.5707963267948966192313216916398;
double pi_4 = 0.78539816339744830961566084581988;
double pi3_2 = 4.7123889803846898576939650749193;
double pi3_4 = 2.356194490192345;
double pi5_4 = 3.9269908169872415480783042290994;
double pi7_4 = 5.4977871437821381673096259207391;
double _1_2fact = .500000000;
double _1_3fact = 0.166666666666;
double _1_4fact = 0.04166666666;
double _1_5fact = 0.00833333333;
double _1_6fact = 0.00138888888;
double _1_7fact = 1.984126984126984126984126984127e-4;
int HostISAVectorLength = 0;
HostISA HISA;
static float* _pWelchWindow1024f;
static float _pWelchWindow1024fProduct;
static float* _pWelchWindow4096f;
static float _pWelchWindow4096fProduct;
static double* _pWelchWindow1024d;
static double _pWelchWindow1024dProduct;
static double* _pWelchWindow4096d;
static double _pWelchWindow4096dProduct;
ComplexCoreClass(void)
{
pi = 3.14159265359;
if (DefaultMemManager == nullptr)
{
DefaultMemManager = new MemoryManagerClass(true);
}
OwnMemManager = true;
MemManager = DefaultMemManager;
_SinPoint = 3000;// it determines our sin occurcy, it is number of point in a quarter of circle which we calculate thier sin.
double StepLen = pi_2 / _SinPoint;
_SinStepFactor = 1 / StepLen;
if (_TableSin == nullptr)
{
_TableSin = (float*)malloc(sizeof(float)*(_SinPoint + 1));
for (int i = 0; i < _SinPoint; i++)
{
_TableSin[i] = sin(i*StepLen);
}
_TableSin[_SinPoint] = 1;
}
InitpWelchVars();
SetHostISA();
}
ComplexCoreClass(MemoryManagerClass *MemoryManager)
{
pi = 3.14159265359;
MemManager = MemoryManager;
OwnMemManager = false;
_SinPoint = 3000;
double StepLen = pi_2 / _SinPoint;
_SinStepFactor = 1 / StepLen;
if (_TableSin == nullptr)
{
_TableSin = (float*)malloc(sizeof(float)*(_SinPoint + 1));
for (int i = 0; i < _SinPoint; i++)
{
_TableSin[i] = sin(i*StepLen);
}
_TableSin[_SinPoint] = 1;
}
InitpWelchVars();
SetHostISA();
}
void SetHostISA()
{
if (InstructionSet::AVX512CD() || InstructionSet::AVX512ER() || InstructionSet::AVX512F() || InstructionSet::AVX512PF())
{
HostISAVectorLength = 512;
HISA = HostISA::AVX512;
}
else if (InstructionSet::AVX2())
{
HostISAVectorLength = 256;
HISA = HostISA::AVX2;
}
else if (InstructionSet::AVX())
{
HostISAVectorLength = 256;
HISA = HostISA::AVX;
}
else if (InstructionSet::SSE42())
{
HostISAVectorLength = 128;
HISA = HostISA::SSE4_2;
}
else if (InstructionSet::SSE41())
{
HostISAVectorLength = 128;
HISA = HostISA::SSE4_1;
}
else if (InstructionSet::SSSE3())
{
HostISAVectorLength = 128;
HISA = HostISA::SSSE3;
}
else if (InstructionSet::SSE3())
{
HostISAVectorLength = 128;
HISA = HostISA::SSE3;
}
else if (InstructionSet::SSE2())
{
HostISAVectorLength = 128;
HISA = HostISA::SSE2;
}
else if (InstructionSet::SSE())
{
HostISAVectorLength = 128;
HISA = HostISA::SSE;
}
}
~ComplexCoreClass()
{
/*if (OwnMemManager)
{
delete MemManager;
}*/
//destructors are called automatically in the reverse order of construction.(base classes last). Do not call base class destructors
}
int length(Ta A)
{
return A.Length;
}
int length(Tca A)
{
return A.Length;
}
int nextpow2(int in)
{
int p = 0;
int check;
while (true)
{
check = pow(2, p);
if (abs(in) <= check)
return p;
p++;
}
}
Ts real(Tc A)
{
return A.real;
}
Ts Imag(Tc A)
{
return A.imag;
}
Ts Abs(Tc data)
{
return sqrt(data.real * data.real + data.imag * data.imag);
}
void FREEMEM(void** mem)
{
MemManager->FREEMEM(mem);
//DWORD t1=GetTickCount();
//if(*mem)
//{
// delete[] *mem;
//// free(*mem);
// *mem = NULL;
//}
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
}
float* AllocFloat(int ElementNumber)
{
float* temp = MemManager->AllocFloat(ElementNumber);
//DWORD t1=GetTickCount();
////double* temp = (double*)malloc(sizeof(double)*ElementNumber);
//double* temp = new double[ElementNumber]();
/////temp=(double*)MyAlloc(sizeof(double)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
double* AllocDouble(int ElementNumber)
{
double* temp = MemManager->AllocDouble(ElementNumber);
//DWORD t1=GetTickCount();
////double* temp = (double*)malloc(sizeof(double)*ElementNumber);
//double* temp = new double[ElementNumber]();
/////temp=(double*)MyAlloc(sizeof(double)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
char* AllocChar(int ElementNumber)
{
char* temp = MemManager->AllocChar(ElementNumber);
//DWORD t1=GetTickCount();
////double* temp = (double*)malloc(sizeof(double)*ElementNumber);
//double* temp = new double[ElementNumber]();
/////temp=(double*)MyAlloc(sizeof(double)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
int* AllocInt(int ElementNumber)
{
int* temp = MemManager->AllocInt(ElementNumber);
//DWORD t1=GetTickCount();
////double* temp = (double*)malloc(sizeof(double)*ElementNumber);
//double* temp = new double[ElementNumber]();
/////temp=(double*)MyAlloc(sizeof(double)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
Complex64* AllocComplex64(int ElementNumber)
{
Complex64* temp = MemManager->AllocComplex64(ElementNumber);
//DWORD t1=GetTickCount();
////Complex64* temp = (Complex64*)malloc(sizeof(Complex64)*ElementNumber);
//Complex64* temp = new Complex64[ElementNumber]();
////temp=(Complex64*)MyAlloc(sizeof(Complex64)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
Complex32* AllocComplex32(int ElementNumber)
{
Complex32* temp = MemManager->AllocComplex32(ElementNumber);
//DWORD t1=GetTickCount();
////Complex64* temp = (Complex64*)malloc(sizeof(Complex64)*ElementNumber);
//Complex64* temp = new Complex64[ElementNumber]();
////temp=(Complex64*)MyAlloc(sizeof(Complex64)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
ComplexInt* AllocComplexInt(int ElementNumber)
{
ComplexInt* temp = MemManager->AllocComplexInt(ElementNumber);
//DWORD t1=GetTickCount();
////Complex64* temp = (Complex64*)malloc(sizeof(Complex64)*ElementNumber);
//Complex64* temp = new Complex64[ElementNumber]();
////temp=(Complex64*)MyAlloc(sizeof(Complex64)*ElementNumber);
//DWORD t2=GetTickCount();
//DWORD t3=t2-t1;
//alloctime+=t3;
return temp;
}
void* AllocMem(int ElementNumber, int ElementSize)
{
void* temp = MemManager->AllocVoid(ElementNumber, ElementSize);
return temp;
}
bool OwnMemManager;
MemoryManagerClass *MemManager = NULL;
Ts* AllocMem_Single(int ElementNumber)
{
Ts* arr = NULL;
if (MemManager)
{
// arr = MemManager->this->AllocChar(ElementNumber);
arr = (Ts*)MemManager->AllocVoid(ElementNumber, sizeof(Ts));
}
else
{
arr = new Ts[ElementNumber]();
}
return arr;
}
Tc* AllocMem_Complex(int ElementNumber)
{
Tc* arr = NULL;
if (MemManager)
{
// arr = MemManager->this->AllocChar(ElementNumber);
arr = (Tc*)MemManager->AllocVoid(ElementNumber, sizeof(Tc));
}
else
{
arr = new Tc[ElementNumber]();
}
return arr;
}
bool* AllocMem_Bool(int ElementNumber)
{
bool* arr = NULL;
if (MemManager)
{
// arr = MemManager->this->AllocChar(ElementNumber);
arr = (bool*)MemManager->AllocVoid(ElementNumber, sizeof(bool));
}
else
{
arr = new bool[ElementNumber]();
}
return arr;
}
Ts CSin(Ts rad, double &offset)
{
//rad = fmod(rad, _2pi);
rad = rad - offset;
while (rad >= _2pi)
{
offset += _2pi;
rad -= _2pi;
}
while (rad <= __2pi)
{
offset -= _2pi;
rad += _2pi;
}
if (rad >= 0)
{
if (rad > pi)
{
rad -= pi;
int indx = 0;
if (rad < pi_2)
{
indx = rad* _SinStepFactor;
}
else
{
double tmp = rad* _SinStepFactor - _SinPoint;
indx = _SinPoint - tmp;
}
return _TableSin[indx] * -1;
}
else
{
int indx = 0;
if (rad < pi_2)
{
indx = rad* _SinStepFactor;
}
else
{
double tmp = rad* _SinStepFactor - _SinPoint;
indx = _SinPoint - tmp;
}
return _TableSin[indx];
}
}
else
{
rad += _2pi;
if (rad > 0)
{
if (rad > pi)
{
rad -= pi;
int indx = 0;
if (rad < pi_2)
{
indx = rad* _SinStepFactor;
}
else
{
double tmp = rad* _SinStepFactor - _SinPoint;
indx = _SinPoint - tmp;
}
return _TableSin[indx] * -1;
}
else
{
int indx = 0;
if (rad < pi_2)
{
indx = rad* _SinStepFactor;
}
else
{
double tmp = rad* _SinStepFactor - _SinPoint;
indx = _SinPoint - tmp;
}
return _TableSin[indx];
}
}
}
}
Ts CCos(Ts rad, double &offset)
{
return CSin(pi_2 - rad, offset);
}
void CSinCos(Ts rad, double &offset, Ts &sinus, Ts &cosinus)
{
rad = rad - offset;
while (rad >= _2pi)
{
offset += _2pi;
rad -= _2pi;
}
while (rad <= __2pi)
{
offset -= _2pi;
rad += _2pi;
}
if (rad >= 0)
{
if (rad > pi)
{
rad -= pi;
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// p:3p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
else
{
// 3p/2 : 2p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
}
else
{
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// 0: p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
else
{
// p/2:p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
}
}
else
{
rad += _2pi;
if (rad > 0)
{
if (rad > pi)
{
rad -= pi;
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// p:3p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
else
{
// 3p/2 : 2p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
}
else
{
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// 0: p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
else
{
// p/2:p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
}
}
}// end else
}
void CSinCos(Ts rad, Ts &sinus, Ts &cosinus)
{
while (rad >= _2pi)
{
rad -= _2pi;
}
while (rad <= __2pi)
{
rad += _2pi;
}
if (rad >= 0)
{
if (rad > pi)
{
rad -= pi;
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// p:3p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
else
{
// 3p/2 : 2p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
}
else
{
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// 0: p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
else
{
// p/2:p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
}
}
else
{
rad += _2pi;
if (rad > 0)
{
if (rad > pi)
{
rad -= pi;
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// p:3p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
else
{
// 3p/2 : 2p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin] * -1.0;
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
}
else
{
int indxsin = 0;
int indxcos = 0;
if (rad < pi_2)
{
// 0: p/2
indxsin = rad* _SinStepFactor;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos];
}
else
{
// p/2:p
double tmp = rad* _SinStepFactor - _SinPoint;
indxsin = _SinPoint - tmp;
sinus = _TableSin[indxsin];
indxcos = _SinPoint - indxsin;
cosinus = _TableSin[indxcos] * -1.0;
}
}
}
}// end else
}
Tc MulAtoConjB(Tc A, Tc B)
{
Tc tmp;
tmp.real = (A.real * B.real) + (A.imag * B.imag);
tmp.imag = (A.imag * B.real) - (A.real * B.imag);
return tmp;
}
void MulAtoConjB_inplace(Tc &A, Tc B)
{
Ts re = (A.real * B.real) + (A.imag * B.imag);
A.imag = (A.imag * B.real) - (A.real * B.imag);
A.real = re;
}
private:
int _SinPoint;
static float *_TableSin;
double _SinStepFactor;
static MemoryManagerClass *DefaultMemManager;// because all child class call their parent(this class) default constructor . this member should be static to avoid creating multiple MemManager object in different child.
void InitpWelchVars()
{
if (_pWelchWindow1024d == nullptr)
{
double Window1024[] = { 0.0800000000000000, 0.0800086763075893, 0.0800347049030599, 0.0800780848045333, 0.0801388143755861, 0.0802168913253120, 0.0803123127084083, 0.0804250749252868, 0.0805551737222099, 0.0807026041914506, 0.0808673607714782, 0.0810494372471675, 0.0812488267500337, 0.0814655217584913, 0.0816995140981380, 0.0819507949420629, 0.0822193548111794, 0.0825051835745831, 0.0828082704499337, 0.0831286040038617, 0.0834661721524002, 0.0838209621614398, 0.0841929606472102, 0.0845821535767837, 0.0849885262686060, 0.0854120633930487, 0.0858527489729886, 0.0863105663844099, 0.0867854983570313, 0.0872775269749577, 0.0877866336773560, 0.0883127992591549, 0.0888560038717702, 0.0894162270238526, 0.0899934475820612, 0.0905876437718610, 0.0911987931783435, 0.0918268727470729, 0.0924718587849557, 0.0931337269611342, 0.0938124523079046, 0.0945080092216587, 0.0952203714638499, 0.0959495121619829, 0.0966954038106273, 0.0974580182724553, 0.0982373267793034, 0.0990332999332572, 0.0998459077077604, 0.100675119448748, 0.101520903875802, 0.102383229083331, 0.103262062541777, 0.104157371098837, 0.105069120980718, 0.105997277793409, 0.106941806523981, 0.107902671541903, 0.108879836600391, 0.109873264837773, 0.110882918778879, 0.111908760336457, 0.112950750812607, 0.114008850900242, 0.115083020684573, 0.116173219644610, 0.117279406654694, 0.118401539986048, 0.119539577308352, 0.120693475691335, 0.121863191606401, 0.123048680928267, 0.124249898936629, 0.125466800317848, 0.126699339166659, 0.127947468987907, 0.129211142698293, 0.130490312628158, 0.131784930523278, 0.133094947546681, 0.134420314280496, 0.135760980727812, 0.137116896314566, 0.138488009891452, 0.139874269735845, 0.141275623553761, 0.142692018481822, 0.144123401089253, 0.145569717379901, 0.147030912794263, 0.148506932211554, 0.149997719951781, 0.151503219777844, 0.153023374897657, 0.154558127966292, 0.156107421088144, 0.157671195819107, 0.159249393168789, 0.160841953602731, 0.162448817044653, 0.164069922878723, 0.165705209951841, 0.167354616575948, 0.169018080530352, 0.170695539064075, 0.172386928898221, 0.174092186228361, 0.175811246726942, 0.177544045545715, 0.179290517318176, 0.181050596162038, 0.182824215681711, 0.184611308970811, 0.186411808614681, 0.188225646692935, 0.190052754782021, 0.191893063957801, 0.193746504798150, 0.195613007385579, 0.197492501309866, 0.199384915670721, 0.201290179080449, 0.203208219666655, 0.205138965074947, 0.207082342471668, 0.209038278546643, 0.211006699515947, 0.212987531124685, 0.214980698649795, 0.216986126902865, 0.219003740232973, 0.221033462529535, 0.223075217225184, 0.225128927298650, 0.227194515277672, 0.229271903241915, 0.231361012825915, 0.233461765222032, 0.235574081183422, 0.237697881027028, 0.239833084636586, 0.241979611465648, 0.244137380540618, 0.246306310463808, 0.248486319416508, 0.250677325162074, 0.252879245049030, 0.255091996014181, 0.257315494585756, 0.259549656886546, 0.261794398637077, 0.264049635158784, 0.266315281377208, 0.268591251825201, 0.270877460646159, 0.273173821597249, 0.275480248052673, 0.277796653006928, 0.280122949078094, 0.282459048511126, 0.284804863181167, 0.287160304596870, 0.289525283903738, 0.291899711887477, 0.294283498977357, 0.296676555249597, 0.299078790430752, 0.301490113901119, 0.303910434698159, 0.306339661519927, 0.308777702728512, 0.311224466353500, 0.313679860095439, 0.316143791329323, 0.318616167108087, 0.321096894166108, 0.323585878922732, 0.326083027485796, 0.328588245655173, 0.331101438926327, 0.333622512493876, 0.336151371255168, 0.338687919813872, 0.341232062483573, 0.343783703291380, 0.346342745981555, 0.348909094019132, 0.351482650593570, 0.354063318622396, 0.356651000754873, 0.359245599375670, 0.361847016608545, 0.364455154320037, 0.367069914123167, 0.369691197381152, 0.372318905211122, 0.374952938487854, 0.377593197847509, 0.380239583691383, 0.382891996189658, 0.385550335285176, 0.388214500697207, 0.390884391925236, 0.393559908252753, 0.396240948751049, 0.398927412283030, 0.401619197507025, 0.404316202880616, 0.407018326664461, 0.409725466926140, 0.412437521543993, 0.415154388210975, 0.417875964438519, 0.420602147560396, 0.423332834736591, 0.426067922957184, 0.428807309046231, 0.431550889665663, 0.434298561319178, 0.437050220356148, 0.439805762975528, 0.442565085229774, 0.445328083028761, 0.448094652143712, 0.450864688211129, 0.453638086736729, 0.456414743099387, 0.459194552555084, 0.461977410240854, 0.464763211178745, 0.467551850279773, 0.470343222347895, 0.473137222083966, 0.475933744089723, 0.478732682871750, 0.481533932845467, 0.484337388339106, 0.487142943597702, 0.489950492787079, 0.492759929997843, 0.495571149249382, 0.498384044493855, 0.501198509620199, 0.504014438458133, 0.506831724782157, 0.509650262315564, 0.512469944734446, 0.515290665671708, 0.518112318721079, 0.520934797441124, 0.523757995359264, 0.526581805975787, 0.529406122767869, 0.532230839193592, 0.535055848695962, 0.537881044706930, 0.540706320651411, 0.543531569951304, 0.546356686029513, 0.549181562313969, 0.552006092241648, 0.554830169262591, 0.557653686843925, 0.560476538473880, 0.563298617665808, 0.566119817962200, 0.568940032938702, 0.571759156208128, 0.574577081424475, 0.577393702286936, 0.580208912543906, 0.583022605996992, 0.585834676505023, 0.588645017988046, 0.591453524431336, 0.594260089889389, 0.597064608489922, 0.599866974437864, 0.602667082019351, 0.605464825605711, 0.608260099657448, 0.611052798728226, 0.613842817468843, 0.616630050631210, 0.619414393072317, 0.622195739758200, 0.624973985767907, 0.627749026297450, 0.630520756663764, 0.633289072308652, 0.636053868802730, 0.638815041849370, 0.641572487288629, 0.644326101101183, 0.647075779412247, 0.649821418495495, 0.652562914776974, 0.655300164839012, 0.658033065424113, 0.660761513438861, 0.663485405957802, 0.666204640227331, 0.668919113669565, 0.671628723886215, 0.674333368662447, 0.677032945970741, 0.679727353974734, 0.682416491033067, 0.685100255703218, 0.687778546745326, 0.690451263126014, 0.693118304022197, 0.695779568824889, 0.698434957142992, 0.701084368807090, 0.703727703873225, 0.706364862626666, 0.708995745585672, 0.711620253505242, 0.714238287380865, 0.716849748452248, 0.719454538207046, 0.722052558384575, 0.724643710979522, 0.727227898245639, 0.729805022699433, 0.732374987123839, 0.734937694571895, 0.737493048370390, 0.740040952123518, 0.742581309716512, 0.745114025319266, 0.747639003389958, 0.750156148678645, 0.752665366230864, 0.755166561391209, 0.757659639806904, 0.760144507431361, 0.762621070527729, 0.765089235672428, 0.767548909758676, 0.770000000000000, 0.772442413933734, 0.774876059424512, 0.777300844667738, 0.779716678193053, 0.782123468867784, 0.784521125900383, 0.786909558843849, 0.789288677599145, 0.791658392418592, 0.794018613909255, 0.796369253036321, 0.798710221126448, 0.801041429871119, 0.803362791329967, 0.805674217934098, 0.807975622489388, 0.810266918179778, 0.812548018570544, 0.814818837611563, 0.817079289640554, 0.819329289386312, 0.821568751971925, 0.823797592917974, 0.826015728145723, 0.828223073980285, 0.830419547153786, 0.832605064808500, 0.834779544499977, 0.836942904200154, 0.839095062300447, 0.841235937614831, 0.843365449382904, 0.845483517272930, 0.847590061384872, 0.849685002253406, 0.851768260850916, 0.853839758590480, 0.855899417328830, 0.857947159369301, 0.859982907464765, 0.862006584820539, 0.864018115097289, 0.866017422413904, 0.868004431350361, 0.869979066950571, 0.871941254725202, 0.873890920654497, 0.875827991191057, 0.877752393262623, 0.879664054274828, 0.881562902113939, 0.883448865149572, 0.885321872237399, 0.887181852721832, 0.889028736438684, 0.890862453717819, 0.892682935385781, 0.894490112768399, 0.896283917693384, 0.898064282492895, 0.899831140006095, 0.901584423581682, 0.903324067080407, 0.905050004877563, 0.906762171865469, 0.908460503455917, 0.910144935582615, 0.911815404703602, 0.913471847803642, 0.915114202396607, 0.916742406527827, 0.918356398776435, 0.919956118257677, 0.921541504625213, 0.923112498073392, 0.924669039339507, 0.926211069706034, 0.927738531002843, 0.929251365609394, 0.930749516456913, 0.932232927030540, 0.933701541371465, 0.935155304079036, 0.936594160312852, 0.938018055794828, 0.939426936811248, 0.940820750214785, 0.942199443426508, 0.943562964437869, 0.944911261812659, 0.946244284688955, 0.947561982781032, 0.948864306381265, 0.950151206362000, 0.951422634177411, 0.952678541865329, 0.953918882049054, 0.955143607939136, 0.956352673335148, 0.957546032627423, 0.958723640798778, 0.959885453426209, 0.961031426682569, 0.962161517338223, 0.963275682762673, 0.964373880926172, 0.965456070401308, 0.966522210364563, 0.967572260597858, 0.968606181490068, 0.969623934038516, 0.970625479850445, 0.971610781144465, 0.972579800751981, 0.973532502118591, 0.974468849305470, 0.975388806990721, 0.976292340470709, 0.977179415661373, 0.978049999099505, 0.978904057944023, 0.979741559977197, 0.980562473605875, 0.981366767862669, 0.982154412407126, 0.982925377526869, 0.983679634138724, 0.984417153789809, 0.985137908658616, 0.985841871556052, 0.986529015926472, 0.987199315848676, 0.987852746036888, 0.988489281841713, 0.989108899251060, 0.989711574891055, 0.990297286026919, 0.990866010563826, 0.991417727047736, 0.991952414666207, 0.992470053249176, 0.992970623269724, 0.993454105844810, 0.993920482735983, 0.994369736350072, 0.994801849739849, 0.995216806604667, 0.995614591291077, 0.995995188793417, 0.996358584754378, 0.996704765465546, 0.997033717867920, 0.997345429552403, 0.997639888760272, 0.997917084383619, 0.998177005965773, 0.998419643701692, 0.998644988438333, 0.998853031675001, 0.999043765563665, 0.999217182909255, 0.999373277169935, 0.999512042457350, 0.999633473536847, 0.999737565827670, 0.999824315403140, 0.999893718990795, 0.999945773972518, 0.999980478384635, 0.999997830917989, 0.999997830917989, 0.999980478384635, 0.999945773972518, 0.999893718990795, 0.999824315403140, 0.999737565827670, 0.999633473536847, 0.999512042457350, 0.999373277169935, 0.999217182909255, 0.999043765563665, 0.998853031675001, 0.998644988438333, 0.998419643701692, 0.998177005965773, 0.997917084383619, 0.997639888760272, 0.997345429552403, 0.997033717867920, 0.996704765465546, 0.996358584754378, 0.995995188793417, 0.995614591291077, 0.995216806604667, 0.994801849739849, 0.994369736350072, 0.993920482735983, 0.993454105844810, 0.992970623269724, 0.992470053249176, 0.991952414666207, 0.991417727047736, 0.990866010563826, 0.990297286026919, 0.989711574891055, 0.989108899251060, 0.988489281841713, 0.987852746036888, 0.987199315848676, 0.986529015926472, 0.985841871556052, 0.985137908658616, 0.984417153789809, 0.983679634138724, 0.982925377526869, 0.982154412407126, 0.981366767862669, 0.980562473605875, 0.979741559977197, 0.978904057944023, 0.978049999099505, 0.977179415661373, 0.976292340470709, 0.975388806990721, 0.974468849305470, 0.973532502118591, 0.972579800751981, 0.971610781144465, 0.970625479850445, 0.969623934038516, 0.968606181490068, 0.967572260597858, 0.966522210364563, 0.965456070401308, 0.964373880926172, 0.963275682762673, 0.962161517338223, 0.961031426682569, 0.959885453426209, 0.958723640798778, 0.957546032627423, 0.956352673335148, 0.955143607939136, 0.953918882049054, 0.952678541865329, 0.951422634177411, 0.950151206362000, 0.948864306381265, 0.947561982781032, 0.946244284688955, 0.944911261812659, 0.943562964437869, 0.942199443426508, 0.940820750214785, 0.939426936811248, 0.938018055794828, 0.936594160312852, 0.935155304079036, 0.933701541371465, 0.932232927030540, 0.930749516456913, 0.929251365609394, 0.927738531002843, 0.926211069706034, 0.924669039339507, 0.923112498073392, 0.921541504625213, 0.919956118257677, 0.918356398776435, 0.916742406527827, 0.915114202396607, 0.913471847803642, 0.911815404703602, 0.910144935582615, 0.908460503455917, 0.906762171865469, 0.905050004877563, 0.903324067080407, 0.901584423581682, 0.899831140006095, 0.898064282492895, 0.896283917693384, 0.894490112768399, 0.892682935385781, 0.890862453717819, 0.889028736438684, 0.887181852721832, 0.885321872237399, 0.883448865149572, 0.881562902113939, 0.879664054274828, 0.877752393262623, 0.875827991191057, 0.873890920654497, 0.871941254725202, 0.869979066950571, 0.868004431350361, 0.866017422413904, 0.864018115097289, 0.862006584820539, 0.859982907464765, 0.857947159369301, 0.855899417328830, 0.853839758590480, 0.851768260850916, 0.849685002253406, 0.847590061384872, 0.845483517272930, 0.843365449382904, 0.841235937614831, 0.839095062300447, 0.836942904200154, 0.834779544499977, 0.832605064808500, 0.830419547153786, 0.828223073980285, 0.826015728145723, 0.823797592917974, 0.821568751971925, 0.819329289386312, 0.817079289640554, 0.814818837611563, 0.812548018570544, 0.810266918179778, 0.807975622489388, 0.805674217934098, 0.803362791329967, 0.801041429871119, 0.798710221126448, 0.796369253036321, 0.794018613909255, 0.791658392418592, 0.789288677599145, 0.786909558843849, 0.784521125900383, 0.782123468867784, 0.779716678193053, 0.777300844667738, 0.774876059424512, 0.772442413933734, 0.770000000000000, 0.767548909758676, 0.765089235672428, 0.762621070527729, 0.760144507431361, 0.757659639806904, 0.755166561391209, 0.752665366230864, 0.750156148678645, 0.747639003389958, 0.745114025319266, 0.742581309716512, 0.740040952123518, 0.737493048370390, 0.734937694571895, 0.732374987123839, 0.729805022699433, 0.727227898245639, 0.724643710979522, 0.722052558384575, 0.719454538207046, 0.716849748452248, 0.714238287380865, 0.711620253505242, 0.708995745585672, 0.706364862626666, 0.703727703873225, 0.701084368807090, 0.698434957142992, 0.695779568824889, 0.693118304022197, 0.690451263126014, 0.687778546745326, 0.685100255703218, 0.682416491033067, 0.679727353974734, 0.677032945970741, 0.674333368662447, 0.671628723886215, 0.668919113669565, 0.666204640227331, 0.663485405957802, 0.660761513438861, 0.658033065424113, 0.655300164839012, 0.652562914776974, 0.649821418495495, 0.647075779412247, 0.644326101101183, 0.641572487288629, 0.638815041849370, 0.636053868802730, 0.633289072308652, 0.630520756663764, 0.627749026297450, 0.624973985767907, 0.622195739758200, 0.619414393072317, 0.616630050631210, 0.613842817468843, 0.611052798728226, 0.608260099657448, 0.605464825605711, 0.602667082019351, 0.599866974437864, 0.597064608489922, 0.594260089889389, 0.591453524431336, 0.588645017988046, 0.585834676505023, 0.583022605996992, 0.580208912543906, 0.577393702286936, 0.574577081424475, 0.571759156208128, 0.568940032938702, 0.566119817962200, 0.563298617665808, 0.560476538473880, 0.557653686843925, 0.554830169262591, 0.552006092241648, 0.549181562313969, 0.546356686029513, 0.543531569951304, 0.540706320651411, 0.537881044706930, 0.535055848695962, 0.532230839193592, 0.529406122767869, 0.526581805975787, 0.523757995359264, 0.520934797441124, 0.518112318721079, 0.515290665671708, 0.512469944734446, 0.509650262315564, 0.506831724782157, 0.504014438458133, 0.501198509620199, 0.498384044493855, 0.495571149249382, 0.492759929997843, 0.489950492787079, 0.487142943597702, 0.484337388339106, 0.481533932845467, 0.478732682871750, 0.475933744089723, 0.473137222083966, 0.470343222347895, 0.467551850279773, 0.464763211178745, 0.461977410240854, 0.459194552555084, 0.456414743099387, 0.453638086736729, 0.450864688211129, 0.448094652143712, 0.445328083028761, 0.442565085229774, 0.439805762975528, 0.437050220356148, 0.434298561319178, 0.431550889665663, 0.428807309046231, 0.426067922957184, 0.423332834736591, 0.420602147560396, 0.417875964438519, 0.415154388210975, 0.412437521543993, 0.409725466926140, 0.407018326664461, 0.404316202880616, 0.401619197507025, 0.398927412283030, 0.396240948751049, 0.393559908252753, 0.390884391925236, 0.388214500697207, 0.385550335285176, 0.382891996189658, 0.380239583691383, 0.377593197847509, 0.374952938487854, 0.372318905211122, 0.369691197381152, 0.367069914123167, 0.364455154320037, 0.361847016608545, 0.359245599375670, 0.356651000754873, 0.354063318622396, 0.351482650593570, 0.348909094019132, 0.346342745981555, 0.343783703291380, 0.341232062483573, 0.338687919813872, 0.336151371255168, 0.333622512493876, 0.331101438926327, 0.328588245655173, 0.326083027485796, 0.323585878922732, 0.321096894166108, 0.318616167108087, 0.316143791329323, 0.313679860095439, 0.311224466353500, 0.308777702728512, 0.306339661519927, 0.303910434698159, 0.301490113901119, 0.299078790430752, 0.296676555249597, 0.294283498977357, 0.291899711887477, 0.289525283903738, 0.287160304596870, 0.284804863181167, 0.282459048511126, 0.280122949078094, 0.277796653006928, 0.275480248052673, 0.273173821597249, 0.270877460646159, 0.268591251825201, 0.266315281377208, 0.264049635158784, 0.261794398637077, 0.259549656886546, 0.257315494585756, 0.255091996014181, 0.252879245049030, 0.250677325162074, 0.248486319416508, 0.246306310463808, 0.244137380540618, 0.241979611465648, 0.239833084636586, 0.237697881027028, 0.235574081183422, 0.233461765222032, 0.231361012825915, 0.229271903241915, 0.227194515277672, 0.225128927298650, 0.223075217225184, 0.221033462529535, 0.219003740232973, 0.216986126902865, 0.214980698649795, 0.212987531124685, 0.211006699515947, 0.209038278546643, 0.207082342471668, 0.205138965074947, 0.203208219666655, 0.201290179080449, 0.199384915670721, 0.197492501309866, 0.195613007385579, 0.193746504798150, 0.191893063957801, 0.190052754782021, 0.188225646692935, 0.186411808614681, 0.184611308970811, 0.182824215681711, 0.181050596162038, 0.179290517318176, 0.177544045545715, 0.175811246726942, 0.174092186228361, 0.172386928898221, 0.170695539064075, 0.169018080530352, 0.167354616575948, 0.165705209951841, 0.164069922878723, 0.162448817044653, 0.160841953602731, 0.159249393168789, 0.157671195819107, 0.156107421088144, 0.154558127966292, 0.153023374897657, 0.151503219777844, 0.149997719951781, 0.148506932211554, 0.147030912794263, 0.145569717379901, 0.144123401089253, 0.142692018481822, 0.141275623553761, 0.139874269735845, 0.138488009891452, 0.137116896314566, 0.135760980727812, 0.134420314280496, 0.133094947546681, 0.131784930523278, 0.130490312628158, 0.129211142698293, 0.127947468987907, 0.126699339166659, 0.125466800317848, 0.124249898936629, 0.123048680928267, 0.121863191606401, 0.120693475691335, 0.119539577308352, 0.118401539986048, 0.117279406654694, 0.116173219644610, 0.115083020684573, 0.114008850900242, 0.112950750812607, 0.111908760336457, 0.110882918778879, 0.109873264837773, 0.108879836600391, 0.107902671541903, 0.106941806523981, 0.105997277793409, 0.105069120980718, 0.104157371098837, 0.103262062541777, 0.102383229083331, 0.101520903875802, 0.100675119448748, 0.0998459077077604, 0.0990332999332572, 0.0982373267793034, 0.0974580182724553, 0.0966954038106273, 0.0959495121619829, 0.0952203714638499, 0.0945080092216587, 0.0938124523079046, 0.0931337269611342, 0.0924718587849557, 0.0918268727470729, 0.0911987931783435, 0.0905876437718610, 0.0899934475820612, 0.0894162270238526, 0.0888560038717702, 0.0883127992591549, 0.0877866336773560, 0.0872775269749577, 0.0867854983570313, 0.0863105663844099, 0.0858527489729886, 0.0854120633930487, 0.0849885262686060, 0.0845821535767837, 0.0841929606472102, 0.0838209621614398, 0.0834661721524002, 0.0831286040038617, 0.0828082704499337, 0.0825051835745831, 0.0822193548111794, 0.0819507949420629, 0.0816995140981380, 0.0814655217584913, 0.0812488267500337, 0.0810494372471675, 0.0808673607714782, 0.0807026041914506, 0.0805551737222099, 0.0804250749252868, 0.0803123127084083, 0.0802168913253120, 0.0801388143755861, 0.0800780848045333, 0.0800347049030599, 0.0800086763075893, 0.0800000000000000 };
double Window4096[] = { 0.0800000000000000, 0.0800005414765777, 0.0800021659050359, 0.0800048732815503, 0.0800086635997472, 0.0800135368507030, 0.0800194930229452, 0.0800265321024513, 0.0800346540726495, 0.0800438589144190, 0.0800541466060890, 0.0800655171234399, 0.0800779704397027, 0.0800915065255592, 0.0801061253491422, 0.0801218268760353, 0.0801386110692732, 0.0801564778893419, 0.0801754272941785, 0.0801954592391714, 0.0802165736771605, 0.0802387705584371, 0.0802620498307445, 0.0802864114392774, 0.0803118553266826, 0.0803383814330590, 0.0803659896959575, 0.0803946800503816, 0.0804244524287872, 0.0804553067610825, 0.0804872429746291, 0.0805202609942411, 0.0805543607421861, 0.0805895421381849, 0.0806258050994118, 0.0806631495404948, 0.0807015753735160, 0.0807410825080114, 0.0807816708509718, 0.0808233403068419, 0.0808660907775217, 0.0809099221623660, 0.0809548343581851, 0.0810008272592446, 0.0810479007572658, 0.0810960547414261, 0.0811452890983593, 0.0811956037121555, 0.0812469984643618, 0.0812994732339823, 0.0813530278974784, 0.0814076623287693, 0.0814633763992322, 0.0815201699777023, 0.0815780429304737, 0.0816369951212992, 0.0816970264113907, 0.0817581366594199, 0.0818203257215184, 0.0818835934512775, 0.0819479396997496, 0.0820133643154479, 0.0820798671443466, 0.0821474480298817, 0.0822161068129511, 0.0822858433319154, 0.0823566574225974, 0.0824285489182834, 0.0825015176497233, 0.0825755634451305, 0.0826506861301832, 0.0827268855280239, 0.0828041614592607, 0.0828825137419668, 0.0829619421916819, 0.0830424466214118, 0.0831240268416292, 0.0832066826602743, 0.0832904138827548, 0.0833752203119471, 0.0834611017481957, 0.0835480579893147, 0.0836360888305878, 0.0837251940647686, 0.0838153734820815, 0.0839066268702221, 0.0839989540143572, 0.0840923546971262, 0.0841868286986410, 0.0842823757964863, 0.0843789957657209, 0.0844766883788777, 0.0845754534059641, 0.0846752906144629, 0.0847761997693328, 0.0848781806330090, 0.0849812329654032, 0.0850853565239050, 0.0851905510633820, 0.0852968163361801, 0.0854041520921251, 0.0855125580785219, 0.0856220340401563, 0.0857325797192949, 0.0858441948556860, 0.0859568791865601, 0.0860706324466306, 0.0861854543680943, 0.0863013446806321, 0.0864183031114099, 0.0865363293850786, 0.0866554232237753, 0.0867755843471239, 0.0868968124722356, 0.0870191073137095, 0.0871424685836333, 0.0872668959915846, 0.0873923892446304, 0.0875189480473287, 0.0876465721017291, 0.0877752611073731, 0.0879050147612951, 0.0880358327580231, 0.0881677147895795, 0.0883006605454813, 0.0884346697127416, 0.0885697419758698, 0.0887058770168727, 0.0888430745152549, 0.0889813341480197, 0.0891206555896699, 0.0892610385122085, 0.0894024825851396, 0.0895449874754692, 0.0896885528477056, 0.0898331783638606, 0.0899788636834502, 0.0901256084634953, 0.0902734123585225, 0.0904222750205653, 0.0905721960991641, 0.0907231752413681, 0.0908752120917350, 0.0910283062923328, 0.0911824574827400, 0.0913376653000468, 0.0914939293788559, 0.0916512493512832, 0.0918096248469587, 0.0919690554930276, 0.0921295409141509, 0.0922910807325064, 0.0924536745677898, 0.0926173220372150, 0.0927820227555157, 0.0929477763349459, 0.0931145823852810, 0.0932824405138183, 0.0934513503253787, 0.0936213114223068, 0.0937923234044724, 0.0939643858692713, 0.0941374984116261, 0.0943116606239871, 0.0944868720963339, 0.0946631324161755, 0.0948404411685517, 0.0950187979360340, 0.0951982022987269, 0.0953786538342683, 0.0955601521178309, 0.0957426967221230, 0.0959262872173899, 0.0961109231714142, 0.0962966041495176, 0.0964833297145613, 0.0966710994269475, 0.0968599128446200, 0.0970497695230656, 0.0972406690153150, 0.0974326108719438, 0.0976255946410736, 0.0978196198683733, 0.0980146860970597, 0.0982107928678989, 0.0984079397192073, 0.0986061261868528, 0.0988053518042556, 0.0990056161023897, 0.0992069186097835, 0.0994092588525217, 0.0996126363542452, 0.0998170506361536, 0.100022501217005, 0.100228987613119, 0.100436509338375, 0.100645065904217, 0.100854656819650, 0.101065281591246, 0.101276939723143, 0.101489630717045, 0.101703354072225, 0.101918109285526, 0.102133895851362, 0.102350713261718, 0.102568561006152, 0.102787438571797, 0.103007345443361, 0.103228281103130, 0.103450245030967, 0.103673236704313, 0.103897255598192, 0.104122301185209, 0.104348372935550, 0.104575470316987, 0.104803592794877, 0.105032739832163, 0.105262910889377, 0.105494105424640, 0.105726322893662, 0.105959562749748, 0.106193824443792, 0.106429107424286, 0.106665411137314, 0.106902735026561, 0.107141078533307, 0.107380441096433, 0.107620822152420, 0.107862221135354, 0.108104637476920, 0.108348070606411, 0.108592519950726, 0.108837984934371, 0.109084464979461, 0.109331959505721, 0.109580467930488, 0.109829989668713, 0.110080524132959, 0.110332070733408, 0.110584628877856, 0.110838197971719, 0.111092777418034, 0.111348366617457, 0.111604964968270, 0.111862571866375, 0.112121186705304, 0.112380808876214, 0.112641437767889, 0.112903072766745, 0.113165713256830, 0.113429358619822, 0.113694008235037, 0.113959661479423, 0.114226317727567, 0.114493976351696, 0.114762636721674, 0.115032298205009, 0.115302960166853, 0.115574621969999, 0.115847282974889, 0.116120942539613, 0.116395600019907, 0.116671254769162, 0.116947906138417, 0.117225553476368, 0.117504196129364, 0.117783833441412, 0.118064464754177, 0.118346089406984, 0.118628706736819, 0.118912316078332, 0.119196916763835, 0.119482508123310, 0.119769089484404, 0.120056660172433, 0.120345219510386, 0.120634766818924, 0.120925301416380, 0.121216822618764, 0.121509329739765, 0.121802822090747, 0.122097298980759, 0.122392759716528, 0.122689203602469, 0.122986629940678, 0.123285038030942, 0.123584427170733, 0.123884796655217, 0.124186145777250, 0.124488473827382, 0.124791780093857, 0.125096063862620, 0.125401324417310, 0.125707561039270, 0.126014773007542, 0.126322959598876, 0.126632120087722, 0.126942253746242, 0.127253359844305, 0.127565437649490, 0.127878486427090, 0.128192505440111, 0.128507493949274, 0.128823451213019, 0.129140376487505, 0.129458269026612, 0.129777128081943, 0.130096952902826, 0.130417742736313, 0.130739496827187, 0.131062214417959, 0.131385894748873, 0.131710537057905, 0.132036140580769, 0.132362704550912, 0.132690228199523, 0.133018710755532, 0.133348151445608, 0.133678549494169, 0.134009904123374, 0.134342214553135, 0.134675480001110, 0.135009699682712, 0.135344872811103, 0.135680998597205, 0.136018076249695, 0.136356104975009, 0.136695083977343, 0.137035012458659, 0.137375889618681, 0.137717714654901, 0.138060486762577, 0.138404205134740, 0.138748868962193, 0.139094477433513, 0.139441029735051, 0.139788525050938, 0.140136962563085, 0.140486341451185, 0.140836660892713, 0.141187920062932, 0.141540118134890, 0.141893254279428, 0.142247327665175, 0.142602337458556, 0.142958282823790, 0.143315162922895, 0.143672976915687, 0.144031723959783, 0.144391403210605, 0.144752013821380, 0.145113554943142, 0.145476025724733, 0.145839425312808, 0.146203752851836, 0.146569007484099, 0.146935188349699, 0.147302294586555, 0.147670325330409, 0.148039279714827, 0.148409156871198, 0.148779955928742, 0.149151676014506, 0.149524316253369, 0.149897875768044, 0.150272353679081, 0.150647749104867, 0.151024061161628, 0.151401288963432, 0.151779431622195, 0.152158488247673, 0.152538457947475, 0.152919339827059, 0.153301132989734, 0.153683836536667, 0.154067449566878, 0.154451971177248, 0.154837400462519, 0.155223736515296, 0.155610978426047, 0.155999125283112, 0.156388176172695, 0.156778130178877, 0.157168986383609, 0.157560743866719, 0.157953401705915, 0.158346958976782, 0.158741414752791, 0.159136768105295, 0.159533018103535, 0.159930163814642, 0.160328204303637, 0.160727138633434, 0.161126965864844, 0.161527685056575, 0.161929295265236, 0.162331795545338, 0.162735184949295, 0.163139462527430, 0.163544627327974, 0.163950678397070, 0.164357614778773, 0.164765435515055, 0.165174139645805, 0.165583726208835, 0.165994194239875, 0.166405542772584, 0.166817770838545, 0.167230877467273, 0.167644861686213, 0.168059722520744, 0.168475458994182, 0.168892070127780, 0.169309554940734, 0.169727912450182, 0.170147141671208, 0.170567241616841, 0.170988211298065, 0.171410049723812, 0.171832755900972, 0.172256328834389, 0.172680767526870, 0.173106070979181, 0.173532238190053, 0.173959268156184, 0.174387159872239, 0.174815912330857, 0.175245524522650, 0.175675995436203, 0.176107324058083, 0.176539509372836, 0.176972550362992, 0.177406446009065, 0.177841195289559, 0.178276797180966, 0.178713250657773, 0.179150554692460, 0.179588708255508, 0.180027710315393, 0.180467559838598, 0.180908255789609, 0.181349797130918, 0.181792182823029, 0.182235411824457, 0.182679483091732, 0.183124395579401, 0.183570148240031, 0.184016740024210, 0.184464169880551, 0.184912436755694, 0.185361539594309, 0.185811477339098, 0.186262248930795, 0.186713853308175, 0.187166289408048, 0.187619556165270, 0.188073652512739, 0.188528577381400, 0.188984329700248, 0.189440908396330, 0.189898312394748, 0.190356540618659, 0.190815591989283, 0.191275465425900, 0.191736159845853, 0.192197674164556, 0.192660007295489, 0.193123158150207, 0.193587125638339, 0.194051908667591, 0.194517506143750, 0.194983916970685, 0.195451140050350, 0.195919174282786, 0.196388018566127, 0.196857671796597, 0.197328132868517, 0.197799400674306, 0.198271474104484, 0.198744352047673, 0.199218033390603, 0.199692517018111, 0.200167801813147, 0.200643886656772, 0.201120770428166, 0.201598452004628, 0.202076930261577, 0.202556204072557, 0.203036272309241, 0.203517133841430, 0.203998787537057, 0.204481232262191, 0.204964466881038, 0.205448490255945, 0.205933301247403, 0.206418898714047, 0.206905281512661, 0.207392448498179, 0.207880398523693, 0.208369130440446, 0.208858643097843, 0.209348935343453, 0.209840006023005, 0.210331853980399, 0.210824478057704, 0.211317877095162, 0.211812049931189, 0.212306995402381, 0.212802712343516, 0.213299199587553, 0.213796455965639, 0.214294480307110, 0.214793271439495, 0.215292828188517, 0.215793149378096, 0.216294233830352, 0.216796080365611, 0.217298687802401, 0.217802054957461, 0.218306180645742, 0.218811063680407, 0.219316702872836, 0.219823097032632, 0.220330244967619, 0.220838145483843, 0.221346797385584, 0.221856199475350, 0.222366350553882, 0.222877249420159, 0.223388894871400, 0.223901285703066, 0.224414420708862, 0.224928298680743, 0.225442918408913, 0.225958278681831, 0.226474378286212, 0.226991216007030, 0.227508790627524, 0.228027100929193, 0.228546145691809, 0.229065923693413, 0.229586433710319, 0.230107674517119, 0.230629644886683, 0.231152343590165, 0.231675769397003, 0.232199921074925, 0.232724797389949, 0.233250397106386, 0.233776718986845, 0.234303761792236, 0.234831524281770, 0.235360005212964, 0.235889203341644, 0.236419117421947, 0.236949746206326, 0.237481088445549, 0.238013142888707, 0.238545908283212, 0.239079383374804, 0.239613566907551, 0.240148457623853, 0.240684054264446, 0.241220355568405, 0.241757360273143, 0.242295067114419, 0.242833474826340, 0.243372582141362, 0.243912387790292, 0.244452890502296, 0.244994089004897, 0.245535982023981, 0.246078568283798, 0.246621846506968, 0.247165815414479, 0.247710473725694, 0.248255820158355, 0.248801853428581, 0.249348572250876, 0.249895975338129, 0.250444061401619, 0.250992829151016, 0.251542277294386, 0.252092404538193, 0.252643209587302, 0.253194691144983, 0.253746847912911, 0.254299678591175, 0.254853181878276, 0.255407356471129, 0.255962201065072, 0.256517714353864, 0.257073895029690, 0.257630741783164, 0.258188253303332, 0.258746428277674, 0.259305265392110, 0.259864763331000, 0.260424920777146, 0.260985736411802, 0.261547208914669, 0.262109336963903, 0.262672119236116, 0.263235554406380, 0.263799641148230, 0.264364378133667, 0.264929764033162, 0.265495797515657, 0.266062477248569, 0.266629801897796, 0.267197770127716, 0.267766380601191, 0.268335631979573, 0.268905522922704, 0.269476052088920, 0.270047218135056, 0.270619019716447, 0.271191455486929, 0.271764524098850, 0.272338224203064, 0.272912554448941, 0.273487513484365, 0.274063099955741, 0.274639312507999, 0.275216149784590, 0.275793610427499, 0.276371693077241, 0.276950396372868, 0.277529718951969, 0.278109659450677, 0.278690216503668, 0.279271388744170, 0.279853174803959, 0.280435573313368, 0.281018582901288, 0.281602202195170, 0.282186429821031, 0.282771264403457, 0.283356704565601, 0.283942748929194, 0.284529396114545, 0.285116644740539, 0.285704493424651, 0.286292940782939, 0.286881985430054, 0.287471625979240, 0.288061861042338, 0.288652689229789, 0.289244109150638, 0.289836119412538, 0.290428718621751, 0.291021905383152, 0.291615678300233, 0.292210035975108, 0.292804977008512, 0.293400499999808, 0.293996603546988, 0.294593286246677, 0.295190546694138, 0.295788383483273, 0.296386795206626, 0.296985780455390, 0.297585337819406, 0.298185465887168, 0.298786163245827, 0.299387428481194, 0.299989260177743, 0.300591656918614, 0.301194617285616, 0.301798139859232, 0.302402223218623, 0.303006865941627, 0.303612066604766, 0.304217823783250, 0.304824136050976, 0.305431001980537, 0.306038420143221, 0.306646389109017, 0.307254907446614, 0.307863973723413, 0.308473586505520, 0.309083744357758, 0.309694445843665, 0.310305689525499, 0.310917473964243, 0.311529797719604, 0.312142659350024, 0.312756057412673, 0.313369990463464, 0.313984457057045, 0.314599455746812, 0.315214985084906, 0.315831043622220, 0.316447629908401, 0.317064742491853, 0.317682379919741, 0.318300540737994, 0.318919223491310, 0.319538426723157, 0.320158148975780, 0.320778388790198, 0.321399144706216, 0.322020415262421, 0.322642198996188, 0.323264494443688, 0.323887300139882, 0.324510614618533, 0.325134436412205, 0.325758764052269, 0.326383596068903, 0.327008930991100, 0.327634767346666, 0.328261103662231, 0.328887938463242, 0.329515270273978, 0.330143097617545, 0.330771419015883, 0.331400232989768, 0.332029538058819, 0.332659332741495, 0.333289615555106, 0.333920385015810, 0.334551639638622, 0.335183377937412, 0.335815598424913, 0.336448299612723, 0.337081480011307, 0.337715138130003, 0.338349272477024, 0.338983881559462, 0.339618963883290, 0.340254517953369, 0.340890542273449, 0.341527035346170, 0.342163995673073, 0.342801421754595, 0.343439312090080, 0.344077665177775, 0.344716479514842, 0.345355753597354, 0.345995485920302, 0.346635674977600, 0.347276319262084, 0.347917417265521, 0.348558967478608, 0.349200968390978, 0.349843418491203, 0.350486316266798, 0.351129660204222, 0.351773448788887, 0.352417680505155, 0.353062353836346, 0.353707467264742, 0.354353019271585, 0.354999008337088, 0.355645432940434, 0.356292291559780, 0.356939582672262, 0.357587304753998, 0.358235456280089, 0.358884035724629, 0.359533041560701, 0.360182472260387, 0.360832326294766, 0.361482602133923, 0.362133298246947, 0.362784413101941, 0.363435945166020, 0.364087892905317, 0.364740254784986, 0.365393029269208, 0.366046214821190, 0.366699809903174, 0.367353812976435, 0.368008222501289, 0.368663036937096, 0.369318254742262, 0.369973874374241, 0.370629894289545, 0.371286312943741, 0.371943128791458, 0.372600340286391, 0.373257945881301, 0.373915944028023, 0.374574333177468, 0.375233111779626, 0.375892278283569, 0.376551831137458, 0.377211768788544, 0.377872089683169, 0.378532792266778, 0.379193874983913, 0.379855336278223, 0.380517174592465, 0.381179388368509, 0.381841976047342, 0.382504936069067, 0.383168266872916, 0.383831966897244, 0.384496034579537, 0.385160468356417, 0.385825266663643, 0.386490427936118, 0.387155950607886, 0.387821833112145, 0.388488073881243, 0.389154671346686, 0.389821623939139, 0.390488930088431, 0.391156588223560, 0.391824596772694, 0.392492954163177, 0.393161658821532, 0.393830709173462, 0.394500103643859, 0.395169840656803, 0.395839918635570, 0.396510336002629, 0.397181091179655, 0.397852182587524, 0.398523608646322, 0.399195367775348, 0.399867458393114, 0.400539878917354, 0.401212627765025, 0.401885703352310, 0.402559104094625, 0.403232828406617, 0.403906874702175, 0.404581241394427, 0.405255926895748, 0.405930929617764, 0.406606247971350, 0.407281880366643, 0.407957825213036, 0.408634080919190, 0.409310645893032, 0.409987518541762, 0.410664697271855, 0.411342180489065, 0.412019966598432, 0.412698054004279, 0.413376441110221, 0.414055126319170, 0.414734108033332, 0.415413384654218, 0.416092954582643, 0.416772816218733, 0.417452967961927, 0.418133408210979, 0.418814135363967, 0.419495147818290, 0.420176443970678, 0.420858022217193, 0.421539880953230, 0.422222018573528, 0.422904433472167, 0.423587124042573, 0.424270088677526, 0.424953325769159, 0.425636833708963, 0.426320610887792, 0.427004655695867, 0.427688966522779, 0.428373541757491, 0.429058379788344, 0.429743479003062, 0.430428837788753, 0.431114454531912, 0.431800327618431, 0.432486455433594, 0.433172836362089, 0.433859468788004, 0.434546351094840, 0.435233481665506, 0.435920858882328, 0.436608481127050, 0.437296346780841, 0.437984454224296, 0.438672801837440, 0.439361387999734, 0.440050211090077, 0.440739269486809, 0.441428561567719, 0.442118085710042, 0.442807840290469, 0.443497823685148, 0.444188034269689, 0.444878470419166, 0.445569130508123, 0.446260012910575, 0.446951116000016, 0.447642438149419, 0.448333977731242, 0.449025733117430, 0.449717702679421, 0.450409884788149, 0.451102277814046, 0.451794880127048, 0.452487690096601, 0.453180706091658, 0.453873926480690, 0.454567349631685, 0.455260973912155, 0.455954797689137, 0.456648819329199, 0.457343037198444, 0.458037449662513, 0.458732055086586, 0.459426851835394, 0.460121838273212, 0.460817012763872, 0.461512373670763, 0.462207919356833, 0.462903648184596, 0.463599558516137, 0.464295648713111, 0.464991917136750, 0.465688362147868, 0.466384982106861, 0.467081775373714, 0.467778740308006, 0.468475875268908, 0.469173178615195, 0.469870648705241, 0.470568283897032, 0.471266082548162, 0.471964043015841, 0.472662163656899, 0.473360442827789, 0.474058878884588, 0.474757470183008, 0.475456215078392, 0.476155111925722, 0.476854159079625, 0.477553354894370, 0.478252697723878, 0.478952185921726, 0.479651817841145, 0.480351591835030, 0.481051506255941, 0.481751559456107, 0.482451749787430, 0.483152075601491, 0.483852535249549, 0.484553127082551, 0.485253849451132, 0.485954700705618, 0.486655679196033, 0.487356783272101, 0.488058011283252, 0.488759361578620, 0.489460832507057, 0.490162422417126, 0.490864129657112, 0.491565952575023, 0.492267889518597, 0.492969938835300, 0.493672098872336, 0.494374367976648, 0.495076744494921, 0.495779226773588, 0.496481813158833, 0.497184501996595, 0.497887291632571, 0.498590180412222, 0.499293166680775, 0.499996248783227, 0.500699425064350, 0.501402693868694, 0.502106053540591, 0.502809502424159, 0.503513038863307, 0.504216661201737, 0.504920367782949, 0.505624156950245, 0.506328027046731, 0.507031976415324, 0.507736003398755, 0.508440106339571, 0.509144283580139, 0.509848533462654, 0.510552854329138, 0.511257244521447, 0.511961702381273, 0.512666226250148, 0.513370814469451, 0.514075465380407, 0.514780177324094, 0.515484948641448, 0.516189777673264, 0.516894662760200, 0.517599602242783, 0.518304594461413, 0.519009637756364, 0.519714730467792, 0.520419870935733, 0.521125057500116, 0.521830288500756, 0.522535562277366, 0.523240877169559, 0.523946231516850, 0.524651623658660, 0.525357051934324, 0.526062514683090, 0.526768010244125, 0.527473536956519, 0.528179093159288, 0.528884677191379, 0.529590287391675, 0.530295922098995, 0.531001579652101, 0.531707258389703, 0.532412956650457, 0.533118672772979, 0.533824405095837, 0.534530151957565, 0.535235911696661, 0.535941682651593, 0.536647463160801, 0.537353251562707, 0.538059046195709, 0.538764845398194, 0.539470647508537, 0.540176450865105, 0.540882253806265, 0.541588054670383, 0.542293851795829, 0.542999643520983, 0.543705428184239, 0.544411204124006, 0.545116969678713, 0.545822723186815, 0.546528462986793, 0.547234187417164, 0.547939894816479, 0.548645583523328, 0.549351251876346, 0.550056898214217, 0.550762520875676, 0.551468118199514, 0.552173688524580, 0.552879230189788, 0.553584741534121, 0.554290220896630, 0.554995666616444, 0.555701077032770, 0.556406450484899, 0.557111785312207, 0.557817079854163, 0.558522332450331, 0.559227541440372, 0.559932705164050, 0.560637821961237, 0.561342890171914, 0.562047908136178, 0.562752874194243, 0.563457786686445, 0.564162643953246, 0.564867444335240, 0.565572186173153, 0.566276867807849, 0.566981487580334, 0.567686043831761, 0.568390534903429, 0.569094959136795, 0.569799314873470, 0.570503600455227, 0.571207814224006, 0.571911954521913, 0.572616019691228, 0.573320008074411, 0.574023918014098, 0.574727747853112, 0.575431495934465, 0.576135160601361, 0.576838740197201, 0.577542233065583, 0.578245637550314, 0.578948951995407, 0.579652174745085, 0.580355304143790, 0.581058338536182, 0.581761276267145, 0.582464115681791, 0.583166855125463, 0.583869492943739, 0.584572027482437, 0.585274457087619, 0.585976780105591, 0.586678994882913, 0.587381099766399, 0.588083093103121, 0.588784973240413, 0.589486738525878, 0.590188387307387, 0.590889917933087, 0.591591328751401, 0.592292618111037, 0.592993784360986, 0.593694825850531, 0.594395740929247, 0.595096527947008, 0.595797185253990, 0.596497711200671, 0.597198104137843, 0.597898362416608, 0.598598484388385, 0.599298468404915, 0.599998312818263, 0.600698015980825, 0.601397576245325, 0.602096991964828, 0.602796261492737, 0.603495383182798, 0.604194355389109, 0.604893176466116, 0.605591844768622, 0.606290358651791, 0.606988716471149, 0.607686916582589, 0.608384957342378, 0.609082837107156, 0.609780554233941, 0.610478107080135, 0.611175494003529, 0.611872713362302, 0.612569763515028, 0.613266642820678, 0.613963349638629, 0.614659882328661, 0.615356239250963, 0.616052418766142, 0.616748419235219, 0.617444239019638, 0.618139876481267, 0.618835329982406, 0.619530597885785, 0.620225678554573, 0.620920570352380, 0.621615271643257, 0.622309780791709, 0.623004096162690, 0.623698216121610, 0.624392139034340, 0.625085863267215, 0.625779387187038, 0.626472709161083, 0.627165827557099, 0.627858740743315, 0.628551447088443, 0.629243944961682, 0.629936232732721, 0.630628308771745, 0.631320171449436, 0.632011819136981, 0.632703250206068, 0.633394463028901, 0.634085455978194, 0.634776227427179, 0.635466775749611, 0.636157099319769, 0.636847196512462, 0.637537065703030, 0.638226705267353, 0.638916113581848, 0.639605289023481, 0.640294229969760, 0.640982934798751, 0.641671401889073, 0.642359629619905, 0.643047616370989, 0.643735360522635, 0.644422860455725, 0.645110114551714, 0.645797121192638, 0.646483878761114, 0.647170385640345, 0.647856640214125, 0.648542640866843, 0.649228385983483, 0.649913873949634, 0.650599103151488, 0.651284071975847, 0.651968778810126, 0.652653222042356, 0.653337400061190, 0.654021311255905, 0.654704954016404, 0.655388326733226, 0.656071427797542, 0.656754255601165, 0.657436808536550, 0.658119084996799, 0.658801083375666, 0.659482802067559, 0.660164239467544, 0.660845393971350, 0.661526263975372, 0.662206847876675, 0.662887144072996, 0.663567150962751, 0.664246866945036, 0.664926290419633, 0.665605419787012, 0.666284253448335, 0.666962789805460, 0.667641027260947, 0.668318964218058, 0.668996599080761, 0.669673930253739, 0.670350956142386, 0.671027675152817, 0.671704085691870, 0.672380186167107, 0.673055974986821, 0.673731450560040, 0.674406611296528, 0.675081455606790, 0.675755981902077, 0.676430188594388, 0.677104074096475, 0.677777636821845, 0.678450875184766, 0.679123787600269, 0.679796372484154, 0.680468628252989, 0.681140553324119, 0.681812146115667, 0.682483405046540, 0.683154328536427, 0.683824915005810, 0.684495162875965, 0.685165070568961, 0.685834636507672, 0.686503859115775, 0.687172736817755, 0.687841268038910, 0.688509451205352, 0.689177284744014, 0.689844767082652, 0.690511896649848, 0.691178671875015, 0.691845091188399, 0.692511153021087, 0.693176855805005, 0.693842197972923, 0.694507177958465, 0.695171794196102, 0.695836045121165, 0.696499929169843, 0.697163444779192, 0.697826590387130, 0.698489364432451, 0.699151765354821, 0.699813791594786, 0.700475441593772, 0.701136713794095, 0.701797606638954, 0.702458118572447, 0.703118248039567, 0.703777993486204, 0.704437353359158, 0.705096326106131, 0.705754910175741, 0.706413104017518, 0.707070906081913, 0.707728314820297, 0.708385328684968, 0.709041946129155, 0.709698165607018, 0.710353985573655, 0.711009404485104, 0.711664420798349, 0.712319032971320, 0.712973239462898, 0.713627038732921, 0.714280429242184, 0.714933409452446, 0.715585977826429, 0.716238132827829, 0.716889872921311, 0.717541196572520, 0.718192102248078, 0.718842588415594, 0.719492653543664, 0.720142296101873, 0.720791514560805, 0.721440307392038, 0.722088673068156, 0.722736610062745, 0.723384116850402, 0.724031191906738, 0.724677833708378, 0.725324040732969, 0.725969811459180, 0.726615144366709, 0.727260037936282, 0.727904490649662, 0.728548500989648, 0.729192067440081, 0.729835188485849, 0.730477862612885, 0.731120088308178, 0.731761864059769, 0.732403188356760, 0.733044059689317, 0.733684476548670, 0.734324437427121, 0.734963940818045, 0.735602985215893, 0.736241569116197, 0.736879691015574, 0.737517349411728, 0.738154542803455, 0.738791269690643, 0.739427528574282, 0.740063317956462, 0.740698636340378, 0.741333482230334, 0.741967854131746, 0.742601750551148, 0.743235169996192, 0.743868110975651, 0.744500571999428, 0.745132551578553, 0.745764048225191, 0.746395060452644, 0.747025586775353, 0.747655625708905, 0.748285175770033, 0.748914235476621, 0.749542803347708, 0.750170877903491, 0.750798457665327, 0.751425541155740, 0.752052126898419, 0.752678213418230, 0.753303799241210, 0.753928882894575, 0.754553462906726, 0.755177537807248, 0.755801106126913, 0.756424166397691, 0.757046717152742, 0.757668756926430, 0.758290284254319, 0.758911297673183, 0.759531795721002, 0.760151776936971, 0.760771239861502, 0.761390183036227, 0.762008605004001, 0.762626504308907, 0.763243879496259, 0.763860729112602, 0.764477051705721, 0.765092845824642, 0.765708110019633, 0.766322842842211, 0.766937042845144, 0.767550708582454, 0.768163838609421, 0.768776431482586, 0.769388485759754, 0.770000000000000, 0.770610972763668, 0.771221402612378, 0.771831288109029, 0.772440627817798, 0.773049420304153, 0.773657664134843, 0.774265357877916, 0.774872500102708, 0.775479089379860, 0.776085124281309, 0.776690603380302, 0.777295525251390, 0.777899888470440, 0.778503691614631, 0.779106933262463, 0.779709611993756, 0.780311726389657, 0.780913275032639, 0.781514256506509, 0.782114669396410, 0.782714512288821, 0.783313783771565, 0.783912482433809, 0.784510606866070, 0.785108155660215, 0.785705127409467, 0.786301520708409, 0.786897334152983, 0.787492566340498, 0.788087215869632, 0.788681281340432, 0.789274761354323, 0.789867654514107, 0.790459959423967, 0.791051674689472, 0.791642798917579, 0.792233330716635, 0.792823268696384, 0.793412611467967, 0.794001357643926, 0.794589505838206, 0.795177054666164, 0.795764002744564, 0.796350348691586, 0.796936091126828, 0.797521228671307, 0.798105759947467, 0.798689683579176, 0.799272998191736, 0.799855702411878, 0.800437794867776, 0.801019274189040, 0.801600139006724, 0.802180387953329, 0.802760019662808, 0.803339032770565, 0.803917425913459, 0.804495197729812, 0.805072346859406, 0.805648871943490, 0.806224771624784, 0.806800044547476, 0.807374689357233, 0.807948704701200, 0.808522089228003, 0.809094841587755, 0.809666960432055, 0.810238444413995, 0.810809292188161, 0.811379502410637, 0.811949073739007, 0.812518004832361, 0.813086294351295, 0.813653940957916, 0.814220943315844, 0.814787300090215, 0.815353009947688, 0.815918071556440, 0.816482483586180, 0.817046244708141, 0.817609353595092, 0.818171808921334, 0.818733609362712, 0.819294753596607, 0.819855240301949, 0.820415068159214, 0.820974235850428, 0.821532742059175, 0.822090585470593, 0.822647764771381, 0.823204278649803, 0.823760125795687, 0.824315304900433, 0.824869814657013, 0.825423653759973, 0.825976820905442, 0.826529314791127, 0.827081134116321, 0.827632277581907, 0.828182743890357, 0.828732531745737, 0.829281639853713, 0.829830066921548, 0.830377811658110, 0.830924872773874, 0.831471248980922, 0.832016938992952, 0.832561941525274, 0.833106255294818, 0.833649879020136, 0.834192811421404, 0.834735051220426, 0.835276597140635, 0.835817447907099, 0.836357602246523, 0.836897058887251, 0.837435816559268, 0.837973873994207, 0.838511229925347, 0.839047883087623, 0.839583832217618, 0.840119076053577, 0.840653613335406, 0.841187442804671, 0.841720563204607, 0.842252973280116, 0.842784671777776, 0.843315657445836, 0.843845929034225, 0.844375485294555, 0.844904324980120, 0.845432446845900, 0.845959849648566, 0.846486532146484, 0.847012493099713, 0.847537731270010, 0.848062245420837, 0.848586034317359, 0.849109096726446, 0.849631431416682, 0.850153037158363, 0.850673912723499, 0.851194056885823, 0.851713468420785, 0.852232146105565, 0.852750088719067, 0.853267295041927, 0.853783763856513, 0.854299493946932, 0.854814484099028, 0.855328733100387, 0.855842239740341, 0.856355002809968, 0.856867021102099, 0.857378293411315, 0.857888818533958, 0.858398595268124, 0.858907622413674, 0.859415898772233, 0.859923423147193, 0.860430194343717, 0.860936211168741, 0.861441472430977, 0.861945976940916, 0.862449723510829, 0.862952710954774, 0.863454938088594, 0.863956403729923, 0.864457106698188, 0.864957045814611, 0.865456219902211, 0.865954627785812, 0.866452268292036, 0.866949140249318, 0.867445242487897, 0.867940573839827, 0.868435133138976, 0.868928919221030, 0.869421930923495, 0.869914167085700, 0.870405626548801, 0.870896308155780, 0.871386210751452, 0.871875333182467, 0.872363674297309, 0.872851232946305, 0.873338007981619, 0.873823998257266, 0.874309202629103, 0.874793619954840, 0.875277249094040, 0.875760088908121, 0.876242138260360, 0.876723396015892, 0.877203861041720, 0.877683532206710, 0.878162408381599, 0.878640488438994, 0.879117771253377, 0.879594255701107, 0.880069940660422, 0.880544825011444, 0.881018907636176, 0.881492187418513, 0.881964663244238, 0.882436334001024, 0.882907198578445, 0.883377255867969, 0.883846504762965, 0.884314944158707, 0.884782572952371, 0.885249390043046, 0.885715394331729, 0.886180584721332, 0.886644960116681, 0.887108519424522, 0.887571261553524, 0.888033185414277, 0.888494289919299, 0.888954573983037, 0.889414036521868, 0.889872676454105, 0.890330492699996, 0.890787484181730, 0.891243649823436, 0.891698988551188, 0.892153499293006, 0.892607180978861, 0.893060032540675, 0.893512052912322, 0.893963241029636, 0.894413595830410, 0.894863116254397, 0.895311801243316, 0.895759649740851, 0.896206660692658, 0.896652833046362, 0.897098165751565, 0.897542657759842, 0.897986308024751, 0.898429115501831, 0.898871079148602, 0.899312197924575, 0.899752470791246, 0.900191896712106, 0.900630474652638, 0.901068203580320, 0.901505082464633, 0.901941110277054, 0.902376285991069, 0.902810608582165, 0.903244077027841, 0.903676690307605, 0.904108447402979, 0.904539347297502, 0.904969388976727, 0.905398571428233, 0.905826893641617, 0.906254354608503, 0.906680953322544, 0.907106688779422, 0.907531559976849, 0.907955565914575, 0.908378705594385, 0.908800978020106, 0.909222382197602, 0.909642917134786, 0.910062581841615, 0.910481375330094, 0.910899296614282, 0.911316344710287, 0.911732518636277, 0.912147817412476, 0.912562240061168, 0.912975785606700, 0.913388453075485, 0.913800241496002, 0.914211149898799, 0.914621177316497, 0.915030322783790, 0.915438585337451, 0.915845964016327, 0.916252457861350, 0.916658065915532, 0.917062787223974, 0.917466620833860, 0.917869565794468, 0.918271621157167, 0.918672785975418, 0.919073059304781, 0.919472440202915, 0.919870927729578, 0.920268520946633, 0.920665218918047, 0.921061020709896, 0.921455925390365, 0.921849932029752, 0.922243039700468, 0.922635247477040, 0.923026554436115, 0.923416959656460, 0.923806462218966, 0.924195061206647, 0.924582755704646, 0.924969544800235, 0.925355427582817, 0.925740403143928, 0.926124470577243, 0.926507628978571, 0.926889877445863, 0.927271215079213, 0.927651640980858, 0.928031154255182, 0.928409754008717, 0.928787439350146, 0.929164209390305, 0.929540063242184, 0.929915000020933, 0.930289018843855, 0.930662118830421, 0.931034299102259, 0.931405558783168, 0.931775896999109, 0.932145312878215, 0.932513805550792, 0.932881374149315, 0.933248017808440, 0.933613735664995, 0.933978526857991, 0.934342390528621, 0.934705325820259, 0.935067331878467, 0.935428407850992, 0.935788552887775, 0.936147766140944, 0.936506046764823, 0.936863393915931, 0.937219806752986, 0.937575284436904, 0.937929826130803, 0.938283431000004, 0.938636098212036, 0.938987826936631, 0.939338616345735, 0.939688465613503, 0.940037373916304, 0.940385340432721, 0.940732364343556, 0.941078444831830, 0.941423581082783, 0.941767772283880, 0.942111017624810, 0.942453316297490, 0.942794667496063, 0.943135070416907, 0.943474524258627, 0.943813028222066, 0.944150581510303, 0.944487183328655, 0.944822832884677, 0.945157529388168, 0.945491272051170, 0.945824060087971, 0.946155892715107, 0.946486769151360, 0.946816688617767, 0.947145650337617, 0.947473653536452, 0.947800697442072, 0.948126781284536, 0.948451904296161, 0.948776065711529, 0.949099264767483, 0.949421500703134, 0.949742772759859, 0.950063080181304, 0.950382422213386, 0.950700798104297, 0.951018207104502, 0.951334648466740, 0.951650121446032, 0.951964625299676, 0.952278159287253, 0.952590722670627, 0.952902314713946, 0.953212934683648, 0.953522581848454, 0.953831255479381, 0.954138954849734, 0.954445679235113, 0.954751427913414, 0.955056200164829, 0.955359995271849, 0.955662812519266, 0.955964651194174, 0.956265510585969, 0.956565389986356, 0.956864288689343, 0.957162205991251, 0.957459141190708, 0.957755093588656, 0.958050062488351, 0.958344047195362, 0.958637047017578, 0.958929061265204, 0.959220089250768, 0.959510130289118, 0.959799183697427, 0.960087248795190, 0.960374324904233, 0.960660411348707, 0.960945507455094, 0.961229612552209, 0.961512725971197, 0.961794847045541, 0.962075975111058, 0.962356109505902, 0.962635249570570, 0.962913394647896, 0.963190544083059, 0.963466697223581, 0.963741853419329, 0.964016012022517, 0.964289172387710, 0.964561333871820, 0.964832495834112, 0.965102657636205, 0.965371818642071, 0.965639978218039, 0.965907135732794, 0.966173290557384, 0.966438442065213, 0.966702589632050, 0.966965732636026, 0.967227870457639, 0.967489002479751, 0.967749128087593, 0.968008246668766, 0.968266357613240, 0.968523460313360, 0.968779554163841, 0.969034638561777, 0.969288712906635, 0.969541776600262, 0.969793829046885, 0.970044869653109, 0.970294897827923, 0.970543912982699, 0.970791914531195, 0.971038901889554, 0.971284874476306, 0.971529831712372, 0.971773773021063, 0.972016697828080, 0.972258605561518, 0.972499495651868, 0.972739367532014, 0.972978220637240, 0.973216054405226, 0.973452868276054, 0.973688661692204, 0.973923434098562, 0.974157184942415, 0.974389913673457, 0.974621619743786, 0.974852302607910, 0.975081961722745, 0.975310596547616, 0.975538206544260, 0.975764791176829, 0.975990349911885, 0.976214882218408, 0.976438387567795, 0.976660865433857, 0.976882315292828, 0.977102736623361, 0.977322128906528, 0.977540491625828, 0.977757824267179, 0.977974126318929, 0.978189397271847, 0.978403636619135, 0.978616843856419, 0.978829018481757, 0.979040159995638, 0.979250267900984, 0.979459341703147, 0.979667380909918, 0.979874385031520, 0.980080353580616, 0.980285286072303, 0.980489182024122, 0.980692040956050, 0.980893862390509, 0.981094645852359, 0.981294390868909, 0.981493096969908, 0.981690763687555, 0.981887390556492, 0.982082977113812, 0.982277522899056, 0.982471027454216, 0.982663490323733, 0.982854911054504, 0.983045289195876, 0.983234624299653, 0.983422915920093, 0.983610163613911, 0.983796366940281, 0.983981525460833, 0.984165638739660, 0.984348706343312, 0.984530727840805, 0.984711702803615, 0.984891630805681, 0.985070511423410, 0.985248344235672, 0.985425128823805, 0.985600864771615, 0.985775551665376, 0.985949189093832, 0.986121776648198, 0.986293313922160, 0.986463800511878, 0.986633236015984, 0.986801620035585, 0.986968952174264, 0.987135232038079, 0.987300459235568, 0.987464633377744, 0.987627754078102, 0.987789820952615, 0.987950833619737, 0.988110791700406, 0.988269694818040, 0.988427542598543, 0.988584334670302, 0.988740070664190, 0.988894750213566, 0.989048372954277, 0.989200938524657, 0.989352446565528, 0.989502896720204, 0.989652288634488, 0.989800621956674, 0.989947896337551, 0.990094111430396, 0.990239266890985, 0.990383362377585, 0.990526397550961, 0.990668372074371, 0.990809285613575, 0.990949137836825, 0.991087928414876, 0.991225657020980, 0.991362323330891, 0.991497927022862, 0.991632467777649, 0.991765945278510, 0.991898359211206, 0.992029709264002, 0.992159995127667, 0.992289216495478, 0.992417373063214, 0.992544464529164, 0.992670490594123, 0.992795450961395, 0.992919345336792, 0.993042173428637, 0.993163934947762, 0.993284629607510, 0.993404257123737, 0.993522817214810, 0.993640309601609, 0.993756734007528, 0.993872090158476, 0.993986377782876, 0.994099596611666, 0.994211746378302, 0.994322826818756, 0.994432837671516, 0.994541778677591, 0.994649649580506, 0.994756450126307, 0.994862180063559, 0.994966839143348, 0.995070427119280, 0.995172943747484, 0.995274388786610, 0.995374761997832, 0.995474063144847, 0.995572291993876, 0.995669448313663, 0.995765531875478, 0.995860542453118, 0.995954479822904, 0.996047343763684, 0.996139134056834, 0.996229850486257, 0.996319492838384, 0.996408060902175, 0.996495554469118, 0.996581973333234, 0.996667317291069, 0.996751586141704, 0.996834779686749, 0.996916897730346, 0.996997940079169, 0.997077906542424, 0.997156796931851, 0.997234611061721, 0.997311348748842, 0.997387009812555, 0.997461594074733, 0.997535101359789, 0.997607531494666, 0.997678884308848, 0.997749159634352, 0.997818357305732, 0.997886477160081, 0.997953519037027, 0.998019482778737, 0.998084368229917, 0.998148175237810, 0.998210903652198, 0.998272553325405, 0.998333124112290, 0.998392615870256, 0.998451028459244, 0.998508361741737, 0.998564615582758, 0.998619789849871, 0.998673884413184, 0.998726899145343, 0.998778833921540, 0.998829688619507, 0.998879463119519, 0.998928157304396, 0.998975771059498, 0.999022304272732, 0.999067756834548, 0.999112128637937, 0.999155419578439, 0.999197629554135, 0.999238758465654, 0.999278806216167, 0.999317772711393, 0.999355657859594, 0.999392461571579, 0.999428183760704, 0.999462824342870, 0.999496383236525, 0.999528860362661, 0.999560255644821, 0.999590569009092, 0.999619800384109, 0.999647949701055, 0.999675016893657, 0.999701001898195, 0.999725904653492, 0.999749725100923, 0.999772463184406, 0.999794118850412, 0.999814692047957, 0.999834182728607, 0.999852590846477, 0.999869916358229, 0.999886159223075, 0.999901319402774, 0.999915396861636, 0.999928391566520, 0.999940303486832, 0.999951132594530, 0.999960878864118, 0.999969542272651, 0.999977122799734, 0.999983620427520, 0.999989035140713, 0.999993366926564, 0.999996615774875, 0.999998781677999, 0.999999864630836, 0.999999864630836, 0.999998781677999, 0.999996615774875, 0.999993366926564, 0.999989035140713, 0.999983620427520, 0.999977122799734, 0.999969542272651, 0.999960878864118, 0.999951132594530, 0.999940303486832, 0.999928391566520, 0.999915396861636, 0.999901319402774, 0.999886159223075, 0.999869916358229, 0.999852590846477, 0.999834182728607, 0.999814692047957, 0.999794118850412, 0.999772463184406, 0.999749725100923, 0.999725904653492, 0.999701001898195, 0.999675016893657, 0.999647949701055, 0.999619800384109, 0.999590569009092, 0.999560255644821, 0.999528860362661, 0.999496383236525, 0.999462824342870, 0.999428183760704, 0.999392461571579, 0.999355657859594, 0.999317772711393, 0.999278806216167, 0.999238758465654, 0.999197629554135, 0.999155419578439, 0.999112128637937, 0.999067756834548, 0.999022304272732, 0.998975771059498, 0.998928157304396, 0.998879463119519, 0.998829688619507, 0.998778833921540, 0.998726899145343, 0.998673884413184, 0.998619789849871, 0.998564615582758, 0.998508361741737, 0.998451028459244, 0.998392615870256, 0.998333124112290, 0.998272553325405, 0.998210903652198, 0.998148175237810, 0.998084368229917, 0.998019482778737, 0.997953519037027, 0.997886477160081, 0.997818357305732, 0.997749159634352, 0.997678884308848, 0.997607531494666, 0.997535101359789, 0.997461594074733, 0.997387009812555, 0.997311348748842, 0.997234611061721, 0.997156796931851, 0.997077906542424, 0.996997940079169, 0.996916897730346, 0.996834779686749, 0.996751586141704, 0.996667317291069, 0.996581973333234, 0.996495554469118, 0.996408060902175, 0.996319492838384, 0.996229850486257, 0.996139134056834, 0.996047343763684, 0.995954479822904, 0.995860542453118, 0.995765531875478, 0.995669448313663, 0.995572291993876, 0.995474063144847, 0.995374761997832, 0.995274388786610, 0.995172943747484, 0.995070427119280, 0.994966839143348, 0.994862180063559, 0.994756450126307, 0.994649649580506, 0.994541778677591, 0.994432837671516, 0.994322826818756, 0.994211746378302, 0.994099596611666, 0.993986377782876, 0.993872090158476, 0.993756734007528, 0.993640309601609, 0.993522817214810, 0.993404257123737, 0.993284629607510, 0.993163934947762, 0.993042173428637, 0.992919345336792, 0.992795450961395, 0.992670490594123, 0.992544464529164, 0.992417373063214, 0.992289216495478, 0.992159995127667, 0.992029709264002, 0.991898359211206, 0.991765945278510, 0.991632467777649, 0.991497927022862, 0.991362323330891, 0.991225657020980, 0.991087928414876, 0.990949137836825, 0.990809285613575, 0.990668372074371, 0.990526397550961, 0.990383362377585, 0.990239266890985, 0.990094111430396, 0.989947896337551, 0.989800621956674, 0.989652288634488, 0.989502896720204, 0.989352446565528, 0.989200938524657, 0.989048372954277, 0.988894750213566, 0.988740070664190, 0.988584334670302, 0.988427542598543, 0.988269694818040, 0.988110791700406, 0.987950833619737, 0.987789820952615, 0.987627754078102, 0.987464633377744, 0.987300459235568, 0.987135232038079, 0.986968952174264, 0.986801620035585, 0.986633236015984, 0.986463800511878, 0.986293313922160, 0.986121776648198, 0.985949189093832, 0.985775551665376, 0.985600864771615, 0.985425128823805, 0.985248344235672, 0.985070511423410, 0.984891630805681, 0.984711702803615, 0.984530727840805, 0.984348706343312, 0.984165638739660, 0.983981525460833, 0.983796366940281, 0.983610163613911, 0.983422915920093, 0.983234624299653, 0.983045289195876, 0.982854911054504, 0.982663490323733, 0.982471027454216, 0.982277522899056, 0.982082977113812, 0.981887390556492, 0.981690763687555, 0.981493096969908, 0.981294390868909, 0.981094645852359, 0.980893862390509, 0.980692040956050, 0.980489182024122, 0.980285286072303, 0.980080353580616, 0.979874385031520, 0.979667380909918, 0.979459341703147, 0.979250267900984, 0.979040159995638, 0.978829018481757, 0.978616843856419, 0.978403636619135, 0.978189397271847, 0.977974126318929, 0.977757824267179, 0.977540491625828, 0.977322128906528, 0.977102736623361, 0.976882315292828, 0.976660865433857, 0.976438387567795, 0.976214882218408, 0.975990349911885, 0.975764791176829, 0.975538206544260, 0.975310596547616, 0.975081961722745, 0.974852302607910, 0.974621619743786, 0.974389913673457, 0.974157184942415, 0.973923434098562, 0.973688661692204, 0.973452868276054, 0.973216054405226, 0.972978220637240, 0.972739367532014, 0.972499495651868, 0.972258605561518, 0.972016697828080, 0.971773773021063, 0.971529831712372, 0.971284874476306, 0.971038901889554, 0.970791914531195, 0.970543912982699, 0.970294897827923, 0.970044869653109, 0.969793829046885, 0.969541776600262, 0.969288712906635, 0.969034638561777, 0.968779554163841, 0.968523460313360, 0.968266357613240, 0.968008246668766, 0.967749128087593, 0.967489002479751, 0.967227870457639, 0.966965732636026, 0.966702589632050, 0.966438442065213, 0.966173290557384, 0.965907135732794, 0.965639978218039, 0.965371818642071, 0.965102657636205, 0.964832495834112, 0.964561333871820, 0.964289172387710, 0.964016012022517, 0.963741853419329, 0.963466697223581, 0.963190544083059, 0.962913394647896, 0.962635249570570, 0.962356109505902, 0.962075975111058, 0.961794847045541, 0.961512725971197, 0.961229612552209, 0.960945507455094, 0.960660411348707, 0.960374324904233, 0.960087248795190, 0.959799183697427, 0.959510130289118, 0.959220089250768, 0.958929061265204, 0.958637047017578, 0.958344047195362, 0.958050062488351, 0.957755093588656, 0.957459141190708, 0.957162205991251, 0.956864288689343, 0.956565389986356, 0.956265510585969, 0.955964651194174, 0.955662812519266, 0.955359995271849, 0.955056200164829, 0.954751427913414, 0.954445679235113, 0.954138954849734, 0.953831255479381, 0.953522581848454, 0.953212934683648, 0.952902314713946, 0.952590722670627, 0.952278159287253, 0.951964625299676, 0.951650121446032, 0.951334648466740, 0.951018207104502, 0.950700798104297, 0.950382422213386, 0.950063080181304, 0.949742772759859, 0.949421500703134, 0.949099264767483, 0.948776065711529, 0.948451904296161, 0.948126781284536, 0.947800697442072, 0.947473653536452, 0.947145650337617, 0.946816688617767, 0.946486769151360, 0.946155892715107, 0.945824060087971, 0.945491272051170, 0.945157529388168, 0.944822832884677, 0.944487183328655, 0.944150581510303, 0.943813028222066, 0.943474524258627, 0.943135070416907, 0.942794667496063, 0.942453316297490, 0.942111017624810, 0.941767772283880, 0.941423581082783, 0.941078444831830, 0.940732364343556, 0.940385340432721, 0.940037373916304, 0.939688465613503, 0.939338616345735, 0.938987826936631, 0.938636098212036, 0.938283431000004, 0.937929826130803, 0.937575284436904, 0.937219806752986, 0.936863393915931, 0.936506046764823, 0.936147766140944, 0.935788552887775, 0.935428407850992, 0.935067331878467, 0.934705325820259, 0.934342390528621, 0.933978526857991, 0.933613735664995, 0.933248017808440, 0.932881374149315, 0.932513805550792, 0.932145312878215, 0.931775896999109, 0.931405558783168, 0.931034299102259, 0.930662118830421, 0.930289018843855, 0.929915000020933, 0.929540063242184, 0.929164209390305, 0.928787439350146, 0.928409754008717, 0.928031154255182, 0.927651640980858, 0.927271215079213, 0.926889877445863, 0.926507628978571, 0.926124470577243, 0.925740403143928, 0.925355427582817, 0.924969544800235, 0.924582755704646, 0.924195061206647, 0.923806462218966, 0.923416959656460, 0.923026554436115, 0.922635247477040, 0.922243039700468, 0.921849932029752, 0.921455925390365, 0.921061020709896, 0.920665218918047, 0.920268520946633, 0.919870927729578, 0.919472440202915, 0.919073059304781, 0.918672785975418, 0.918271621157167, 0.917869565794468, 0.917466620833860, 0.917062787223974, 0.916658065915532, 0.916252457861350, 0.915845964016327, 0.915438585337451, 0.915030322783790, 0.914621177316497, 0.914211149898799, 0.913800241496002, 0.913388453075485, 0.912975785606700, 0.912562240061168, 0.912147817412476, 0.911732518636277, 0.911316344710287, 0.910899296614282, 0.910481375330094, 0.910062581841615, 0.909642917134786, 0.909222382197602, 0.908800978020106, 0.908378705594385, 0.907955565914575, 0.907531559976849, 0.907106688779422, 0.906680953322544, 0.906254354608503, 0.905826893641617, 0.905398571428233, 0.904969388976727, 0.904539347297502, 0.904108447402979, 0.903676690307605, 0.903244077027841, 0.902810608582165, 0.902376285991069, 0.901941110277054, 0.901505082464633, 0.901068203580320, 0.900630474652638, 0.900191896712106, 0.899752470791246, 0.899312197924575, 0.898871079148602, 0.898429115501831, 0.897986308024751, 0.897542657759842, 0.897098165751565, 0.896652833046362, 0.896206660692658, 0.895759649740851, 0.895311801243316, 0.894863116254397, 0.894413595830410, 0.893963241029636, 0.893512052912322, 0.893060032540675, 0.892607180978861, 0.892153499293006, 0.891698988551188, 0.891243649823436, 0.890787484181730, 0.890330492699996, 0.889872676454105, 0.889414036521868, 0.888954573983037, 0.888494289919299, 0.888033185414277, 0.887571261553524, 0.887108519424522, 0.886644960116681, 0.886180584721332, 0.885715394331729, 0.885249390043046, 0.884782572952371, 0.884314944158707, 0.883846504762965, 0.883377255867969, 0.882907198578445, 0.882436334001024, 0.881964663244238, 0.881492187418513, 0.881018907636176, 0.880544825011444, 0.880069940660422, 0.879594255701107, 0.879117771253377, 0.878640488438994, 0.878162408381599, 0.877683532206710, 0.877203861041720, 0.876723396015892, 0.876242138260360, 0.875760088908121, 0.875277249094040, 0.874793619954840, 0.874309202629103, 0.873823998257266, 0.873338007981619, 0.872851232946305, 0.872363674297309, 0.871875333182467, 0.871386210751452, 0.870896308155780, 0.870405626548801, 0.869914167085700, 0.869421930923495, 0.868928919221030, 0.868435133138976, 0.867940573839827, 0.867445242487897, 0.866949140249318, 0.866452268292036, 0.865954627785812, 0.865456219902211, 0.864957045814611, 0.864457106698188, 0.863956403729923, 0.863454938088594, 0.862952710954774, 0.862449723510829, 0.861945976940916, 0.861441472430977, 0.860936211168741, 0.860430194343717, 0.859923423147193, 0.859415898772233, 0.858907622413674, 0.858398595268124, 0.857888818533958, 0.857378293411315, 0.856867021102099, 0.856355002809968, 0.855842239740341, 0.855328733100387, 0.854814484099028, 0.854299493946932, 0.853783763856513, 0.853267295041927, 0.852750088719067, 0.852232146105565, 0.851713468420785, 0.851194056885823, 0.850673912723499, 0.850153037158363, 0.849631431416682, 0.849109096726446, 0.848586034317359, 0.848062245420837, 0.847537731270010, 0.847012493099713, 0.846486532146484, 0.845959849648566, 0.845432446845900, 0.844904324980120, 0.844375485294555, 0.843845929034225, 0.843315657445836, 0.842784671777776, 0.842252973280116, 0.841720563204607, 0.841187442804671, 0.840653613335406, 0.840119076053577, 0.839583832217618, 0.839047883087623, 0.838511229925347, 0.837973873994207, 0.837435816559268, 0.836897058887251, 0.836357602246523, 0.835817447907099, 0.835276597140635, 0.834735051220426, 0.834192811421404, 0.833649879020136, 0.833106255294818, 0.832561941525274, 0.832016938992952, 0.831471248980922, 0.830924872773874, 0.830377811658110, 0.829830066921548, 0.829281639853713, 0.828732531745737, 0.828182743890357, 0.827632277581907, 0.827081134116321, 0.826529314791127, 0.825976820905442, 0.825423653759973, 0.824869814657013, 0.824315304900433, 0.823760125795687, 0.823204278649803, 0.822647764771381, 0.822090585470593, 0.821532742059175, 0.820974235850428, 0.820415068159214, 0.819855240301949, 0.819294753596607, 0.818733609362712, 0.818171808921334, 0.817609353595092, 0.817046244708141, 0.816482483586180, 0.815918071556440, 0.815353009947688, 0.814787300090215, 0.814220943315844, 0.813653940957916, 0.813086294351295, 0.812518004832361, 0.811949073739007, 0.811379502410637, 0.810809292188161, 0.810238444413995, 0.809666960432055, 0.809094841587755, 0.808522089228003, 0.807948704701200, 0.807374689357233, 0.806800044547476, 0.806224771624784, 0.805648871943490, 0.805072346859406, 0.804495197729812, 0.803917425913459, 0.803339032770565, 0.802760019662808, 0.802180387953329, 0.801600139006724, 0.801019274189040, 0.800437794867776, 0.799855702411878, 0.799272998191736, 0.798689683579176, 0.798105759947467, 0.797521228671307, 0.796936091126828, 0.796350348691586, 0.795764002744564, 0.795177054666164, 0.794589505838206, 0.794001357643926, 0.793412611467967, 0.792823268696384, 0.792233330716635, 0.791642798917579, 0.791051674689472, 0.790459959423967, 0.789867654514107, 0.789274761354323, 0.788681281340432, 0.788087215869632, 0.787492566340498, 0.786897334152983, 0.786301520708409, 0.785705127409467, 0.785108155660215, 0.784510606866070, 0.783912482433809, 0.783313783771565, 0.782714512288821, 0.782114669396410, 0.781514256506509, 0.780913275032639, 0.780311726389657, 0.779709611993756, 0.779106933262463, 0.778503691614631, 0.777899888470440, 0.777295525251390, 0.776690603380302, 0.776085124281309, 0.775479089379860, 0.774872500102708, 0.774265357877916, 0.773657664134843, 0.773049420304153, 0.772440627817798, 0.771831288109029, 0.771221402612378, 0.770610972763668, 0.770000000000000, 0.769388485759754, 0.768776431482586, 0.768163838609421, 0.767550708582454, 0.766937042845144, 0.766322842842211, 0.765708110019633, 0.765092845824642, 0.764477051705721, 0.763860729112602, 0.763243879496259, 0.762626504308907, 0.762008605004001, 0.761390183036227, 0.760771239861502, 0.760151776936971, 0.759531795721002, 0.758911297673183, 0.758290284254319, 0.757668756926430, 0.757046717152742, 0.756424166397691, 0.755801106126913, 0.755177537807248, 0.754553462906726, 0.753928882894575, 0.753303799241210, 0.752678213418230, 0.752052126898419, 0.751425541155740, 0.750798457665327, 0.750170877903491, 0.749542803347708, 0.748914235476621, 0.748285175770033, 0.747655625708905, 0.747025586775353, 0.746395060452644, 0.745764048225191, 0.745132551578553, 0.744500571999428, 0.743868110975651, 0.743235169996192, 0.742601750551148, 0.741967854131746, 0.741333482230334, 0.740698636340378, 0.740063317956462, 0.739427528574282, 0.738791269690643, 0.738154542803455, 0.737517349411728, 0.736879691015574, 0.736241569116197, 0.735602985215893, 0.734963940818045, 0.734324437427121, 0.733684476548670, 0.733044059689317, 0.732403188356760, 0.731761864059769, 0.731120088308178, 0.730477862612885, 0.729835188485849, 0.729192067440081, 0.728548500989648, 0.727904490649662, 0.727260037936282, 0.726615144366709, 0.725969811459180, 0.725324040732969, 0.724677833708378, 0.724031191906738, 0.723384116850402, 0.722736610062745, 0.722088673068156, 0.721440307392038, 0.720791514560805, 0.720142296101873, 0.719492653543664, 0.718842588415594, 0.718192102248078, 0.717541196572520, 0.716889872921311, 0.716238132827829, 0.715585977826429, 0.714933409452446, 0.714280429242184, 0.713627038732921, 0.712973239462898, 0.712319032971320, 0.711664420798349, 0.711009404485104, 0.710353985573655, 0.709698165607018, 0.709041946129155, 0.708385328684968, 0.707728314820297, 0.707070906081913, 0.706413104017518, 0.705754910175741, 0.705096326106131, 0.704437353359158, 0.703777993486204, 0.703118248039567, 0.702458118572447, 0.701797606638954, 0.701136713794095, 0.700475441593772, 0.699813791594786, 0.699151765354821, 0.698489364432451, 0.697826590387130, 0.697163444779192, 0.696499929169843, 0.695836045121165, 0.695171794196102, 0.694507177958465, 0.693842197972923, 0.693176855805005, 0.692511153021087, 0.691845091188399, 0.691178671875015, 0.690511896649848, 0.689844767082652, 0.689177284744014, 0.688509451205352, 0.687841268038910, 0.687172736817755, 0.686503859115775, 0.685834636507672, 0.685165070568961, 0.684495162875965, 0.683824915005810, 0.683154328536427, 0.682483405046540, 0.681812146115667, 0.681140553324119, 0.680468628252989, 0.679796372484154, 0.679123787600269, 0.678450875184766, 0.677777636821845, 0.677104074096475, 0.676430188594388, 0.675755981902077, 0.675081455606790, 0.674406611296528, 0.673731450560040, 0.673055974986821, 0.672380186167107, 0.671704085691870, 0.671027675152817, 0.670350956142386, 0.669673930253739, 0.668996599080761, 0.668318964218058, 0.667641027260947, 0.666962789805460, 0.666284253448335, 0.665605419787012, 0.664926290419633, 0.664246866945036, 0.663567150962751, 0.662887144072996, 0.662206847876675, 0.661526263975372, 0.660845393971350, 0.660164239467544, 0.659482802067559, 0.658801083375666, 0.658119084996799, 0.657436808536550, 0.656754255601165, 0.656071427797542, 0.655388326733226, 0.654704954016404, 0.654021311255905, 0.653337400061190, 0.652653222042356, 0.651968778810126, 0.651284071975847, 0.650599103151488, 0.649913873949634, 0.649228385983483, 0.648542640866843, 0.647856640214125, 0.647170385640345, 0.646483878761114, 0.645797121192638, 0.645110114551714, 0.644422860455725, 0.643735360522635, 0.643047616370989, 0.642359629619905, 0.641671401889073, 0.640982934798751, 0.640294229969760, 0.639605289023481, 0.638916113581848, 0.638226705267353, 0.637537065703030, 0.636847196512462, 0.636157099319769, 0.635466775749611, 0.634776227427179, 0.634085455978194, 0.633394463028901, 0.632703250206068, 0.632011819136981, 0.631320171449436, 0.630628308771745, 0.629936232732721, 0.629243944961682, 0.628551447088443, 0.627858740743315, 0.627165827557099, 0.626472709161083, 0.625779387187038, 0.625085863267215, 0.624392139034340, 0.623698216121610, 0.623004096162690, 0.622309780791709, 0.621615271643257, 0.620920570352380, 0.620225678554573, 0.619530597885785, 0.618835329982406, 0.618139876481267, 0.617444239019638, 0.616748419235219, 0.616052418766142, 0.615356239250963, 0.614659882328661, 0.613963349638629, 0.613266642820678, 0.612569763515028, 0.611872713362302, 0.611175494003529, 0.610478107080135, 0.609780554233941, 0.609082837107156, 0.608384957342378, 0.607686916582589, 0.606988716471149, 0.606290358651791, 0.605591844768622, 0.604893176466116, 0.604194355389109, 0.603495383182798, 0.602796261492737, 0.602096991964828, 0.601397576245325, 0.600698015980825, 0.599998312818263, 0.599298468404915, 0.598598484388385, 0.597898362416608, 0.597198104137843, 0.596497711200671, 0.595797185253990, 0.595096527947008, 0.594395740929247, 0.593694825850531, 0.592993784360986, 0.592292618111037, 0.591591328751401, 0.590889917933087, 0.590188387307387, 0.589486738525878, 0.588784973240413, 0.588083093103121, 0.587381099766399, 0.586678994882913, 0.585976780105591, 0.585274457087619, 0.584572027482437, 0.583869492943739, 0.583166855125463, 0.582464115681791, 0.581761276267145, 0.581058338536182, 0.580355304143790, 0.579652174745085, 0.578948951995407, 0.578245637550314, 0.577542233065583, 0.576838740197201, 0.576135160601361, 0.575431495934465, 0.574727747853112, 0.574023918014098, 0.573320008074411, 0.572616019691228, 0.571911954521913, 0.571207814224006, 0.570503600455227, 0.569799314873470, 0.569094959136795, 0.568390534903429, 0.567686043831761, 0.566981487580334, 0.566276867807849, 0.565572186173153, 0.564867444335240, 0.564162643953246, 0.563457786686445, 0.562752874194243, 0.562047908136178, 0.561342890171914, 0.560637821961237, 0.559932705164050, 0.559227541440372, 0.558522332450331, 0.557817079854163, 0.557111785312207, 0.556406450484899, 0.555701077032770, 0.554995666616444, 0.554290220896630, 0.553584741534121, 0.552879230189788, 0.552173688524580, 0.551468118199514, 0.550762520875676, 0.550056898214217, 0.549351251876346, 0.548645583523328, 0.547939894816479, 0.547234187417164, 0.546528462986793, 0.545822723186815, 0.545116969678713, 0.544411204124006, 0.543705428184239, 0.542999643520983, 0.542293851795829, 0.541588054670383, 0.540882253806265, 0.540176450865105, 0.539470647508537, 0.538764845398194, 0.538059046195709, 0.537353251562707, 0.536647463160801, 0.535941682651593, 0.535235911696661, 0.534530151957565, 0.533824405095837, 0.533118672772979, 0.532412956650457, 0.531707258389703, 0.531001579652101, 0.530295922098995, 0.529590287391675, 0.528884677191379, 0.528179093159288, 0.527473536956519, 0.526768010244125, 0.526062514683090, 0.525357051934324, 0.524651623658660, 0.523946231516850, 0.523240877169559, 0.522535562277366, 0.521830288500756, 0.521125057500116, 0.520419870935733, 0.519714730467792, 0.519009637756364, 0.518304594461413, 0.517599602242783, 0.516894662760200, 0.516189777673264, 0.515484948641448, 0.514780177324094, 0.514075465380407, 0.513370814469451, 0.512666226250148, 0.511961702381273, 0.511257244521447, 0.510552854329138, 0.509848533462654, 0.509144283580139, 0.508440106339571, 0.507736003398755, 0.507031976415324, 0.506328027046731, 0.505624156950245, 0.504920367782949, 0.504216661201737, 0.503513038863307, 0.502809502424159, 0.502106053540591, 0.501402693868694, 0.500699425064350, 0.499996248783227, 0.499293166680775, 0.498590180412222, 0.497887291632571, 0.497184501996595, 0.496481813158833, 0.495779226773588, 0.495076744494921, 0.494374367976648, 0.493672098872336, 0.492969938835300, 0.492267889518597, 0.491565952575023, 0.490864129657112, 0.490162422417126, 0.489460832507057, 0.488759361578620, 0.488058011283252, 0.487356783272101, 0.486655679196033, 0.485954700705618, 0.485253849451132, 0.484553127082551, 0.483852535249549, 0.483152075601491, 0.482451749787430, 0.481751559456107, 0.481051506255941, 0.480351591835030, 0.479651817841145, 0.478952185921726, 0.478252697723878, 0.477553354894370, 0.476854159079625, 0.476155111925722, 0.475456215078392, 0.474757470183008, 0.474058878884588, 0.473360442827789, 0.472662163656899, 0.471964043015841, 0.471266082548162, 0.470568283897032, 0.469870648705241, 0.469173178615195, 0.468475875268908, 0.467778740308006, 0.467081775373714, 0.466384982106861, 0.465688362147868, 0.464991917136750, 0.464295648713111, 0.463599558516137, 0.462903648184596, 0.462207919356833, 0.461512373670763, 0.460817012763872, 0.460121838273212, 0.459426851835394, 0.458732055086586, 0.458037449662513, 0.457343037198444, 0.456648819329199, 0.455954797689137, 0.455260973912155, 0.454567349631685, 0.453873926480690, 0.453180706091658, 0.452487690096601, 0.451794880127048, 0.451102277814046, 0.450409884788149, 0.449717702679421, 0.449025733117430, 0.448333977731242, 0.447642438149419, 0.446951116000016, 0.446260012910575, 0.445569130508123, 0.444878470419166, 0.444188034269689, 0.443497823685148, 0.442807840290469, 0.442118085710042, 0.441428561567719, 0.440739269486809, 0.440050211090077, 0.439361387999734, 0.438672801837440, 0.437984454224296, 0.437296346780841, 0.436608481127050, 0.435920858882328, 0.435233481665506, 0.434546351094840, 0.433859468788004, 0.433172836362089, 0.432486455433594, 0.431800327618431, 0.431114454531912, 0.430428837788753, 0.429743479003062, 0.429058379788344, 0.428373541757491, 0.427688966522779, 0.427004655695867, 0.426320610887792, 0.425636833708963, 0.424953325769159, 0.424270088677526, 0.423587124042573, 0.422904433472167, 0.422222018573528, 0.421539880953230, 0.420858022217193, 0.420176443970678, 0.419495147818290, 0.418814135363967, 0.418133408210979, 0.417452967961927, 0.416772816218733, 0.416092954582643, 0.415413384654218, 0.414734108033332, 0.414055126319170, 0.413376441110221, 0.412698054004279, 0.412019966598432, 0.411342180489065, 0.410664697271855, 0.409987518541762, 0.409310645893032, 0.408634080919190, 0.407957825213036, 0.407281880366643, 0.406606247971350, 0.405930929617764, 0.405255926895748, 0.404581241394427, 0.403906874702175, 0.403232828406617, 0.402559104094625, 0.401885703352310, 0.401212627765025, 0.400539878917354, 0.399867458393114, 0.399195367775348, 0.398523608646322, 0.397852182587524, 0.397181091179655, 0.396510336002629, 0.395839918635570, 0.395169840656803, 0.394500103643859, 0.393830709173462, 0.393161658821532, 0.392492954163177, 0.391824596772694, 0.391156588223560, 0.390488930088431, 0.389821623939139, 0.389154671346686, 0.388488073881243, 0.387821833112145, 0.387155950607886, 0.386490427936118, 0.385825266663643, 0.385160468356417, 0.384496034579537, 0.383831966897244, 0.383168266872916, 0.382504936069067, 0.381841976047342, 0.381179388368509, 0.380517174592465, 0.379855336278223, 0.379193874983913, 0.378532792266778, 0.377872089683169, 0.377211768788544, 0.376551831137458, 0.375892278283569, 0.375233111779626, 0.374574333177468, 0.373915944028023, 0.373257945881301, 0.372600340286391, 0.371943128791458, 0.371286312943741, 0.370629894289545, 0.369973874374241, 0.369318254742262, 0.368663036937096, 0.368008222501289, 0.367353812976435, 0.366699809903174, 0.366046214821190, 0.365393029269208, 0.364740254784986, 0.364087892905317, 0.363435945166020, 0.362784413101941, 0.362133298246947, 0.361482602133923, 0.360832326294766, 0.360182472260387, 0.359533041560701, 0.358884035724629, 0.358235456280089, 0.357587304753998, 0.356939582672262, 0.356292291559780, 0.355645432940434, 0.354999008337088, 0.354353019271585, 0.353707467264742, 0.353062353836346, 0.352417680505155, 0.351773448788887, 0.351129660204222, 0.350486316266798, 0.349843418491203, 0.349200968390978, 0.348558967478608, 0.347917417265521, 0.347276319262084, 0.346635674977600, 0.345995485920302, 0.345355753597354, 0.344716479514842, 0.344077665177775, 0.343439312090080, 0.342801421754595, 0.342163995673073, 0.341527035346170, 0.340890542273449, 0.340254517953369, 0.339618963883290, 0.338983881559462, 0.338349272477024, 0.337715138130003, 0.337081480011307, 0.336448299612723, 0.335815598424913, 0.335183377937412, 0.334551639638622, 0.333920385015810, 0.333289615555106, 0.332659332741495, 0.332029538058819, 0.331400232989768, 0.330771419015883, 0.330143097617545, 0.329515270273978, 0.328887938463242, 0.328261103662231, 0.327634767346666, 0.327008930991100, 0.326383596068903, 0.325758764052269, 0.325134436412205, 0.324510614618533, 0.323887300139882, 0.323264494443688, 0.322642198996188, 0.322020415262421, 0.321399144706216, 0.320778388790198, 0.320158148975780, 0.319538426723157, 0.318919223491310, 0.318300540737994, 0.317682379919741, 0.317064742491853, 0.316447629908401, 0.315831043622220, 0.315214985084906, 0.314599455746812, 0.313984457057045, 0.313369990463464, 0.312756057412673, 0.312142659350024, 0.311529797719604, 0.310917473964243, 0.310305689525499, 0.309694445843665, 0.309083744357758, 0.308473586505520, 0.307863973723413, 0.307254907446614, 0.306646389109017, 0.306038420143221, 0.305431001980537, 0.304824136050976, 0.304217823783250, 0.303612066604766, 0.303006865941627, 0.302402223218623, 0.301798139859232, 0.301194617285616, 0.300591656918614, 0.299989260177743, 0.299387428481194, 0.298786163245827, 0.298185465887168, 0.297585337819406, 0.296985780455390, 0.296386795206626, 0.295788383483273, 0.295190546694138, 0.294593286246677, 0.293996603546988, 0.293400499999808, 0.292804977008512, 0.292210035975108, 0.291615678300233, 0.291021905383152, 0.290428718621751, 0.289836119412538, 0.289244109150638, 0.288652689229789, 0.288061861042338, 0.287471625979240, 0.286881985430054, 0.286292940782939, 0.285704493424651, 0.285116644740539, 0.284529396114545, 0.283942748929194, 0.283356704565601, 0.282771264403457, 0.282186429821031, 0.281602202195170, 0.281018582901288, 0.280435573313368, 0.279853174803959, 0.279271388744170, 0.278690216503668, 0.278109659450677, 0.277529718951969, 0.276950396372868, 0.276371693077241, 0.275793610427499, 0.275216149784590, 0.274639312507999, 0.274063099955741, 0.273487513484365, 0.272912554448941, 0.272338224203064, 0.271764524098850, 0.271191455486929, 0.270619019716447, 0.270047218135056, 0.269476052088920, 0.268905522922704, 0.268335631979573, 0.267766380601191, 0.267197770127716, 0.266629801897796, 0.266062477248569, 0.265495797515657, 0.264929764033162, 0.264364378133667, 0.263799641148230, 0.263235554406380, 0.262672119236116, 0.262109336963903, 0.261547208914669, 0.260985736411802, 0.260424920777146, 0.259864763331000, 0.259305265392110, 0.258746428277674, 0.258188253303332, 0.257630741783164, 0.257073895029690, 0.256517714353864, 0.255962201065072, 0.255407356471129, 0.254853181878276, 0.254299678591175, 0.253746847912911, 0.253194691144983, 0.252643209587302, 0.252092404538193, 0.251542277294386, 0.250992829151016, 0.250444061401619, 0.249895975338129, 0.249348572250876, 0.248801853428581, 0.248255820158355, 0.247710473725694, 0.247165815414479, 0.246621846506968, 0.246078568283798, 0.245535982023981, 0.244994089004897, 0.244452890502296, 0.243912387790292, 0.243372582141362, 0.242833474826340, 0.242295067114419, 0.241757360273143, 0.241220355568405, 0.240684054264446, 0.240148457623853, 0.239613566907551, 0.239079383374804, 0.238545908283212, 0.238013142888707, 0.237481088445549, 0.236949746206326, 0.236419117421947, 0.235889203341644, 0.235360005212964, 0.234831524281770, 0.234303761792236, 0.233776718986845, 0.233250397106386, 0.232724797389949, 0.232199921074925, 0.231675769397003, 0.231152343590165, 0.230629644886683, 0.230107674517119, 0.229586433710319, 0.229065923693413, 0.228546145691809, 0.228027100929193, 0.227508790627524, 0.226991216007030, 0.226474378286212, 0.225958278681831, 0.225442918408913, 0.224928298680743, 0.224414420708862, 0.223901285703066, 0.223388894871400, 0.222877249420159, 0.222366350553882, 0.221856199475350, 0.221346797385584, 0.220838145483843, 0.220330244967619, 0.219823097032632, 0.219316702872836, 0.218811063680407, 0.218306180645742, 0.217802054957461, 0.217298687802401, 0.216796080365611, 0.216294233830352, 0.215793149378096, 0.215292828188517, 0.214793271439495, 0.214294480307110, 0.213796455965639, 0.213299199587553, 0.212802712343516, 0.212306995402381, 0.211812049931189, 0.211317877095162, 0.210824478057704, 0.210331853980399, 0.209840006023005, 0.209348935343453, 0.208858643097843, 0.208369130440446, 0.207880398523693, 0.207392448498179, 0.206905281512661, 0.206418898714047, 0.205933301247403, 0.205448490255945, 0.204964466881038, 0.204481232262191, 0.203998787537057, 0.203517133841430, 0.203036272309241, 0.202556204072557, 0.202076930261577, 0.201598452004628, 0.201120770428166, 0.200643886656772, 0.200167801813147, 0.199692517018111, 0.199218033390603, 0.198744352047673, 0.198271474104484, 0.197799400674306, 0.197328132868517, 0.196857671796597, 0.196388018566127, 0.195919174282786, 0.195451140050350, 0.194983916970685, 0.194517506143750, 0.194051908667591, 0.193587125638339, 0.193123158150207, 0.192660007295489, 0.192197674164556, 0.191736159845853, 0.191275465425900, 0.190815591989283, 0.190356540618659, 0.189898312394748, 0.189440908396330, 0.188984329700248, 0.188528577381400, 0.188073652512739, 0.187619556165270, 0.187166289408048, 0.186713853308175, 0.186262248930795, 0.185811477339098, 0.185361539594309, 0.184912436755694, 0.184464169880551, 0.184016740024210, 0.183570148240031, 0.183124395579401, 0.182679483091732, 0.182235411824457, 0.181792182823029, 0.181349797130918, 0.180908255789609, 0.180467559838598, 0.180027710315393, 0.179588708255508, 0.179150554692460, 0.178713250657773, 0.178276797180966, 0.177841195289559, 0.177406446009065, 0.176972550362992, 0.176539509372836, 0.176107324058083, 0.175675995436203, 0.175245524522650, 0.174815912330857, 0.174387159872239, 0.173959268156184, 0.173532238190053, 0.173106070979181, 0.172680767526870, 0.172256328834389, 0.171832755900972, 0.171410049723812, 0.170988211298065, 0.170567241616841, 0.170147141671208, 0.169727912450182, 0.169309554940734, 0.168892070127780, 0.168475458994182, 0.168059722520744, 0.167644861686213, 0.167230877467273, 0.166817770838545, 0.166405542772584, 0.165994194239875, 0.165583726208835, 0.165174139645805, 0.164765435515055, 0.164357614778773, 0.163950678397070, 0.163544627327974, 0.163139462527430, 0.162735184949295, 0.162331795545338, 0.161929295265236, 0.161527685056575, 0.161126965864844, 0.160727138633434, 0.160328204303637, 0.159930163814642, 0.159533018103535, 0.159136768105295, 0.158741414752791, 0.158346958976782, 0.157953401705915, 0.157560743866719, 0.157168986383609, 0.156778130178877, 0.156388176172695, 0.155999125283112, 0.155610978426047, 0.155223736515296, 0.154837400462519, 0.154451971177248, 0.154067449566878, 0.153683836536667, 0.153301132989734, 0.152919339827059, 0.152538457947475, 0.152158488247673, 0.151779431622195, 0.151401288963432, 0.151024061161628, 0.150647749104867, 0.150272353679081, 0.149897875768044, 0.149524316253369, 0.149151676014506, 0.148779955928742, 0.148409156871198, 0.148039279714827, 0.147670325330409, 0.147302294586555, 0.146935188349699, 0.146569007484099, 0.146203752851836, 0.145839425312808, 0.145476025724733, 0.145113554943142, 0.144752013821380, 0.144391403210605, 0.144031723959783, 0.143672976915687, 0.143315162922895, 0.142958282823790, 0.142602337458556, 0.142247327665175, 0.141893254279428, 0.141540118134890, 0.141187920062932, 0.140836660892713, 0.140486341451185, 0.140136962563085, 0.139788525050938, 0.139441029735051, 0.139094477433513, 0.138748868962193, 0.138404205134740, 0.138060486762577, 0.137717714654901, 0.137375889618681, 0.137035012458659, 0.136695083977343, 0.136356104975009, 0.136018076249695, 0.135680998597205, 0.135344872811103, 0.135009699682712, 0.134675480001110, 0.134342214553135, 0.134009904123374, 0.133678549494169, 0.133348151445608, 0.133018710755532, 0.132690228199523, 0.132362704550912, 0.132036140580769, 0.131710537057905, 0.131385894748873, 0.131062214417959, 0.130739496827187, 0.130417742736313, 0.130096952902826, 0.129777128081943, 0.129458269026612, 0.129140376487505, 0.128823451213019, 0.128507493949274, 0.128192505440111, 0.127878486427090, 0.127565437649490, 0.127253359844305, 0.126942253746242, 0.126632120087722, 0.126322959598876, 0.126014773007542, 0.125707561039270, 0.125401324417310, 0.125096063862620, 0.124791780093857, 0.124488473827382, 0.124186145777250, 0.123884796655217, 0.123584427170733, 0.123285038030942, 0.122986629940678, 0.122689203602469, 0.122392759716528, 0.122097298980759, 0.121802822090747, 0.121509329739765, 0.121216822618764, 0.120925301416380, 0.120634766818924, 0.120345219510386, 0.120056660172433, 0.119769089484404, 0.119482508123310, 0.119196916763835, 0.118912316078332, 0.118628706736819, 0.118346089406984, 0.118064464754177, 0.117783833441412, 0.117504196129364, 0.117225553476368, 0.116947906138417, 0.116671254769162, 0.116395600019907, 0.116120942539613, 0.115847282974889, 0.115574621969999, 0.115302960166853, 0.115032298205009, 0.114762636721674, 0.114493976351696, 0.114226317727567, 0.113959661479423, 0.113694008235037, 0.113429358619822, 0.113165713256830, 0.112903072766745, 0.112641437767889, 0.112380808876214, 0.112121186705304, 0.111862571866375, 0.111604964968270, 0.111348366617457, 0.111092777418034, 0.110838197971719, 0.110584628877856, 0.110332070733408, 0.110080524132959, 0.109829989668713, 0.109580467930488, 0.109331959505721, 0.109084464979461, 0.108837984934371, 0.108592519950726, 0.108348070606411, 0.108104637476920, 0.107862221135354, 0.107620822152420, 0.107380441096433, 0.107141078533307, 0.106902735026561, 0.106665411137314, 0.106429107424286, 0.106193824443792, 0.105959562749748, 0.105726322893662, 0.105494105424640, 0.105262910889377, 0.105032739832163, 0.104803592794877, 0.104575470316987, 0.104348372935550, 0.104122301185209, 0.103897255598192, 0.103673236704313, 0.103450245030967, 0.103228281103130, 0.103007345443361, 0.102787438571797, 0.102568561006152, 0.102350713261718, 0.102133895851362, 0.101918109285526, 0.101703354072225, 0.101489630717045, 0.101276939723143, 0.101065281591246, 0.100854656819650, 0.100645065904217, 0.100436509338375, 0.100228987613119, 0.100022501217005, 0.0998170506361536, 0.0996126363542452, 0.0994092588525217, 0.0992069186097835, 0.0990056161023897, 0.0988053518042556, 0.0986061261868528, 0.0984079397192073, 0.0982107928678989, 0.0980146860970597, 0.0978196198683733, 0.0976255946410736, 0.0974326108719438, 0.0972406690153150, 0.0970497695230656, 0.0968599128446200, 0.0966710994269475, 0.0964833297145613, 0.0962966041495176, 0.0961109231714142, 0.0959262872173899, 0.0957426967221230, 0.0955601521178309, 0.0953786538342683, 0.0951982022987269, 0.0950187979360340, 0.0948404411685517, 0.0946631324161755, 0.0944868720963339, 0.0943116606239871, 0.0941374984116261, 0.0939643858692713, 0.0937923234044724, 0.0936213114223068, 0.0934513503253787, 0.0932824405138183, 0.0931145823852810, 0.0929477763349459, 0.0927820227555157, 0.0926173220372150, 0.0924536745677898, 0.0922910807325064, 0.0921295409141509, 0.0919690554930276, 0.0918096248469587, 0.0916512493512832, 0.0914939293788559, 0.0913376653000468, 0.0911824574827400, 0.0910283062923328, 0.0908752120917350, 0.0907231752413681, 0.0905721960991641, 0.0904222750205653, 0.0902734123585225, 0.0901256084634953, 0.0899788636834502, 0.0898331783638606, 0.0896885528477056, 0.0895449874754692, 0.0894024825851396, 0.0892610385122085, 0.0891206555896699, 0.0889813341480197, 0.0888430745152549, 0.0887058770168727, 0.0885697419758698, 0.0884346697127416, 0.0883006605454813, 0.0881677147895795, 0.0880358327580231, 0.0879050147612951, 0.0877752611073731, 0.0876465721017291, 0.0875189480473287, 0.0873923892446304, 0.0872668959915846, 0.0871424685836333, 0.0870191073137095, 0.0868968124722356, 0.0867755843471239, 0.0866554232237753, 0.0865363293850786, 0.0864183031114099, 0.0863013446806321, 0.0861854543680943, 0.0860706324466306, 0.0859568791865601, 0.0858441948556860, 0.0857325797192949, 0.0856220340401563, 0.0855125580785219, 0.0854041520921251, 0.0852968163361801, 0.0851905510633820, 0.0850853565239050, 0.0849812329654032, 0.0848781806330090, 0.0847761997693328, 0.0846752906144629, 0.0845754534059641, 0.0844766883788777, 0.0843789957657209, 0.0842823757964863, 0.0841868286986410, 0.0840923546971262, 0.0839989540143572, 0.0839066268702221, 0.0838153734820815, 0.0837251940647686, 0.0836360888305878, 0.0835480579893147, 0.0834611017481957, 0.0833752203119471, 0.0832904138827548, 0.0832066826602743, 0.0831240268416292, 0.0830424466214118, 0.0829619421916819, 0.0828825137419668, 0.0828041614592607, 0.0827268855280239, 0.0826506861301832, 0.0825755634451305, 0.0825015176497233, 0.0824285489182834, 0.0823566574225974, 0.0822858433319154, 0.0822161068129511, 0.0821474480298817, 0.0820798671443466, 0.0820133643154479, 0.0819479396997496, 0.0818835934512775, 0.0818203257215184, 0.0817581366594199, 0.0816970264113907, 0.0816369951212992, 0.0815780429304737, 0.0815201699777023, 0.0814633763992322, 0.0814076623287693, 0.0813530278974784, 0.0812994732339823, 0.0812469984643618, 0.0811956037121555, 0.0811452890983593, 0.0810960547414261, 0.0810479007572658, 0.0810008272592446, 0.0809548343581851, 0.0809099221623660, 0.0808660907775217, 0.0808233403068419, 0.0807816708509718, 0.0807410825080114, 0.0807015753735160, 0.0806631495404948, 0.0806258050994118, 0.0805895421381849, 0.0805543607421861, 0.0805202609942411, 0.0804872429746291, 0.0804553067610825, 0.0804244524287872, 0.0803946800503816, 0.0803659896959575, 0.0803383814330590, 0.0803118553266826, 0.0802864114392774, 0.0802620498307445, 0.0802387705584371, 0.0802165736771605, 0.0801954592391714, 0.0801754272941785, 0.0801564778893419, 0.0801386110692732, 0.0801218268760353, 0.0801061253491422, 0.0800915065255592, 0.0800779704397027, 0.0800655171234399, 0.0800541466060890, 0.0800438589144190, 0.0800346540726495, 0.0800265321024513, 0.0800194930229452, 0.0800135368507030, 0.0800086635997472, 0.0800048732815503, 0.0800021659050359, 0.0800005414765777, 0.0800000000000000 };
_pWelchWindow1024d = (double*)malloc(sizeof(double)*(1024));
_pWelchWindow4096d = (double*)malloc(sizeof(double)*(4096));
memcpy(_pWelchWindow1024d, Window1024, 1024 * sizeof(double));
memcpy(_pWelchWindow4096d, Window4096, 4096 * sizeof(double));
_pWelchWindow1024f = (float*)malloc(sizeof(float)*(1024));
_pWelchWindow4096f = (float*)malloc(sizeof(float)*(4096));
for (size_t i = 0; i < 1024; i++)
{
_pWelchWindow1024f[i] = Window1024[i];
}
for (size_t i = 0; i < 4096; i++)
{
_pWelchWindow4096f[i] = Window4096[i];
}
_pWelchWindow1024fProduct = 0;
_pWelchWindow1024dProduct = 0;
for (int i = 0; i < 1024; i++)
{
_pWelchWindow1024fProduct = _pWelchWindow1024fProduct + (_pWelchWindow1024f[i] * _pWelchWindow1024f[i]);
_pWelchWindow1024dProduct = _pWelchWindow1024dProduct + (_pWelchWindow1024d[i] * _pWelchWindow1024d[i]);
}
_pWelchWindow4096fProduct = 0;
_pWelchWindow4096dProduct = 0;
for (int i = 0; i < 4096; i++)
{
_pWelchWindow4096fProduct = _pWelchWindow4096fProduct + (_pWelchWindow4096f[i] * _pWelchWindow4096f[i]);
_pWelchWindow4096dProduct = _pWelchWindow4096dProduct + (_pWelchWindow4096d[i] * _pWelchWindow4096d[i]);
}
}
}
};
TemplateDefinition
MemoryManagerClass * ComplexCoreClass <TemplateParameter>::DefaultMemManager = nullptr;
TemplateDefinition
float * ComplexCoreClass <TemplateParameter>::_TableSin = nullptr;
TemplateDefinition
float* ComplexCoreClass <TemplateParameter>::_pWelchWindow1024f = nullptr;
TemplateDefinition
float* ComplexCoreClass <TemplateParameter>::_pWelchWindow4096f = nullptr;
TemplateDefinition
double* ComplexCoreClass <TemplateParameter>::_pWelchWindow1024d = nullptr;
TemplateDefinition
double* ComplexCoreClass <TemplateParameter>::_pWelchWindow4096d = nullptr;
TemplateDefinition
float ComplexCoreClass <TemplateParameter>::_pWelchWindow1024fProduct=0;
TemplateDefinition
float ComplexCoreClass <TemplateParameter>::_pWelchWindow4096fProduct=0;
TemplateDefinition
double ComplexCoreClass <TemplateParameter>::_pWelchWindow1024dProduct=0;
TemplateDefinition
double ComplexCoreClass <TemplateParameter>::_pWelchWindow4096dProduct=0;
#endif