yagi 0.1.0

Batteries-included DSP library
Documentation
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
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
use num_complex::Complex;

// TODO rustfmt::skip this whole file
// Format all arrays in this file in 2 columns, fixed width, 14 characters per argument

pub const FFT_TEST_X2: [Complex<f32>; 2] = [
    Complex::new(-0.442695266914, -1.176601139920),
    Complex::new( 0.164300702210,  0.941269951205),
];

pub const FFT_TEST_Y2: [Complex<f32>; 2] = [
    Complex::new(-0.278394564704, -0.235331188715),
    Complex::new(-0.606995969123, -2.117871091124),
];

pub const FFT_TEST_X3: [Complex<f32>; 3] = [
    Complex::new(-0.757661328095,  0.655250200055),
    Complex::new(-1.262964116539,  0.804288531547),
    Complex::new( 0.075727215016, -0.825503865060),
];

pub const FFT_TEST_Y3: [Complex<f32>; 3] = [
    Complex::new(-1.944898229617,  0.634034866542),
    Complex::new( 1.247398741022,  1.825198567765),
    Complex::new(-1.575484495691, -0.493482834141),
];

pub const FFT_TEST_X4: [Complex<f32>; 4] = [
    Complex::new(-2.218920151449, -1.079004048069),
    Complex::new( 0.045264423484,  0.426155393025),
    Complex::new( 0.218614474268, -0.334711618319),
    Complex::new( 2.182538230032,  1.706944462070),
];

pub const FFT_TEST_Y4: [Complex<f32>; 4] = [
    Complex::new( 0.227496976335,  0.719384188708),
    Complex::new(-3.718323694762,  1.392981376798),
    Complex::new(-4.228108330697, -3.546815521483),
    Complex::new(-1.156745556672, -2.881566236299),
];

pub const FFT_TEST_X5: [Complex<f32>; 5] = [
    Complex::new( 1.043452789296, -0.216675780077),
    Complex::new(-0.039259154719, -0.756503590362),
    Complex::new(-1.378329383804, -1.629692578129),
    Complex::new( 0.695728357044, -2.639675956000),
    Complex::new(-0.019932891052,  0.123958045411),
];

pub const FFT_TEST_Y5: [Complex<f32>; 5] = [
    Complex::new( 0.301659716765, -5.118589859158),
    Complex::new( 1.333681830770,  4.279329517647),
    Complex::new(-0.597668794979, -2.985429553632),
    Complex::new( 2.358478480201,  0.936943320049),
    Complex::new( 1.821112713724,  1.804367674708),
];

pub const FFT_TEST_X6: [Complex<f32>; 6] = [
    Complex::new(-0.946868805918,  0.048419613876),
    Complex::new(-1.426556442325,  1.356194807524),
    Complex::new( 0.262357323076,  1.594616904796),
    Complex::new(-1.032912520662,  0.046391595464),
    Complex::new(-0.271359734201, -2.390517158747),
    Complex::new(-0.288151144041,  0.071324517238),
];

pub const FFT_TEST_Y6: [Complex<f32>; 6] = [
    Complex::new(-3.703491324072,  0.726430280150),
    Complex::new( 3.797148775593,  1.637413185851),
    Complex::new(-3.456423352393,  1.227102112087),
    Complex::new( 1.791748889984, -2.221391560299),
    Complex::new( 1.220570696725, -1.669098764217),
    Complex::new(-5.330766521347,  0.590062429687),
];

pub const FFT_TEST_X7: [Complex<f32>; 7] = [
    Complex::new( 0.325737557343,  0.347762560645),
    Complex::new(-0.464568614672,  1.344201995758),
    Complex::new(-1.458140194879,  0.983317270098),
    Complex::new( 1.679041515327,  1.025013762005),
    Complex::new(-0.178483024495, -0.711524629930),
    Complex::new( 0.986194459374, -1.709315563086),
    Complex::new( 0.387998802736, -1.150726066104),
];

pub const FFT_TEST_Y7: [Complex<f32>; 7] = [
    Complex::new( 1.277780500734,  0.128729329387),
    Complex::new( 4.360250363806,  2.591163135631),
    Complex::new( 1.609972293897,  2.377175130550),
    Complex::new( 0.436888889637, -3.701058823864),
    Complex::new(-0.903757801309,  3.003131513942),
    Complex::new( 1.797162255231, -0.068636624441),
    Complex::new(-6.298133600593, -1.896165736688),
];

pub const FFT_TEST_X8: [Complex<f32>; 8] = [
    Complex::new( 1.143832659273,  0.058730029889),
    Complex::new(-0.094390429919,  0.229144161540),
    Complex::new(-0.231936945111,  0.250418514706),
    Complex::new( 0.180568135767, -0.869698396678),
    Complex::new(-0.345282052584,  1.176003338020),
    Complex::new( 0.544428216952, -0.610473584454),
    Complex::new( 0.928035714223,  0.647778401795),
    Complex::new( 0.441211141066, -1.176622015089),
];

pub const FFT_TEST_Y8: [Complex<f32>; 8] = [
    Complex::new( 2.566466439667, -0.294719550271),
    Complex::new( 1.635071437815,  1.055386414782),
    Complex::new( 1.767442826430,  0.508277941207),
    Complex::new( 2.964612333261, -2.017902163711),
    Complex::new( 0.422832311935,  4.560580119089),
    Complex::new( 0.548438211721, -0.969987712376),
    Complex::new(-1.562539151277,  0.164794961607),
    Complex::new( 0.808336864628, -2.536589771219),
];

pub const FFT_TEST_X9: [Complex<f32>; 9] = [
    Complex::new( 0.318149471742, -0.872622265472),
    Complex::new( 0.380460329361,  0.204662364547),
    Complex::new(-0.569767779072, -0.271995206036),
    Complex::new( 1.334787120105, -0.238015105170),
    Complex::new(-0.644864052383,  0.948536285238),
    Complex::new(-0.489784794370,  0.158143326416),
    Complex::new( 1.783096398872, -2.166235062454),
    Complex::new(-0.138901921376, -0.646377338691),
    Complex::new(-0.257444231274,  0.857372365765),
];

pub const FFT_TEST_Y9: [Complex<f32>; 9] = [
    Complex::new( 1.715730541604, -2.026530635857),
    Complex::new( 1.685963762512,  0.399226582084),
    Complex::new(-4.115380429157,  1.255898079784),
    Complex::new( 4.091196716626, -4.693323087763),
    Complex::new(-1.668677608930, -1.439432143007),
    Complex::new(-2.523905986916, -0.920217192051),
    Complex::new( 4.501171713926, -3.110763575667),
    Complex::new( 1.269999384456,  3.193455688437),
    Complex::new(-2.092752848444, -0.511914105207),
];

pub const FFT_TEST_X10: [Complex<f32>; 10] = [
    Complex::new(-0.380648737020,  1.003981780953),
    Complex::new( 1.031511152163, -2.625896014009),
    Complex::new(-1.083239396623,  1.646877001105),
    Complex::new( 0.951587457487, -0.004983138281),
    Complex::new( 0.407589360084,  0.345698641918),
    Complex::new( 0.549291472049,  0.542579734652),
    Complex::new(-0.911825526748,  1.282009726257),
    Complex::new(-0.617849040964,  0.696673367751),
    Complex::new( 1.097501043733,  1.373947311009),
    Complex::new( 0.848713422957, -0.738252787172),
];

pub const FFT_TEST_Y10: [Complex<f32>; 10] = [
    Complex::new( 1.892631207117,  3.522635624182),
    Complex::new(-1.167216826866, -3.158947047615),
    Complex::new(-0.019614668329,  1.291770408491),
    Complex::new(-3.842057814631, -1.668342848977),
    Complex::new(-2.323082893679,  1.200058008683),
    Complex::new(-3.633877720265,  7.782393298301),
    Complex::new( 0.649048218143,  6.997144832999),
    Complex::new( 1.025423884758,  1.907666229150),
    Complex::new( 0.644231811894, -5.278801296330),
    Complex::new( 2.968027431661, -2.555759399357),
];

pub const FFT_TEST_X16: [Complex<f32>; 16] = [
    Complex::new(-1.772146047027,  0.295934658602),
    Complex::new(-1.433777343858, -0.874041962217),
    Complex::new(-0.388629405392,  0.611030474954),
    Complex::new(-0.492539890742,  1.007726724574),
    Complex::new( 0.494699992643, -1.725668238103),
    Complex::new( 0.572982289851,  0.061642401846),
    Complex::new(-0.574974496567,  0.909843544187),
    Complex::new( 0.733687565510,  0.447433079732),
    Complex::new( 0.308242485351, -1.532252262483),
    Complex::new( 1.207949830231, -0.953543898451),
    Complex::new( 0.640048909719, -1.022371047059),
    Complex::new(-0.241879356643, -0.462432765300),
    Complex::new(-0.435900183311,  0.856847254979),
    Complex::new( 0.577243720893,  0.220786650383),
    Complex::new( 1.263302572543,  1.444493924498),
    Complex::new( 1.911070541506, -1.906912076526),
];

pub const FFT_TEST_Y16: [Complex<f32>; 16] = [
    Complex::new( 2.369381184706, -2.621483536381),
    Complex::new(-2.618054253504,  4.676728363894),
    Complex::new(-2.946376269367,  0.522273546089),
    Complex::new( 2.120729100677,  4.308004588255),
    Complex::new(-2.975823103566, -3.062195121072),
    Complex::new(-3.932696300262,  3.143967424649),
    Complex::new(-0.247865075327,  5.467645213372),
    Complex::new( 3.887448941709,  5.439788616063),
    Complex::new(-3.300093528791,  2.297200155534),
    Complex::new(-4.008939493163,  4.239020717646),
    Complex::new(-5.630386554230, -0.383449644305),
    Complex::new(-0.707551950987,  2.197968388714),
    Complex::new(-1.713879561730, -5.034075846097),
    Complex::new(-8.091926054909, -8.469369525668),
    Complex::new( 2.733814414891, -7.076455598181),
    Complex::new(-3.292118248586, -0.910613204873),
];

pub const FFT_TEST_X17: [Complex<f32>; 17] = [
    Complex::new(-0.655587921776, -0.863886550358),
    Complex::new(-1.070139919529, -2.370656605854),
    Complex::new( 1.167384281127,  0.116747569575),
    Complex::new( 1.105640858428, -1.226141009276),
    Complex::new(-0.349562744440, -0.005953723423),
    Complex::new( 0.655312446998,  1.594642817084),
    Complex::new(-0.230495501721, -0.272806523691),
    Complex::new( 0.731764183318, -0.732380509571),
    Complex::new(-0.953609619255,  1.102615917395),
    Complex::new(-0.496898865182, -1.822920499315),
    Complex::new(-2.052948327746, -0.382334768518),
    Complex::new( 1.062783811112,  0.673250838256),
    Complex::new(-0.142175503751,  0.542432325176),
    Complex::new( 1.108087524611, -0.029888173999),
    Complex::new(-0.164259605567, -1.184782100304),
    Complex::new(-0.236452649938, -0.998080495482),
    Complex::new(-0.197908967423, -0.229518503722),
];

pub const FFT_TEST_Y17: [Complex<f32>; 17] = [
    Complex::new(-0.719066520735, -6.089659996026),
    Complex::new( 1.821427336790, -5.621144218242),
    Complex::new(-6.173678834923, -4.525807530343),
    Complex::new(-1.549626337288,  0.314087328771),
    Complex::new(-5.136370472539,  4.327372264632),
    Complex::new(-0.105170126419, -2.207231016009),
    Complex::new(-5.750228396460,  3.094152945701),
    Complex::new( 0.618725077794,  3.278602823446),
    Complex::new(-0.888646366224, -3.887677672776),
    Complex::new( 3.905822192802,  7.933139073811),
    Complex::new(-1.522365359136,  0.172605279098),
    Complex::new( 8.552784050577, -3.105361200836),
    Complex::new(-1.598265822441, -5.532288727983),
    Complex::new( 1.151099028128, -2.046469788513),
    Complex::new( 0.253410312032,  6.386316111258),
    Complex::new(-4.676752932337, -4.421634395132),
    Complex::new( 0.671908500186, -2.755072636947),
];

pub const FFT_TEST_X20: [Complex<f32>; 20] = [
    Complex::new(-0.138174469322, -0.274748504122),
    Complex::new(-1.227476709426,  0.905279873773),
    Complex::new(-0.940584818722, -0.463678927507),
    Complex::new(-0.327372793730,  0.441537277752),
    Complex::new( 0.086812488375,  1.122322318862),
    Complex::new(-0.100645730164, -0.142102548176),
    Complex::new(-0.339607323410, -0.632982556339),
    Complex::new(-1.122342071583, -0.361529677196),
    Complex::new(-0.394764118785,  1.317868322379),
    Complex::new( 0.885025645922,  0.277662260330),
    Complex::new(-0.937809434341, -0.464711897028),
    Complex::new(-0.316998490158,  0.688777215432),
    Complex::new( 0.649526607014,  0.181558179235),
    Complex::new( 0.780299241568, -0.070192359053),
    Complex::new( 1.932600474030, -0.136400805574),
    Complex::new(-0.216121187682, -0.461249755715),
    Complex::new( 0.926223942818, -0.028529590209),
    Complex::new( 1.602135289481,  1.434596371731),
    Complex::new( 1.623836928491, -1.265873017618),
    Complex::new( 1.568843067308, -0.364404259258),
];

pub const FFT_TEST_Y20: [Complex<f32>; 20] = [
    Complex::new( 3.993406537683,  1.703197921701),
    Complex::new( 3.008874212687,  7.663142996950),
    Complex::new(-1.159042365700,  3.282695683450),
    Complex::new( 0.903124379379,  1.428002755716),
    Complex::new(-1.572075523393,  4.283883169775),
    Complex::new( 2.253301421641,  2.928788716985),
    Complex::new( 3.534976344610,  2.383761115026),
    Complex::new( 1.326813143543,  3.111834244207),
    Complex::new(-3.988701280111, -0.677308408606),
    Complex::new(-1.984004176890, -4.401380983625),
    Complex::new( 0.942714014611, -2.993550877540),
    Complex::new( 2.448617718798, -1.195359461640),
    Complex::new(-3.328697057289, -4.221639306000),
    Complex::new( 4.287827550431,  1.139111429335),
    Complex::new(-4.013398939947, -0.677595378939),
    Complex::new(-2.670924173537,  7.635447143438),
    Complex::new(-2.067686784436, -7.802196902076),
    Complex::new(-1.972088145081, -6.957222482710),
    Complex::new(-3.101333982661, -2.675851028288),
    Complex::new( 0.394807719219, -9.452730429599),
];

pub const FFT_TEST_X21: [Complex<f32>; 21] = [
    Complex::new(-0.292459060095, -0.918931582987),
    Complex::new(-1.517033866291, -0.323416256164),
    Complex::new(-1.482752904272,  0.244611310478),
    Complex::new( 0.319915998225, -0.315947516079),
    Complex::new(-0.304653265396,  1.887596128705),
    Complex::new( 0.411043591735, -0.374178478358),
    Complex::new( 0.462233294747,  0.181705549666),
    Complex::new(-0.053584030277, -1.645170622140),
    Complex::new(-0.503521485275,  0.734911625473),
    Complex::new(-0.425967471739,  0.316306288806),
    Complex::new( 0.824866046500, -0.830071277629),
    Complex::new( 1.806337286696, -0.766132673126),
    Complex::new( 0.620721751355,  0.965491952308),
    Complex::new(-2.440640280723, -0.836336433610),
    Complex::new(-0.620347474921, -1.385103078296),
    Complex::new(-0.195316065403,  0.051333260777),
    Complex::new(-0.448853815719,  1.473820485114),
    Complex::new( 0.468718174491, -0.133593056210),
    Complex::new(-0.912579674279,  0.093239456860),
    Complex::new(-0.060107647935, -1.182219308121),
    Complex::new(-1.630393758159, -1.763218511036),
];

pub const FFT_TEST_Y21: [Complex<f32>; 21] = [
    Complex::new(-5.974374656733, -4.525302735571),
    Complex::new(-3.602445825195, -3.324518378407),
    Complex::new( 1.072414517043, -2.680697729601),
    Complex::new(-2.544321267300, -3.718686381182),
    Complex::new( 7.073007677928, -0.865187973747),
    Complex::new(-4.293690988707,  8.225140969655),
    Complex::new( 6.571053045547, -6.857090522238),
    Complex::new( 4.072721192387,  4.943421889232),
    Complex::new( 0.156147391740, -4.066681194313),
    Complex::new(-0.307481517626, -5.479113972476),
    Complex::new(-3.514186056563,  2.187768615743),
    Complex::new( 6.761786041122,  2.434424093260),
    Complex::new( 6.161936098710,  2.932845658178),
    Complex::new(-0.983132976608,  2.475188613552),
    Complex::new( 0.631299782782,  0.701473074392),
    Complex::new(-0.667672994573, -2.853889888582),
    Complex::new(-1.447661658880,  2.115483689466),
    Complex::new( 4.415160634353,  1.955631737971),
    Complex::new(-10.00387266507, -7.143199142087),
    Complex::new(-2.863331203221, -6.794540372208),
    Complex::new(-6.854994833120,  1.039966706231),
];

pub const FFT_TEST_X22: [Complex<f32>; 22] = [
    Complex::new( 1.005393906711,  1.012308570546),
    Complex::new( 1.688071880070,  1.150240841419),
    Complex::new( 0.683345289428, -0.062623351865),
    Complex::new( 0.155361503274, -0.795786088580),
    Complex::new(-1.820284248422,  1.218801819999),
    Complex::new( 0.628547514320, -0.973049954879),
    Complex::new( 1.065280228237,  0.036573157841),
    Complex::new(-2.060385212897,  0.046192542979),
    Complex::new(-1.013657698873,  0.781474907362),
    Complex::new( 0.375646814842,  1.554324770487),
    Complex::new( 0.891369658302, -0.161096019710),
    Complex::new(-1.068796361214,  0.437936260633),
    Complex::new( 2.551818984217, -0.855823653619),
    Complex::new( 1.902986665335,  0.173617409071),
    Complex::new( 0.782297326663,  1.157416587734),
    Complex::new( 1.408853663828, -0.360396487397),
    Complex::new(-1.133068299545,  0.494376224047),
    Complex::new(-0.644483632405, -0.024946520734),
    Complex::new(-1.906331676937,  0.114276645380),
    Complex::new(-0.607040125764,  0.926527519920),
    Complex::new( 0.405414441208,  0.272172965895),
    Complex::new( 0.522244149054,  0.024648904750),
];

pub const FFT_TEST_Y22: [Complex<f32>; 22] = [
    Complex::new( 3.812584769431,  6.167167051279),
    Complex::new(-2.048551145080,  1.920025824226),
    Complex::new( 6.865239600362, -6.254294174522),
    Complex::new( 6.680188302485,  7.175301698042),
    Complex::new( 0.336985685391, -2.472221525673),
    Complex::new( 2.704578846644, -1.072297553521),
    Complex::new(-5.869735761695,  0.406925054472),
    Complex::new( 7.260505946731,  4.415111182242),
    Complex::new( 1.284910248555, -1.935024971881),
    Complex::new( 1.066939615916, -8.084240769565),
    Complex::new(-5.103441669518,  4.459170611366),
    Complex::new(-0.789428947455,  1.848548655941),
    Complex::new(-2.925771543223, -0.333175332942),
    Complex::new( 8.231473045218, -1.322435498403),
    Complex::new(-2.591866662060,  5.216079561352),
    Complex::new(-0.164183264077, -4.464934113704),
    Complex::new(-10.15230260143,  2.776060476179),
    Complex::new(-1.546651996340,  8.030006620400),
    Complex::new( 2.238990051464, -2.081025590453),
    Complex::new( 2.420796442681, -1.572310054104),
    Complex::new(11.406980883199, 10.003031983787),
    Complex::new(-0.999573899550, -0.554680582506),
];

pub const FFT_TEST_X24: [Complex<f32>; 24] = [
    Complex::new(-1.420307293620,  0.936847943063),
    Complex::new(-0.496969771953,  0.590714565032),
    Complex::new(-1.354677361467, -2.010032405560),
    Complex::new(-0.345483299359,  0.404926987051),
    Complex::new( 0.689486222452, -0.768259750193),
    Complex::new(-1.549641684121, -0.858118594125),
    Complex::new( 0.420175234777, -0.280408837681),
    Complex::new(-2.217262854791, -0.375004631542),
    Complex::new(-1.198653374297,  0.900261122326),
    Complex::new( 0.329725819477,  0.014746627154),
    Complex::new( 0.045545673584, -0.712071131515),
    Complex::new(-0.495265874931, -0.922857927267),
    Complex::new( 0.628733326629,  0.643883091672),
    Complex::new( 0.331696680042, -1.105791987558),
    Complex::new( 0.515399107713, -0.438177945625),
    Complex::new( 0.183533661425, -0.031372217136),
    Complex::new(-0.276753781687,  0.187288341292),
    Complex::new( 0.177067067896, -0.017072068523),
    Complex::new(-0.269294774259,  0.299567125253),
    Complex::new( 0.691280106543, -0.285429769347),
    Complex::new(-0.478959763653,  0.592471601549),
    Complex::new( 0.731469600041, -1.116061252131),
    Complex::new( 0.506952261982, -1.310440154883),
    Complex::new(-0.131823537621,  1.440176198054),
];

pub const FFT_TEST_Y24: [Complex<f32>; 24] = [
    Complex::new(-4.984028609200, -4.220215070640),
    Complex::new(-4.250507506099,  6.724208699822),
    Complex::new( 0.057360770043,  0.512716211712),
    Complex::new(-3.908279516708,  6.693724296623),
    Complex::new(-1.890450979255,  6.088953815148),
    Complex::new(-1.373512942118,  4.739496879303),
    Complex::new(-4.642576156472,  5.105686189601),
    Complex::new(-2.584328440882,  1.728098263528),
    Complex::new( 0.744531943959,  0.135606499920),
    Complex::new(-0.971959807211, -7.134164325953),
    Complex::new( 0.738417588646, -0.940988007706),
    Complex::new(-0.528146358843, -0.272559882858),
    Complex::new( 0.599319565507,  0.302073070033),
    Complex::new(-3.856916042162,-10.635041786616),
    Complex::new(-5.293262572847, -3.982011344991),
    Complex::new(-4.348687900619,  2.460786763911),
    Complex::new( 5.015153490569,  6.700996972453),
    Complex::new( 0.389766514080, -0.278393532462),
    Complex::new( 0.801466543459,  8.782425209839),
    Complex::new( 3.623555226700, -0.026142755609),
    Complex::new(-3.328686450422,  0.591920646925),
    Complex::new(-5.710969715584,  4.204863120029),
    Complex::new( 2.683867262111, -0.108391775481),
    Complex::new(-1.068500953539, -4.689297523031),
];

pub const FFT_TEST_X26: [Complex<f32>; 26] = [
    Complex::new(-1.513790990128,  0.450104660529),
    Complex::new(-0.609587704775,  0.200963343771),
    Complex::new( 1.150854971928, -0.979670346844),
    Complex::new( 0.676761753784, -0.390760850862),
    Complex::new( 0.025326431025,  0.226613394038),
    Complex::new(-0.877894422758,  0.377687762743),
    Complex::new( 0.016945667503, -0.414424826825),
    Complex::new( 0.671396901344,  1.014597796222),
    Complex::new( 1.620562100771, -0.445584464270),
    Complex::new(-0.621912682345,  0.523347355420),
    Complex::new(-1.722706628967, -1.473722873869),
    Complex::new( 1.604125850850, -0.595523792175),
    Complex::new( 2.695969244871, -0.740444785313),
    Complex::new(-1.837539349404, -0.402987576873),
    Complex::new( 0.643703593669, -0.530984627964),
    Complex::new( 0.745985203740, -1.158124796569),
    Complex::new( 0.492860315079,  0.183477887101),
    Complex::new(-0.715219690752, -0.979086251385),
    Complex::new( 0.179883358483,  0.236135674483),
    Complex::new( 0.196402574786, -1.059380996958),
    Complex::new( 0.069933652344,  0.829344522775),
    Complex::new( 0.325146685501, -1.266467132602),
    Complex::new(-1.839777223485, -0.327473446299),
    Complex::new( 1.778506841624, -1.571433253340),
    Complex::new( 1.002599293378,  0.297630901673),
    Complex::new(-1.821267785996,  1.027493831629),
];

pub const FFT_TEST_Y26: [Complex<f32>; 26] = [
    Complex::new( 2.337267962069, -6.968672891765),
    Complex::new(-1.374144569280,  2.440460452235),
    Complex::new( 0.293963382503, -1.014603415840),
    Complex::new(-5.808647515741,  2.932080281412),
    Complex::new(-3.954391977726,  4.050421232706),
    Complex::new(-10.43402900507, -2.430379478773),
    Complex::new(-14.39697144205,  7.561455425624),
    Complex::new( 4.801073402095, -7.297832464880),
    Complex::new(-6.451827528493, -1.778154888801),
    Complex::new( 7.694740702469, -3.586296872724),
    Complex::new( 0.830361317715, -4.000025563805),
    Complex::new( 2.193823341792,  2.627715132519),
    Complex::new( 5.557050661872,  3.023112572307),
    Complex::new( 3.307459610871,  1.590676230192),
    Complex::new(-12.11893265379, -2.054113664628),
    Complex::new( 5.893155083845, -6.130479717222),
    Complex::new( 1.236890091413, -1.250300895885),
    Complex::new( 6.703265906214,  0.834044438577),
    Complex::new(-7.565202099594,  2.208332250508),
    Complex::new( 3.230245599909,  6.555949348851),
    Complex::new(-7.293883944894, -3.228615872305),
    Complex::new(-4.814526866453,  4.783901741180),
    Complex::new(-0.579907911716,  5.262229129419),
    Complex::new(-0.768605942699,  3.726121287503),
    Complex::new(-1.461710271209, -1.198541330006),
    Complex::new(-6.415081077369,  5.044238707360),
];

pub const FFT_TEST_X30: [Complex<f32>; 30] = [
    Complex::new( 1.383958311928,  1.009063372834),
    Complex::new( 0.656943839727, -0.201492142788),
    Complex::new(-1.263185461543, -0.762235271683),
    Complex::new(-0.279286295800,  0.737833309276),
    Complex::new( 0.061984731638,  0.232640465778),
    Complex::new( 0.078974781535,  0.151163978562),
    Complex::new(-0.067264854607, -1.701011326832),
    Complex::new(-2.367250035232, -0.675654408115),
    Complex::new( 0.901831068347, -2.291740807507),
    Complex::new(-0.685180193104,  0.640309251420),
    Complex::new(-0.865870302577, -0.234993063029),
    Complex::new( 0.394411867502, -1.629554965527),
    Complex::new(-0.163205564173,  0.199656642882),
    Complex::new( 0.561129126184,  2.875025531619),
    Complex::new(-1.191762025326,  0.544473782291),
    Complex::new( 0.808768695645,  1.055445062240),
    Complex::new(-0.145391531392, -0.095884441741),
    Complex::new( 1.006538762836, -0.724775764669),
    Complex::new( 2.116364610835, -2.412759658708),
    Complex::new( 0.210526780948,  1.338479312378),
    Complex::new( 0.722177277886,  1.447742766425),
    Complex::new( 0.148533332865,  0.262381546261),
    Complex::new(-1.337190861421,  1.251733062365),
    Complex::new(-0.346555962201, -0.012481387193),
    Complex::new( 1.400932749094, -0.360556660035),
    Complex::new( 0.479524006659, -0.777208683834),
    Complex::new(-0.525976158853, -0.155146817266),
    Complex::new(-1.237887495307,  0.159614688084),
    Complex::new( 0.526429110861, -1.368405705104),
    Complex::new(-0.688995272873,  0.833548127008),
];

pub const FFT_TEST_Y30: [Complex<f32>; 30] = [
    Complex::new( 0.294027040082, -0.664790204608),
    Complex::new(-7.251086654153,  1.930700457878),
    Complex::new( 4.192769230897,  1.789725983362),
    Complex::new(11.197367573831,  3.254783235859),
    Complex::new(-10.05311899630, -1.739286933243),
    Complex::new(10.012405959748, -4.383419562391),
    Complex::new(-1.293134786584,  8.917417869363),
    Complex::new( 3.828158834339,  7.240756714477),
    Complex::new( 2.213781017086, -3.491740260928),
    Complex::new(-11.80333043911,  1.771364969478),
    Complex::new( 9.272563287802,  0.848929030951),
    Complex::new(-0.497098653141, -0.996109950789),
    Complex::new(-3.419412966566, -7.252273855897),
    Complex::new(-3.013334143526, -1.690385014079),
    Complex::new( 8.340586193744,  1.433397080247),
    Complex::new( 2.813635161314, -8.730057114052),
    Complex::new( 0.460908379865,  1.518681481090),
    Complex::new(-5.717851959043, -2.820174393000),
    Complex::new( 8.168927986272, 11.157813415293),
    Complex::new( 2.879730739941,  1.551007915618),
    Complex::new( 0.710609564242, -1.414210144075),
    Complex::new( 5.664928404839, 12.624792285877),
    Complex::new(-4.559435692794,  5.128817112052),
    Complex::new( 3.020061485600,  2.317084746039),
    Complex::new( 9.287256582183,  1.097899941841),
    Complex::new( 4.921470505274, -5.250097784974),
    Complex::new( 5.775306053035,  5.396588308077),
    Complex::new(-8.507611683876,  0.041180219148),
    Complex::new( 3.499272220645,  8.240657702592),
    Complex::new( 1.080399112219, -7.557152066173),
];

pub const FFT_TEST_X32: [Complex<f32>; 32] = [
    Complex::new( 0.010014623512,  0.557635892111),
    Complex::new(-0.206536736342, -0.166543150147),
    Complex::new( 0.538145349965, -1.725439447290),
    Complex::new( 0.302742823470, -1.371600938217),
    Complex::new( 1.002711341702,  0.326114543577),
    Complex::new( 0.141075699526,  0.155158151624),
    Complex::new(-0.607068327122,  1.319516119806),
    Complex::new( 0.368752062157, -0.923715410356),
    Complex::new( 2.103742061281, -0.015112313666),
    Complex::new( 0.161141569742,  0.602136525051),
    Complex::new(-0.450622712484,  1.781653187693),
    Complex::new(-0.135385448029,  0.118136375039),
    Complex::new(-0.881476360789,  0.743248990846),
    Complex::new(-0.470865375669,  0.297577338949),
    Complex::new( 1.578293870903,  0.150586285410),
    Complex::new(-0.582548890310, -0.090131349592),
    Complex::new(-0.728216825909, -0.280660553441),
    Complex::new(-0.405960077281, -0.823236356122),
    Complex::new(-0.689782453002, -0.111721138015),
    Complex::new(-0.483036608523, -2.255409787531),
    Complex::new(-1.773638052539,  0.276871847058),
    Complex::new( 1.768143481866,  0.929411559777),
    Complex::new( 1.598162436054,  0.336924712326),
    Complex::new( 0.025313208364,  0.101634388542),
    Complex::new( 1.295932058649, -0.792267243573),
    Complex::new( 0.197302929571, -1.198246830820),
    Complex::new(-0.674567746661,  0.782836390216),
    Complex::new(-1.155843266715, -2.060346979162),
    Complex::new(-1.174296668808, -1.018450093532),
    Complex::new(-2.374237969002,  0.374087797223),
    Complex::new( 0.773269391236, -0.854101525457),
    Complex::new(-0.320046719055, -0.112754382318),
];

pub const FFT_TEST_Y32: [Complex<f32>; 32] = [
    Complex::new(-1.249387330241, -4.946207393990),
    Complex::new( 6.246388763884, -6.773507691880),
    Complex::new(-8.084921469264,-10.845914953315),
    Complex::new( 4.357263742580, -0.359518611967),
    Complex::new( 0.869129033150,  4.810140005791),
    Complex::new(-4.320755060606, -2.990777115902),
    Complex::new(-6.040916675986, 11.391912365593),
    Complex::new( 1.334419178501,  8.684519829396),
    Complex::new( 4.553475487339, -2.672989876360),
    Complex::new( 5.980003650433,  0.810448601904),
    Complex::new(-6.393705093395,  4.226375095002),
    Complex::new(-2.975901497257,  6.587514214591),
    Complex::new(-1.005810190439, -6.128898292417),
    Complex::new( 0.016624592858, -1.973370861210),
    Complex::new( 0.024605667140, -7.634608092684),
    Complex::new( 2.682037461215, -1.379684965569),
    Complex::new( 5.090591302217,  7.901478702130),
    Complex::new( 4.974928932755, -2.673377557945),
    Complex::new( 2.018958625049,  1.429758433848),
    Complex::new(-3.215930811783, -5.513827987988),
    Complex::new( 9.696021083826,  2.712450847683),
    Complex::new(-6.175824724853,  6.515234684364),
    Complex::new(-10.13940871662,  3.456026873018),
    Complex::new( 3.811736373367,  3.481961808174),
    Complex::new(-8.975590750922, -1.092757154258),
    Complex::new( 1.006822057237, -4.766098514087),
    Complex::new(-0.499087378413,  4.387815733060),
    Complex::new(-0.223489533627,  2.032893439147),
    Complex::new(12.473346705334, -4.826450587127),
    Complex::new( 4.394902822920, 12.095339998118),
    Complex::new(-3.828535537115,  2.263473712749),
    Complex::new(-6.081522756885, -0.365006140312),
];


pub const FFT_TEST_X35: [Complex<f32>; 35] = [
    Complex::new( 0.621203985274,  -1.170486588571),
    Complex::new( 0.001346936460,   0.911992162865),
    Complex::new( 0.852266167932,  -0.485602417107),
    Complex::new(-1.440614617555,  -0.143907395580),
    Complex::new(-0.886824740774,  -0.735649970983),
    Complex::new( 0.822316647558,  -2.190416870881),
    Complex::new(-0.848542045588,   0.265512380995),
    Complex::new( 0.224076450439,  -2.302360677412),
    Complex::new(-0.510056035858,  -1.331941821231),
    Complex::new( 1.682894720322,   1.515017086970),
    Complex::new(-0.293255187957,   0.559255597549),
    Complex::new( 1.692889886331,  -1.640844999342),
    Complex::new(-1.032973350809,   0.405524091118),
    Complex::new( 0.177413388869,  -1.166118195604),
    Complex::new(-0.077664879368,  -1.471655833896),
    Complex::new(-0.713927870525,   1.118966977478),
    Complex::new( 3.112942596938,   0.183067680138),
    Complex::new(-2.132342418783,   0.888305824658),
    Complex::new( 0.570015793758,  -1.075297345387),
    Complex::new( 0.029232277101,  -0.052772048068),
    Complex::new( 0.021810229730,   1.026136624357),
    Complex::new( 0.183820954153,   0.359011138378),
    Complex::new(-0.646415125847,   0.878859460005),
    Complex::new( 0.379503797426,   0.690555809274),
    Complex::new(-1.205501520591,  -1.281704908973),
    Complex::new(-0.671296057445,  -1.202380495393),
    Complex::new( 1.000730854392,   1.337218974137),
    Complex::new(-0.507823699969,   0.667041823900),
    Complex::new( 0.786493220706,   0.711624105805),
    Complex::new(-0.147343975279,  -0.421666316903),
    Complex::new( 1.000992786069,   0.072055493934),
    Complex::new(-0.638324259500,   0.503386775311),
    Complex::new( 1.518863022405,  -0.447779056699),
    Complex::new(-0.690987494413,   0.744128091375),
    Complex::new( 0.074647158829,  -1.048901976585),
];

pub const FFT_TEST_Y35: [Complex<f32>; 35] = [
    Complex::new( 2.309567594431,  -5.331826820366),
    Complex::new(-7.442846930878,  -4.725553620071),
    Complex::new(-2.183297818919,   6.404493143269),
    Complex::new(-2.751014847029,   2.658941664250),
    Complex::new( 8.330534466967,   0.919074147759),
    Complex::new( 6.588325473188,  -2.237962814214),
    Complex::new(-7.983324045653,  -4.751388462518),
    Complex::new( 9.842334426677,  -4.886656356639),
    Complex::new( 2.723677138226,  -1.864201873505),
    Complex::new( 3.314550864796,  -2.486087207928),
    Complex::new(-9.968089532702, -11.225031015883),
    Complex::new( 3.348282695100,   3.685146610266),
    Complex::new( 3.650591794608,   7.864477419325),
    Complex::new(12.324040428213,  -2.521426915911),
    Complex::new(-1.118920460046,  -5.025187742730),
    Complex::new(14.513400880941,  11.251977643133),
    Complex::new(-2.482556277234,  -3.095357211645),
    Complex::new(-7.549326283090,   3.844289159351),
    Complex::new(-6.554611159279,  -1.426517057076),
    Complex::new( 6.564157092619,   4.071022052298),
    Complex::new( 5.022588868136, -15.817689097768),
    Complex::new(-5.251727726400,   2.789037545358),
    Complex::new(-2.128113345135, -15.921584799030),
    Complex::new(-6.717549051974,   1.209151038219),
    Complex::new( 3.222807461576,   5.205190352829),
    Complex::new(-2.420694516532,  -6.628232249491),
    Complex::new(-0.210938110900,   1.317502940068),
    Complex::new(-4.284810675111,   4.379050426632),
    Complex::new(-1.842031171135,   3.520287066742),
    Complex::new( 5.259391106033,  -9.692983760094),
    Complex::new(-3.879590649031,   2.871689364722),
    Complex::new(-1.641216184114,   4.267406466810),
    Complex::new( 1.294145378923,  -2.702480168973),
    Complex::new( 1.886124883788,  -3.741139781213),
    Complex::new( 7.958277715545,  -3.144460685955),
];


pub const FFT_TEST_X36: [Complex<f32>; 36] = [
    Complex::new(-0.515260084522,   1.287529717076),
    Complex::new( 0.587117158481,  -0.148572876243),
    Complex::new(-0.782947562463,   1.641852621518),
    Complex::new(-0.526927266439,   0.584647073200),
    Complex::new(-1.531349139822,  -1.069623628897),
    Complex::new( 1.018192400002,  -0.793147230271),
    Complex::new(-1.074504882712,  -0.091149144200),
    Complex::new(-0.401657438434,   0.004317962559),
    Complex::new( 1.259620132258,  -0.104377362194),
    Complex::new(-0.102194404981,  -0.973411762169),
    Complex::new(-0.895434561911,  -1.050093649832),
    Complex::new( 1.026577410282,   1.080478300358),
    Complex::new( 0.691470386469,  -0.436083438367),
    Complex::new(-0.230801075525,   1.635643257519),
    Complex::new(-0.121589188789,   0.070584124184),
    Complex::new( 0.332245123083,   0.603463018191),
    Complex::new( 0.098342650657,   0.713292188052),
    Complex::new(-0.653525164870,   0.226711651388),
    Complex::new(-0.486468735347,   0.247902880597),
    Complex::new(-0.092383856045,   0.443156295025),
    Complex::new(-1.207432550343,  -0.503252568552),
    Complex::new( 0.680629730441,   0.210743200774),
    Complex::new(-1.655855919610,   0.985314552623),
    Complex::new(-0.635578415199,   1.126805769525),
    Complex::new( 0.429626094959,  -0.591166406548),
    Complex::new( 0.843172830682,  -0.010918445865),
    Complex::new(-0.130407009132,   0.920489918178),
    Complex::new( 0.879595565427,   0.076478701355),
    Complex::new( 0.407356105015,   0.244802856694),
    Complex::new(-0.247029167369,   1.416537545584),
    Complex::new( 0.001447109646,  -0.855321598060),
    Complex::new(-1.005160244372,   0.880697474487),
    Complex::new(-1.506889600501,  -0.376866773437),
    Complex::new( 0.595335431863,   0.874899791600),
    Complex::new(-1.720946712489,  -0.251050064927),
    Complex::new(-0.304668621370,  -0.437688673914),
];

pub const FFT_TEST_Y36: [Complex<f32>; 36] = [
    Complex::new(-6.978283472983,   7.583625277009),
    Complex::new(-6.674217696450,  -3.304059977181),
    Complex::new(-9.133615960691,   4.553754806959),
    Complex::new( 7.138280833022,  -0.461421293427),
    Complex::new( 6.376807409683,  -0.306551799085),
    Complex::new( 2.594166782732,   4.623935739453),
    Complex::new( 2.991096252215,  -1.709441742997),
    Complex::new( 7.042547687256,  -5.210100129931),
    Complex::new(-3.291195373643,  -2.837550873581),
    Complex::new( 3.068320668506,  -5.673130538045),
    Complex::new( 1.959771299385,  -2.235257672510),
    Complex::new(-10.609066858652,   0.928096828820),
    Complex::new( 3.208839022246,   0.484194748895),
    Complex::new( 2.548602732505,   9.743720342785),
    Complex::new( 6.240917395617,   6.571681544646),
    Complex::new(-4.101181674885,   4.039956075121),
    Complex::new(-9.685452992487,   0.380605286598),
    Complex::new(-3.555255829985,   3.488301753752),
    Complex::new(-10.504163464296,  -6.018056829194),
    Complex::new(-2.111740241301,   1.705549685664),
    Complex::new( 2.140088966360,   7.541207884663),
    Complex::new( 0.985036473018,  -0.558056384811),
    Complex::new(-1.305685512500,   8.210384283174),
    Complex::new( 4.783233947768,  -2.666144508286),
    Complex::new( 6.484426654393,  -5.252223925558),
    Complex::new(-2.313461997972,   5.743487698749),
    Complex::new(-1.086778704978,   8.029162089587),
    Complex::new( 6.916062245443,   0.764580425536),
    Complex::new(-2.415195588075,  -0.073706064002),
    Complex::new(-5.346986333451,  -3.512605491284),
    Complex::new(-0.924055660625,   2.282174534826),
    Complex::new(-0.470350054245,   2.031728408857),
    Complex::new( 2.141016439694,  -1.773104703203),
    Complex::new(-1.014341113192,   7.641158118573),
    Complex::new(-4.249655466965,   2.206889911886),
    Complex::new( 0.602106144731,  -0.611713697716),
];


pub const FFT_TEST_X43: [Complex<f32>; 43] = [
    Complex::new( 0.086214736594, -0.374055466225),
    Complex::new(-0.398326405553,  0.064437628903),
    Complex::new(-0.086828498048, -1.377541893939),
    Complex::new(-0.014057206023, -1.721581520365),
    Complex::new(-1.130661886812, -0.823144321334),
    Complex::new( 0.265330564080, -2.139333421737),
    Complex::new( 0.987278886883,  0.510016610694),
    Complex::new( 1.388439583820, -0.312226254937),
    Complex::new( 1.314187441787,  2.179164255828),
    Complex::new(-0.134438842798, -2.204082595282),
    Complex::new( 0.245609009336,  0.112479617279),
    Complex::new(-1.038607185161,  0.772906423002),
    Complex::new( 0.816938259734, -2.090685529624),
    Complex::new( 0.975237183551, -0.563625353818),
    Complex::new(-0.941942184460,  1.392834491457),
    Complex::new( 1.369305972621,  0.035788913101),
    Complex::new( 0.274358812513,  0.334025802789),
    Complex::new(-0.187955769606,  0.806622195637),
    Complex::new(-0.435359111927,  0.395863170294),
    Complex::new(-1.059982565487, -1.108626336147),
    Complex::new(-0.085915350568, -0.294840267490),
    Complex::new(-0.202754288995, -0.413065083074),
    Complex::new(-0.607968226502,  1.253761902790),
    Complex::new( 2.921829936105,  1.400641655759),
    Complex::new( 0.493898754300,  2.597915340403),
    Complex::new(-0.939016287203,  0.999025234458),
    Complex::new(-1.213828533796, -0.093371812474),
    Complex::new( 0.049357784794, -1.117710210403),
    Complex::new( 0.291427701377,  0.619473850471),
    Complex::new(-0.297284045241,  1.471963630624),
    Complex::new(-1.204828141785,  0.357668469775),
    Complex::new( 1.214147177406, -1.053652949447),
    Complex::new(-0.669099873019,  0.645208133613),
    Complex::new(-0.669325749409,  1.526826939113),
    Complex::new( 1.388489801757, -0.663313867864),
    Complex::new( 1.528893702905, -0.300643090523),
    Complex::new( 0.969651597440,  0.887262607328),
    Complex::new( 0.961949407503, -1.302265834141),
    Complex::new( 0.025366344758,  1.938755581562),
    Complex::new( 0.012954685257, -0.117840651513),
    Complex::new( 0.422317736906,  0.454593332125),
    Complex::new(-1.225108444904, -0.762684444639),
    Complex::new( 0.510768457794,  0.200474501150),
];

pub const FFT_TEST_Y43: [Complex<f32>; 43] = [
    Complex::new( 5.970664941924,   2.123419383178),
    Complex::new(-4.826258373494, -10.530035821412),
    Complex::new(-6.840438649504,   2.195697396144),
    Complex::new(-15.037444321130, -0.498694877295),
    Complex::new(-2.324178679783,  -5.588631770237),
    Complex::new(-9.817989632278,   8.215797271526),
    Complex::new(19.440508234356,   0.725796090385),
    Complex::new(-0.273833848905,   4.924507895251),
    Complex::new( 5.898110303453,  -7.584923619025),
    Complex::new(-1.491058783404,   7.983518326557),
    Complex::new(-7.459786425320,  -5.471409031844),
    Complex::new( 9.458054840383,  -1.411338639410),
    Complex::new(-7.652963176561,  16.470882260110),
    Complex::new( 4.933008347551,   1.752692467372),
    Complex::new( 3.158349989133, -10.520004874496),
    Complex::new( 3.461440707146,  -1.053485004255),
    Complex::new( 0.403169282390,  15.216737475743),
    Complex::new(11.005277294499,   0.924950795722),
    Complex::new(-2.459303339406,  -4.952009870945),
    Complex::new(-11.998504221115, -4.269332241730),
    Complex::new(-10.575401537817,  0.521491539120),
    Complex::new(-8.612771844559,  -4.765648940500),
    Complex::new( 7.802134874811,   3.882271887067),
    Complex::new( 2.664085789892,  -5.430064274009),
    Complex::new( 7.012256247961,  -6.119235310609),
    Complex::new(-0.520208603756,  -0.845655711277),
    Complex::new( 0.308220700989,   3.533138362895),
    Complex::new(-10.811305738786, -4.238039944052),
    Complex::new( 6.001274292511,  -2.592573440494),
    Complex::new( 5.544361033380, -11.920579663414),
    Complex::new(-2.095258565391,   0.336151200781),
    Complex::new(-5.596706630782,   7.291207810674),
    Complex::new( 9.325757124002,  -3.598787999557),
    Complex::new( 1.133897756930,  -1.612056679027),
    Complex::new(-2.012305507947,   5.032886593926),
    Complex::new(-10.072407904704,  5.354603355501),
    Complex::new( 2.641399130952,  -1.713592877295),
    Complex::new( 1.128116547129,   7.394974387525),
    Complex::new(12.210114373933,  -3.041200993402),
    Complex::new(-0.850951175674,   3.946134783722),
    Complex::new(-1.686631417770,  -4.776809881210),
    Complex::new(-2.550902604765,  -2.082230855079),
    Complex::new( 9.773642843061,  -9.294902010297),
];

pub const FFT_TEST_X48: [Complex<f32>; 48] = [
    Complex::new(-1.408383409504,   0.661990153106),
    Complex::new(-0.257850483647,  -2.392863066952),
    Complex::new(-0.321563284081,   1.408168751420),
    Complex::new(-1.963488918325,  -0.315363008755),
    Complex::new( 0.872572043811,  -1.774358495756),
    Complex::new(-1.036243090405,   0.085162186806),
    Complex::new(-0.810463329242,   0.370726012575),
    Complex::new( 0.814727688017,  -0.148930236445),
    Complex::new(-0.482188504339,  -0.888806074906),
    Complex::new( 0.751010250272,   0.610241893778),
    Complex::new( 1.562853718365,   0.338170177897),
    Complex::new( 0.836367957185,  -1.685869538958),
    Complex::new(-0.678836393610,  -1.105381292997),
    Complex::new( 1.313536222418,  -1.604103598331),
    Complex::new( 0.652309130012,  -1.915192986159),
    Complex::new(-0.398123599463,   1.372136473305),
    Complex::new( 2.555137160099,   0.715094591241),
    Complex::new( 1.803926723963,  -0.470162240275),
    Complex::new(-1.033969686967,  -1.754083599107),
    Complex::new( 0.345505105620,   1.869665415226),
    Complex::new( 0.917886037796,   1.488788889124),
    Complex::new(-0.149819207787,   0.641387132093),
    Complex::new( 0.239135545455,   0.491166352445),
    Complex::new( 0.571741246274,   0.056534896965),
    Complex::new(-0.131630105163,  -1.508920032468),
    Complex::new( 1.209119501276,  -0.078706912158),
    Complex::new(-0.955610498388,   1.044137820022),
    Complex::new( 0.106457806412,  -0.585542024212),
    Complex::new(-1.229933443664,  -0.322249167809),
    Complex::new( 0.278186189361,   1.807684972303),
    Complex::new(-1.729784506112,  -0.939519586014),
    Complex::new( 0.927483189137,   0.431322133098),
    Complex::new( 0.141968377392,  -0.120521833531),
    Complex::new( 0.747436107175,  -1.117297332586),
    Complex::new( 0.321427506892,   0.604553538042),
    Complex::new(-1.310259971951,   0.301350874871),
    Complex::new( 0.000616127451,   1.395956853708),
    Complex::new( 0.789283665376,  -0.378417239374),
    Complex::new( 1.626071060809,  -0.838198796474),
    Complex::new(-0.502170615893,  -0.371786828507),
    Complex::new( 0.941560993676,   0.083132997096),
    Complex::new( 0.217335920952,  -0.775367298569),
    Complex::new(-1.386726382455,   1.228033537755),
    Complex::new( 0.135305964480,   1.010214926902),
    Complex::new(-0.769134001940,  -1.642182708631),
    Complex::new( 0.451443995268,  -1.443277308466),
    Complex::new( 0.315403114502,   0.409584212993),
    Complex::new( 0.777007938735,   0.033642728423),
];

pub const FFT_TEST_Y48: [Complex<f32>; 48] = [
    Complex::new( 5.666636855245,  -5.718253686246),
    Complex::new(-9.318440723038, -11.045628239935),
    Complex::new(-10.484391800934, 10.258547835119),
    Complex::new( 5.692975013010,  -0.079178697546),
    Complex::new(-0.031494239726,  -3.429117974659),
    Complex::new(-1.633492827483,   6.955978741593),
    Complex::new( 9.741303637543,   2.061588265899),
    Complex::new( 1.051018454307,  11.180284489721),
    Complex::new(-8.006452512021,   0.459314562290),
    Complex::new(-7.397134103296,   6.198088361763),
    Complex::new( 4.688329496623,   1.626283668222),
    Complex::new(-8.380975402709,  -3.715659857481),
    Complex::new(-4.832542130429,  -9.241813561210),
    Complex::new(-5.444148048877,  -5.774968307876),
    Complex::new(-2.557281197147,  -8.013068178874),
    Complex::new(-2.508606838763,   3.393130955025),
    Complex::new(-13.856615792482, -8.279988253172),
    Complex::new(-0.275213201833,   9.234040467214),
    Complex::new(-10.548623142987,  1.461152259705),
    Complex::new(-5.454201445127,   5.015988800202),
    Complex::new( 3.151148175752,  16.404964892896),
    Complex::new(-2.628471739476,  12.549705973202),
    Complex::new(-5.309278338161,  -1.496205611507),
    Complex::new( 8.327510797620,   9.076602173656),
    Complex::new(-7.249202313653,   0.578432313391),
    Complex::new( 0.278119672993,   6.335493150399),
    Complex::new(-4.400202487177,   4.358641062270),
    Complex::new( 1.825561215029, -10.742991731336),
    Complex::new( 2.059618967411,   5.230483842207),
    Complex::new(-0.589368957248,  -0.568413649725),
    Complex::new( 5.846114680415,   3.953722464016),
    Complex::new(-4.790203069855,   5.357335572595),
    Complex::new(-16.219316666593,  5.416145069047),
    Complex::new( 4.053779640014,  14.490156426037),
    Complex::new(10.343285976607, -19.941466772140),
    Complex::new(-0.179745539698,  -6.776924924303),
    Complex::new( 9.333647116859,   2.311810446775),
    Complex::new(-0.778589953827,  -7.796695480692),
    Complex::new(-5.728518422011,  -0.187241621271),
    Complex::new(15.554791252022,   3.837751365144),
    Complex::new(-3.410115684107,  -2.362837725953),
    Complex::new(-14.699080682437,  4.704009521181),
    Complex::new( 4.974381394298,  -3.870880098021),
    Complex::new( 4.347015481178,   1.639590273798),
    Complex::new( 6.775882853829,  -8.045391749167),
    Complex::new(-6.905056488040,  -1.077414483536),
    Complex::new(-6.906638779165,  -3.861138554296),
    Complex::new(-0.790121808651,  -0.288436445313),
];

pub const FFT_TEST_X63: [Complex<f32>; 63] = [
    Complex::new(-0.165065089334,   1.102101871091),
    Complex::new(-0.981973148546,   0.541468656777),
    Complex::new(-0.253554650102,  -0.121332795252),
    Complex::new( 0.944969891304,  -0.207365910694),
    Complex::new( 0.435801732783,   1.116850636842),
    Complex::new(-2.058668461583,   1.768420128659),
    Complex::new( 0.404062083774,  -1.055764673267),
    Complex::new(-1.173590903686,   0.058528368777),
    Complex::new(-0.598414155862,  -0.497560622574),
    Complex::new(-1.861198860149,   0.229658791022),
    Complex::new(-2.562456370500,   0.495624931472),
    Complex::new( 0.673656989316,   2.905410000205),
    Complex::new( 0.867056802014,   1.798292948964),
    Complex::new(-2.078980954663,   0.098338397564),
    Complex::new(-0.330038784071,   0.481340360434),
    Complex::new( 1.276384585521,   1.297002232435),
    Complex::new( 0.261810533047,  -1.797403878425),
    Complex::new(-2.153713373163,  -0.426579749412),
    Complex::new( 0.065709110586,  -0.887295333513),
    Complex::new(-0.504714672950,  -0.491403278968),
    Complex::new( 0.314910052074,  -0.711703174875),
    Complex::new( 0.817545815846,   2.684246900528),
    Complex::new( 0.899097356674,   2.316804935463),
    Complex::new( 1.234132120370,  -0.619880076717),
    Complex::new( 0.791329122849,  -1.491623691612),
    Complex::new(-1.543373050418,  -0.676542277175),
    Complex::new( 0.671442701409,   0.216191301849),
    Complex::new( 0.131373689049,   0.579119405459),
    Complex::new(-0.372079387235,  -0.810986260520),
    Complex::new( 0.509295824480,   2.533724020332),
    Complex::new( 1.724705779066,   0.166621824873),
    Complex::new( 1.578021811166,   0.495673960042),
    Complex::new(-0.388517506381,   0.654051926694),
    Complex::new( 0.780148148992,  -1.186745985806),
    Complex::new(-0.998699640841,  -2.290498316764),
    Complex::new( 1.225655499248,   0.539258663300),
    Complex::new( 0.647174747272,  -1.701050133294),
    Complex::new(-1.961810462975,  -0.885111538141),
    Complex::new( 0.708722105215,   2.298722273781),
    Complex::new( 0.003407269436,  -0.160897403251),
    Complex::new(-1.461677661847,   0.035003203295),
    Complex::new(-0.003031847788,   0.263418857310),
    Complex::new(-0.921189208563,  -0.548149166993),
    Complex::new( 1.607243811931,   1.460044138769),
    Complex::new( 1.474955000858,  -0.319625335378),
    Complex::new(-1.479420038984,   0.442261731228),
    Complex::new(-0.501705519202,  -0.107677110586),
    Complex::new(-0.555052849202,  -2.288466181238),
    Complex::new( 0.115695886330,   0.958546419969),
    Complex::new(-0.272372848704,  -0.160652497732),
    Complex::new( 0.329785731274,  -0.424936229335),
    Complex::new( 0.480745655276,   1.205406168541),
    Complex::new( 0.070825951395,   2.104542991271),
    Complex::new(-0.006185321246,   0.587388482318),
    Complex::new(-0.694069041213,   0.770735193308),
    Complex::new( 0.908386043892,  -1.602236263851),
    Complex::new(-0.699555084329,   0.976937982289),
    Complex::new(-0.954674992562,  -0.016401236894),
    Complex::new(-0.309302754137,   0.958214618988),
    Complex::new(-0.127271579222,   1.856678631720),
    Complex::new(-0.871347344939,  -2.036988579664),
    Complex::new( 0.135839855058,  -0.627341937358),
    Complex::new(-0.335848209970,  -2.547865701465),
];

pub const FFT_TEST_Y63: [Complex<f32>; 63] = [
    Complex::new( -7.089662066859,   9.296545614813),
    Complex::new( -8.501752827269,   5.888942352564),
    Complex::new(  3.278359396134,   3.509899786067),
    Complex::new(  5.034502581381, -10.325422246173),
    Complex::new(  0.779395837363, -11.641131257781),
    Complex::new(  6.583373182868,  -0.765170650399),
    Complex::new(  7.673022911242,   5.376349934527),
    Complex::new(  6.901124231347, -11.572359190453),
    Complex::new(-12.551588348101,  -5.650836104556),
    Complex::new( 13.135291423808,  -9.005088743334),
    Complex::new(  6.256581548275,   7.656394164588),
    Complex::new( -9.007597317001,   6.540328187752),
    Complex::new(  5.970311877450,  11.718061229294),
    Complex::new(  3.567004157825,   0.672928597121),
    Complex::new(-14.427943038803,   8.900678790697),
    Complex::new(  1.056847529506,   3.528462625077),
    Complex::new( 13.620920754920,  14.305922963856),
    Complex::new(  8.760078200432,  11.222488908434),
    Complex::new(  5.722531558556,   7.234622735459),
    Complex::new( -5.247983376866, -11.345081644681),
    Complex::new(  1.314257740811,   1.904662960921),
    Complex::new(  0.730895747988,   5.589496067590),
    Complex::new(  6.527229987789, -10.176960210420),
    Complex::new( -4.341510788445,  -8.731233871509),
    Complex::new(  7.581071089827,  -9.540336644811),
    Complex::new(  4.648868334483,  -7.155035929172),
    Complex::new( -2.205072254220,  17.534621681153),
    Complex::new(  6.858512702532,   3.813829755562),
    Complex::new(  0.193418696750,  11.693363675036),
    Complex::new(  5.619907773283,   4.653892039135),
    Complex::new( -1.855582230893,  10.861851324746),
    Complex::new( 14.627670681377,  -2.489204973764),
    Complex::new(  0.605824410285,  -7.016190132363),
    Complex::new(  2.624656390216,   3.561441210498),
    Complex::new(  0.709206425704,  12.728091932012),
    Complex::new( -3.982794699993,   6.878915353589),
    Complex::new(-13.376734767433,   1.691306437014),
    Complex::new( -2.349794152830,  -0.330132617385),
    Complex::new( -3.726616620789,  15.817788395019),
    Complex::new(-16.729175354871,  -8.409111133317),
    Complex::new( 17.882515293846,  -3.208404044366),
    Complex::new( -7.470918853421,  18.877686110403),
    Complex::new( 12.668798353590,  -9.060907565117),
    Complex::new( -6.220564671186,  -5.153664668923),
    Complex::new( -1.712331740792, -15.816196915449),
    Complex::new(-11.816550492910,  12.590312098504),
    Complex::new(  5.948638061621,  10.638444837386),
    Complex::new( 13.008103746204, -15.557670122101),
    Complex::new(-13.266957624044,   3.898836567164),
    Complex::new( -1.862920665209,  -4.724933699937),
    Complex::new( -4.695828593392,   9.661188336137),
    Complex::new( -7.542434926702,  17.373541879534),
    Complex::new(  1.008284652559,   2.011360297386),
    Complex::new( -6.854631802630,  -4.014486905376),
    Complex::new( -6.668218293484,   4.636855650199),
    Complex::new(  3.172812378583, -20.418734887614),
    Complex::new(-23.330375903759, -12.181015318516),
    Complex::new(  6.267118807644,  17.748053544942),
    Complex::new( -8.369069881119,   5.704956182541),
    Complex::new(  9.266781179990,  -5.431082220535),
    Complex::new( -2.621123339590,  -4.576508645033),
    Complex::new(  3.116382580437, -13.991211520556),
    Complex::new(-15.293666222030,   1.998407515632),
];

pub const FFT_TEST_X64: [Complex<f32>; 64] = [
    Complex::new(-0.021754290353, -0.612017802190),
    Complex::new( 0.484276408753,  0.753944723650),
    Complex::new(-1.051031916820,  0.166448506301),
    Complex::new( 0.185316597591, -0.053758419799),
    Complex::new(-0.775208247301, -1.344741618220),
    Complex::new( 1.008977328193,  0.309312932614),
    Complex::new( 0.225467083836, -1.771870588253),
    Complex::new( 0.469982216778, -1.560265270836),
    Complex::new( 0.015796870295,  0.514270976406),
    Complex::new( 0.021523250463, -1.531865633331),
    Complex::new( 0.374810770914, -1.819295376215),
    Complex::new(-0.271362317574,  1.223581370818),
    Complex::new( 1.095264083148,  0.119410767188),
    Complex::new( 0.176833870554, -0.357067009123),
    Complex::new(-0.844150660609, -0.402483548788),
    Complex::new( 0.121027264669, -1.289015413302),
    Complex::new( 0.263581726117, -1.020960568111),
    Complex::new(-1.850367234488,  0.252491065243),
    Complex::new( 0.180744535235,  0.799594483178),
    Complex::new(-0.844109705065, -0.510108698929),
    Complex::new(-0.036218762055,  1.294869055398),
    Complex::new( 0.258512790360,  0.568441072457),
    Complex::new( 1.626275624183,  0.634319322667),
    Complex::new( 0.322617919951,  0.212628458295),
    Complex::new( 0.160934986434, -0.163540330171),
    Complex::new( 1.047849823612, -0.095800483192),
    Complex::new( 0.481794672802, -0.457172404256),
    Complex::new( 0.129133928192,  0.091760813424),
    Complex::new(-0.060049809575,  0.184851257642),
    Complex::new(-1.806557059379, -0.712577972074),
    Complex::new(-1.514896468556, -0.698585251055),
    Complex::new( 1.839754692918,  0.489376426678),
    Complex::new(-1.243735376399,  1.952793219096),
    Complex::new( 0.254245070501,  1.389680075711),
    Complex::new( 0.692307414060,  1.566188401796),
    Complex::new(-0.194903488026, -0.439000848041),
    Complex::new( 1.668407720772, -0.910104238535),
    Complex::new(-0.575848786837,  0.375593796515),
    Complex::new( 0.429092097669, -0.640962925803),
    Complex::new(-1.534318288920, -1.204243660541),
    Complex::new( 1.340275852733, -1.091482736862),
    Complex::new(-0.683541799234,  1.328028176092),
    Complex::new( 0.346674268228, -1.556024203629),
    Complex::new( 0.808325600843,  0.879310154017),
    Complex::new(-1.083115089529,  0.217436971911),
    Complex::new( 0.208798197538,  1.065533831174),
    Complex::new(-0.075819341427, -1.489702533787),
    Complex::new(-0.768117108951, -0.395669850882),
    Complex::new(-0.171257456484, -1.684427171232),
    Complex::new( 0.008638877159,  0.828227749071),
    Complex::new(-0.907835739258,  1.661585546412),
    Complex::new(-0.842311802407,  0.128045074908),
    Complex::new(-0.480781325156, -0.060205164274),
    Complex::new(-0.332968153644, -0.725579827560),
    Complex::new( 0.385831273126, -0.734953099969),
    Complex::new( 0.078244895870,  0.187320802435),
    Complex::new( 0.822725278030,  1.761602936253),
    Complex::new( 0.854139534803, -0.447804374730),
    Complex::new( 1.139585202373,  0.594363516587),
    Complex::new(-0.327644569515, -1.601512234292),
    Complex::new( 0.066470112247,  0.272352995689),
    Complex::new(-0.233514955808,  0.151832081236),
    Complex::new( 0.804170356884,  0.191021429001),
    Complex::new(-0.141790367715,  0.873289762818),
];

pub const FFT_TEST_Y64: [Complex<f32>; 64] = [
    Complex::new( 1.725198076750, -4.343291505303),
    Complex::new(-1.306135600819, -7.829723137959),
    Complex::new(-5.438260077023,  4.634490918041),
    Complex::new(-1.955793027433,  4.362156087676),
    Complex::new(-8.012216700915,  8.400026452278),
    Complex::new(-4.952000692368,  3.096434501516),
    Complex::new( 5.298208914176,  4.534862681807),
    Complex::new(-0.880561110671, -1.467056178833),
    Complex::new(11.861836819015, -0.544519325409),
    Complex::new(-1.503603146027,  8.809918042520),
    Complex::new(-5.363184446773,  9.548803374715),
    Complex::new(-6.505800504816, -7.798968990377),
    Complex::new(14.636787307656, -0.228256068710),
    Complex::new( 0.052560363405,-12.014345616554),
    Complex::new(-1.959253467557,  8.402198459668),
    Complex::new(-6.980453925187, -6.436081969205),
    Complex::new( 5.388968837267,  3.576485581891),
    Complex::new( 1.433883925658, -1.990690693711),
    Complex::new( 0.745585452676, -3.797939482423),
    Complex::new( 2.695240683264, -0.969955745711),
    Complex::new(-6.338874171853, -7.732858525855),
    Complex::new(11.298952810793,-13.037152643099),
    Complex::new(-15.351176639589, 9.947482416391),
    Complex::new(-5.345010122884,  0.498205314186),
    Complex::new(-4.369620686268,  0.751093800562),
    Complex::new( 7.632293961493,  0.946244674824),
    Complex::new(-2.209404645076, -8.887676077977),
    Complex::new( 9.546753476599,-11.691028922291),
    Complex::new(-10.473480711255, 0.645167184977),
    Complex::new( 9.912509001236,-22.116979184633),
    Complex::new( 7.805895621936,  2.010265856692),
    Complex::new(-7.638461665175,  0.687493859037),
    Complex::new( 5.983512814381, -4.711548846349),
    Complex::new( 1.432584757253,  2.618196841573),
    Complex::new(-16.409812005381, 2.126260364995),
    Complex::new(-4.891966320361,  4.829626903245),
    Complex::new(-3.218785198666, -4.443535570591),
    Complex::new( 2.772033282272, -1.143468987354),
    Complex::new(-8.913495498818,  3.327029248182),
    Complex::new( 8.015679354394, -3.131930356460),
    Complex::new( 1.419572328954, -0.132902166668),
    Complex::new( 3.850100186885,  9.527061186961),
    Complex::new( 0.681611518886,  4.259777024769),
    Complex::new(12.246604521898, -0.790289131992),
    Complex::new( 3.241695686006,-15.727090004602),
    Complex::new(-9.932323330295, -0.102559333310),
    Complex::new(-2.411503210251, -0.408856287097),
    Complex::new( 1.884210002432,  7.477017352531),
    Complex::new(-6.852334636700,  3.198788969708),
    Complex::new( 1.141049818230,  1.542427926488),
    Complex::new( 0.732333269451, -1.802063276954),
    Complex::new(-6.450414970103, -2.758985609350),
    Complex::new(-3.738653299253, -7.196005387959),
    Complex::new( 7.300969515165, -7.844893935009),
    Complex::new( 8.053617788503,  5.389482632745),
    Complex::new( 9.227999871537, -2.302018386805),
    Complex::new(-5.824592830409, -0.544198322926),
    Complex::new(-3.152065877231, -6.410831104251),
    Complex::new(-1.003575490144, 23.308352736314),
    Complex::new( 1.725485190234,-10.960063101324),
    Complex::new(-14.199659988605, 7.198846575963),
    Complex::new( 4.186354051025, -2.044041800204),
    Complex::new(14.017389932813,  2.146139910120),
    Complex::new( 4.242720273094, -3.627670543295),
];

pub const FFT_TEST_X79: [Complex<f32>; 79] = [
    Complex::new(-0.831644933479, -1.369566252119),
    Complex::new( 1.382261515245,  0.344632239578),
    Complex::new( 1.522173067917, -0.879128649493),
    Complex::new( 0.412263305825, -2.214373495146),
    Complex::new( 0.167471424272,  2.442885876862),
    Complex::new(-0.995700286447, -0.269798312873),
    Complex::new(-0.495500240228, -1.483255164915),
    Complex::new(-1.294110579031,  0.198434791977),
    Complex::new(-0.725558739350,  0.113152102484),
    Complex::new( 0.245130536761, -1.776484046331),
    Complex::new(-0.902695579029, -0.321701515101),
    Complex::new( 0.612573133829,  0.706900606440),
    Complex::new(-1.446805571584,  0.549130825767),
    Complex::new( 0.779487733787,  1.006717179605),
    Complex::new( 0.482652400616, -0.602577004101),
    Complex::new(-0.075416135474,  0.994234640494),
    Complex::new( 1.169794509155,  0.142737162623),
    Complex::new(-0.552532601786, -0.192607542361),
    Complex::new( 0.410837027020, -0.565889656334),
    Complex::new( 0.141957082162, -0.801461876260),
    Complex::new(-0.593199921160,  0.901175943982),
    Complex::new(-1.360958657407, -0.483045804780),
    Complex::new(-1.919982203277,  0.057049812902),
    Complex::new( 0.597068489025,  1.216028879537),
    Complex::new( 0.553702635589,  1.236264938570),
    Complex::new(-0.600595429992,  0.147163421599),
    Complex::new( 0.311936436694, -0.216250614525),
    Complex::new(-1.091501993588,  0.833497783365),
    Complex::new( 1.744199597330,  0.588786957660),
    Complex::new( 2.530575868723,  1.039372684186),
    Complex::new( 1.028391846884, -0.023635041523),
    Complex::new( 1.289280692909, -1.032658504022),
    Complex::new(-0.717633308140, -0.744729509226),
    Complex::new( 0.305920738055,  0.657498377749),
    Complex::new(-1.129964121827, -0.435663177627),
    Complex::new( 1.648005569065,  1.195099617541),
    Complex::new(-2.115562921407, -1.910525019001),
    Complex::new(-0.596385890353,  0.887009643025),
    Complex::new(-0.230825994339, -0.188182502664),
    Complex::new( 0.263886383603, -0.439257543266),
    Complex::new(-0.523070205646,  0.777409974948),
    Complex::new(-0.219529035132,  1.383569408478),
    Complex::new(-0.718591132998,  0.789138773979),
    Complex::new(-0.584598456206,  0.201764886974),
    Complex::new(-0.569756495022, -0.592160140902),
    Complex::new( 0.187040275696,  1.071817729923),
    Complex::new(-0.157385303066, -0.207843225364),
    Complex::new( 1.277595054999, -0.235819967829),
    Complex::new(-0.096458535032,  0.092010581965),
    Complex::new( 0.359513513761,  0.945023449614),
    Complex::new(-0.907097860111,  0.645605162871),
    Complex::new(-0.651303141773,  2.145291744091),
    Complex::new( 0.114198590617,  1.903139164821),
    Complex::new(-0.079111313379,  0.022610329502),
    Complex::new(-1.170099271217, -0.560852156056),
    Complex::new(-0.857261592064,  0.764585655287),
    Complex::new(-0.308274947188,  0.793759490894),
    Complex::new( 1.075701520371,  0.665603485423),
    Complex::new( 0.121769228873,  1.080351294531),
    Complex::new( 1.775909597196, -0.152691005919),
    Complex::new( 1.592857837122,  1.642268527260),
    Complex::new( 0.206041280093,  0.680507676427),
    Complex::new(-0.447718650910, -1.049968522775),
    Complex::new(-1.571476809016,  0.131194680122),
    Complex::new( 1.668956017050, -0.788549453555),
    Complex::new(-1.464619492806, -0.514115875797),
    Complex::new( 2.085001980617,  0.514847563050),
    Complex::new( 0.928930120111, -0.581073787447),
    Complex::new( 0.446239202479, -0.653366428964),
    Complex::new( 1.064861444804, -0.041135862801),
    Complex::new( 0.072500637635,  1.082811081123),
    Complex::new(-1.400912797632, -0.318643643314),
    Complex::new(-0.475876438927,  0.416837808588),
    Complex::new(-0.066362697792,  0.020225742927),
    Complex::new(-0.153794040015, -0.251785474065),
    Complex::new(-1.237542116335,  0.809600386690),
    Complex::new( 0.871326964554,  0.924351961256),
    Complex::new(-2.389508044422, -0.601457844861),
    Complex::new( 0.080578131708,  0.388813172800),
];

pub const FFT_TEST_Y79: [Complex<f32>; 79] = [
    Complex::new( -2.198332092440,  12.650658598176),
    Complex::new( -6.456670989242,  -7.479301674890),
    Complex::new( -2.895336385229,   1.221846928494),
    Complex::new( -4.636342294176,  -0.801909581371),
    Complex::new( -9.731802903280,  -5.232001275010),
    Complex::new(  6.761030360809,  -1.721885218978),
    Complex::new(  1.867893673405, -10.436764472711),
    Complex::new(  7.129857916226, -15.261303660272),
    Complex::new( 16.581711031970,   5.179082607705),
    Complex::new(-16.126836936739,  -5.300370279404),
    Complex::new( -4.576577504775, -12.699766318030),
    Complex::new( -7.579093623452, -12.405022376124),
    Complex::new( -1.692330593182,  -8.516631597504),
    Complex::new( -6.195245930268,   0.070273567822),
    Complex::new(  1.551185200774,  -5.151973196311),
    Complex::new( -7.892299216869,  -6.606437030189),
    Complex::new( 11.038003489600,   4.657211823028),
    Complex::new(  7.075974564323,   0.545694748078),
    Complex::new( -6.869510368707,  -0.939533375646),
    Complex::new(-12.801782277417,   4.703619318878),
    Complex::new(  4.730103334639,   3.588402018073),
    Complex::new(  4.302722751897,   5.818086352910),
    Complex::new(  2.141745733069,  -1.961941960610),
    Complex::new(  5.318048536295,  -0.010643144676),
    Complex::new( 10.574791653730,  -2.110839910741),
    Complex::new( 18.403982142892,  -4.968829844315),
    Complex::new( -4.861819678415,   0.167673326078),
    Complex::new( -2.630720570170,   1.594403564449),
    Complex::new(  0.363441779769, -10.436412333140),
    Complex::new( -8.279198460723,  -3.380426807459),
    Complex::new( -0.740797623754,  -2.814734090095),
    Complex::new( -9.827753678018, -12.010129525106),
    Complex::new(  0.873038175248,  -1.031218712521),
    Complex::new( -8.699339400800,  12.933077680277),
    Complex::new( -5.053719376427,   3.839008815587),
    Complex::new(-17.469957324379,  -0.249103089343),
    Complex::new(  3.184401964192,   3.862169536519),
    Complex::new(  0.438203015374,  -2.050441604463),
    Complex::new(-14.617902230891,  13.404027008609),
    Complex::new( -3.326663756629,  -9.464457202630),
    Complex::new(-16.780077393079,   4.427043334783),
    Complex::new(  2.414049361911, -12.349549334690),
    Complex::new( -2.071827347449,   0.131158553257),
    Complex::new( 12.619462722043,   3.785353059626),
    Complex::new(  0.681152626465,  -5.767839231705),
    Complex::new( -2.536944134501,  -4.990736350292),
    Complex::new( -9.887559098728, -30.445442814418),
    Complex::new( -8.158210630371,  -2.609637272072),
    Complex::new( 14.923059038703,   2.059503206139),
    Complex::new(  4.682549931928,  -0.864654149312),
    Complex::new(  3.308241623127,  -8.932248210446),
    Complex::new( -7.447372005399, -15.848177608870),
    Complex::new( 11.470445857602, -17.244634800179),
    Complex::new( -0.352198189530,  -5.465835457604),
    Complex::new(  0.595131131258,   1.784167835328),
    Complex::new( -4.958773866897,   1.052005175981),
    Complex::new( -8.549314756256,  10.245571680581),
    Complex::new(-13.074676867355,  -9.163782974489),
    Complex::new( -2.244945835090,  13.220346166155),
    Complex::new( -4.198374817495,  10.065229182925),
    Complex::new( -0.700355709960,   6.827087899627),
    Complex::new(  2.412030908809,  -6.042014368503),
    Complex::new( -1.467215162979,  16.669129234939),
    Complex::new(  1.755798753328,  -6.540065639162),
    Complex::new( -6.456991908144,  -7.304947059496),
    Complex::new( -2.375547326101,  18.123374474356),
    Complex::new(  6.311057482521,  -9.358027340793),
    Complex::new(  2.466570091641,   5.305925828815),
    Complex::new(  0.001957161866,  18.960020221647),
    Complex::new( -3.859854792754,  -4.745420470903),
    Complex::new(  2.984060727978,  -4.759922601530),
    Complex::new(  4.314065539668,  -4.099188676984),
    Complex::new( -4.122177040779,   6.664910801689),
    Complex::new(  4.892466468902,  19.707013122151),
    Complex::new( 21.618605295806, -12.301445853986),
    Complex::new( -0.720795540227,   3.447422417270),
    Complex::new(  6.265639354108,  13.611595323686),
    Complex::new(-11.081101178789, -14.511845349920),
    Complex::new(  4.451917671114, -12.130333484146),
];

pub const FFT_TEST_X92: [Complex<f32>; 92] = [
    Complex::new(-1.533248238739,  -0.465630703218),
    Complex::new(-0.249958865116,   0.582751340535),
    Complex::new(-0.052014206281,   0.945510877668),
    Complex::new( 0.566817251755,   0.873302572342),
    Complex::new(-1.076106091336,  -0.264177557543),
    Complex::new( 0.170852437277,  -0.619571758149),
    Complex::new( 0.440747636244,  -0.170212602153),
    Complex::new( 0.354775561873,  -0.272786796202),
    Complex::new( 1.853177639448,  -1.188389922347),
    Complex::new( 0.410907829911,  -0.451660724815),
    Complex::new(-0.650435006722,   1.672142963707),
    Complex::new(-0.488214214181,  -0.805655420589),
    Complex::new(-0.731929006826,   1.054082992594),
    Complex::new(-0.288141810907,   0.209057566980),
    Complex::new(-0.611240793053,   1.293902538452),
    Complex::new(-1.776441085660,   0.958157296522),
    Complex::new(-0.692307740144,   0.075952098739),
    Complex::new( 0.179804764868,   1.730521926975),
    Complex::new(-0.314045230459,   1.905941797877),
    Complex::new( 1.110105359337,   1.465687036226),
    Complex::new(-1.650241785564,  -2.376992111936),
    Complex::new( 1.355816874526,  -2.252579556526),
    Complex::new( 1.314750282984,   0.595272183468),
    Complex::new( 0.387080055146,   0.205073570108),
    Complex::new(-1.088814882881,   1.793386020599),
    Complex::new(-0.720166712307,   0.890262821808),
    Complex::new(-0.062602073879,  -0.031786415520),
    Complex::new(-0.888507446134,  -0.536607709525),
    Complex::new(-0.510561833378,  -0.675309226502),
    Complex::new( 0.453615728261,  -0.387399412056),
    Complex::new( 2.033274332370,   1.120734915608),
    Complex::new( 0.361177016452,   0.840380849208),
    Complex::new( 0.907153428882,   0.117975673876),
    Complex::new( 0.959754000635,  -0.182686914078),
    Complex::new(-1.880157998612,   1.024007596710),
    Complex::new(-0.355239481254,  -1.157943305297),
    Complex::new( 0.732180611349,   0.476767076883),
    Complex::new( 0.217871850693,   0.378282281897),
    Complex::new( 0.708348214996,   1.015785074730),
    Complex::new( 1.376611167796,   0.025670694927),
    Complex::new( 0.795489734327,   2.447726960093),
    Complex::new(-0.401589815356,  -1.887124361666),
    Complex::new(-0.332674038856,   0.654292754224),
    Complex::new( 0.050773204061,   1.851727945919),
    Complex::new( 1.040820725747,   0.163264568160),
    Complex::new(-0.473870168659,  -0.135085060425),
    Complex::new(-0.405218690036,  -0.210036331236),
    Complex::new(-1.048228113315,   1.224144846525),
    Complex::new(-1.039363245830,   0.571242521536),
    Complex::new( 0.434387333441,  -0.667088930502),
    Complex::new( 1.323498894566,   0.321341399415),
    Complex::new(-0.111430629981,  -0.911660421532),
    Complex::new(-2.119793066060,  -0.604468380769),
    Complex::new(-0.759768309222,  -1.196195111817),
    Complex::new(-0.117965675009,  -0.853563152009),
    Complex::new( 0.776854555180,  -1.044436698117),
    Complex::new(-0.208543038837,  -0.719688047768),
    Complex::new( 0.329085055714,  -0.731568530556),
    Complex::new( 0.948200526516,   0.778615477506),
    Complex::new(-1.004787748593,  -1.447117819386),
    Complex::new(-0.370036778975,  -1.041283005778),
    Complex::new( 0.278647623179,   0.132465770957),
    Complex::new(-0.241472714303,  -0.804153723576),
    Complex::new(-2.065839345003,  -0.285350361634),
    Complex::new( 0.709097179382,   1.197671609730),
    Complex::new(-0.276234692523,  -0.085308137997),
    Complex::new(-0.892034005938,   1.470177172557),
    Complex::new( 2.111093179577,   0.214091335543),
    Complex::new( 0.348125157569,   0.660499475216),
    Complex::new(-0.440004517499,  -0.381421105771),
    Complex::new(-0.121445816759,  -0.900682972998),
    Complex::new( 0.219762835492,   0.024815977673),
    Complex::new(-0.179837662261,   0.545204347104),
    Complex::new( 0.575266794792,  -0.857820948237),
    Complex::new(-0.665258207110,  -0.142008087173),
    Complex::new( 0.926210675302,   0.676996743235),
    Complex::new(-0.358453435398,   0.218721578288),
    Complex::new( 0.465198395168,   0.321437159886),
    Complex::new(-0.700888464307,   0.026867992734),
    Complex::new( 0.077912840097,  -0.700256177377),
    Complex::new( 0.814218687572,  -0.237318115696),
    Complex::new( 0.735605726247,  -0.843989440195),
    Complex::new( 0.326456107919,   1.621890601713),
    Complex::new( 0.279920713907,   1.255568802945),
    Complex::new(-0.587220611906,   0.854502071021),
    Complex::new( 0.287904397154,   1.370012449616),
    Complex::new( 0.262419514043,   0.783285944590),
    Complex::new(-0.960094532334,  -1.295021304935),
    Complex::new( 1.282525406387,  -0.543459424061),
    Complex::new(-0.533518221919,  -0.066344323134),
    Complex::new(-1.343771938200,  -0.320382155842),
    Complex::new(-0.432681592095,   0.159701208438),
];

pub const FFT_TEST_Y92: [Complex<f32>; 92] = [
    Complex::new( -2.518102271573,  10.044654216417),
    Complex::new(  6.643542265073,   4.256887583025),
    Complex::new(-11.918532524663,   7.755442009935),
    Complex::new(  7.568118092597, -13.006486128008),
    Complex::new(-18.363301435074,  -1.152166283835),
    Complex::new( -5.786681211618, -13.408541093492),
    Complex::new( -8.010496951983,   2.213039809355),
    Complex::new( -1.411436744972,   0.130962118237),
    Complex::new(  7.222128824656,   8.763744480410),
    Complex::new( 13.775439027085,   2.076241093317),
    Complex::new(  6.773877664536,  -6.756550626162),
    Complex::new( -7.137502543426,  22.613697101003),
    Complex::new(  9.970236986411,   8.723751585267),
    Complex::new(  3.388712243523, -19.707507460853),
    Complex::new(-22.698345626199,  -8.699233708477),
    Complex::new(  2.966129501632,  -5.083169407361),
    Complex::new(  0.748694115570,   1.246761748677),
    Complex::new(  7.286176947585, -17.177394603147),
    Complex::new( -4.640184708188,  -4.742141169474),
    Complex::new(-15.653012036283,   3.723708191064),
    Complex::new( -0.304540600637,   8.131182330682),
    Complex::new(  6.514836424576,  -3.631934956688),
    Complex::new( 14.631671446075, -12.918654725994),
    Complex::new( -9.079675359871, -12.980498823161),
    Complex::new( -2.396312070783,  -0.555311616694),
    Complex::new( -5.516481227937,   5.537031351170),
    Complex::new( 16.946789253652, -11.802977753669),
    Complex::new( -9.863602251151,  17.961504389879),
    Complex::new( -1.089641984420,   8.797684899764),
    Complex::new( -3.199834226297,  -5.263692533431),
    Complex::new(  3.613039090453,  21.668260647267),
    Complex::new(  4.356502756142,   3.769573390222),
    Complex::new(-11.010076007411,  -0.606073476312),
    Complex::new(  1.249394309031,  10.604580497016),
    Complex::new(  0.432971670642,  -8.028445673142),
    Complex::new(  1.772492721651,  -3.463373418618),
    Complex::new(-12.314467825833, -13.413674383092),
    Complex::new( -4.796108671665,  -1.279659252444),
    Complex::new( -4.135554898661,   6.501150787072),
    Complex::new(  4.235361817536,   7.284416823675),
    Complex::new(  4.645716809901, -20.010236546155),
    Complex::new(-11.820881373135,  -3.121702955852),
    Complex::new( -1.176033491231, -12.716343647780),
    Complex::new(  0.309217041323,   1.171408626241),
    Complex::new(  7.362816400606,   0.244428623814),
    Complex::new( -5.010068913978,  -5.765683583933),
    Complex::new( -6.876294123140,  17.669794480924),
    Complex::new( -3.948263111315,  -6.648206550629),
    Complex::new(  2.175533159130,  -1.121668038664),
    Complex::new( 10.506942679678,   0.132441506635),
    Complex::new( -6.051550803688,  -3.522998291999),
    Complex::new(-12.716395512066,  -1.993147768949),
    Complex::new(  0.716905419911,  -2.118308817826),
    Complex::new( -6.214220320215,   9.890190258116),
    Complex::new( -3.496757347797,   0.760118583470),
    Complex::new( -0.165689780061,   9.326952571297),
    Complex::new(  3.608065605999,   1.223288778006),
    Complex::new(-15.368180054772,   4.696419623807),
    Complex::new(  6.532262844351, -15.337625047848),
    Complex::new( 11.463488167992, -13.033909534322),
    Complex::new( -3.089385178638,   2.386958780173),
    Complex::new( -8.764516788755, -15.458094712422),
    Complex::new(  5.161844954690,   3.690438400691),
    Complex::new(  7.483979541054,   5.496267849787),
    Complex::new( -3.191656352209,  -2.378455932485),
    Complex::new(  3.346071918545,  -5.947101296914),
    Complex::new( -7.911752024929,  15.534843484634),
    Complex::new(  4.990245834162,  -8.000769949862),
    Complex::new(  3.430754206047,  -6.541036958204),
    Complex::new(  3.819396364706,  -6.492827881304),
    Complex::new( -5.791806578535,  -3.103857093968),
    Complex::new( -0.378045544744,   7.208602763143),
    Complex::new( -6.569094552634, -15.273087240577),
    Complex::new(  2.045385676585,   5.705039211157),
    Complex::new( -3.551170334917,  -9.324062375092),
    Complex::new( -3.762304723821,   6.431485809437),
    Complex::new(-13.592727599777,  -3.762490773764),
    Complex::new( 14.293467882786,  15.519778083180),
    Complex::new(  7.838444610094,  -5.394721016744),
    Complex::new( -6.164859647536,   2.323160141970),
    Complex::new( -6.775035839038,   3.176555591565),
    Complex::new(  3.450970697637,   5.952471575141),
    Complex::new( -9.694440566030,  17.192480020342),
    Complex::new( -4.389843029510, -14.424868721698),
    Complex::new(-13.182552822942, -10.208834890358),
    Complex::new(-15.936588561479,  10.544520991017),
    Complex::new(-14.982276290696,   9.596052705212),
    Complex::new(  2.219118227020,  -0.954468671057),
    Complex::new(  8.714041016800,   4.805998810501),
    Complex::new( -6.362077161917,  -2.563077169544),
    Complex::new(  5.636818008460, -11.718358270750),
    Complex::new(-12.128080581717,   5.291433812970),
];

pub const FFT_TEST_X96: [Complex<f32>; 96] = [
    Complex::new( 0.231855789328,   0.392790591230),
    Complex::new( 0.454049797380,   0.679061446432),
    Complex::new( 0.528744029877,  -0.002005026486),
    Complex::new( 0.585153010445,  -0.548050212091),
    Complex::new(-0.688324957589,  -1.837254802682),
    Complex::new(-1.210661843723,  -0.571711786295),
    Complex::new( 1.276297465652,  -1.918840937281),
    Complex::new( 0.903361922100,  -1.011460232753),
    Complex::new( 0.477567600087,   1.205903424233),
    Complex::new(-0.786388960666,   1.649160493258),
    Complex::new(-0.690114487232,   0.189150053367),
    Complex::new(-0.123298428085,   1.440273117047),
    Complex::new(-1.824871622703,  -0.028412622663),
    Complex::new(-0.005824551846,  -1.985955234017),
    Complex::new( 0.441673373932,   2.184282527711),
    Complex::new(-0.302888535198,   0.442593100570),
    Complex::new(-1.138671997435,   0.800927463670),
    Complex::new(-0.113113592732,   0.764107269897),
    Complex::new(-1.301467098151,   1.879202303512),
    Complex::new( 1.216552799598,   1.187277605073),
    Complex::new(-0.414624947172,  -0.192700931033),
    Complex::new( 0.157426358097,  -0.883438491265),
    Complex::new( 1.314432283757,  -2.209536410386),
    Complex::new( 0.115962402453,   0.100570503666),
    Complex::new(-0.184110258490,  -0.274585396498),
    Complex::new( 1.182232744060,  -0.525435229715),
    Complex::new( 1.369228680727,  -1.296270108729),
    Complex::new( 0.679139800457,   0.521729684119),
    Complex::new( 1.466742696053,  -1.109181731398),
    Complex::new( 0.423928449957,   0.893374724805),
    Complex::new( 0.097387993047,  -1.166367457697),
    Complex::new(-0.319951780834,   0.333472678246),
    Complex::new(-0.851035928014,   1.174430249645),
    Complex::new(-0.741367318352,   0.683540921651),
    Complex::new( 0.063169486746,   0.571172676088),
    Complex::new(-1.973683326170,  -1.139982408570),
    Complex::new(-0.176533972367,   2.303718667820),
    Complex::new( 1.427168284563,   0.147925345978),
    Complex::new( 0.168590812490,   1.242460845878),
    Complex::new(-0.463999677511,  -0.037151173794),
    Complex::new(-2.536137467463,  -1.681395390537),
    Complex::new(-0.968155862697,   1.560777014683),
    Complex::new( 0.679881050576,   1.356938443072),
    Complex::new( 0.882676978778,  -0.850244916120),
    Complex::new( 0.356671274755,  -0.673629272452),
    Complex::new( 0.770786696014,   1.394669751828),
    Complex::new( 1.879418388790,  -1.423104148622),
    Complex::new(-1.625009605282,   1.071684804070),
    Complex::new( 0.523881317301,  -1.877721023134),
    Complex::new(-0.810889778170,   0.977110976206),
    Complex::new( 1.184940081921,   1.172520365453),
    Complex::new( 0.614349326074,   0.102072818821),
    Complex::new(-0.022137672632,  -1.083247965012),
    Complex::new(-0.608327216411,  -0.797618802167),
    Complex::new( 1.718428073949,  -1.056519198093),
    Complex::new( 0.060567885123,   1.676707157575),
    Complex::new(-0.495113579030,   0.653357680357),
    Complex::new(-0.854188871032,   0.411288746049),
    Complex::new(-0.410417801407,   0.607919306211),
    Complex::new(-1.442853726865,  -1.517927421271),
    Complex::new( 0.274363566701,   0.446776625735),
    Complex::new(-0.625143151100,   1.305210751509),
    Complex::new( 1.212571305417,   0.002561202196),
    Complex::new( 0.964380743057,  -0.130831945021),
    Complex::new(-1.467000571347,  -0.173752863470),
    Complex::new(-0.361064943808,  -0.453821406270),
    Complex::new(-0.435558558438,  -0.349465935625),
    Complex::new( 1.160653554933,   0.097609577607),
    Complex::new( 0.824326827067,  -0.141377219902),
    Complex::new( 0.151294380041,   0.722300985052),
    Complex::new(-0.160268192079,   2.322410769696),
    Complex::new( 1.756726727738,  -0.285586369209),
    Complex::new(-1.614230674187,  -0.241407720255),
    Complex::new(-0.035193854160,  -0.456767111405),
    Complex::new( 1.997549686826,   0.610571776676),
    Complex::new(-1.013290679060,   1.072224366678),
    Complex::new( 0.966131190541,   1.156926252511),
    Complex::new(-0.085548688965,  -1.173983462045),
    Complex::new(-1.258925646165,   0.570319789600),
    Complex::new(-0.009163839577,  -0.458346841578),
    Complex::new( 0.328942919560,  -0.410428744477),
    Complex::new( 1.359093898482,  -0.077096836434),
    Complex::new( 0.269427793307,   1.756132969724),
    Complex::new(-1.612257645892,   1.531514720616),
    Complex::new( 1.344264226102,   0.027502937744),
    Complex::new( 1.369576658531,   0.382536868127),
    Complex::new( 0.172747665849,   0.388258199964),
    Complex::new(-0.226008514710,  -0.315160242926),
    Complex::new( 0.150075935489,   0.260574914740),
    Complex::new(-0.170611752947,  -1.382717411879),
    Complex::new(-1.216483547464,  -0.767792980333),
    Complex::new(-1.976466005823,   0.458969099499),
    Complex::new(-0.645507778235,   2.051797937683),
    Complex::new( 0.981465939529,   2.517091270417),
    Complex::new( 1.174746235178,  -1.612669537430),
    Complex::new( 0.896264508571,   0.843449048976),
];

pub const FFT_TEST_Y96: [Complex<f32>; 96] = [
   Complex::new(    4.609981707790,   14.165957863955),
   Complex::new(   -2.663372690989,    3.381865489792),
   Complex::new(   -6.250889898983,    0.856018997500),
   Complex::new(    4.388447703102,    0.709127580060),
   Complex::new(   10.524498612708,  -15.765075233017),
   Complex::new(  -21.883023288862,   -5.754013136199),
   Complex::new(   -3.032497734395,    3.435059152768),
   Complex::new(   10.141510735231,    6.569590619684),
   Complex::new(   -3.943788049939,    4.985622407622),
   Complex::new(   -8.471948591549,    3.436253039913),
   Complex::new(   -8.880296739352,   18.329925169953),
   Complex::new(    8.081550419966,    4.959140273664),
   Complex::new(    1.902048356207,   12.753862442288),
   Complex::new(   23.710137236631,   -5.734748416060),
   Complex::new(   18.967547060099,    2.261420011861),
   Complex::new(  -13.117649377758,    5.255774731680),
   Complex::new(    2.565218803705,  -25.049831530536),
   Complex::new(    0.395850231743,   -4.532129398987),
   Complex::new(    6.995600852169,   -7.386596256854),
   Complex::new(   -2.132719003770,    6.698594558144),
   Complex::new(   -9.929306991332,    6.869396317874),
   Complex::new(   11.346428057260,   15.752032502527),
   Complex::new(  -10.078874711603,   -6.207899239799),
   Complex::new(   -4.061971394211,    1.001130636914),
   Complex::new(  -13.995272885614,   -4.455343352338),
   Complex::new(    4.451519347892,    7.926049461659),
   Complex::new(   16.857007165977,    8.029468101958),
   Complex::new(    6.827258648561,   14.930217154284),
   Complex::new(   -0.559549304382,    8.208567303238),
   Complex::new(   -3.551940117450,   -7.211758268580),
   Complex::new(    1.734999071287,   -3.632491293309),
   Complex::new(   -7.304392369767,  -14.527214303395),
   Complex::new(  -11.262783549629,   -1.605589170344),
   Complex::new(  -11.512374272203,   16.561245028560),
   Complex::new(    7.482726055364,   -2.727439658405),
   Complex::new(   15.246746816163,   17.569026228008),
   Complex::new(  -15.136445648942,   -1.722052787143),
   Complex::new(   -0.596784032900,    1.036483442957),
   Complex::new(   -8.295090222700,  -14.787777542426),
   Complex::new(  -10.388667668932,   -3.677948124346),
   Complex::new(    1.442374069335,    2.369895137413),
   Complex::new(  -11.286677919418,   -0.442216831320),
   Complex::new(   -4.258359681535,   -5.877299409944),
   Complex::new(    8.474879358850,   11.133599053803),
   Complex::new(    4.521324398684,   -5.575361516985),
   Complex::new(  -10.852733452716,   -8.187793263992),
   Complex::new(   10.282241432010,  -14.787653906149),
   Complex::new(   -0.967326508687,    1.045774363086),
   Complex::new(    5.315060279059,   -6.564076763307),
   Complex::new(  -14.103481813190,    7.024414693592),
   Complex::new(    7.672189491846,   -8.914876516755),
   Complex::new(    5.234244256475,    3.602992887989),
   Complex::new(   -0.039164279610,  -30.448360387467),
   Complex::new(  -16.064792699661,    6.718770045507),
   Complex::new(    4.235111030143,    2.478115209729),
   Complex::new(   -9.198909959126,   -8.290580416319),
   Complex::new(   10.578975231033,    2.559822357827),
   Complex::new(    9.243136171627,   -9.377891910936),
   Complex::new(    5.862895817529,    0.431692246149),
   Complex::new(  -11.618990491528,   17.539850472094),
   Complex::new(   -1.161363450862,   -2.941910938932),
   Complex::new(   -1.268260133904,    1.005441709892),
   Complex::new(   31.421272506426,   -0.240397785028),
   Complex::new(  -10.921843261114,   10.855028296636),
   Complex::new(    6.680208942916,    7.902869278527),
   Complex::new(    9.744767683416,  -15.653561656933),
   Complex::new(   11.963236965081,    2.757863055376),
   Complex::new(   -0.657516528727,   -1.513346377612),
   Complex::new(   -5.778133404808,    0.380938385839),
   Complex::new(    3.001034357249,   -0.472690292826),
   Complex::new(    4.361975174738,   -0.082813022517),
   Complex::new(    7.393956533023,    3.595190860536),
   Complex::new(  -16.383681435953,   -0.148093500883),
   Complex::new(   15.448535613211,   13.699034854832),
   Complex::new(  -26.046188537886,    4.672758210947),
   Complex::new(  -25.431394530510,   19.149176229623),
   Complex::new(    0.452366402127,   -9.284164787222),
   Complex::new(   -8.853642184491,    7.831408406510),
   Complex::new(   -6.688478485009,   -3.439251128678),
   Complex::new(   -6.810859551138,   -8.440912926245),
   Complex::new(  -19.102617555696,    6.927486844509),
   Complex::new(    8.934833377990,  -11.564936252737),
   Complex::new(   -7.393024014592,   -0.714887967192),
   Complex::new(   -0.719859551514,  -13.605720898747),
   Complex::new(  -17.742142235287,  -12.458797479604),
   Complex::new(   15.978186136167,    5.980922906846),
   Complex::new(   10.780516210769,   -5.413148370626),
   Complex::new(   18.156965553233,   -2.629625388886),
   Complex::new(   16.391744903218,    7.895225147305),
   Complex::new(    6.290790245017,    6.997124329976),
   Complex::new(    3.689747766167,   11.534985962311),
   Complex::new(    9.391595767018,   17.298374496500),
   Complex::new(   25.027955260120,   -7.023151206389),
   Complex::new(   -5.241064162059,   -8.249917715987),
   Complex::new(   -0.085493630186,   -3.829269584478),
   Complex::new(    3.782595963629,   -0.412071285666),
];

pub const FFT_TEST_X120: [Complex<f32>; 120] = [
   Complex::new(   -2.933561116248,    0.585802030432),
   Complex::new(    0.996149474765,   -0.621353657548),
   Complex::new(   -0.262138535383,    0.974643272654),
   Complex::new(   -1.483709823026,   -1.654326811798),
   Complex::new(    0.009105914718,   -0.801453728867),
   Complex::new(    1.480357059658,   -0.231135073122),
   Complex::new(   -0.580765210290,    1.288460832776),
   Complex::new(    0.485467815383,    0.439565460988),
   Complex::new(   -1.010673740947,   -0.691639979516),
   Complex::new(   -0.525003222625,   -0.639606200048),
   Complex::new(   -0.806916915589,    0.103762356730),
   Complex::new(   -0.399336315292,    0.323161793208),
   Complex::new(    0.111455618955,    0.487552495249),
   Complex::new(    0.523592233718,    0.565527718910),
   Complex::new(   -0.181781072708,    0.927375893986),
   Complex::new(   -0.427811932504,   -1.730760015952),
   Complex::new(    0.722234655868,   -0.528518032448),
   Complex::new(    0.327894303730,    1.078490369290),
   Complex::new(   -0.365985637484,   -0.829110156759),
   Complex::new(   -1.230443935235,    1.168892009209),
   Complex::new(   -0.497547601907,   -1.884812736460),
   Complex::new(   -0.188693666275,   -0.388189056130),
   Complex::new(    1.581490442848,   -0.773206675201),
   Complex::new(   -0.276904037052,   -1.607191981281),
   Complex::new(    0.869586527848,    2.279865113156),
   Complex::new(    2.280976663440,   -0.491932963519),
   Complex::new(   -0.972146414270,    1.317390598922),
   Complex::new(    0.752226877706,    0.307325301979),
   Complex::new(   -2.176688443840,   -0.178238348418),
   Complex::new(    0.603808804599,   -1.024869177311),
   Complex::new(    1.637709885855,    1.283852424020),
   Complex::new(    0.766867282671,   -2.390532794299),
   Complex::new(   -0.803164170514,   -0.738964307326),
   Complex::new(   -0.217928168834,   -1.591138647698),
   Complex::new(    0.044558930462,   -0.585819999208),
   Complex::new(    0.185461763498,    0.190876001378),
   Complex::new(   -0.887233966458,    0.932582089649),
   Complex::new(   -1.388038826042,    0.114934886174),
   Complex::new(    0.079732100731,    0.150414346304),
   Complex::new(    1.215962906658,    0.864185821675),
   Complex::new(   -0.889642609373,   -0.510424427491),
   Complex::new(    0.243053087540,   -1.438563895787),
   Complex::new(   -0.409793881375,    0.157176601902),
   Complex::new(   -1.193700035506,   -0.866457731187),
   Complex::new(    1.192127022305,   -0.584612994505),
   Complex::new(   -0.387515835212,    1.536461365714),
   Complex::new(   -0.853256362306,   -0.633564682282),
   Complex::new(   -0.152836605296,   -0.219510310627),
   Complex::new(   -1.151934152005,    0.171485405414),
   Complex::new(   -0.010116218440,    0.914918482762),
   Complex::new(   -1.686537878154,    0.779331814618),
   Complex::new(    0.673793112643,    0.566118503412),
   Complex::new(   -0.143701669515,   -0.556780150872),
   Complex::new(   -0.845847069767,    0.686668013963),
   Complex::new(   -1.147722980640,   -0.455850082513),
   Complex::new(    1.310965019946,   -0.268939336441),
   Complex::new(    0.641191445468,    0.065635531845),
   Complex::new(    0.790297755545,    0.898978586598),
   Complex::new(   -1.539239983789,    1.569958337837),
   Complex::new(   -1.042534751831,   -1.615908992141),
   Complex::new(    0.848219334777,    1.570278962754),
   Complex::new(    0.768312422101,    1.168572048009),
   Complex::new(   -0.119617114473,    0.018922768020),
   Complex::new(    0.463083556040,   -0.289189219121),
   Complex::new(   -2.334868450076,    0.543186130761),
   Complex::new(   -0.859810016516,   -0.073915244925),
   Complex::new(   -0.986571365561,    0.653098182477),
   Complex::new(    0.522451913274,   -0.042046367028),
   Complex::new(    0.106640796179,   -0.069187996590),
   Complex::new(    1.052892113567,    0.678469397559),
   Complex::new(   -0.698384198090,    0.402405190110),
   Complex::new(   -0.274412699197,    0.194991340203),
   Complex::new(    0.154775651261,   -1.748234046267),
   Complex::new(   -0.373611252309,    0.759957440236),
   Complex::new(    0.307971942775,    0.177025819034),
   Complex::new(    1.127535219986,   -0.133866569607),
   Complex::new(   -0.780872981180,   -1.914809677751),
   Complex::new(    0.097809503845,   -0.311527508403),
   Complex::new(   -1.338663250568,   -0.272131094279),
   Complex::new(   -1.774506466862,    0.189947566984),
   Complex::new(   -0.108910232947,   -1.104077803690),
   Complex::new(    0.700684038217,    0.489503255191),
   Complex::new(    1.723390943656,   -0.653061888020),
   Complex::new(   -0.307392508631,   -0.487335518704),
   Complex::new(   -1.351222246370,   -0.276340698500),
   Complex::new(    0.554657638847,    1.969266502927),
   Complex::new(   -0.693153982211,   -0.117977636798),
   Complex::new(   -0.639852935555,    0.539350932011),
   Complex::new(    0.774200449083,    1.123041486424),
   Complex::new(   -2.046058231062,   -0.457644959516),
   Complex::new(   -1.606346330196,   -1.560038496690),
   Complex::new(   -1.701087998893,    1.670050065045),
   Complex::new(    0.443897868781,    0.379995716985),
   Complex::new(    0.193958078518,    0.643773547931),
   Complex::new(   -1.527640156621,    1.266495146511),
   Complex::new(    0.259186234049,   -0.465035554366),
   Complex::new(   -0.385562205417,   -1.015469771575),
   Complex::new(   -1.871226440588,    0.185126256408),
   Complex::new(    0.542445571049,   -0.431681611434),
   Complex::new(    0.214440313475,   -0.338588753334),
   Complex::new(    0.163385540462,   -0.222892296796),
   Complex::new(    0.477872198487,   -0.578917341564),
   Complex::new(   -1.258436301493,   -0.335313659938),
   Complex::new(    0.310183724816,   -1.538340991002),
   Complex::new(    0.315711034668,    0.372755872975),
   Complex::new(   -0.832316134028,    0.846715050479),
   Complex::new(    1.810572502100,   -0.747188365112),
   Complex::new(   -1.238997433684,    2.921109879602),
   Complex::new(   -1.359334420871,    1.137914515456),
   Complex::new(   -1.735544412609,    0.353972290274),
   Complex::new(   -1.967071931759,    1.720943408177),
   Complex::new(    0.175659653421,    0.673882179212),
   Complex::new(    0.566435305275,    1.086122584518),
   Complex::new(   -0.685557294027,    0.440265086848),
   Complex::new(    1.232868086689,   -0.376035944159),
   Complex::new(    0.031017508722,   -1.091694970471),
   Complex::new(    0.153454665192,   -0.387812357268),
   Complex::new(    0.055087132749,    0.121934454858),
   Complex::new(   -1.641857455950,   -0.680302798653),
   Complex::new(   -0.235668947578,   -0.276093078030),
];

pub const FFT_TEST_Y120: [Complex<f32>; 120] = [
   Complex::new(  -26.130540532441,    2.500301372380),
   Complex::new(   -8.384737785882,  -11.493299680300),
   Complex::new(  -10.815843993705,    1.373214442809),
   Complex::new(   -3.468316057471,   -0.197988490875),
   Complex::new(   -8.468015203881,    4.172305025792),
   Complex::new(   -6.972140924378,  -19.059978062591),
   Complex::new(   12.894909733921,  -14.674650174719),
   Complex::new(    6.217174828182,   -4.198857679111),
   Complex::new(   -3.038713671007,   11.416582830167),
   Complex::new(   -5.889009032363,    2.623087027225),
   Complex::new(    4.415856321129,   20.520368038723),
   Complex::new(   -7.596161829888,   -9.011449139900),
   Complex::new(  -22.967094572900,  -14.281559182333),
   Complex::new(  -13.103802451651,    2.098170225144),
   Complex::new(   -5.815320588822,   10.518428726478),
   Complex::new(   -1.290859552698,   -5.007381379220),
   Complex::new(   10.503332312095,  -13.128075179264),
   Complex::new(   -0.995307687739,    6.404055459139),
   Complex::new(   -7.098602985708,    2.406450947955),
   Complex::new(   -5.425368507411,   31.439384831310),
   Complex::new(   -4.531419053887,   -0.173481154479),
   Complex::new(    9.402659099609,    3.570607998710),
   Complex::new(   10.130149004652,  -16.694138931142),
   Complex::new(   -2.197851988961,    2.938436935104),
   Complex::new(    5.864606545918,  -13.199247801155),
   Complex::new(   12.427931476763,  -14.442851189707),
   Complex::new(   -0.346878049148,   -2.649522091233),
   Complex::new(   -6.110432016865,   10.576069646496),
   Complex::new(   29.337845632961,   -5.226538341924),
   Complex::new(   -5.530434871933,   -6.791491806236),
   Complex::new(   12.511893544960,   -9.883054566598),
   Complex::new(  -13.522823191342,    3.402811573476),
   Complex::new(   -6.949602446599,   -2.976747287959),
   Complex::new(  -13.604769865716,  -21.208579208314),
   Complex::new(   -2.667739313157,    7.095560898932),
   Complex::new(   -4.030948890524,   -4.275911410965),
   Complex::new(   -1.538455879764,    0.859913764271),
   Complex::new(   -1.597640929072,    9.198642244462),
   Complex::new(    3.258927941252,    3.681214115496),
   Complex::new(  -27.177542272720,   -9.835919044876),
   Complex::new(    2.137018426012,    5.951425737520),
   Complex::new(   -9.328564597213,   -8.189268926052),
   Complex::new(  -15.202874868646,  -10.830493804699),
   Complex::new(  -14.141307626573,    6.069950543455),
   Complex::new(   23.789715337183,   -0.149207303988),
   Complex::new(    1.018819274801,   23.160092205105),
   Complex::new(    0.160728240887,   25.021802134125),
   Complex::new(  -27.292399750004,  -12.724069599967),
   Complex::new(  -11.090997281400,    7.909805227447),
   Complex::new(  -12.632686116172,    4.297788877667),
   Complex::new(  -10.947166654332,   -7.342984066688),
   Complex::new(  -12.526588806117,    6.326089996957),
   Complex::new(    7.848075855545,    5.822833656652),
   Complex::new(    4.463550473312,   -2.355918199764),
   Complex::new(   -3.359730942688,   -1.811340237346),
   Complex::new(  -16.045827623056,  -11.927425635813),
   Complex::new(  -17.191945449780,   14.640840260710),
   Complex::new(    5.723503979540,   -3.333396073843),
   Complex::new(   -7.212762063453,   -0.426026153122),
   Complex::new(   -8.371988589537,   -1.588815189476),
   Complex::new(  -16.721024926709,    1.223543596227),
   Complex::new(   21.500278405653,   15.014414278563),
   Complex::new(  -12.998260008435,    6.823922119636),
   Complex::new(  -11.969924059222,   -6.475357643023),
   Complex::new(   -3.880671177744,   23.295158190426),
   Complex::new(   -1.615932730740,    9.161241055173),
   Complex::new(    6.743423357908,    4.077889764270),
   Complex::new(   -8.491295100234,  -14.590167909493),
   Complex::new(   -4.050564794383,   -0.332576254078),
   Complex::new(   -7.563666582981,   -0.491929778422),
   Complex::new(    5.325292014900,   13.120067752469),
   Complex::new(   17.266746589948,   -1.749739091662),
   Complex::new(    9.016685746645,   -6.656805505959),
   Complex::new(   -8.457355300299,   -4.003222916857),
   Complex::new(  -31.407914776214,   -9.344158206903),
   Complex::new(   -8.003020240767,   -1.945349879704),
   Complex::new(   10.679124047221,    1.579265510278),
   Complex::new(    7.576096581517,  -20.019004345583),
   Complex::new(    5.425463900123,   -6.332000571240),
   Complex::new(  -11.713907656105,    7.443366839954),
   Complex::new(   -0.593664650946,    6.790006366701),
   Complex::new(   10.381068180108,   -7.397393197217),
   Complex::new(    0.455908842424,    7.373964657268),
   Complex::new(   -8.378432107508,   18.256672106713),
   Complex::new(  -24.128536613056,    5.444870431684),
   Complex::new(    8.421822254234,   -9.806814459804),
   Complex::new(    7.173520639058,    9.565811687718),
   Complex::new(   -6.236143277340,    6.409295846945),
   Complex::new(   -5.379127157610,   -7.097598602556),
   Complex::new(    0.992816214134,    1.184456111668),
   Complex::new(   -8.630312793127,   -3.752996076907),
   Complex::new(   -0.458097520531,   10.469419461305),
   Complex::new(    3.184993888854,    4.049136044816),
   Complex::new(    2.080876935294,   -9.778155908324),
   Complex::new(  -12.941818037027,    3.242798433849),
   Complex::new(   -6.524522778987,    2.497157598131),
   Complex::new(    3.225741204857,   15.546794796319),
   Complex::new(   -6.079247610512,  -13.728424650306),
   Complex::new(   -4.960232908834,   10.931039387444),
   Complex::new(   -2.558877649510,   10.755632383919),
   Complex::new(  -19.611477019565,    5.785472297267),
   Complex::new(   21.866745387027,  -15.392995894737),
   Complex::new(   16.349317592240,   12.469152896354),
   Complex::new(   -9.294214354347,    3.922833779556),
   Complex::new(   13.879970160908,    7.328114738105),
   Complex::new(    2.651592361533,   -7.170628973597),
   Complex::new(   -5.253905486354,    2.891157258399),
   Complex::new(   -8.491348558042,   11.767371163610),
   Complex::new(   -0.986424222839,   12.293687558243),
   Complex::new(  -16.973656701850,   -4.692292471582),
   Complex::new(  -10.242186370330,   14.766563852584),
   Complex::new(   -5.961461862786,   15.202716060356),
   Complex::new(   -8.983395642462,  -16.343883875645),
   Complex::new(  -10.094160152160,   -8.605909997569),
   Complex::new(   -2.538579712014,  -14.632787859230),
   Complex::new(   10.260131998695,   -4.124613468367),
   Complex::new(    5.155214364436,   -0.647489300204),
   Complex::new(   -7.821333192327,  -15.606994193249),
   Complex::new(    4.093578304649,   15.462757600992),
   Complex::new(    4.765467299654,    7.963215307045),
];

pub const FFT_TEST_X130: [Complex<f32>; 130] = [
   Complex::new(    2.295593731681,    0.411874155977),
   Complex::new(    0.867233010936,    2.391238924231),
   Complex::new(   -0.979511815183,    0.113140414722),
   Complex::new(    0.077578424280,    1.186610948031),
   Complex::new(   -1.071528198235,    0.804300526324),
   Complex::new(    2.564018851452,   -0.310561947705),
   Complex::new(   -0.950972074792,    0.436022224496),
   Complex::new(    0.329631038192,   -0.396044027241),
   Complex::new(   -0.862183775613,    0.927159525327),
   Complex::new(   -1.059508389407,    0.941689902943),
   Complex::new(    0.561615143764,    0.096377911775),
   Complex::new(    0.534738747717,    0.825200677825),
   Complex::new(    0.532672479322,   -1.976151133815),
   Complex::new(   -1.310581230339,    0.002609415320),
   Complex::new(   -0.093941505596,    0.905920914198),
   Complex::new(    0.925525275182,    1.564605784264),
   Complex::new(   -0.117943104365,   -0.166904851246),
   Complex::new(   -0.009619069574,    1.676338431134),
   Complex::new(   -1.367286699092,    1.175301759986),
   Complex::new(   -0.053699588910,    1.515076774609),
   Complex::new(   -0.070846548150,   -1.323601968188),
   Complex::new(    1.796443691981,   -2.011926920619),
   Complex::new(    0.493444077774,   -0.231926417128),
   Complex::new(    0.426102034457,   -0.966613330823),
   Complex::new(   -0.403283890205,    0.570936153832),
   Complex::new(    0.339532677572,   -2.038175992612),
   Complex::new(    0.202689295315,    0.573201095278),
   Complex::new(   -0.571885221166,   -1.275661165797),
   Complex::new(   -0.794196427625,    0.423266616492),
   Complex::new(   -1.259472882356,    0.532748103823),
   Complex::new(    0.578465509624,    0.826666605971),
   Complex::new(   -0.185287664847,    1.746937914937),
   Complex::new(    0.763423434636,    2.020182432630),
   Complex::new(    0.086623435989,    0.431914895390),
   Complex::new(    1.507900753669,    0.056290417021),
   Complex::new(   -0.032809671097,    0.098620827398),
   Complex::new(    1.816125083125,    0.081663531528),
   Complex::new(    0.214492964742,   -0.162240129055),
   Complex::new(    0.189647728207,   -1.547086817248),
   Complex::new(   -0.273499165641,   -0.552833918252),
   Complex::new(    0.118280846537,    2.716796709548),
   Complex::new(    0.771040737403,    2.763544783033),
   Complex::new(   -1.225097272428,    0.386568340878),
   Complex::new(   -0.106529445935,    2.317399662638),
   Complex::new(   -0.309752877128,    0.781864233638),
   Complex::new(   -0.382242026751,    0.530778535695),
   Complex::new(    2.187686178145,   -1.629696212455),
   Complex::new(   -0.796121964339,    1.212447992147),
   Complex::new(    0.483902967137,   -1.761611437465),
   Complex::new(    0.078193155045,   -0.695682313346),
   Complex::new(   -0.586826944592,    0.119088984700),
   Complex::new(    0.105215960567,    1.605824117591),
   Complex::new(   -1.096678506319,    0.626271388642),
   Complex::new(   -1.393844336696,    0.006228875154),
   Complex::new(   -0.563177155438,   -0.137367111477),
   Complex::new(    0.009064659930,    0.774248879600),
   Complex::new(    0.116957909967,   -0.374512247987),
   Complex::new(    0.139602276134,    1.196173350261),
   Complex::new(    2.212769662630,    0.374920897734),
   Complex::new(    0.016527615895,    0.361537040940),
   Complex::new(   -0.121813458827,   -1.829691824294),
   Complex::new(   -1.177075906748,    0.142539646960),
   Complex::new(    0.036310389827,    1.045967306206),
   Complex::new(   -0.065389592517,   -1.807892452763),
   Complex::new(   -1.387880762495,    0.171082957785),
   Complex::new(   -0.561065052343,   -1.260326041796),
   Complex::new(    0.640813649741,   -1.777293190718),
   Complex::new(   -0.854417690416,    2.237007530372),
   Complex::new(   -0.547722791713,   -2.330803396241),
   Complex::new(    0.241170879004,   -0.617927403601),
   Complex::new(    1.149285559687,   -0.376338314437),
   Complex::new(   -0.611492918690,    2.047469301403),
   Complex::new(    1.187263678013,   -0.165876393098),
   Complex::new(    0.165257041186,    1.672015729392),
   Complex::new(   -0.994770290926,   -0.351786586669),
   Complex::new(   -0.899279932248,    0.810204064241),
   Complex::new(   -0.989604008277,   -0.119746717438),
   Complex::new(   -0.645537324969,    0.353174690969),
   Complex::new(   -0.170329112065,    0.085003743875),
   Complex::new(   -0.622581542228,    0.035852829902),
   Complex::new(    1.027721243658,   -1.009164344833),
   Complex::new(   -0.512899325586,    1.422707083000),
   Complex::new(   -1.537474288640,    0.734758277184),
   Complex::new(    0.300068603056,   -0.844600037520),
   Complex::new(    1.173177814994,    0.474849978182),
   Complex::new(    1.994390672833,    0.274156356539),
   Complex::new(   -0.395247012804,    1.046793121497),
   Complex::new(    0.111209493599,   -1.063639370387),
   Complex::new(    0.804028185695,   -2.330860293474),
   Complex::new(   -0.790484315366,   -2.043033932357),
   Complex::new(   -1.938436910347,    0.005399210558),
   Complex::new(   -2.213763088095,   -0.050657389028),
   Complex::new(   -1.085606481444,   -1.672620738363),
   Complex::new(    0.114374573479,   -0.314566566070),
   Complex::new(   -0.334479316133,   -0.269357185023),
   Complex::new(   -0.405597270856,   -1.024425491739),
   Complex::new(   -0.268446228006,    0.625273024277),
   Complex::new(    0.114305720338,    0.091667406850),
   Complex::new(    0.458271491171,    0.893733272049),
   Complex::new(    2.164470970876,   -0.008479990723),
   Complex::new(    2.534318741148,   -0.513177256373),
   Complex::new(    1.349837294176,    0.730739449071),
   Complex::new(    0.178600395004,    0.598903569881),
   Complex::new(    0.999820793703,    0.023280883440),
   Complex::new(    2.567157231145,    2.857783095653),
   Complex::new(    1.121937084722,   -0.127318755949),
   Complex::new(   -1.476481512156,    0.438739152692),
   Complex::new(    0.102675413849,   -1.072173994008),
   Complex::new(    1.753108769750,   -1.363923993462),
   Complex::new(   -0.329713403173,   -0.836197629494),
   Complex::new(    0.053237332369,   -0.316007225300),
   Complex::new(    1.094272758407,    0.154099319830),
   Complex::new(    1.120647617053,    2.290453172159),
   Complex::new(   -0.909112485707,   -0.663394681024),
   Complex::new(    0.427832898254,    0.948020241699),
   Complex::new(    0.346684378724,    1.412486035318),
   Complex::new(   -0.142628142360,    0.034555947923),
   Complex::new(    0.329645857287,    2.194959848150),
   Complex::new(   -0.914476449793,    0.031998423787),
   Complex::new(    3.135765246395,   -1.497430797101),
   Complex::new(    1.209028626447,   -0.686517697463),
   Complex::new(    0.379503693068,   -0.842990842120),
   Complex::new(   -0.660923599405,   -0.501650971018),
   Complex::new(    0.299565764767,    1.443185673085),
   Complex::new(   -0.436332705510,   -0.166601489288),
   Complex::new(    0.671417018091,    1.996886835639),
   Complex::new(   -0.357759632151,   -0.399361979644),
   Complex::new(    1.113330373199,   -0.350135780628),
   Complex::new(   -0.281958991560,   -0.356378430727),
   Complex::new(    1.134108928078,   -2.092860871008),
];

pub const FFT_TEST_Y130: [Complex<f32>; 130] = [
   Complex::new(   14.378246546427,   16.821529859589),
   Complex::new(   27.857066272618,   13.571899136472),
   Complex::new(  -15.456704775735,   12.690273582209),
   Complex::new(   -8.753035425840,    7.321557750269),
   Complex::new(   28.113754727138,  -12.547913966687),
   Complex::new(   10.563681172036,    7.127854603059),
   Complex::new(   -6.710153682806,    1.534074734434),
   Complex::new(   -0.152583781138,    1.608751427720),
   Complex::new(    9.516727413961,  -11.938945268968),
   Complex::new(   11.591596283751,   29.464218232945),
   Complex::new(   -1.861083239337,    0.048807386609),
   Complex::new(   13.530879033363,  -18.257581820108),
   Complex::new(  -11.904116745072,  -21.233551918127),
   Complex::new(   25.195023350250,   -2.967265398356),
   Complex::new(   11.563020359283,   -8.938209578954),
   Complex::new(   -2.212982769038,   20.141015933481),
   Complex::new(    9.560556874374,   25.805352474019),
   Complex::new(    9.352588131212,   -7.076490204727),
   Complex::new(   19.915109002940,    6.825454682895),
   Complex::new(    9.736225779794,   -4.099017628979),
   Complex::new(   10.036798782148,    4.863204800610),
   Complex::new(   -5.027402703494,    4.645951171953),
   Complex::new(    0.722099014183,    4.901713974497),
   Complex::new(   12.341913244180,    4.734214019087),
   Complex::new(    6.490076890583,  -14.694265064166),
   Complex::new(   18.468325287177,   -3.754877637942),
   Complex::new(   30.687354000703,    1.981540291860),
   Complex::new(  -17.305129028905,    1.869860221279),
   Complex::new(    3.696020771673,   -4.871064988434),
   Complex::new(   15.580947342376,   22.519564496626),
   Complex::new(    3.848144651945,   -1.781612409800),
   Complex::new(    8.942942784269,   -3.602301409947),
   Complex::new(   -7.765663555408,   -0.625063385554),
   Complex::new(  -19.365854088060,   -1.898384733722),
   Complex::new(   22.654736737697,  -31.009432894736),
   Complex::new(    8.366067634071,   17.695248714554),
   Complex::new(   13.661573039778,    5.489335650118),
   Complex::new(    7.965893046432,    0.920878507501),
   Complex::new(   -6.773323972099,   -8.838093482259),
   Complex::new(   18.008424231247,    0.970453153687),
   Complex::new(    3.616219743282,   -7.106399136439),
   Complex::new(    4.354625182855,    6.303312903302),
   Complex::new(    2.152940232565,   10.856400632985),
   Complex::new(    9.549358562936,    3.736001577178),
   Complex::new(  -23.393358100356,   -6.204075948816),
   Complex::new(   15.508680212133,    8.577949641991),
   Complex::new(   -7.063921889490,   -9.211630834511),
   Complex::new(   21.009705406653,   -6.517205812361),
   Complex::new(   15.423888702704,    0.981999687774),
   Complex::new(   28.573348594219,    5.383290022507),
   Complex::new(   15.304347003446,   27.118709596573),
   Complex::new(   14.142070126013,    6.277279353863),
   Complex::new(    1.625323780309,   -9.187451801090),
   Complex::new(    8.830870090341,   18.810210753448),
   Complex::new(   -0.345015176149,   -9.619976818810),
   Complex::new(    7.341484437606,   -0.732292583861),
   Complex::new(    8.958852700478,  -10.587428450375),
   Complex::new(    3.882707974052,  -17.745844755612),
   Complex::new(   -8.873303252125,  -15.211822737393),
   Complex::new(   -6.167534400705,   10.214589494545),
   Complex::new(  -20.228656724261,   17.585629744635),
   Complex::new(   10.933318198559,   14.370328231006),
   Complex::new(   -8.461977401717,  -11.180604276190),
   Complex::new(   -9.616742566226,  -24.903826036989),
   Complex::new(  -11.411472927768,   17.575007330620),
   Complex::new(   -2.685486674198,  -14.771303637127),
   Complex::new(  -25.251618764170,    6.826824013717),
   Complex::new(   -6.299724034225,  -16.396112316751),
   Complex::new(   -7.265214784934,   -5.565409121926),
   Complex::new(   -6.640524692135,    0.521019036698),
   Complex::new(   16.214262242728,    2.209865277239),
   Complex::new(   -5.045705495784,    7.246063716170),
   Complex::new(   12.635656398329,    5.953408206671),
   Complex::new(    7.826253258739,   10.349167227222),
   Complex::new(    2.088937948255,   -5.121963022405),
   Complex::new(  -11.873961874446,   14.994764484717),
   Complex::new(   22.398422820899,    6.844715327780),
   Complex::new(  -12.730924558399,  -11.992318329822),
   Complex::new(   13.524168525742,   -4.729670042115),
   Complex::new(    1.202484810688,   -1.663460844124),
   Complex::new(   -1.947874132965,    1.302757622556),
   Complex::new(  -20.543601027337,   12.258518226726),
   Complex::new(   -3.137767302170,   -2.981480633371),
   Complex::new(   -7.975513140256,  -16.485317151074),
   Complex::new(    8.810596349659,    6.332990185486),
   Complex::new(   -6.161246346457,    5.235039382005),
   Complex::new(    2.843534766863,   -4.617409607122),
   Complex::new(   -4.073520680077,   -5.879651303740),
   Complex::new(   -2.171553918002,   -2.554595714543),
   Complex::new(   -6.693230033855,   -4.317974300454),
   Complex::new(    2.510552087942,    5.009469541979),
   Complex::new(  -19.083210256655,    5.125864403228),
   Complex::new(    0.411198384867,    2.018760355265),
   Complex::new(   -9.315948091880,  -15.753105210356),
   Complex::new(    7.665007791183,   19.339077441185),
   Complex::new(   17.992904291137,    1.608531544860),
   Complex::new(    7.252549051948,    5.185390374966),
   Complex::new(   -3.402294497131,   15.472029335175),
   Complex::new(  -10.304002604604,   -3.412309568194),
   Complex::new(    3.576347909571,  -16.980789801741),
   Complex::new(  -14.889487424902,   -0.293460269814),
   Complex::new(   -2.329133331489,   15.570197654593),
   Complex::new(   -4.321477736813,    4.956074608145),
   Complex::new(    3.632694634916,   11.871283520762),
   Complex::new(    2.290904837875,   -0.771528125573),
   Complex::new(   36.996035166517,   -1.073727284586),
   Complex::new(    6.227709813318,   -9.761528406472),
   Complex::new(   -2.515872122268,    0.034234272997),
   Complex::new(    4.552755682518,   -9.370352932646),
   Complex::new(    9.004603455113,    4.753018490255),
   Complex::new(    0.440587766505,   16.114787576668),
   Complex::new(  -28.634077387281,   -5.605910818928),
   Complex::new(   -5.160190484618,  -11.779239644678),
   Complex::new(  -17.819659704355,    0.062857325389),
   Complex::new(  -14.769191642874,   -0.223091433159),
   Complex::new(    2.070190617098,   -3.834976376660),
   Complex::new(   -3.825400452939,   -5.056722468813),
   Complex::new(  -15.844519611706,  -11.255119227692),
   Complex::new(   25.546454083988,    2.033450780777),
   Complex::new(   25.208964212648,  -18.608412069091),
   Complex::new(  -30.422847814837,  -18.350779470779),
   Complex::new(   15.095434571838,   20.530536309828),
   Complex::new(    1.789608009331,   28.248536173054),
   Complex::new(  -12.951533049636,    6.950006423363),
   Complex::new(    8.717234868692,  -32.148462751388),
   Complex::new(    7.386347991900,    3.651733560911),
   Complex::new(  -12.562312227509,    3.070991373115),
   Complex::new(   -0.069804711953,    1.802309211709),
   Complex::new(    1.176122484348,  -14.149959691947),
   Complex::new(    5.353573748142,    0.564676076929),
];

pub const FFT_TEST_X157: [Complex<f32>; 157] = [
   Complex::new(    0.257182749425,    0.221924222343),
   Complex::new(    1.678933476985,    1.690438801569),
   Complex::new(   -0.370453539748,   -0.279443271284),
   Complex::new(   -0.425568170028,   -0.346884537719),
   Complex::new(    0.025131704106,    0.368626953376),
   Complex::new(   -0.013250700538,    0.876875327290),
   Complex::new(    0.935964221688,   -0.003996500003),
   Complex::new(    0.697482794970,    0.169890786221),
   Complex::new(   -0.672758751419,   -0.529033743727),
   Complex::new(   -0.103638614252,    0.221443696028),
   Complex::new(   -0.365208618659,   -0.660189374984),
   Complex::new(    0.148416173585,   -0.919145673704),
   Complex::new(   -0.015366679279,   -0.943544155661),
   Complex::new(    1.622323455798,    0.481254671673),
   Complex::new(   -0.438594792675,    0.487727000762),
   Complex::new(    1.590594341984,   -0.549613288902),
   Complex::new(   -0.917184623744,   -2.221026339765),
   Complex::new(   -1.617744928538,    1.593484682047),
   Complex::new(   -0.989508283152,   -0.094108203222),
   Complex::new(    0.852090994091,   -2.231080010685),
   Complex::new(   -0.400903430450,   -0.366248303051),
   Complex::new(   -0.125211983197,   -1.455734382818),
   Complex::new(    1.947225389836,    0.980175860892),
   Complex::new(   -1.398014729095,    0.014318572276),
   Complex::new(   -0.771114386583,    0.544211573481),
   Complex::new(    0.126434853618,   -0.465319924891),
   Complex::new(    0.952552119580,    2.799409645314),
   Complex::new(    0.745539772546,    0.038782344125),
   Complex::new(    0.629464449611,   -1.544746925900),
   Complex::new(   -1.430974620188,   -1.148543279148),
   Complex::new(   -0.550191215098,   -1.044145048363),
   Complex::new(   -0.616171694097,   -1.252745889547),
   Complex::new(    0.988808988108,   -1.602725943935),
   Complex::new(   -0.607710796313,    0.518971475013),
   Complex::new(    0.771090806997,   -0.385515422626),
   Complex::new(    0.825512088357,    0.474459769075),
   Complex::new(   -0.291745809631,   -0.149808656805),
   Complex::new(   -1.958415654055,    0.651147959844),
   Complex::new(   -0.778182389479,   -0.780881485990),
   Complex::new(   -2.015821535479,   -0.050499463828),
   Complex::new(    0.887353255055,   -1.214230826942),
   Complex::new(   -0.096317891587,    0.761206139060),
   Complex::new(   -1.062009284735,   -0.271266211836),
   Complex::new(    1.423990266183,    1.335814455222),
   Complex::new(   -0.847479948365,    2.671530186606),
   Complex::new(   -1.345728311726,   -0.634481496676),
   Complex::new(   -0.797816703427,    0.502757855534),
   Complex::new(   -0.464673266498,    0.116721201943),
   Complex::new(    0.203062847770,    0.561494795746),
   Complex::new(    0.033909266352,   -0.261380019453),
   Complex::new(   -0.658056423237,    1.281296865326),
   Complex::new(    0.941736081602,    1.987602839317),
   Complex::new(   -0.423846356775,   -1.241587960307),
   Complex::new(   -0.393324168712,    0.737043249313),
   Complex::new(   -1.944403782443,   -0.943905358441),
   Complex::new(   -0.528242253913,    1.908236422266),
   Complex::new(    1.452295322067,   -0.869099055081),
   Complex::new(   -1.120053624869,    0.850800785935),
   Complex::new(    0.365006117743,   -0.347073388222),
   Complex::new(   -1.980724188697,    1.747266666168),
   Complex::new(    1.558965406397,    0.725116188824),
   Complex::new(   -1.050340476177,    0.477386287145),
   Complex::new(    0.078299549695,   -1.166209184146),
   Complex::new(    0.666177598254,   -1.881539760701),
   Complex::new(   -0.553008717374,    0.112063233224),
   Complex::new(   -1.542438669400,   -0.905459946121),
   Complex::new(   -0.540183077595,   -0.653405677927),
   Complex::new(    0.093096056538,    1.658838310544),
   Complex::new(   -0.070743442866,   -0.474238998458),
   Complex::new(   -1.057268947675,    0.965366634327),
   Complex::new(   -0.084404481306,    0.516458044167),
   Complex::new(    0.415540467796,   -0.571894574983),
   Complex::new(   -0.495234089660,    0.103235766156),
   Complex::new(    0.464768365021,    0.651070663181),
   Complex::new(   -1.478301866530,   -1.246265840883),
   Complex::new(   -0.810080291321,   -0.090687751615),
   Complex::new(    1.597727768491,   -1.303542260713),
   Complex::new(    0.899193648643,    0.101515082173),
   Complex::new(   -1.275261212066,   -1.670150745367),
   Complex::new(   -0.067477528818,    0.082676448878),
   Complex::new(   -0.593487795772,    1.015383261914),
   Complex::new(   -0.195143706875,    0.197795648282),
   Complex::new(    1.470101318427,   -1.090920995443),
   Complex::new(    3.099635934834,    0.418783664178),
   Complex::new(    0.517928899798,   -0.515604023095),
   Complex::new(   -0.699637334030,    0.411968031541),
   Complex::new(    0.238527504044,   -1.024932943805),
   Complex::new(    1.067350706566,   -1.185403362126),
   Complex::new(    1.013271318338,    0.881471326676),
   Complex::new(    0.004430604182,   -0.799775043761),
   Complex::new(    0.351524389294,    0.780435439706),
   Complex::new(    0.106334238498,    0.458736063427),
   Complex::new(   -0.008723581305,    2.334855897709),
   Complex::new(   -0.486030470423,   -0.237085023857),
   Complex::new(   -0.752315645429,    0.905584767839),
   Complex::new(   -0.578103821311,    1.125629982729),
   Complex::new(   -0.948197773007,   -0.457632138151),
   Complex::new(    0.742229639059,    0.271160961106),
   Complex::new(   -0.773931821655,   -0.314444247010),
   Complex::new(   -1.490298210738,    0.035980837847),
   Complex::new(    0.199618338445,    0.632691460449),
   Complex::new(   -0.234261424994,   -1.443456519632),
   Complex::new(    0.463236279099,    0.303140551137),
   Complex::new(    0.292524617190,   -0.043026971072),
   Complex::new(    0.046692677937,    1.116783220186),
   Complex::new(   -1.861132210698,    0.261380583838),
   Complex::new(   -0.341148975896,   -0.470343064889),
   Complex::new(   -0.671470989909,    0.007947245970),
   Complex::new(   -0.534160841208,   -0.124549058301),
   Complex::new(    0.487094311512,   -0.314353890072),
   Complex::new(   -0.403442115448,   -0.857412221358),
   Complex::new(    1.085529198882,   -0.386892824664),
   Complex::new(    0.591555113309,    0.384947041491),
   Complex::new(   -0.516471791207,   -0.646903850947),
   Complex::new(   -0.216099520865,    0.030923700983),
   Complex::new(   -2.362722198570,    2.187609191074),
   Complex::new(   -2.996234948353,    1.169329942024),
   Complex::new(    0.398987017180,    1.432369958192),
   Complex::new(   -0.321543239403,   -1.079202616493),
   Complex::new(    0.155932087142,    0.283226593654),
   Complex::new(   -0.149566717019,    2.000037448099),
   Complex::new(   -0.505275327391,   -0.592114971901),
   Complex::new(    0.712863240336,   -0.919212613392),
   Complex::new(    2.561694455976,   -0.315857229465),
   Complex::new(   -0.401098664528,   -1.414850199386),
   Complex::new(    1.068811040362,   -0.520713203914),
   Complex::new(   -0.928756706401,   -1.036472849545),
   Complex::new(    0.731918541008,    2.246056257734),
   Complex::new(   -1.087622423230,   -1.271134991425),
   Complex::new(    0.747682565630,    1.167376255945),
   Complex::new(    0.823139516666,    0.417274248065),
   Complex::new(    0.488604293527,   -0.768657162242),
   Complex::new(   -1.566207330521,   -0.520510590335),
   Complex::new(    0.286432330277,   -0.603250643993),
   Complex::new(    0.685025047143,   -0.939995698866),
   Complex::new(    0.955471389243,   -0.323428744209),
   Complex::new(   -1.169027438782,   -0.175653814544),
   Complex::new(   -0.284005159687,    0.460772145706),
   Complex::new(   -0.310159212214,   -1.720418494846),
   Complex::new(    0.305232638909,   -0.090314073904),
   Complex::new(    0.190795117789,   -0.467619419555),
   Complex::new(   -0.905744042954,   -1.143116395802),
   Complex::new(    0.392128587570,    2.286798561832),
   Complex::new(   -1.315880319405,   -1.432434182558),
   Complex::new(    1.007683317172,   -0.154461360928),
   Complex::new(    0.474642520199,    0.729416858430),
   Complex::new(   -0.679375823140,   -2.856682284668),
   Complex::new(   -0.687426016158,   -1.023213289303),
   Complex::new(   -0.022785229613,    0.698739170753),
   Complex::new(   -0.643221050022,    1.444057111513),
   Complex::new(    0.149585673645,   -0.602773170360),
   Complex::new(    0.389853409146,   -0.949003645210),
   Complex::new(   -1.115251553217,   -0.405311422912),
   Complex::new(    0.228569355271,   -0.486849085232),
   Complex::new(   -0.140823347089,   -0.328067722810),
   Complex::new(    1.388787822068,   -2.267147899079),
   Complex::new(    0.939124099904,   -0.563609820499),
];

pub const FFT_TEST_Y157: [Complex<f32>; 157] = [
   Complex::new(  -13.721520175468,   -9.568907767571),
   Complex::new(    8.721468524756,  -10.198063416643),
   Complex::new(   15.060716782723,  -14.846901712846),
   Complex::new(  -11.623905596583,   16.650835292293),
   Complex::new(   19.695072317931,  -11.298461808236),
   Complex::new(    1.838122765692,    7.179001252206),
   Complex::new(    8.145195639028,  -10.634659386087),
   Complex::new(   13.033783220459,   19.061682407788),
   Complex::new(   -3.959970595745,   -7.333783752376),
   Complex::new(   17.086993536942,   -6.079044767515),
   Complex::new(   10.491053572778,   -4.514192461667),
   Complex::new(    6.064025221921,   10.332579887094),
   Complex::new(   -3.762638600928,   10.624543304629),
   Complex::new(   -1.847856432273,   -8.006182372781),
   Complex::new(   41.710087074031,    2.242012124979),
   Complex::new(    8.362552928082,   -0.431571425998),
   Complex::new(   -2.684280607792,  -19.646530227003),
   Complex::new(   -5.355855356382,   -4.457469415514),
   Complex::new(   -7.411106913072,   24.950544746191),
   Complex::new(   16.058416814462,    7.398904353701),
   Complex::new(    4.287192732400,  -11.227843680234),
   Complex::new(   -1.117925486982,   24.330611594547),
   Complex::new(    3.444591991920,   32.326680862100),
   Complex::new(   17.351475510592,   -7.023399927552),
   Complex::new(   -0.243462815765,    5.525094059061),
   Complex::new(    1.824464191173,  -10.437625350692),
   Complex::new(    0.863195259259,    8.286510583962),
   Complex::new(   -2.958971801726,  -14.975362935027),
   Complex::new(    9.706578069666,    2.274491450388),
   Complex::new(   18.904225667531,    9.156322125243),
   Complex::new(    1.847919083204,   22.188095024380),
   Complex::new(   -4.136288117963,  -22.092021747680),
   Complex::new(    4.703234992916,    0.532501901615),
   Complex::new(   -3.030532632664,  -11.313921121067),
   Complex::new(    1.091146775351,    7.577427645200),
   Complex::new(    3.975634530789,   10.604839429746),
   Complex::new(   12.752600166339,    7.600696307234),
   Complex::new(   15.977675567158,   16.362460714763),
   Complex::new(   -0.020172843559,    3.858168994446),
   Complex::new(  -14.397449821557,   12.915383581435),
   Complex::new(   15.101543348628,  -23.907576345828),
   Complex::new(   -1.954273280892,   13.597214533352),
   Complex::new(   -8.025138226552,    3.693906127107),
   Complex::new(  -10.663001711599,   11.720999651550),
   Complex::new(   -1.917368345264,  -19.036649221044),
   Complex::new(    4.152821868650,   -8.488773546805),
   Complex::new(  -24.343188706355,  -10.538612575861),
   Complex::new(   12.414685926300,   16.068084980361),
   Complex::new(    2.673733474235,   -8.293379374130),
   Complex::new(    9.339757855123,    0.779105093141),
   Complex::new(   34.385020257627,   -8.910778839680),
   Complex::new(   13.686080719584,   -2.468581114278),
   Complex::new(   -0.105352104096,   -7.123485160682),
   Complex::new(  -26.981218401390,   13.727259016390),
   Complex::new(   -6.504207057579,    3.268522185903),
   Complex::new(    7.577558748754,    2.965812787302),
   Complex::new(  -22.926267985360,    4.630017422388),
   Complex::new(   -8.347022143339,    1.975527870103),
   Complex::new(    3.060029390078,  -21.656262254959),
   Complex::new(    9.637126253972,   -7.538708825218),
   Complex::new(  -13.130853679756,  -18.805264312027),
   Complex::new(  -16.821204438708,    4.950740394033),
   Complex::new(   22.988677066759,   -1.571260161915),
   Complex::new(    1.406205876954,   12.062599478139),
   Complex::new(  -28.514716646160,    7.993271146497),
   Complex::new(   -0.907689305572,    0.456303536916),
   Complex::new(   -3.571030267866,   -4.518597998420),
   Complex::new(  -11.957457146313,  -19.766437913007),
   Complex::new(   -5.413654003898,   -1.754632161022),
   Complex::new(   -9.175989023330,   -7.046783981905),
   Complex::new(   -4.258428526498,  -16.319730685668),
   Complex::new(   -8.132160224937,   -1.537755723079),
   Complex::new(   15.156793468505,   10.343087291076),
   Complex::new(   25.761505476002,    3.887909686471),
   Complex::new(   21.853951697775,  -12.770771455381),
   Complex::new(  -14.242421455518,    2.407693112009),
   Complex::new(  -13.467445303389,  -29.036488998230),
   Complex::new(   -9.305071893547,    2.506212475888),
   Complex::new(   22.323867850705,   -4.075769716056),
   Complex::new(   -5.679643000649,   -3.670620943265),
   Complex::new(  -13.769169134408,   13.834529429033),
   Complex::new(  -12.414956903750,  -16.194735699494),
   Complex::new(   -2.005403979995,  -11.362528318332),
   Complex::new(    7.730155179299,    9.255875770335),
   Complex::new(   15.051941677947,   -3.828126836044),
   Complex::new(  -21.086873877673,   12.717384691065),
   Complex::new(   22.428970474249,   14.741806815196),
   Complex::new(    2.480130753861,  -23.039122194478),
   Complex::new(  -10.903771391849,  -13.412743738585),
   Complex::new(    6.147006915635,   13.690721935985),
   Complex::new(  -20.616357511746,  -17.845769868478),
   Complex::new(   -8.402987902554,    3.410410123270),
   Complex::new(   10.582061652995,    4.348210154826),
   Complex::new(   15.024788596168,   -5.782083339001),
   Complex::new(    8.689851678442,   35.535383742654),
   Complex::new(   -4.132601952228,   -0.321739745032),
   Complex::new(  -19.197163106392,    3.413027621621),
   Complex::new(   -5.794327856223,   -7.331102283615),
   Complex::new(   -6.543417534351,   -1.677934031582),
   Complex::new(    7.329352169488,   -4.324029036611),
   Complex::new(  -25.477673544286,  -10.789721951286),
   Complex::new(   -0.912644707297,   -9.637940446228),
   Complex::new(    4.037691841333,    3.096945310047),
   Complex::new(   -5.847674330905,   13.938407689472),
   Complex::new(   10.812159378022,    2.497873869651),
   Complex::new(    5.034733833406,   20.614345199846),
   Complex::new(    9.197163204775,    3.499527690970),
   Complex::new(  -11.061382406800,    3.269075618163),
   Complex::new(   -2.869327440190,  -17.824719429904),
   Complex::new(  -16.473833296088,   -7.487202778068),
   Complex::new(    6.310496423938,    5.004751989728),
   Complex::new(   -6.079010956757,   18.024756582815),
   Complex::new(   -4.356220575254,   -2.205381751597),
   Complex::new(   -8.493558121870,   -3.869308590719),
   Complex::new(    7.159973070917,    6.849733506562),
   Complex::new(   17.405411913875,   -3.643915205170),
   Complex::new(    1.342183355448,    0.252403128806),
   Complex::new(    2.470554720768,    3.325864954849),
   Complex::new(    3.304540368971,   -7.701906570289),
   Complex::new(  -41.203455184368,   12.817592975767),
   Complex::new(  -20.058954711820,   19.878752053751),
   Complex::new(    9.046175416813,   11.732938261288),
   Complex::new(   -0.786044861883,   17.615815760165),
   Complex::new(   -3.027566374297,   11.824558467687),
   Complex::new(   -3.793394817088,    4.309384254386),
   Complex::new(  -15.395453276032,   -6.476272377854),
   Complex::new(    2.993318695808,   20.818567190739),
   Complex::new(  -21.109827170023,  -18.433989642597),
   Complex::new(   -7.427193578999,   -4.496310454720),
   Complex::new(   13.462176439125,  -14.456554646582),
   Complex::new(    2.860309865551,    0.813195406900),
   Complex::new(  -16.705039250487,    5.416257334069),
   Complex::new(   12.149530796231,    5.677739145239),
   Complex::new(   10.883522142352,   -2.048976821145),
   Complex::new(   33.919769198703,   14.546697989253),
   Complex::new(   -0.080428049883,   -5.729314964055),
   Complex::new(   -1.382967825489,   -0.843240827862),
   Complex::new(  -14.258739687335,   -4.164415134916),
   Complex::new(  -11.232537602109,   13.450368521399),
   Complex::new(    6.475674985073,   -6.229640995099),
   Complex::new(    9.211806090883,   -7.267971548561),
   Complex::new(  -14.365301190661,    8.987964911736),
   Complex::new(  -11.266093935597,  -15.954781116216),
   Complex::new(  -18.499836430748,   -8.923649916614),
   Complex::new(   31.090884321227,    2.260100309627),
   Complex::new(   -7.383545212516,   10.553116472713),
   Complex::new(    1.165337529929,   -1.083672004639),
   Complex::new(    1.026784219611,  -16.203749347621),
   Complex::new(   -0.529416311921,   -8.707703034115),
   Complex::new(   -9.657893357311,   12.096083541637),
   Complex::new(  -15.285477594802,    4.224467463110),
   Complex::new(   16.595393096965,    1.232758856522),
   Complex::new(   10.380238903621,   -5.473695910884),
   Complex::new(   -5.199124871644,   14.427071924858),
   Complex::new(  -10.919624558299,   16.105413828801),
   Complex::new(   15.081167155045,   -6.737986374676),
   Complex::new(    5.602666437487,  -19.846630500695),
];

pub const FFT_TEST_X192: [Complex<f32>; 192] = [
   Complex::new(   -0.570749076040,    1.623496753738),
   Complex::new(   -0.801441214588,   -0.237768079755),
   Complex::new(   -1.136144657269,    0.367681411439),
   Complex::new(   -0.021881616373,   -1.310767380444),
   Complex::new(   -1.897076967315,   -0.151633764169),
   Complex::new(   -0.065089420065,    0.179240807290),
   Complex::new(   -0.459561140285,    0.186362705450),
   Complex::new(   -1.459184572831,   -0.172507317719),
   Complex::new(    0.768770035801,   -0.603405455907),
   Complex::new(   -0.445592790811,   -0.545504111400),
   Complex::new(   -1.133095461256,    0.347109313928),
   Complex::new(    0.680343842697,    0.984380778227),
   Complex::new(    1.434274246060,   -0.455280274247),
   Complex::new(    1.367719846389,   -0.017753112833),
   Complex::new(   -1.036796157162,    0.202926093122),
   Complex::new(   -0.608495290895,    1.377505175242),
   Complex::new(    0.677352983170,    0.522913747818),
   Complex::new(    0.829598919707,   -0.238489026179),
   Complex::new(    1.658006740638,    1.321959544651),
   Complex::new(   -1.813019197848,   -1.379543844064),
   Complex::new(   -0.105360926209,    0.770250719958),
   Complex::new(    0.950326938828,   -0.839058539588),
   Complex::new(    1.158809729841,   -0.647245275247),
   Complex::new(   -0.360439558788,   -0.056522073112),
   Complex::new(   -0.729658576111,   -0.230389217591),
   Complex::new(   -0.147264114233,   -0.844995936147),
   Complex::new(    3.006061814772,    0.324561093094),
   Complex::new(    0.421672171136,   -1.045335631843),
   Complex::new(    1.450421276223,   -1.809661507608),
   Complex::new(    0.112589736618,   -0.680553655537),
   Complex::new(   -0.962866997971,    0.051225992580),
   Complex::new(   -0.069473575656,    0.412572221634),
   Complex::new(    0.807441882459,   -0.390366883673),
   Complex::new(    0.494922478167,    0.666273714397),
   Complex::new(    0.534063543949,    0.216473899855),
   Complex::new(    0.115686515954,   -1.150016410968),
   Complex::new(   -0.911950154175,   -1.906708901788),
   Complex::new(    0.035013270272,    1.560677880077),
   Complex::new(   -0.689521651706,   -0.963904151064),
   Complex::new(   -1.140202975221,   -0.076069898430),
   Complex::new(   -0.246077937761,    0.616853881528),
   Complex::new(   -0.251792408901,   -0.385289165959),
   Complex::new(    0.144732608298,   -0.544232656456),
   Complex::new(    0.716079834835,    0.154716467884),
   Complex::new(   -0.454600091317,   -0.778823717821),
   Complex::new(   -0.004009391933,    0.239803231190),
   Complex::new(    0.128608781578,    0.252750485610),
   Complex::new(   -0.104121384913,   -1.189000295448),
   Complex::new(    0.242846644961,    0.081301007736),
   Complex::new(    1.450965500668,    0.361778385840),
   Complex::new(   -0.190106534680,    0.071804478293),
   Complex::new(    0.420793349874,    1.491145034929),
   Complex::new(    2.460108883286,    0.757779280601),
   Complex::new(   -0.825692579645,   -0.596573882891),
   Complex::new(    0.671589132843,    1.011087599399),
   Complex::new(    1.284648906257,   -0.045814861627),
   Complex::new(   -0.760224555847,   -0.722324468953),
   Complex::new(   -1.322063665211,   -2.308468943382),
   Complex::new(    2.293407378555,    0.010203054084),
   Complex::new(    0.055649061121,   -2.002674185757),
   Complex::new(   -0.282775998354,   -1.935193634195),
   Complex::new(    1.737107472308,   -1.107578165456),
   Complex::new(   -0.235741548678,   -0.486998315145),
   Complex::new(   -0.270131100153,   -2.340452003512),
   Complex::new(   -1.145976320980,    1.671478612533),
   Complex::new(    1.046314822557,    0.182117686556),
   Complex::new(   -0.745497599782,   -0.723373842151),
   Complex::new(   -0.511430521736,   -0.669552224448),
   Complex::new(    0.619398807961,   -0.051926233859),
   Complex::new(    0.650768664429,   -0.054337533084),
   Complex::new(   -0.377066273366,    0.748578490695),
   Complex::new(    0.868445500849,   -1.916678793529),
   Complex::new(   -0.745634363305,    2.968322096526),
   Complex::new(    1.601642204548,   -1.815842464572),
   Complex::new(   -0.110280900762,   -0.375012568050),
   Complex::new(    1.082989689805,    0.615940836645),
   Complex::new(    0.285506402216,    0.273198983697),
   Complex::new(    0.277214797147,    1.771337438831),
   Complex::new(    0.165028606876,   -0.704451808040),
   Complex::new(    0.317894159247,    0.492665087928),
   Complex::new(    0.601574563612,   -0.904521376193),
   Complex::new(   -0.642798244158,    0.327271328047),
   Complex::new(    0.011482342139,   -0.787115819239),
   Complex::new(    0.244096373806,    0.152569770967),
   Complex::new(    0.178980665283,    0.813856965670),
   Complex::new(    1.492787787643,   -0.413137630323),
   Complex::new(   -1.122949408956,   -0.730572761342),
   Complex::new(    0.096736426284,   -0.623125567869),
   Complex::new(   -0.054054998356,    0.102181208006),
   Complex::new(    0.016144101863,   -0.139709667178),
   Complex::new(    1.323423360215,   -1.218385808067),
   Complex::new(    1.225801036168,    1.825795241395),
   Complex::new(    1.773877495557,    0.364293281834),
   Complex::new(   -1.266134039437,    0.099487732018),
   Complex::new(   -0.417581296163,    0.343715046363),
   Complex::new(    0.505757022167,   -0.500849213570),
   Complex::new(    0.968334906502,   -0.526257684744),
   Complex::new(    0.333143774360,    0.396107354791),
   Complex::new(   -0.506358896777,   -0.087644984012),
   Complex::new(    1.324525846569,    1.494077333636),
   Complex::new(   -0.951951460363,    0.994211347018),
   Complex::new(   -2.692462733023,   -0.697601652243),
   Complex::new(   -1.072637853655,    1.879429345687),
   Complex::new(   -0.193163794476,    1.344807479696),
   Complex::new(   -0.036468538711,   -2.246890819337),
   Complex::new(    0.123890932473,   -1.171359056597),
   Complex::new(    1.614167761632,   -0.084861961160),
   Complex::new(    0.813475153805,   -1.363244160675),
   Complex::new(   -0.751043379055,   -0.001003534113),
   Complex::new(   -1.127244933655,    0.033479567244),
   Complex::new(    0.120947403072,    0.172712059551),
   Complex::new(   -0.650772252959,    1.321513948454),
   Complex::new(    1.305164416475,   -0.787832375788),
   Complex::new(   -0.312608725354,   -0.233463073219),
   Complex::new(   -0.754485246213,   -0.132782409884),
   Complex::new(    1.522953329225,    0.109222954313),
   Complex::new(   -0.495952414190,    0.544687157445),
   Complex::new(    0.506640354547,   -1.676292292327),
   Complex::new(    0.495984603346,    0.705582611126),
   Complex::new(    0.555362258234,    1.175515543993),
   Complex::new(   -1.380515094250,    0.427692852149),
   Complex::new(    0.003538138035,    1.425908489255),
   Complex::new(    1.062943493718,    1.079328766594),
   Complex::new(    0.035769210794,    0.546944179639),
   Complex::new(   -1.009393498146,   -0.836699998466),
   Complex::new(   -1.299667858035,   -1.876603335383),
   Complex::new(    1.400213634255,   -1.094331065468),
   Complex::new(   -0.978532602360,   -1.133768146514),
   Complex::new(   -0.126022453004,   -0.548218141207),
   Complex::new(   -0.459386774097,   -1.142543752432),
   Complex::new(   -0.634282978000,    0.401478043588),
   Complex::new(    0.536619631169,   -0.637851111890),
   Complex::new(   -2.177417556650,   -0.582755642600),
   Complex::new(    1.956859485192,    0.756502126757),
   Complex::new(   -1.033248608338,    0.083674820018),
   Complex::new(    0.361227297522,    0.246987978580),
   Complex::new(    0.200321461901,    0.997822511718),
   Complex::new(   -1.130355402825,   -0.097176654080),
   Complex::new(    1.384768698791,   -0.772817911874),
   Complex::new(    0.926525539860,    0.145277765291),
   Complex::new(   -0.540081956252,    0.372734113022),
   Complex::new(    0.327046375183,    1.452638689757),
   Complex::new(   -0.402162597503,   -0.571759031309),
   Complex::new(    1.213886497238,    0.862378057918),
   Complex::new(   -0.024799349445,   -0.640880433466),
   Complex::new(    0.605895117723,    1.040856615204),
   Complex::new(    0.875424648817,   -1.747168830682),
   Complex::new(    1.792252094005,    1.449436965826),
   Complex::new(   -0.058686051876,    0.024079540685),
   Complex::new(   -1.197793455172,    0.076528126740),
   Complex::new(   -1.451475019825,    2.506331331519),
   Complex::new(    0.115177207244,    0.581887944455),
   Complex::new(   -0.894760295667,    0.941285480086),
   Complex::new(    0.167847546335,    0.113650691315),
   Complex::new(    0.580138910850,    1.482400230136),
   Complex::new(   -0.638693285492,    0.706252192544),
   Complex::new(   -0.679198255352,   -0.864392741247),
   Complex::new(    0.309224287292,    0.802306837308),
   Complex::new(    0.089371278986,   -1.059876744659),
   Complex::new(    1.352756771804,   -0.303374747952),
   Complex::new(    0.142478845463,    1.679379378038),
   Complex::new(   -0.307104681980,   -1.525241010787),
   Complex::new(    0.947136026136,   -0.176290475474),
   Complex::new(   -0.191221819400,    0.872369793925),
   Complex::new(   -0.694209420142,    0.251537117440),
   Complex::new(    1.193931121456,    0.364438121717),
   Complex::new(    0.364530798418,    0.953151437736),
   Complex::new(   -2.204969193002,    0.591100538765),
   Complex::new(    1.152638435048,    0.423855010290),
   Complex::new(   -0.190087319373,   -0.236280077579),
   Complex::new(   -0.959025701481,   -1.046604614844),
   Complex::new(   -0.059036610250,    0.757806508323),
   Complex::new(    1.193828263334,    0.991816149312),
   Complex::new(   -0.644717162130,    0.685130498159),
   Complex::new(    0.386929662859,    0.246269623980),
   Complex::new(    0.747830541986,   -0.853860497506),
   Complex::new(    0.563215051840,   -1.553462734011),
   Complex::new(   -0.411175328612,    0.338710437150),
   Complex::new(   -1.017739241999,   -0.234632452129),
   Complex::new(   -2.270318833952,    0.624001888473),
   Complex::new(    0.530109233459,   -3.021054334701),
   Complex::new(   -0.733212401282,    0.337380481817),
   Complex::new(    0.686400469100,    1.434988023046),
   Complex::new(   -1.537557685024,    0.266727612837),
   Complex::new(    2.377907246279,   -0.647849557308),
   Complex::new(    1.588677766399,   -0.611004042543),
   Complex::new(    0.547569751159,   -0.942144527428),
   Complex::new(   -0.489770632777,   -1.190329237689),
   Complex::new(   -0.588811442748,    1.025069940138),
   Complex::new(   -0.380574882230,   -1.193424193517),
   Complex::new(   -2.719012193329,   -0.412270955448),
   Complex::new(    1.447794971270,    0.160429136252),
];

pub const FFT_TEST_Y192: [Complex<f32>; 192] = [
   Complex::new(   11.637079481157,   -8.771861743960),
   Complex::new(  -26.395324212554,  -12.523034709229),
   Complex::new(  -13.199274560613,    4.197128353434),
   Complex::new(    2.770319150971,  -22.367461652042),
   Complex::new(    0.642915300037,    6.363791329048),
   Complex::new(   -1.448465724858,   11.100404880196),
   Complex::new(   -6.231101627932,   -0.711426629573),
   Complex::new(    6.572370237538,   -9.008077010635),
   Complex::new(    7.543400860435,   28.757508480923),
   Complex::new(  -17.693058117854,  -14.497870123296),
   Complex::new(  -18.350699894294,   19.700720310742),
   Complex::new(  -22.388250522169,    7.667843634853),
   Complex::new(   14.220360999832,   11.088627215515),
   Complex::new(   14.686986747880,    4.769183572180),
   Complex::new(  -16.224161466491,   18.657410968166),
   Complex::new(   -5.561225898629,    0.059313803898),
   Complex::new(   13.221567254519,   -8.899219750894),
   Complex::new(  -20.776362788232,  -12.895144971233),
   Complex::new(   16.702761314442,   -1.206621684382),
   Complex::new(    1.152218624052,   10.429943215921),
   Complex::new(    1.406407090905,  -25.487932735618),
   Complex::new(    5.058858691359,   14.007031493308),
   Complex::new(    3.915927218401,   -3.143885706619),
   Complex::new(    0.511679691204,    7.640849778701),
   Complex::new(   -9.519895102966,  -18.415287292132),
   Complex::new(    2.876304518596,   20.969442045845),
   Complex::new(    7.342107433201,  -12.347059316472),
   Complex::new(   -0.618433952859,   25.041216941337),
   Complex::new(    0.580421597502,  -14.237985250543),
   Complex::new(    8.771852508251,    0.733917062704),
   Complex::new(    3.782207555074,   16.248301038041),
   Complex::new(   -8.524579539709,    9.295327847229),
   Complex::new(   -4.768100090762,  -10.116200145201),
   Complex::new(    5.053774488844,   -2.415715341537),
   Complex::new(   14.309532012096,   -0.424419688667),
   Complex::new(   12.756379146573,    5.032080306349),
   Complex::new(   34.330424118154,   10.117580842288),
   Complex::new(   -5.753681073486,   -1.411149381440),
   Complex::new(    1.264859359146,    4.528836925970),
   Complex::new(   -2.586666114372,   13.851391335293),
   Complex::new(   -1.713098457415,   20.890928009489),
   Complex::new(  -13.434363693601,   24.394077211392),
   Complex::new(  -10.022671324009,   17.664609245348),
   Complex::new(   -1.725934813257,    1.891913667017),
   Complex::new(    9.110355361482,   -0.179266402064),
   Complex::new(   -6.803970453739,    1.078079859350),
   Complex::new(   15.245357404619,  -16.002907380848),
   Complex::new(   18.798658922559,   -8.909897678113),
   Complex::new(   -9.340116247154,   -1.125951004947),
   Complex::new(    3.688509570515,  -32.689986273951),
   Complex::new(    0.407888797988,   12.869443175340),
   Complex::new(   11.996274048535,   -2.662751606922),
   Complex::new(    7.018158515976,   28.262862824837),
   Complex::new(    7.922722654625,   14.250007388651),
   Complex::new(    2.975237590008,  -10.603333565612),
   Complex::new(    0.455653895495,    1.453939650391),
   Complex::new(   -9.066906825176,   25.796872875146),
   Complex::new(   -0.918183225634,  -10.468224002255),
   Complex::new(   -0.142851335912,   22.780663054656),
   Complex::new(    2.282086213671,   29.891813625626),
   Complex::new(    7.221536839959,    7.770574674805),
   Complex::new(  -37.398067728397,   -1.105557754066),
   Complex::new(  -17.142633714292,    6.118620955162),
   Complex::new(   -6.477664567284,   -7.690396365101),
   Complex::new(   16.982767357512,  -18.131798098394),
   Complex::new(    1.080785945291,   16.906857138491),
   Complex::new(    0.599451587747,   26.081775902564),
   Complex::new(   -0.978816302785,    5.925677319285),
   Complex::new(   10.210787997091,   -9.910196007357),
   Complex::new(  -19.147402098057,   -2.498686289732),
   Complex::new(   21.966256137493,  -22.859882129197),
   Complex::new(  -15.265643040019,   -4.426471861527),
   Complex::new(   12.929479693820,   22.330642231752),
   Complex::new(    2.740221347659,   24.061774049828),
   Complex::new(  -14.562401185320,  -19.628678597306),
   Complex::new(   20.997689192967,    5.792733814018),
   Complex::new(    5.119546713501,    3.964059886246),
   Complex::new(   -1.928221405609,   -6.512384434671),
   Complex::new(   -2.156293329162,    7.753329775994),
   Complex::new(   -3.573953149890,   -9.239991326571),
   Complex::new(  -13.630949945730,   -8.106005746278),
   Complex::new(   12.825262070728,   -4.660266138913),
   Complex::new(   -1.891349427851,    9.400617516536),
   Complex::new(  -18.076150879307,   22.373408216149),
   Complex::new(  -15.956268983268,  -21.975317374526),
   Complex::new(    0.164201332756,   24.388112510894),
   Complex::new(   -4.597078387934,    7.039522987551),
   Complex::new(  -12.697120797033,    9.467372419639),
   Complex::new(    0.666493946055,   16.398714904237),
   Complex::new(   14.501434995333,   -1.201151824518),
   Complex::new(   -5.674281705139,    5.888174371162),
   Complex::new(  -20.163201241601,   -1.818438322864),
   Complex::new(  -30.219423076971,  -13.719313314399),
   Complex::new(  -13.990403694826,    2.714807784298),
   Complex::new(   11.250768761115,    3.628822569150),
   Complex::new(   -0.733728572049,    2.948828784375),
   Complex::new(   -3.826671819253,    4.571602216696),
   Complex::new(   23.522991447544,   -2.821207413423),
   Complex::new(    5.182638636295,   -2.280239804828),
   Complex::new(  -14.978530389737,   34.007674915178),
   Complex::new(   12.067946114665,   -7.231592873495),
   Complex::new(  -18.036308190888,   -1.167944458385),
   Complex::new(  -14.570445828147,   33.703221498009),
   Complex::new(  -14.355007896334,    8.624163479423),
   Complex::new(  -12.522417307559,    2.964999959389),
   Complex::new(    1.285831266251,   17.486913574970),
   Complex::new(  -18.400444537057,   10.275105944079),
   Complex::new(  -10.798107010917,   -9.398928074828),
   Complex::new(   -3.735870933695,   -3.928195596167),
   Complex::new(  -28.347786532915,   -4.087804201121),
   Complex::new(   22.446246894740,   -3.314141727023),
   Complex::new(  -12.595391479166,  -20.525839403734),
   Complex::new(  -28.712938572605,   -6.003936755853),
   Complex::new(   28.019514492138,  -30.082449455145),
   Complex::new(  -11.209466775921,   26.443062244454),
   Complex::new(    1.207579305184,   15.519647647646),
   Complex::new(   -4.037012632720,   -7.499501325179),
   Complex::new(   10.741743378262,   10.026834979238),
   Complex::new(   18.870849049565,   11.960677218574),
   Complex::new(    5.853418449079,   -7.462260554939),
   Complex::new(    4.335224360674,    3.129860437677),
   Complex::new(   12.605242126520,    4.554248036599),
   Complex::new(  -16.969702130369,  -29.534520407430),
   Complex::new(   -6.120705955107,   -4.482591730189),
   Complex::new(  -12.926535006552,   -1.874171675105),
   Complex::new(   14.665201057893,   -1.128035925962),
   Complex::new(   24.051538767781,  -15.958257482748),
   Complex::new(   19.820057240718,  -22.152759047970),
   Complex::new(  -24.058042894391,   13.729789221856),
   Complex::new(   19.182753493650,   -1.045899761274),
   Complex::new(    7.427878004795,  -14.645722900400),
   Complex::new(    0.354829774210,  -28.351378771571),
   Complex::new(   -0.079617808212,    3.973765307882),
   Complex::new(   -0.956500599215,  -15.489797280577),
   Complex::new(    0.762491009085,  -25.453122941666),
   Complex::new(  -11.840853996701,   12.962212817110),
   Complex::new(   35.495866538641,    9.686565151838),
   Complex::new(   -0.038469688004,    4.392742866312),
   Complex::new(  -19.123338054473,    2.775599118392),
   Complex::new(  -11.096274610813,    9.852185716742),
   Complex::new(   15.297635548840,  -11.871123303123),
   Complex::new(  -20.554975892285,    3.876667437210),
   Complex::new(   35.623881203832,   -7.111604836972),
   Complex::new(   -6.116783490647,    6.858127980009),
   Complex::new(    7.214111046309,   -6.503534651808),
   Complex::new(   13.222866709925,   14.222914198476),
   Complex::new(    7.177684846410,    4.449199979110),
   Complex::new(    8.704887882540,   13.440615520893),
   Complex::new(    3.880333256992,  -21.379125009121),
   Complex::new(    7.048477459126,   -5.798390953651),
   Complex::new(   -2.887754540526,    0.926387706089),
   Complex::new(   -4.738508647891,    1.592531834771),
   Complex::new(  -29.140442148645,    1.326408413819),
   Complex::new(  -17.686809708344,    9.306299214767),
   Complex::new(  -11.287941537086,   18.573964519700),
   Complex::new(  -14.430331062949,   20.500648002089),
   Complex::new(    5.833514963456,   -0.787459203485),
   Complex::new(    6.996874871331,    4.372973087460),
   Complex::new(   10.606258817386,  -15.371196814824),
   Complex::new(    7.173199494850,   -3.739254103514),
   Complex::new(    0.650868123207,    1.129252104053),
   Complex::new(    2.934818232673,  -15.452697731691),
   Complex::new(    5.965230433753,   25.063178506013),
   Complex::new(   23.622843424435,   -9.618416072703),
   Complex::new(    7.156185469219,    3.585963809070),
   Complex::new(   -5.732158086481,  -13.452361329340),
   Complex::new(   -9.590479206366,   -9.053169128213),
   Complex::new(    2.000269872570,   -9.513605072784),
   Complex::new(   11.315627899677,   22.817996942644),
   Complex::new(   12.413894814140,   13.626175038709),
   Complex::new(   29.172874942325,    1.484706508481),
   Complex::new(    0.015766090270,    4.368571218197),
   Complex::new(   15.563774953007,    4.894512943893),
   Complex::new(  -11.842691536265,   35.592965762670),
   Complex::new(  -12.994473369362,    2.698888313132),
   Complex::new(    8.754669228150,   11.235443005907),
   Complex::new(  -10.328265749913,    2.323163803747),
   Complex::new(  -13.439572075998,   13.889640848681),
   Complex::new(   -3.977518922953,    0.690204512797),
   Complex::new(  -10.800653995412,   -6.554357023667),
   Complex::new(  -11.525124988298,  -20.660565069742),
   Complex::new(   19.162721444200,    9.408214211732),
   Complex::new(   -0.088361438150,   -0.665881998403),
   Complex::new(  -18.557501816859,  -12.065202621962),
   Complex::new(    8.534483256201,    9.270859667546),
   Complex::new(   10.095451307996,  -11.066538969502),
   Complex::new(  -21.844145113512,  -28.094981179422),
   Complex::new(  -19.202996015641,    7.054377546211),
   Complex::new(  -15.529186020599,    7.476299951687),
   Complex::new(  -18.157842430552,   -5.316780213393),
   Complex::new(   -5.293208686973,   -3.663831551237),
   Complex::new(   10.661425533836,   11.243445036012),
];

pub const FFT_TEST_X317: [Complex<f32>; 317] = [
   Complex::new(    0.554097588235,    0.674837317416),
   Complex::new(    0.530737753317,   -0.079409691311),
   Complex::new(    0.132225792019,   -2.683942671459),
   Complex::new(   -0.433831796385,   -0.644436889896),
   Complex::new(    0.531193579547,   -0.234132120154),
   Complex::new(    0.372970050685,    0.234590738463),
   Complex::new(    0.469189910453,    1.347839137560),
   Complex::new(    1.407357556116,   -0.732654574714),
   Complex::new(   -0.892419998715,    1.232301421325),
   Complex::new(   -2.097695896055,    0.374300022370),
   Complex::new(    0.841647143326,    1.509643189344),
   Complex::new(    2.033126977287,   -0.280107016121),
   Complex::new(    0.436605233661,   -0.542582266432),
   Complex::new(   -0.564143476179,   -1.316474379263),
   Complex::new(    1.205813790177,    0.314460438693),
   Complex::new(   -0.290370012573,   -0.142559201647),
   Complex::new(    0.389754456864,    0.846145131479),
   Complex::new(    1.072733277575,    0.217097105341),
   Complex::new(   -0.530701360675,    0.621669741612),
   Complex::new(   -0.747465971012,   -1.217065085995),
   Complex::new(    0.285811246522,   -0.575506757253),
   Complex::new(    1.731868270921,   -1.695420723201),
   Complex::new(    2.062026927380,   -0.467312976619),
   Complex::new(   -0.238522083883,    0.733481847031),
   Complex::new(    0.962605683108,   -0.932743731262),
   Complex::new(   -0.244109153061,    0.048909057472),
   Complex::new(   -0.521908701077,   -0.335290348825),
   Complex::new(   -0.224377634061,    0.812682493510),
   Complex::new(   -0.808168093175,   -2.606743537297),
   Complex::new(   -0.383229234780,    0.204386340920),
   Complex::new(   -1.604057984500,    0.282386325516),
   Complex::new(    1.123689375175,    0.294576201783),
   Complex::new(    1.045506847212,    0.558518419936),
   Complex::new(    0.444874000589,    0.832776075751),
   Complex::new(    0.381774427538,    0.783400026120),
   Complex::new(    0.591805517099,    0.899143948342),
   Complex::new(    0.995508244414,   -0.835798382940),
   Complex::new(   -2.173146523457,    0.954135191444),
   Complex::new(    2.429109028004,    0.404032043829),
   Complex::new(   -0.642851155627,   -0.253033059825),
   Complex::new(   -0.960201285491,   -0.932974674369),
   Complex::new(    0.052794955676,    0.070183835184),
   Complex::new(   -0.122786042744,    0.417387287207),
   Complex::new(    0.200201640049,   -0.342343750496),
   Complex::new(    0.152601120150,    0.746938165561),
   Complex::new(   -0.720582709452,    1.464296507060),
   Complex::new(    0.286243449065,   -0.356130710199),
   Complex::new(   -0.855441109470,    0.260173089323),
   Complex::new(    1.241960323905,   -1.220424835146),
   Complex::new(    0.410436718259,   -0.915784426815),
   Complex::new(   -0.608754986761,    1.196797063902),
   Complex::new(    0.842595164718,    1.776375320466),
   Complex::new(    0.461313891161,    0.132552548247),
   Complex::new(   -1.038934516657,   -0.503009712801),
   Complex::new(   -0.174516309894,   -1.414963943166),
   Complex::new(   -1.312041533200,    0.350893580013),
   Complex::new(    0.208956667743,   -0.958786287939),
   Complex::new(    0.803660420194,    1.011070131954),
   Complex::new(    2.165017913712,   -1.468093310734),
   Complex::new(    1.129645943719,    0.537365498647),
   Complex::new(   -1.595984272966,   -0.203122161061),
   Complex::new(    1.001865195124,   -1.388137201018),
   Complex::new(    0.824523455412,    0.399895307714),
   Complex::new(    1.390174301291,    2.631574565038),
   Complex::new(   -0.950205283612,   -1.131255194597),
   Complex::new(    1.905487211032,   -0.077934597969),
   Complex::new(    1.003876696894,   -0.060334922974),
   Complex::new(   -0.739566795906,   -0.125966238551),
   Complex::new(    0.638862295532,    0.312440320520),
   Complex::new(    0.812688518156,   -0.687832384174),
   Complex::new(   -0.247460071939,    1.506637100983),
   Complex::new(    1.119835012306,    1.284530437377),
   Complex::new(    0.514075655596,    0.315432575412),
   Complex::new(   -0.556581507109,   -2.240098527759),
   Complex::new(    0.249592136667,    0.505876736625),
   Complex::new(    0.138808728752,   -0.362938299441),
   Complex::new(   -1.295018476090,   -0.498162870507),
   Complex::new(    0.633165144610,   -1.395172629954),
   Complex::new(    0.932960550573,   -0.237180627122),
   Complex::new(    1.661895463725,    0.690503082347),
   Complex::new(    0.333824445072,   -1.788741666587),
   Complex::new(    0.489887999458,   -0.706548054495),
   Complex::new(   -0.548551848905,    0.898884888429),
   Complex::new(   -0.608101416118,   -0.201679435156),
   Complex::new(    0.890886957534,   -0.480205878554),
   Complex::new(   -0.000052987921,    0.753051843488),
   Complex::new(   -2.008688335321,   -0.531405355010),
   Complex::new(    0.178224821311,    0.093166214057),
   Complex::new(   -1.028365245165,   -0.852475963885),
   Complex::new(    0.686303677542,    1.543109809415),
   Complex::new(    1.711982713732,   -0.058899888612),
   Complex::new(    1.120881384941,    0.023773370634),
   Complex::new(    0.452547007139,   -0.345550830853),
   Complex::new(    0.851642145828,    0.918449585078),
   Complex::new(    1.354411836149,    0.053840956523),
   Complex::new(    0.186505302140,    0.455350659118),
   Complex::new(    1.178867803924,    0.561242592990),
   Complex::new(   -0.867274007830,    0.778369347385),
   Complex::new(   -0.763210306046,   -0.056553236256),
   Complex::new(   -0.925493602469,    1.802123360882),
   Complex::new(   -0.381880717193,    0.836790955039),
   Complex::new(    0.740584915503,    0.410451383495),
   Complex::new(   -1.739773756173,   -0.008392421431),
   Complex::new(   -0.927812449353,    0.225621894111),
   Complex::new(    0.291685537968,   -0.631710150727),
   Complex::new(    1.044752342554,   -0.921336822198),
   Complex::new(    0.379926674636,    0.104269280376),
   Complex::new(   -0.747794397492,   -1.586409810217),
   Complex::new(   -0.707471806222,   -3.451349626151),
   Complex::new(   -0.610242217287,   -0.050520690817),
   Complex::new(   -1.141609802996,   -0.450890109498),
   Complex::new(   -0.110600652376,    0.711135784835),
   Complex::new(   -2.154140310955,   -0.464833145767),
   Complex::new(    2.215673027150,    0.378163057373),
   Complex::new(   -0.654346983910,   -0.446467309237),
   Complex::new(    0.054883600089,   -0.699447750344),
   Complex::new(    0.806739839269,    0.085857123252),
   Complex::new(   -1.606523541279,    0.816575059374),
   Complex::new(    0.592874861350,   -0.160053556472),
   Complex::new(   -0.487687814535,    2.062004006591),
   Complex::new(   -0.494854876646,    1.222171460716),
   Complex::new(    1.143598578272,   -0.256116050124),
   Complex::new(    2.400451006261,   -0.615247709498),
   Complex::new(    1.794972603823,    0.061326347413),
   Complex::new(   -1.785033202582,    1.285030637182),
   Complex::new(    0.952408789671,   -0.061111017884),
   Complex::new(    0.045375503932,   -0.337506966204),
   Complex::new(    0.098933506757,    1.552870310423),
   Complex::new(   -0.114562876521,    0.289943289341),
   Complex::new(   -0.283731751338,   -0.946113439136),
   Complex::new(    0.461130821204,    0.048895395259),
   Complex::new(   -1.174095369155,    0.023986190137),
   Complex::new(   -0.098711272023,    0.155133236840),
   Complex::new(    1.644296831488,   -0.763890180558),
   Complex::new(   -0.598417564337,   -0.286264760137),
   Complex::new(    0.526726895394,    1.073518895905),
   Complex::new(   -0.853228628205,   -1.282488324989),
   Complex::new(   -1.020706122357,    0.248901790873),
   Complex::new(    1.313386656293,    1.883626375861),
   Complex::new(   -0.596968080006,    1.198886796626),
   Complex::new(   -1.090527229732,    1.322486318068),
   Complex::new(    0.055643681240,   -1.476648993263),
   Complex::new(   -0.134166277120,    0.538780165850),
   Complex::new(   -0.394194728658,    0.287017836253),
   Complex::new(    0.451499019863,    0.196444291722),
   Complex::new(   -1.227900659262,    0.066951464777),
   Complex::new(    0.281655958102,    0.477082252845),
   Complex::new(    1.584578121348,    2.263167026855),
   Complex::new(   -0.337702889133,   -1.675522983729),
   Complex::new(   -1.262293072370,    0.295093464675),
   Complex::new(   -1.466903736895,    0.492057686013),
   Complex::new(   -1.485463891249,    1.082857775981),
   Complex::new(   -0.275569696975,   -0.635382067043),
   Complex::new(    1.705596337300,    2.104558859516),
   Complex::new(    0.704228406430,    1.560694307633),
   Complex::new(    0.940747890984,    0.080075753674),
   Complex::new(   -0.671195049979,   -0.305225546505),
   Complex::new(    1.351213152915,   -0.159424965469),
   Complex::new(   -0.168781019368,    0.642571757925),
   Complex::new(   -0.431378015911,   -0.017150397606),
   Complex::new(    0.084141441624,    0.021065037620),
   Complex::new(   -0.464340239256,   -0.192995496761),
   Complex::new(   -1.333718595841,   -0.017151207176),
   Complex::new(    1.699781888517,    1.611185583580),
   Complex::new(   -0.413570253776,   -0.044257707528),
   Complex::new(    2.258631378215,   -0.166004542094),
   Complex::new(   -0.465389665786,    0.871749883624),
   Complex::new(    1.029189363291,    0.713498194652),
   Complex::new(   -0.094915760832,   -1.625030317385),
   Complex::new(   -1.232066038521,   -0.607872994844),
   Complex::new(    1.502005331699,   -0.020525271340),
   Complex::new(   -0.683321223012,   -0.293225147764),
   Complex::new(   -0.907670613167,   -0.107969897144),
   Complex::new(    0.462429724200,   -0.775625444256),
   Complex::new(   -1.205101490966,   -0.132384994859),
   Complex::new(   -1.179628062446,    2.189754291494),
   Complex::new(   -0.631509862810,    1.222985676196),
   Complex::new(    0.789563515020,    0.698677701769),
   Complex::new(    1.687609752565,    0.400827580780),
   Complex::new(   -0.645610608306,   -0.014606261491),
   Complex::new(   -1.361740989948,   -0.117827247124),
   Complex::new(    1.314229682964,   -0.603800894199),
   Complex::new(   -1.956380418062,    1.043229034913),
   Complex::new(   -0.801537986631,    2.532651178906),
   Complex::new(   -2.386565797106,   -1.098115563132),
   Complex::new(    0.220407348326,   -1.279188578233),
   Complex::new(   -0.692180379497,    0.560515689944),
   Complex::new(   -0.356604504521,    0.793303202093),
   Complex::new(   -0.159496968171,   -1.294766371488),
   Complex::new(    1.198119217621,   -1.994862046372),
   Complex::new(   -0.568527073111,    0.401071277388),
   Complex::new(    2.987226058138,   -0.073884662975),
   Complex::new(    1.799586418676,   -0.574490253290),
   Complex::new(    0.011347684988,   -0.745307885407),
   Complex::new(    0.729683796427,   -1.060721735894),
   Complex::new(   -1.966760785708,   -0.605669511192),
   Complex::new(    1.142741187156,    0.019297308388),
   Complex::new(   -1.561621247893,   -0.095007722087),
   Complex::new(    0.336572557763,   -0.651058510390),
   Complex::new(    0.040766936719,    1.217219328749),
   Complex::new(    0.200903662048,    0.393373958513),
   Complex::new(   -1.236464108144,    0.541280738924),
   Complex::new(    0.117909377974,   -0.607773139351),
   Complex::new(    0.379616825601,   -0.643186918605),
   Complex::new(    0.643537081891,    0.275436892658),
   Complex::new(    0.225873382688,   -0.158194256053),
   Complex::new(    0.053176096756,    1.458472268368),
   Complex::new(    1.414145044178,   -0.733638770750),
   Complex::new(    1.347289531912,    0.169321860659),
   Complex::new(   -0.840384203303,    0.763005504852),
   Complex::new(    1.214072735988,    1.485891717688),
   Complex::new(   -0.348223438412,    1.020459174171),
   Complex::new(    0.073882541886,   -0.905791314139),
   Complex::new(   -0.705446913782,    0.056186574618),
   Complex::new(   -0.960863041873,   -0.196833332985),
   Complex::new(    1.006218030516,   -0.467774405167),
   Complex::new(    0.602372049969,   -2.674593305127),
   Complex::new(   -0.934722056514,   -0.016922494007),
   Complex::new(    0.257679561629,   -0.885684235693),
   Complex::new(    0.044866947149,    0.936359293985),
   Complex::new(    0.950842198317,    1.868559062575),
   Complex::new(    1.498943799171,   -0.019107821973),
   Complex::new(   -1.868507034816,    0.197524971623),
   Complex::new(    0.970832401725,   -0.074109462719),
   Complex::new(   -2.886469419266,    0.142475981345),
   Complex::new(    1.240964551237,    0.153090872958),
   Complex::new(   -0.000396756859,   -1.046593294557),
   Complex::new(    1.117655103664,    1.647657701398),
   Complex::new(    1.162930856009,   -0.975104959968),
   Complex::new(   -0.934535360620,    0.307953402722),
   Complex::new(   -0.573780565126,   -0.375508524005),
   Complex::new(   -0.103208834185,    2.105768262189),
   Complex::new(   -1.379507684252,   -0.280894989725),
   Complex::new(    0.859242654654,    0.201801911064),
   Complex::new(    0.214128192305,   -0.427748749718),
   Complex::new(    1.559388133754,   -2.233121573297),
   Complex::new(    0.019639327733,    0.360300645061),
   Complex::new(   -0.133932495128,   -0.722680847651),
   Complex::new(    0.863036773382,   -2.922284619456),
   Complex::new(    0.334598761557,   -0.983050027547),
   Complex::new(   -1.077563482460,    0.417379502415),
   Complex::new(   -0.198656810153,    0.569701104618),
   Complex::new(    0.913145816840,    2.052526155977),
   Complex::new(    0.854066622796,   -0.413714533361),
   Complex::new(   -0.414380668765,   -1.405489197548),
   Complex::new(   -1.110627741502,   -1.820107908459),
   Complex::new(   -0.613940194705,    1.779435308312),
   Complex::new(   -2.105251634607,    0.525272681631),
   Complex::new(    0.609098015750,   -0.895402748194),
   Complex::new(    1.934336563550,    0.543860167180),
   Complex::new(   -0.782446497605,    0.641226314552),
   Complex::new(   -0.955134630524,   -0.077175268361),
   Complex::new(   -0.210873574493,   -1.715168716896),
   Complex::new(    1.628059930554,   -1.533301168339),
   Complex::new(   -1.421933758706,   -0.241187651806),
   Complex::new(    2.187891215143,   -0.023407875710),
   Complex::new(    0.548885995861,    0.285435244871),
   Complex::new(    0.674430997216,   -0.481078429799),
   Complex::new(    0.397489182610,   -0.446320110483),
   Complex::new(   -0.865204055951,   -0.020571209344),
   Complex::new(   -0.155857632710,   -1.473838050536),
   Complex::new(   -0.825650581473,    0.501060420785),
   Complex::new(    0.506220809313,    1.124359364738),
   Complex::new(    0.199383983129,    0.552775919340),
   Complex::new(   -0.675785644869,   -0.015515289402),
   Complex::new(    0.347119071389,   -0.046308125867),
   Complex::new(   -0.580411900444,    0.473043358519),
   Complex::new(   -1.073929642005,   -1.146130174539),
   Complex::new(   -1.137495899690,   -1.309784871827),
   Complex::new(    1.171486989096,    1.823857109273),
   Complex::new(   -0.742946853968,    0.049703242746),
   Complex::new(   -0.160432289828,    1.724103887278),
   Complex::new(   -0.546035353551,    0.386968779514),
   Complex::new(   -1.213047883956,   -0.537389928129),
   Complex::new(   -1.339236442910,   -1.248701576327),
   Complex::new(   -0.815367922604,    0.085728302177),
   Complex::new(   -2.349193819868,    0.427831727302),
   Complex::new(   -0.276194199790,    1.234485714534),
   Complex::new(   -0.355231570763,   -0.995816467388),
   Complex::new(    1.137208262430,    0.216271557004),
   Complex::new(    0.962040804090,   -1.065610794498),
   Complex::new(   -0.668324382362,    0.822590130460),
   Complex::new(   -1.202015945307,   -1.480043875470),
   Complex::new(    1.179225549720,    1.767048172045),
   Complex::new(   -0.684123959923,   -0.862865878982),
   Complex::new(   -0.174319873616,    0.167752215701),
   Complex::new(   -1.446536704664,    1.172516467428),
   Complex::new(    0.858114162859,    2.295181364008),
   Complex::new(    0.124270375245,    0.997986406329),
   Complex::new(    0.394906672949,    1.154862665198),
   Complex::new(    1.053903228740,    1.779817113028),
   Complex::new(   -0.230950556520,   -0.175979989611),
   Complex::new(   -1.265383803223,   -0.026310311336),
   Complex::new(    0.762972265227,    1.429231386216),
   Complex::new(    1.162409662447,   -1.112322698285),
   Complex::new(    0.775539802471,   -1.323064642721),
   Complex::new(    0.666613966503,   -0.129946108336),
   Complex::new(    1.930414467502,    0.436695033239),
   Complex::new(    0.885068429064,    0.115321831962),
   Complex::new(    1.551024374006,    0.416463074882),
   Complex::new(    0.247974255137,    0.627306468118),
   Complex::new(    0.781609286510,    0.378212834621),
   Complex::new(    0.332343800329,    0.539122959506),
   Complex::new(    0.519709930109,   -1.064947224271),
   Complex::new(   -0.635850608190,    1.257862397877),
   Complex::new(    1.628515077193,   -1.103666746889),
   Complex::new(   -0.849325965524,   -1.767990899186),
   Complex::new(    0.743956616560,   -2.505409755963),
   Complex::new(    0.830498883146,    0.057323145873),
   Complex::new(   -1.470980958211,   -1.558079958147),
   Complex::new(   -0.088063460329,    0.426467567974),
   Complex::new(   -0.219298752127,   -0.711676070690),
   Complex::new(   -0.283866135348,    1.254036523517),
   Complex::new(   -0.254391988290,    0.215410095075),
   Complex::new(   -0.590092311740,   -1.507631350024),
   Complex::new(   -1.535360519901,   -0.437319427483),
   Complex::new(    1.026878345705,   -0.182042614613),
];

pub const FFT_TEST_Y317: [Complex<f32>; 317] = [
   Complex::new(   19.891894947904,    5.655090929781),
   Complex::new(   18.838569316919,  -27.216365987549),
   Complex::new(  -11.140787864820,   -1.700693291107),
   Complex::new(    9.248191980131,  -11.880625755527),
   Complex::new(    0.877433246927,    5.210710512463),
   Complex::new(   12.613756002695,  -22.914829471885),
   Complex::new(   -7.522954808149,    2.580642036625),
   Complex::new(  -24.806396396859,   14.114587974426),
   Complex::new(    9.875249841730,  -22.004495722041),
   Complex::new(  -18.222931551932,    2.572927350772),
   Complex::new(   20.867583356509,   -1.458843546852),
   Complex::new(   38.916192529134,   -7.826129128685),
   Complex::new(  -19.618271263978,  -21.217111192894),
   Complex::new(    0.549362128526,   18.584275483073),
   Complex::new(   -5.258299327834,   -0.446452119776),
   Complex::new(   -6.830532675831,  -35.800356213084),
   Complex::new(   16.124101912097,   -2.387751210287),
   Complex::new(   19.602770799308,  -18.449258115561),
   Complex::new(   -4.933124103618,    8.281766183665),
   Complex::new(  -13.560383009984,    0.970618524872),
   Complex::new(   41.610229013366,    5.152249379736),
   Complex::new(    1.415309104711,   11.210809107531),
   Complex::new(  -40.441003535705,  -12.405906077032),
   Complex::new(  -12.530216678354,   22.864679881966),
   Complex::new(  -29.573667819723,  -22.154070735316),
   Complex::new(   -8.933348019353,  -25.720405793092),
   Complex::new(   -3.072833505067,   16.874820762270),
   Complex::new(   -8.751051523099,   -9.544252802963),
   Complex::new(   19.619902222112,  -22.765558912475),
   Complex::new(    3.204939906092,  -25.426020065167),
   Complex::new(  -18.600493227238,    2.762236432333),
   Complex::new(   10.833867918922,  -38.070397977737),
   Complex::new(   25.869914191964,  -19.192002503531),
   Complex::new(   12.052348942398,   -1.338816803484),
   Complex::new(  -38.656067918699,  -24.135381967263),
   Complex::new(    5.700781235700,   11.219859126000),
   Complex::new(  -23.338619501120,   32.607593688928),
   Complex::new(  -10.686035441793,   16.337999228208),
   Complex::new(   -9.517260831300,   17.469953582495),
   Complex::new(   11.452433021422,   -2.244848000851),
   Complex::new(    3.355159985201,   -0.950021809091),
   Complex::new(   11.960645612996,    6.893274528846),
   Complex::new(    9.585251410761,   10.141135223678),
   Complex::new(   -7.050051336892,   27.613088292755),
   Complex::new(    7.367552651770,   -6.006047409882),
   Complex::new(   19.902478672101,  -16.730550563777),
   Complex::new(   32.759288191850,    1.162079163303),
   Complex::new(  -10.679222098466,   -0.414496389670),
   Complex::new(  -17.167648316558,   13.231819142930),
   Complex::new(  -15.270670234876,   12.750590771914),
   Complex::new(    7.808635317834,   -1.976327148026),
   Complex::new(    3.659364354893,   12.967348190608),
   Complex::new(    8.516191035487,   -3.814776057042),
   Complex::new(   -2.967686164798,   -2.759276437723),
   Complex::new(  -10.217022770046,   22.446524490020),
   Complex::new(  -13.759629399132,    0.428077429397),
   Complex::new(   12.108694472460,   17.906136235301),
   Complex::new(    0.500310973628,   10.379459504754),
   Complex::new(   22.170113416067,  -17.601071337137),
   Complex::new(   -4.547207763897,   13.535378900333),
   Complex::new(   35.073898289289,   -3.750408416097),
   Complex::new(   12.960162045071,  -10.329236328497),
   Complex::new(    5.155047938611,   11.233862622741),
   Complex::new(  -19.366076595616,    3.290152177759),
   Complex::new(   -2.547983907745,   -4.318523679571),
   Complex::new(   13.079902614417,  -31.788319997011),
   Complex::new(   -0.294946700028,   20.014494355305),
   Complex::new(   18.602791112148,   -1.875890460773),
   Complex::new(  -13.396328282272,    9.288327370031),
   Complex::new(   -3.117158916891,    2.544747297232),
   Complex::new(   14.226131115223,   17.462152594662),
   Complex::new(  -19.578473387664,   34.411911283259),
   Complex::new(   -6.579019542175,    1.022001674347),
   Complex::new(   30.972194959263,   -8.350211186911),
   Complex::new(  -23.959086942588,   -4.745490152344),
   Complex::new(   18.433629972547,   33.672506545950),
   Complex::new(   -3.583025093477,   29.006005065761),
   Complex::new(   -3.421689832344,   -6.516619591564),
   Complex::new(   17.468290088683,   14.351378688148),
   Complex::new(  -20.170011170114,  -44.394817543067),
   Complex::new(  -13.150516148634,   45.749703126153),
   Complex::new(   -6.345962437499,    5.896690541701),
   Complex::new(   -3.508737698320,   25.459472943049),
   Complex::new(   -9.590464636095,  -37.162638669309),
   Complex::new(   -7.707872774343,   -4.065042502767),
   Complex::new(    4.310656075828,   55.425516805330),
   Complex::new(   -8.841697395726,    7.827822742296),
   Complex::new(    6.538079696486,   18.790190957680),
   Complex::new(    3.052383346750,  -35.409567370640),
   Complex::new(    6.790218518127,    6.485107042363),
   Complex::new(   -1.939520400173,    9.749487460014),
   Complex::new(   27.335153513982,  -28.544990200718),
   Complex::new(    1.310416901033,   -3.384377012660),
   Complex::new(   39.882940481275,   -2.284359214074),
   Complex::new(   10.547528262920,  -12.560415251324),
   Complex::new(  -39.735255177309,   13.592975359455),
   Complex::new(  -15.339971072116,  -16.475578099072),
   Complex::new(   17.033232877918,    3.802866771597),
   Complex::new(   28.013870016133,    2.419611488016),
   Complex::new(   -2.265805112454,    0.312114751003),
   Complex::new(  -33.149667339304,  -13.689695655857),
   Complex::new(   17.388116065076,    0.542000357078),
   Complex::new(   24.899620116312,  -12.668755714836),
   Complex::new(    4.917415611451,   -9.932194848538),
   Complex::new(  -11.738607295144,   -8.914945728892),
   Complex::new(  -19.712014537454,   22.399807137247),
   Complex::new(    5.053485084584,   17.298193889941),
   Complex::new(   -7.079518754159,   17.581889100321),
   Complex::new(  -10.281582568059,    8.089169898931),
   Complex::new(    1.422571832929,    3.080323599470),
   Complex::new(    8.605408612244,   -3.487094722779),
   Complex::new(  -11.890704936363,    9.663054150701),
   Complex::new(    9.768366151498,   15.851583190991),
   Complex::new(   15.643908708786,   -4.022026320351),
   Complex::new(  -23.153672099048,   27.718041721476),
   Complex::new(  -10.673968698682,   -2.656942822276),
   Complex::new(   -3.084198946373,    5.011470019270),
   Complex::new(   30.294417286976,   -0.649680240512),
   Complex::new(    9.336689517258,  -15.513350621571),
   Complex::new(   -0.332156127181,    9.028518696767),
   Complex::new(  -18.028373273009,    0.865624445339),
   Complex::new(   18.478442253114,   -4.603304072176),
   Complex::new(  -23.690660760663,   23.776870282847),
   Complex::new(   15.985913856353,   -2.839961425057),
   Complex::new(    1.572606311668,  -19.612416936799),
   Complex::new(   16.810087235424,    0.199177019879),
   Complex::new(  -15.975160985564,    6.532163069799),
   Complex::new(  -32.272173936218,  -31.217876380070),
   Complex::new(   15.826696571154,   18.609590632164),
   Complex::new(   47.902645387609,   17.126787301492),
   Complex::new(   -2.541073313860,   14.418504375704),
   Complex::new(   14.540095561207,   20.121389424019),
   Complex::new(   26.277876001597,   -3.644634538637),
   Complex::new(   -2.512888880479,  -30.538233732588),
   Complex::new(   16.529338657188,   22.345368961768),
   Complex::new(   -1.812032422371,  -34.161479691113),
   Complex::new(   -0.453702679159,   -6.380888555304),
   Complex::new(   -3.152766309700,  -11.666085457234),
   Complex::new(  -11.122245781125,  -11.927016012323),
   Complex::new(   36.608207324428,   15.883213693451),
   Complex::new(   -7.991006509076,   50.985368963626),
   Complex::new(    4.226949261924,    1.424207754420),
   Complex::new(   17.463446429822,    6.779880329142),
   Complex::new(   -3.489655564559,    0.384578586369),
   Complex::new(   -5.888919363255,   -5.109974862115),
   Complex::new(   -7.227459554733,   29.423681452522),
   Complex::new(   -5.599219759541,  -23.600754528481),
   Complex::new(   -1.449537808914,   -5.756622299277),
   Complex::new(  -19.475712102355,  -23.900197536654),
   Complex::new(  -21.448274996924,   26.188122613033),
   Complex::new(  -29.449414779539,    4.514251604734),
   Complex::new(    0.711130838156,    9.386706325613),
   Complex::new(   -4.964574769823,    3.355702966205),
   Complex::new(  -69.341381991121,  -15.186662242307),
   Complex::new(   -9.570125543135,  -19.565859787554),
   Complex::new(  -10.294086283004,    8.398169381304),
   Complex::new(   -1.885058572468,   -6.759464252726),
   Complex::new(   27.070270898380,   -0.178665040288),
   Complex::new(   47.866947417745,  -31.409630574884),
   Complex::new(   -8.921385543048,   26.098382682234),
   Complex::new(   -2.790785416910,    9.787980555385),
   Complex::new(  -11.714395450184,    2.331009478742),
   Complex::new(  -15.110851454222,  -16.495034888485),
   Complex::new(    4.191147002221,   12.009574674807),
   Complex::new(   13.441299656087,   -6.566453769009),
   Complex::new(   37.589069138284,   -3.493855465671),
   Complex::new(   12.583644012597,   15.635478070296),
   Complex::new(  -10.233844300260,   -2.537026190645),
   Complex::new(   32.544552127969,   -9.371296682693),
   Complex::new(    5.840669998388,   -0.465346273045),
   Complex::new(  -32.889192462170,  -18.684446717050),
   Complex::new(  -15.105348929262,    9.854947012189),
   Complex::new(    2.561152455963,  -17.413141080242),
   Complex::new(   13.746092833724,   -1.220057764138),
   Complex::new(  -23.803933926504,   19.459415272545),
   Complex::new(   13.809596770429,  -10.104944386386),
   Complex::new(   -8.303454415515,    8.117739395766),
   Complex::new(    6.133097727305,   -1.569418595484),
   Complex::new(   -8.760751262525,  -27.389777662710),
   Complex::new(   10.131599125171,    6.687127259801),
   Complex::new(  -25.519018101480,   18.199522992831),
   Complex::new(  -13.233035001671,   -6.395819934405),
   Complex::new(   11.700095411690,  -15.584918347062),
   Complex::new(   18.906883235021,   -7.460982609320),
   Complex::new(  -17.459921203210,    1.804228941706),
   Complex::new(   12.317579017635,   10.356522098016),
   Complex::new(   26.023982632040,   -7.991255808237),
   Complex::new(  -37.779207166301,   -2.527619516503),
   Complex::new(  -16.084376241401,  -20.612256188135),
   Complex::new(   -6.114349663136,  -23.064645190863),
   Complex::new(   -2.116498608238,   50.021918384600),
   Complex::new(   -7.117672685723,   -8.176883387504),
   Complex::new(   -5.412565357343,   22.014215119309),
   Complex::new(    6.088100003823,  -14.490088332571),
   Complex::new(  -23.952484213391,   -6.311185058243),
   Complex::new(  -41.692266879065,  -16.754070143984),
   Complex::new(   15.044401210058,    3.664913601471),
   Complex::new(  -33.750320820834,   36.019579795022),
   Complex::new(   13.347039200739,  -32.112552097269),
   Complex::new(  -15.461626675606,   23.718105709185),
   Complex::new(  -12.296412987482,   11.603712083795),
   Complex::new(   -5.811459938628,   -7.925008172416),
   Complex::new(   -1.192572683531,  -17.231195267270),
   Complex::new(  -20.865176875222,  -31.216074954599),
   Complex::new(  -28.168417257904,   -6.162171521961),
   Complex::new(   14.071723863194,  -13.359093220787),
   Complex::new(  -10.855751735127,   -2.119685075188),
   Complex::new(   10.100698435956,   -0.047663624125),
   Complex::new(  -16.742422653794,  -24.530696829578),
   Complex::new(    4.000721417241,   -9.851748070066),
   Complex::new(   13.784754826511,   11.502447326859),
   Complex::new(   24.102575046761,    1.552286673184),
   Complex::new(    6.070752306643,   -4.812888456253),
   Complex::new(   -5.300318786685,   -5.773884122203),
   Complex::new(    4.177402715108,    4.644324663894),
   Complex::new(  -34.005084599492,   24.853411330269),
   Complex::new(   -4.077672998994,    2.001774715846),
   Complex::new(  -21.978658258889,  -16.888801388499),
   Complex::new(   16.217687213434,   24.308462530919),
   Complex::new(    9.698665151728,  -11.152518442318),
   Complex::new(   -0.713578550754,   -0.408153703877),
   Complex::new(  -13.404489453311,  -13.338812872852),
   Complex::new(   12.438700016349,   34.570234225070),
   Complex::new(   -9.926721954129,    6.906926926113),
   Complex::new(   34.152883393921,   32.217622455379),
   Complex::new(   18.232286791872,   37.874687752978),
   Complex::new(   12.000459208850,   -4.948870303603),
   Complex::new(  -32.687697613521,  -14.030824660001),
   Complex::new(    9.549264725873,  -11.955689902942),
   Complex::new(   14.839058751293,  -31.933475859189),
   Complex::new(  -14.754140603346,  -24.878350781691),
   Complex::new(   10.712939318393,   -5.996862342613),
   Complex::new(  -17.907934788390,    6.090055602127),
   Complex::new(   36.124946787489,   -5.830186488894),
   Complex::new(    8.800236613602,   -2.072057513781),
   Complex::new(    3.437540103841,    0.664749616099),
   Complex::new(   31.950715457487,   -0.220151294656),
   Complex::new(   -0.045173525280,   19.196581987850),
   Complex::new(    1.870859081457,  -31.599244764015),
   Complex::new(    0.209529336033,    0.187035118051),
   Complex::new(  -20.188770724804,   -1.836423923991),
   Complex::new(   -0.878467583840,   20.234622217282),
   Complex::new(   -2.102494717199,   -2.913862105328),
   Complex::new(  -12.424351209312,   16.006770035694),
   Complex::new(    4.029466210003,   -4.407643696893),
   Complex::new(    5.945482525641,    6.202857230453),
   Complex::new(  -10.003725089675,   12.495974119472),
   Complex::new(  -30.517926092302,  -12.650897630264),
   Complex::new(    4.362955303417,  -12.091129699738),
   Complex::new(   16.312617526910,   33.224889607577),
   Complex::new(   -7.191052604298,   20.407651857657),
   Complex::new(   20.796924916343,   -6.364968926767),
   Complex::new(  -12.625716653882,   13.205109334295),
   Complex::new(    8.088234917787,    7.824060551408),
   Complex::new(    1.922368898588,   47.121922176668),
   Complex::new(  -22.856735196688,   24.367218386007),
   Complex::new(   -7.383851526948,   16.988073661561),
   Complex::new(   44.161092935665,   -5.907735807977),
   Complex::new(   21.472541358807,  -13.144261767738),
   Complex::new(  -11.542368964090,   15.544417175199),
   Complex::new(   27.503706468722,  -11.522885641815),
   Complex::new(   47.558932357808,    7.448305631246),
   Complex::new(   11.766347399663,   19.611745304561),
   Complex::new(    9.190381176578,   15.613955528574),
   Complex::new(    4.579716108010,  -19.097122607568),
   Complex::new(    8.259625237826,    5.225672702106),
   Complex::new(  -29.407167921996,    2.730538989362),
   Complex::new(   28.823600196176,   29.176827923246),
   Complex::new(    7.192706095305,  -13.060381105412),
   Complex::new(   25.710478454828,    0.151963358956),
   Complex::new(    2.912008664120,  -30.634293042262),
   Complex::new(  -18.887195071024,   24.458778149068),
   Complex::new(  -11.270981360031,   36.740254138082),
   Complex::new(  -27.910677769149,  -46.983604943585),
   Complex::new(   28.541376587410,  -11.613642790751),
   Complex::new(    4.477974452509,   19.232597353019),
   Complex::new(   -4.293520064043,   21.064976071666),
   Complex::new(  -35.598030786598,   22.993609231670),
   Complex::new(   15.465979612020,   -7.083850274044),
   Complex::new(  -20.864435551224,  -11.252291347107),
   Complex::new(   -8.098484900823,   15.454651546399),
   Complex::new(    7.922777952587,  -23.004986313444),
   Complex::new(    5.362453523073,   -0.810615362821),
   Complex::new(   23.691538716715,    5.018112888735),
   Complex::new(   -0.840977210667,    5.291230447587),
   Complex::new(  -14.732575553595,    5.007945078325),
   Complex::new(   11.153523811020,    9.041741420055),
   Complex::new(   10.332014628129,  -19.924730861837),
   Complex::new(  -14.993931961657,   31.489106362903),
   Complex::new(   18.595068458053,  -35.418285443670),
   Complex::new(   39.450078173463,    1.995244884889),
   Complex::new(   -1.199515997336,  -39.429463141214),
   Complex::new(   32.594746366756,   11.337568560792),
   Complex::new(   12.403678050012,  -21.176744666160),
   Complex::new(    3.346525369966,   -1.001631596928),
   Complex::new(  -19.825849167391,   26.742894636469),
   Complex::new(    4.915352470909,    3.753914873323),
   Complex::new(    8.679746038045,   -3.972380637551),
   Complex::new(   -3.287311421377,   20.200996274143),
   Complex::new(   22.907843859952,    3.994757951688),
   Complex::new(    2.844877291610,   -4.339174940613),
   Complex::new(    4.103872158917,   -8.872001060599),
   Complex::new(   28.989825837444,  -23.300936570044),
   Complex::new(   -7.955654262813,   31.438036806524),
   Complex::new(   -6.389510821525,   -2.868211291181),
   Complex::new(    2.583272449361,  -13.352995160958),
   Complex::new(  -38.239266883463,   23.653429024344),
   Complex::new(    8.079210774309,   23.697861354779),
   Complex::new(  -37.713434701568,    2.799035443775),
   Complex::new(  -26.751551315717,    8.673836408974),
   Complex::new(  -33.613333707208,   -0.367929968698),
   Complex::new(  -14.541161127911,   -5.708211292132),
   Complex::new(   -3.393160511476,  -24.278587890684),
   Complex::new(   26.111359371252,  -28.934022170518),
   Complex::new(   14.009362482345,  -20.358022264859),
   Complex::new(    7.316431660011,   26.887415857021),
   Complex::new(    8.199534997352,   -2.435205163079),
];

pub const FFT_TEST_X509: [Complex<f32>; 509] = [
   Complex::new(    0.359331995889,   -1.085301108776),
   Complex::new(   -1.932383412518,    0.116856180907),
   Complex::new(    0.496271262268,    0.731796541816),
   Complex::new(    0.431573865944,    0.591703481184),
   Complex::new(    0.589253369531,   -0.795072338555),
   Complex::new(   -0.870697944847,   -0.497562617185),
   Complex::new(    1.247223411086,    0.771429589056),
   Complex::new(    0.924873577618,   -1.184353621638),
   Complex::new(    0.659579079487,    0.126294704315),
   Complex::new(    1.647221437368,   -2.249906156787),
   Complex::new(   -1.334652205984,   -0.024425874102),
   Complex::new(    0.095148747858,   -0.284583137620),
   Complex::new(   -2.534039905928,    1.936731699042),
   Complex::new(    0.370565605548,   -0.671454121821),
   Complex::new(    0.382886168067,    0.318205203845),
   Complex::new(   -1.314163630052,    0.381239207410),
   Complex::new(   -0.258334295223,    0.599344826242),
   Complex::new(    1.542372805791,   -0.381018806439),
   Complex::new(   -0.015408662897,    1.208686378191),
   Complex::new(   -3.023761214358,   -0.135651280290),
   Complex::new(   -0.916610967637,    0.884088889046),
   Complex::new(   -2.081046862959,    2.001230452826),
   Complex::new(    1.031862595677,    1.366475262140),
   Complex::new(   -0.259564882667,    0.315307538802),
   Complex::new(    0.161129496712,   -1.667686892086),
   Complex::new(   -1.241250123646,    1.380715267035),
   Complex::new(    0.027019787139,    2.068943431414),
   Complex::new(    0.164488255181,   -0.688316587237),
   Complex::new(    1.114819509678,   -3.008077068837),
   Complex::new(   -1.374358189256,    0.000217799371),
   Complex::new(    1.783814617294,   -0.127391483103),
   Complex::new(    1.648034611975,   -0.251680996856),
   Complex::new(    1.678583258653,    1.974165102901),
   Complex::new(   -0.857815837356,   -3.739419503346),
   Complex::new(    1.227762010986,   -0.496092919671),
   Complex::new(    0.275130781058,    1.160971226357),
   Complex::new(    0.333840127696,    1.388036870908),
   Complex::new(   -0.805343489373,    0.006883877363),
   Complex::new(    0.113234013309,    0.031253576243),
   Complex::new(   -0.610537915176,    0.630710349348),
   Complex::new(    1.397240850777,   -2.014373420814),
   Complex::new(   -0.255790837573,    0.916792397001),
   Complex::new(    0.129924388336,   -0.537587690895),
   Complex::new(   -0.926838068677,    0.308336177664),
   Complex::new(    3.010372178544,   -2.369144950446),
   Complex::new(    1.263300917549,   -1.660219437257),
   Complex::new(    0.841656993731,    1.927041610736),
   Complex::new(   -0.904792064104,   -1.173048767457),
   Complex::new(    0.989814388062,    1.253071554414),
   Complex::new(   -0.257249205993,   -0.959941785447),
   Complex::new(   -1.205852496010,    0.196179577313),
   Complex::new(    1.940909824834,   -2.078512378665),
   Complex::new(    0.300600588979,    0.572506173199),
   Complex::new(   -0.375271364555,   -0.773019164981),
   Complex::new(   -0.858303843109,   -0.674765891031),
   Complex::new(   -1.189090659992,    0.543093004900),
   Complex::new(    2.165334883903,    0.001082499227),
   Complex::new(    2.057289953335,   -0.916206975165),
   Complex::new(   -0.161982761480,   -0.815858087637),
   Complex::new(   -1.390044285564,   -0.714076838951),
   Complex::new(    0.766348194222,    0.076251375781),
   Complex::new(   -0.630967707884,    0.854026208416),
   Complex::new(   -1.309424118846,    0.470225939681),
   Complex::new(    0.664797780343,   -1.109803637533),
   Complex::new(    3.563726896705,    1.370311380835),
   Complex::new(    0.850424444505,   -0.770251870088),
   Complex::new(    0.316880772888,   -0.509312503865),
   Complex::new(   -1.439495581618,   -1.741765587801),
   Complex::new(   -1.095540513740,    0.552478238644),
   Complex::new(   -0.879540480746,   -1.782154665595),
   Complex::new(    1.394922475961,    0.407153930461),
   Complex::new(   -1.583206834198,    0.548532742373),
   Complex::new(   -0.330266310339,    0.821466818961),
   Complex::new(   -1.157454328378,    0.386301239269),
   Complex::new(    0.823214183923,    0.993600792956),
   Complex::new(   -0.665523708393,   -0.143306700746),
   Complex::new(   -2.274210663640,   -0.526858961140),
   Complex::new(    0.675171584769,    1.608754308056),
   Complex::new(    0.067605428754,    0.840683747814),
   Complex::new(    0.927563962378,    0.563153155030),
   Complex::new(   -0.129920407968,    0.614536449089),
   Complex::new(   -0.633778727653,    0.174141369494),
   Complex::new(   -0.579622089160,   -1.179631499150),
   Complex::new(    3.157266013709,    0.841577893721),
   Complex::new(   -1.564968432235,    0.237536721331),
   Complex::new(    0.832675154129,    2.752538330003),
   Complex::new(   -1.003618718524,   -0.803502222719),
   Complex::new(    1.033045390907,   -0.887091010037),
   Complex::new(    0.406299848093,   -0.231522470982),
   Complex::new(   -1.224877731528,    0.962620343882),
   Complex::new(   -0.287856500251,   -0.684348325534),
   Complex::new(    0.769551121775,    1.052171601110),
   Complex::new(    1.211938362349,   -0.397315302619),
   Complex::new(   -1.801171069328,    0.782481239455),
   Complex::new(   -0.428774166115,    0.205654171857),
   Complex::new(    0.742768169350,    1.078779525233),
   Complex::new(   -0.760778783880,   -0.392123510805),
   Complex::new(    0.530474251890,    0.355891481054),
   Complex::new(    1.455692020840,    0.275438176816),
   Complex::new(   -0.256274791959,   -1.055463927568),
   Complex::new(    1.397683977888,   -1.672842861191),
   Complex::new(    1.059395488056,   -1.195826863369),
   Complex::new(    0.535641711388,   -0.139593755691),
   Complex::new(    0.767194249054,    1.159606442946),
   Complex::new(    0.730248752053,    0.874096637495),
   Complex::new(    0.374817248354,    0.381042720649),
   Complex::new(   -1.290660859871,   -1.052408951473),
   Complex::new(   -0.698710060780,   -0.404862720632),
   Complex::new(    0.260762012984,   -0.586144943477),
   Complex::new(    0.471825306906,    0.216309496806),
   Complex::new(    0.902145392649,    0.734793058179),
   Complex::new(    0.970712066057,    1.203301629983),
   Complex::new(    0.697414298916,   -0.091399436653),
   Complex::new(   -0.763151612464,   -0.155822503488),
   Complex::new(    0.571013025643,   -0.991520969075),
   Complex::new(    0.488145846303,    0.518072470835),
   Complex::new(    0.382903596789,   -0.570642408749),
   Complex::new(   -0.068409602398,   -0.457729632233),
   Complex::new(    0.328633596900,   -0.485642431490),
   Complex::new(    1.463236532852,   -0.689222532447),
   Complex::new(    0.843726237994,    1.027737725483),
   Complex::new(    0.411174457800,    1.072703354585),
   Complex::new(   -0.553638496687,    0.592560929746),
   Complex::new(   -0.519820674211,    0.395335990219),
   Complex::new(    0.816739721990,    1.296561601952),
   Complex::new(    0.839055358910,    0.038232944058),
   Complex::new(   -1.321845319423,    2.461463566622),
   Complex::new(   -1.244535108317,   -0.855331739033),
   Complex::new(    0.174834515541,   -0.236103345803),
   Complex::new(   -0.817712897113,    0.503960726952),
   Complex::new(   -0.723518973851,    0.751673530926),
   Complex::new(   -0.189283180062,    0.644019002779),
   Complex::new(    0.237729751553,    0.335607912526),
   Complex::new(   -0.969216001025,   -0.603266829416),
   Complex::new(   -0.207478679057,   -0.730339402811),
   Complex::new(   -0.024191569913,   -1.259252874185),
   Complex::new(    1.472785074216,   -0.491418040669),
   Complex::new(    0.143580527900,   -1.186038294726),
   Complex::new(    0.835958076660,    1.651209544972),
   Complex::new(   -1.330070431715,    0.745655269480),
   Complex::new(   -2.351132556248,    1.414206325062),
   Complex::new(   -0.647960722564,    0.019824747070),
   Complex::new(    0.054504089094,   -0.434505484307),
   Complex::new(   -1.069009000323,    0.930859192631),
   Complex::new(    2.256466805965,    0.677754214770),
   Complex::new(   -1.017788464214,    0.299270915482),
   Complex::new(   -1.350006249149,    0.860365863370),
   Complex::new(    0.554243078961,    1.630321512911),
   Complex::new(   -1.709590344454,   -0.169567705711),
   Complex::new(    0.650774374311,    0.064592934208),
   Complex::new(    1.989755256430,    0.536482018456),
   Complex::new(   -0.373249333538,   -0.106134582591),
   Complex::new(    0.095351627343,   -0.279297038594),
   Complex::new(    0.230789928160,    0.532796285505),
   Complex::new(    0.247854968690,   -2.153358768182),
   Complex::new(    0.136098798048,    1.135668579132),
   Complex::new(   -0.208329927938,    0.789350627066),
   Complex::new(    0.039858273209,   -0.599940553834),
   Complex::new(   -0.117101531764,    0.201275502180),
   Complex::new(    0.817971264476,   -1.329760648517),
   Complex::new(    0.035980481979,   -0.922818951948),
   Complex::new(   -1.888935382734,   -1.797450884362),
   Complex::new(   -0.097016985104,   -1.168628933267),
   Complex::new(    0.452048304507,   -0.675116763083),
   Complex::new(   -1.209707805549,    0.172148052410),
   Complex::new(    1.432472352322,    0.632406226221),
   Complex::new(    2.933280640140,    0.949590441066),
   Complex::new(   -0.309024453832,    1.192611727581),
   Complex::new(   -0.255306372880,    0.007559617013),
   Complex::new(    0.081653931435,   -0.672920464273),
   Complex::new(    0.405276164696,   -0.077841212841),
   Complex::new(   -0.338396874520,    0.355225122224),
   Complex::new(    0.109601214660,    1.392547443330),
   Complex::new(   -1.871393476572,    0.310989021924),
   Complex::new(    0.332233956611,    1.730122993833),
   Complex::new(    1.439926026777,   -1.611064773734),
   Complex::new(   -1.860778448552,    0.425384165779),
   Complex::new(    0.274648666779,    1.286600320037),
   Complex::new(    0.762615580678,   -0.222402755827),
   Complex::new(    0.426513801822,    1.965805792967),
   Complex::new(   -0.103171697634,   -0.569960476279),
   Complex::new(    1.562067509000,   -2.347766792543),
   Complex::new(    0.467044769684,    0.321342630659),
   Complex::new(   -1.416578640685,   -0.831113210732),
   Complex::new(   -0.733167805614,    1.176375168746),
   Complex::new(   -1.282613845051,   -0.979773114694),
   Complex::new(    0.506103347478,   -1.085270279646),
   Complex::new(    2.539137831319,    2.232625718408),
   Complex::new(   -1.637899545016,    0.265528606195),
   Complex::new(   -1.931767882639,    0.329066225098),
   Complex::new(    0.127023806083,    0.504962043815),
   Complex::new(    0.588353928765,   -1.463911658760),
   Complex::new(    0.907010785485,   -0.108879037057),
   Complex::new(   -0.951802902717,   -0.685757383062),
   Complex::new(    1.723143501154,   -0.419300229480),
   Complex::new(   -0.943119843417,    0.652144368853),
   Complex::new(   -0.851586780301,   -1.516257192307),
   Complex::new(    0.472227887604,    1.052236419944),
   Complex::new(    0.113888251161,   -1.124587148028),
   Complex::new(    0.051529667469,   -0.136410527640),
   Complex::new(   -0.647857223628,    0.431204980149),
   Complex::new(    1.349209612218,   -0.768179692308),
   Complex::new(   -0.026826971021,   -0.545234111539),
   Complex::new(   -0.514071604921,   -0.664124619949),
   Complex::new(    0.320778745077,    1.111997835236),
   Complex::new(   -0.232562962611,   -0.669159856913),
   Complex::new(   -0.896014800467,    0.082046851667),
   Complex::new(   -0.167690950519,   -1.119443226265),
   Complex::new(   -0.433053084055,   -0.204133858571),
   Complex::new(   -1.567141147453,   -0.972571871430),
   Complex::new(   -1.040971048402,    0.473975308345),
   Complex::new(   -1.551423307502,   -0.934406696693),
   Complex::new(    1.267729903934,    2.062089282704),
   Complex::new(   -0.814068862944,   -0.268491284145),
   Complex::new(    0.721715833176,   -0.368317000932),
   Complex::new(   -0.236677967201,   -1.031498627296),
   Complex::new(   -0.027596539058,   -0.526943246450),
   Complex::new(    0.607765602666,    0.747238787304),
   Complex::new(    0.442222664332,   -0.844428479402),
   Complex::new(   -0.584746227099,    0.008876873310),
   Complex::new(    0.249251666407,    1.120945916837),
   Complex::new(    0.406090989317,   -0.832304494623),
   Complex::new(   -1.420792340638,    0.417700569682),
   Complex::new(    0.469433523536,   -0.703036988315),
   Complex::new(    0.799192929845,    0.584252218542),
   Complex::new(   -0.846345284557,   -0.125059394154),
   Complex::new(    0.187771816466,    0.373470766869),
   Complex::new(   -2.668531322148,    0.189825888614),
   Complex::new(    0.684689436275,    1.519032618934),
   Complex::new(   -0.452797714368,    1.843053037274),
   Complex::new(   -0.614449241246,   -0.006236652039),
   Complex::new(    0.929289964606,    0.965819481866),
   Complex::new(    0.800433661968,    0.829558429420),
   Complex::new(   -1.088281420026,   -0.801332579437),
   Complex::new(   -0.080346758942,    0.412114096369),
   Complex::new(    1.491530334351,   -0.037720112002),
   Complex::new(   -1.419313834957,    1.309423611663),
   Complex::new(    0.626194884901,    0.448698878768),
   Complex::new(    1.062456184701,   -1.574268630848),
   Complex::new(   -0.284112227827,    0.550018601059),
   Complex::new(   -0.080443635589,   -1.362211376503),
   Complex::new(    0.383016098417,    1.081967093575),
   Complex::new(    0.484156075687,   -0.162493291081),
   Complex::new(   -0.632696839217,   -1.499586717062),
   Complex::new(    1.771132365818,   -0.691460076219),
   Complex::new(    1.177429509865,   -0.486631740300),
   Complex::new(    0.452912528112,    1.368403825897),
   Complex::new(    0.007493867542,   -0.269397882793),
   Complex::new(   -1.107355722972,    0.037650076863),
   Complex::new(   -0.524329801696,    1.542074025962),
   Complex::new(    0.448469395501,    0.620253813644),
   Complex::new(    0.937797278085,    0.094893367525),
   Complex::new(    0.244627220423,   -0.865982595984),
   Complex::new(   -0.620857271928,    1.618502476045),
   Complex::new(   -0.727959747987,   -1.748132622853),
   Complex::new(   -1.814748553219,    0.357659723379),
   Complex::new(   -1.190951476209,   -0.302683547331),
   Complex::new(   -0.642926196548,   -0.441431483518),
   Complex::new(    0.906018063143,   -0.456267895782),
   Complex::new(    1.658412527962,    0.602929674812),
   Complex::new(   -1.372573150919,   -0.165247494352),
   Complex::new(    0.701050669178,    0.784117117798),
   Complex::new(   -1.093947418964,   -2.169417895648),
   Complex::new(   -0.619306010978,    0.346306836794),
   Complex::new(   -1.153602396000,    0.310559458662),
   Complex::new(    1.857961002742,    1.662749378565),
   Complex::new(    0.726892056406,    0.559412940831),
   Complex::new(    0.618501787181,    0.753344508665),
   Complex::new(    0.060088823625,   -1.132388678000),
   Complex::new(   -0.790715886898,    1.256189591885),
   Complex::new(   -1.346611550340,   -1.002213804884),
   Complex::new(   -0.153748736848,   -1.273877582585),
   Complex::new(   -1.102237529635,   -1.113178017398),
   Complex::new(   -0.526084982723,    1.255781208343),
   Complex::new(   -0.738929991536,    1.454321302002),
   Complex::new(   -1.015352909554,    0.057528759460),
   Complex::new(    0.675998598897,   -0.143860246243),
   Complex::new(    0.189558927003,    0.513691656677),
   Complex::new(    0.009183574378,    0.963901374647),
   Complex::new(   -0.163787067951,   -1.522554558143),
   Complex::new(    0.302708128196,    0.904573259262),
   Complex::new(    0.975710589669,   -1.011907000330),
   Complex::new(   -0.117268931532,    0.858171829955),
   Complex::new(   -1.306428434179,    0.113727230388),
   Complex::new(   -0.959251067394,    0.253171642011),
   Complex::new(    0.898435910380,    0.293195734212),
   Complex::new(   -0.621680975624,   -0.582564866291),
   Complex::new(    0.179461744683,    0.209868112155),
   Complex::new(   -0.203784114877,   -0.011115684099),
   Complex::new(    1.795424157294,   -0.117231500488),
   Complex::new(    0.015989098360,   -0.642768987364),
   Complex::new(   -1.375016631330,   -2.085463142461),
   Complex::new(   -0.655990108553,    0.722884678316),
   Complex::new(    1.172312994480,   -0.355468862899),
   Complex::new(   -0.564442301948,    0.323979441156),
   Complex::new(    0.899045729865,   -1.148993122117),
   Complex::new(    1.045854100254,    1.711078921366),
   Complex::new(    0.592020255938,    0.219085296351),
   Complex::new(    0.118211086528,   -1.123504917557),
   Complex::new(    0.233426106939,   -1.883587119594),
   Complex::new(   -0.301438222142,   -0.697732158432),
   Complex::new(    0.312117398590,   -0.010728436711),
   Complex::new(   -0.956339212238,    0.275577083186),
   Complex::new(    1.086666854829,   -1.181802410378),
   Complex::new(    1.074818739604,   -0.636045956563),
   Complex::new(    0.644130821770,   -0.481626402565),
   Complex::new(    0.055564592606,   -0.355383569012),
   Complex::new(   -1.710794754131,   -0.311499134725),
   Complex::new(   -1.357530095316,    1.586038700811),
   Complex::new(    0.643883320289,   -1.661496495893),
   Complex::new(    0.916591063253,    0.463263213793),
   Complex::new(    0.795060678890,    0.253692839397),
   Complex::new(   -0.353293483561,   -0.793786778605),
   Complex::new(    1.523091692648,    1.009541299320),
   Complex::new(   -0.351467193764,   -0.233882680674),
   Complex::new(   -1.006204919749,   -1.722099827433),
   Complex::new(   -0.425646600377,   -0.067539377037),
   Complex::new(   -2.152456912795,    0.355174573898),
   Complex::new(   -1.397998826498,    0.043192513073),
   Complex::new(    0.463250457123,    0.785418638026),
   Complex::new(    0.551007796000,   -0.600950335023),
   Complex::new(    1.336913064335,    0.299718316993),
   Complex::new(    0.576007704981,   -0.703000454871),
   Complex::new(    0.501091983740,    0.079592846760),
   Complex::new(    0.178571647134,   -0.055720934489),
   Complex::new(    0.843544810635,    0.526236292547),
   Complex::new(    1.354311088400,   -0.480046041766),
   Complex::new(   -1.121411263124,   -0.220337368903),
   Complex::new(    0.018969956960,   -0.526588981826),
   Complex::new(   -0.874090913826,    1.731623994129),
   Complex::new(   -1.108295529258,    1.163520621835),
   Complex::new(   -0.656720377715,    0.245096653391),
   Complex::new(    0.625251262223,    1.662769471886),
   Complex::new(    0.503819391123,   -1.441549149924),
   Complex::new(   -0.164837089741,   -0.715463798642),
   Complex::new(    0.355362378583,    2.159694721953),
   Complex::new(   -0.008848280750,   -0.018260892822),
   Complex::new(   -0.136686667816,    1.182755498355),
   Complex::new(   -0.136433742988,    0.851417981048),
   Complex::new(   -0.395460120756,    0.812014412771),
   Complex::new(    0.025308338705,    0.630907052235),
   Complex::new(    1.006681294297,    1.783315896794),
   Complex::new(   -0.402626477026,    0.776761257059),
   Complex::new(   -1.317690399125,    0.130484673594),
   Complex::new(   -0.868791706762,   -0.642771615764),
   Complex::new(    0.137146795180,   -0.102157755198),
   Complex::new(    1.633710393863,   -0.768782548860),
   Complex::new(   -0.867759427420,    1.601477458878),
   Complex::new(   -1.157703488657,   -0.206031874994),
   Complex::new(    0.041016911327,   -1.180389310249),
   Complex::new(   -0.189738035969,   -0.713067619743),
   Complex::new(    0.933408353482,    1.194576784859),
   Complex::new(    0.514861178855,    0.368016550894),
   Complex::new(    0.881690626307,    2.753761417447),
   Complex::new(   -0.133670635264,    1.543292970173),
   Complex::new(    2.091596895159,   -0.093690078394),
   Complex::new(   -1.188956830982,   -0.114523278237),
   Complex::new(   -0.053197690454,    0.907571243350),
   Complex::new(    0.401291232622,   -0.415340086801),
   Complex::new(   -0.681924799342,    0.669543900292),
   Complex::new(    0.530696047517,   -0.997585317896),
   Complex::new(   -0.533192039121,   -1.431729688530),
   Complex::new(    0.536364895113,    1.169805471895),
   Complex::new(   -1.016375434615,   -1.450239121127),
   Complex::new(   -1.561071693564,   -0.170486342837),
   Complex::new(   -0.183747193975,   -0.977837337154),
   Complex::new(   -0.181940033627,   -0.248171826564),
   Complex::new(   -0.328526087010,   -0.030637600322),
   Complex::new(   -1.002704137273,   -0.085997551664),
   Complex::new(    1.368038996286,   -0.141325193319),
   Complex::new(    0.403836121556,    2.008528522943),
   Complex::new(   -0.810518568790,   -0.149400127852),
   Complex::new(   -0.693120904958,   -1.117715197785),
   Complex::new(    1.558993909095,   -2.012078672111),
   Complex::new(    0.029046234836,   -1.049286048426),
   Complex::new(    0.790327688876,    0.101616687460),
   Complex::new(   -0.401919211737,   -0.430529168165),
   Complex::new(    0.287473232440,   -0.564999246068),
   Complex::new(    1.716421030546,   -0.404965480273),
   Complex::new(    0.050376052116,    0.795529162825),
   Complex::new(   -1.281143070062,    0.808984215487),
   Complex::new(   -2.314127686421,   -0.020801982220),
   Complex::new(    1.606737133361,    0.283817403079),
   Complex::new(    0.355463854549,    0.044155238023),
   Complex::new(   -1.076907023070,    0.442916691766),
   Complex::new(    0.087222702651,    1.349524189157),
   Complex::new(   -1.625272715780,    0.294000847904),
   Complex::new(    2.355923230363,    0.786258163154),
   Complex::new(    0.590797134194,   -1.524824299804),
   Complex::new(   -0.247232063439,    0.027525184425),
   Complex::new(    0.422150431137,    0.191460073698),
   Complex::new(    0.333205469444,    0.566695459783),
   Complex::new(    2.040179995474,   -0.033523279638),
   Complex::new(    1.708801210517,   -0.514673828477),
   Complex::new(   -1.148367840353,    0.175705040636),
   Complex::new(   -0.208810451052,    1.955963982995),
   Complex::new(    0.277462389542,    0.341691402206),
   Complex::new(    1.115415958264,    0.268951601110),
   Complex::new(    0.039043618322,    1.093842223424),
   Complex::new(    0.154656090432,   -2.528281845522),
   Complex::new(   -0.169580739559,    1.232275509700),
   Complex::new(   -0.117411131677,   -1.002389093350),
   Complex::new(    0.035928732692,    2.439878625945),
   Complex::new(   -0.332442060919,    0.086411580288),
   Complex::new(    1.801599291824,   -0.728371893507),
   Complex::new(    2.510167669033,    0.293277743476),
   Complex::new(    1.336012143828,    0.553373968985),
   Complex::new(    0.179581375233,    0.219695624924),
   Complex::new(    0.593263517685,    0.407445722133),
   Complex::new(    0.684624183099,    0.589697664907),
   Complex::new(   -2.496382874468,    0.024438752127),
   Complex::new(   -2.222694698779,    1.701453939912),
   Complex::new(    0.154420002119,   -1.338536134506),
   Complex::new(    0.256365846642,   -0.981555435302),
   Complex::new(    0.646498405245,    1.015323083702),
   Complex::new(    1.816099125502,   -0.873689502536),
   Complex::new(    0.973113786206,    0.638143551822),
   Complex::new(    1.082802452802,    0.054273301693),
   Complex::new(   -1.477958702052,   -1.876253882821),
   Complex::new(   -1.509174430498,   -1.366946689175),
   Complex::new(    0.770200379893,   -0.037358369644),
   Complex::new(    0.020528472364,    0.071112924686),
   Complex::new(    1.163573145482,    0.270667445496),
   Complex::new(   -0.685276141620,    1.042179563446),
   Complex::new(   -1.450457525407,   -0.619572993396),
   Complex::new(   -1.087848848412,    0.747504403403),
   Complex::new(    0.182987452127,    0.130972663746),
   Complex::new(   -0.146555893049,    0.691910395951),
   Complex::new(   -1.735762675547,   -0.761410376033),
   Complex::new(    0.130810608875,   -1.132633564866),
   Complex::new(    0.393865724887,   -0.821588251430),
   Complex::new(    1.287503514649,   -0.355212207325),
   Complex::new(    0.319345692829,   -1.117466320715),
   Complex::new(    0.418623558075,   -1.759140288875),
   Complex::new(    1.041852719916,    0.176006788980),
   Complex::new(   -0.297227854618,    0.227296263697),
   Complex::new(   -0.164089543129,   -1.043612906074),
   Complex::new(    0.008690483342,    1.110377157604),
   Complex::new(   -0.219664588199,    0.427614664824),
   Complex::new(    1.343587074840,    0.375898274813),
   Complex::new(    1.490739162431,    0.021350208856),
   Complex::new(    0.945367199263,    0.180821025970),
   Complex::new(    0.522231273825,   -0.497986782057),
   Complex::new(    0.523336519862,   -0.933508311700),
   Complex::new(    0.496982629732,    1.473461947118),
   Complex::new(   -0.003062144935,   -0.162840951249),
   Complex::new(    0.984875642474,   -0.848717378538),
   Complex::new(   -0.461516263319,   -0.685745084807),
   Complex::new(   -1.175877458107,   -0.177846365813),
   Complex::new(   -0.932200203193,    1.107705439242),
   Complex::new(    1.406397814811,    0.054681766136),
   Complex::new(    1.109360316168,   -1.679067648707),
   Complex::new(    0.924696326741,    0.067692426194),
   Complex::new(   -0.000830800316,   -0.473092403298),
   Complex::new(   -0.731674917791,   -0.551769981624),
   Complex::new(   -0.569303781517,   -0.006801228336),
   Complex::new(    0.110391386502,   -1.899793883492),
   Complex::new(    0.814109796724,   -0.160466492041),
   Complex::new(    1.138698851351,   -0.625131274654),
   Complex::new(   -1.963957708898,    0.775152493271),
   Complex::new(   -1.659897790238,    1.056053755857),
   Complex::new(   -0.649474775762,    1.460655545851),
   Complex::new(   -0.741388571452,   -1.820826399375),
   Complex::new(   -1.572911393570,    1.569354704216),
   Complex::new(    0.744026763162,    0.835499539241),
   Complex::new(    0.095754291390,    0.796930944242),
   Complex::new(    0.507814608179,    0.818154740321),
   Complex::new(   -0.383708274783,   -0.068423423510),
   Complex::new(   -0.888346025964,    0.571095503271),
   Complex::new(    0.925179546159,   -1.052147910287),
   Complex::new(   -0.438552116998,   -0.225556401800),
   Complex::new(    1.164226743249,    0.148695281475),
   Complex::new(    0.964606990498,    0.259930491349),
   Complex::new(   -0.343680793432,    0.578310893020),
   Complex::new(    0.093080205932,    1.723388863831),
   Complex::new(   -0.756655985085,    0.681598873690),
   Complex::new(    0.939758986711,    0.011205851149),
   Complex::new(   -0.141899272761,    0.521507574016),
   Complex::new(   -0.716208197806,    1.303295936061),
   Complex::new(   -0.813031307398,    1.372568923775),
   Complex::new(    1.023111911832,   -0.701776162450),
   Complex::new(   -0.059513464951,   -0.562779118569),
   Complex::new(   -1.783877678017,    1.123340885741),
   Complex::new(   -0.129189002044,    0.152272891142),
   Complex::new(    0.594929872664,    0.920537744435),
   Complex::new(    0.958591761922,    1.041651647113),
   Complex::new(    0.496121593665,   -0.038971974072),
   Complex::new(    0.184620294659,   -2.865914521972),
   Complex::new(   -0.173289102032,    1.628057214738),
   Complex::new(   -1.450876580978,   -1.542121010661),
   Complex::new(   -0.585624617416,   -0.000140441111),
   Complex::new(   -0.165171139738,   -0.792078084035),
   Complex::new(    1.008588335837,    2.483679153708),
   Complex::new(   -1.101668002181,   -0.867864575222),
   Complex::new(    1.778741775885,    1.238012027547),
   Complex::new(    0.418624110589,   -0.516903858622),
   Complex::new(   -0.623664358679,    0.685852774278),
   Complex::new(    1.473049190104,   -0.824653187025),
   Complex::new(   -1.125651402746,   -0.051861075402),
   Complex::new(    0.942173492837,    0.284253723912),
   Complex::new(    1.468609011081,    0.872878783090),
   Complex::new(   -0.523118553730,    0.065885163104),
   Complex::new(   -1.209516269354,    1.712795511905),
   Complex::new(   -0.164914664862,   -1.060198690347),
   Complex::new(    0.081083509872,    0.514122164431),
   Complex::new(    0.014993899314,   -0.421407997613),
   Complex::new(    0.921737261188,   -0.891135385409),
   Complex::new(   -0.186548224004,    0.410695725270),
   Complex::new(   -0.138866088362,   -0.530179759052),
];

pub const FFT_TEST_Y509: [Complex<f32>; 509] = [
   Complex::new(   15.695701816574,   18.430646076972),
   Complex::new(   17.496535538521,    6.323908273548),
   Complex::new(  -15.330535795607,  -16.826373817993),
   Complex::new(  -22.995137994536,    5.848541065489),
   Complex::new(  -29.715938835044,   12.754412174777),
   Complex::new(   10.901257286656,   -8.716929489684),
   Complex::new(  -19.628646037487,   19.226286624799),
   Complex::new(  -20.480875354016,  -31.897908691975),
   Complex::new(   35.124732513036,   16.324491517218),
   Complex::new(   46.193539420959,   25.851763792302),
   Complex::new(    5.792757151559,  -12.926180930790),
   Complex::new(  -22.013847261245,   -5.613610031493),
   Complex::new(    9.404166069447,   -0.019908771755),
   Complex::new(    8.201675624257,   -8.967673070400),
   Complex::new(   15.181089874097,   -6.297364574465),
   Complex::new(   14.570696506052,   -1.051310941558),
   Complex::new(   -1.882106797398,   -5.240669196133),
   Complex::new(  -14.868309562238,    6.106637681928),
   Complex::new(  -15.129890494726,   -2.984311531498),
   Complex::new(    4.030179316698,  -51.075734845707),
   Complex::new(  -34.365285768090,    9.975973436808),
   Complex::new(  -10.705381975285,   -9.109285126921),
   Complex::new(   -9.128619721470,  -32.793223942182),
   Complex::new(   -3.884615181749,    5.589810405219),
   Complex::new(  -53.818876953386,    9.826695061389),
   Complex::new(    7.391928508119,   -6.174427305668),
   Complex::new(   -9.942167986468,  -39.833241210704),
   Complex::new(   -1.462704472474,   -2.725068915079),
   Complex::new(   -8.330269618062,   -2.806674135719),
   Complex::new(   25.194669213199,   30.149530622780),
   Complex::new(   24.265507703667,   35.899758345115),
   Complex::new(    8.921289067584,    4.788182047802),
   Complex::new(  -43.846571049868,  -11.381289894906),
   Complex::new(   30.751599932238,   20.081621692604),
   Complex::new(   12.282504139594,  -23.757854873259),
   Complex::new(   29.365318997990,  -23.868021174550),
   Complex::new(  -18.191992659645,   23.039066554514),
   Complex::new(  -26.138981350472,  -27.807762467872),
   Complex::new(    4.906806518050,  -64.830853635320),
   Complex::new(   17.645400306096,    6.438919813853),
   Complex::new(   -8.877478921993,   22.121925579022),
   Complex::new(   -8.857083278794,    2.248345191669),
   Complex::new(  -10.165898578719,   14.029663983838),
   Complex::new(   -4.760350989354,   14.471217793420),
   Complex::new(   10.088121839257,   10.378681492497),
   Complex::new(    8.818549764286,   28.002638865768),
   Complex::new(   15.815201542566,   -8.171918556057),
   Complex::new(   11.043628161039,   -4.557146048106),
   Complex::new(  -15.424873625059,   -1.742974782342),
   Complex::new(    5.374423440509,   15.897637103576),
   Complex::new(   10.405830658480,    5.110319843375),
   Complex::new(  -26.501807327618,  -12.862253830222),
   Complex::new(    8.361320271594,  -12.127500776378),
   Complex::new(   -7.065209772913,  -13.109659416735),
   Complex::new(    6.150458328525,   21.558378724678),
   Complex::new(   19.192390552195,   57.078335145777),
   Complex::new(   16.247539210043,   -5.178795721988),
   Complex::new(   -2.182213653083,  -31.382522380551),
   Complex::new(   -3.317969463714,   -1.385753951871),
   Complex::new(   24.974480529165,   22.521516957567),
   Complex::new(   29.614215910955,   22.614533535316),
   Complex::new(    6.616213388437,   -6.945021315685),
   Complex::new(  -21.081077266042,   27.911030510024),
   Complex::new(  -16.921827301441,   18.479208860530),
   Complex::new(    8.043988870051,  -36.113906522591),
   Complex::new(   41.917272128407,   26.843086076462),
   Complex::new(  -13.727079990761,    5.205402325839),
   Complex::new(   -4.984705459021,   -6.291381865515),
   Complex::new(   -2.300982364859,  -21.708353496884),
   Complex::new(   32.721343545850,  -16.032669392585),
   Complex::new(    0.519352193540,   45.753678340865),
   Complex::new(   31.562265581157,   -4.268866755468),
   Complex::new(  -40.236062083037,   -2.384241501530),
   Complex::new(  -30.936637211857,    3.338370340206),
   Complex::new(  -21.959385231675,    0.895928669913),
   Complex::new(    7.483781797051,  -52.076927900468),
   Complex::new(  -64.519015760392,   10.979148490947),
   Complex::new(  -28.029903074937,    7.946066875195),
   Complex::new(   -0.807954143368,   10.641591910611),
   Complex::new(   34.165604774109,  -19.071113266579),
   Complex::new(   10.309282793998,  -14.648195920539),
   Complex::new(   26.307206562160,    3.878504634615),
   Complex::new(  -21.207352431217,   12.063691363252),
   Complex::new(  -54.243540120475,   -0.287217034895),
   Complex::new(  -32.080496755198,   30.540317997631),
   Complex::new(    9.760803073410,   16.055868478901),
   Complex::new(  -16.078558738770,   -5.356833086497),
   Complex::new(   36.213555936943,  -24.363868386505),
   Complex::new(  -10.697416407844,   24.319983619540),
   Complex::new(   17.684302893605,  -12.378065186883),
   Complex::new(   41.844539573965,  -46.705571091504),
   Complex::new(  -24.945971628906,  -10.079221453585),
   Complex::new(  -10.513894508491,   -4.599940107164),
   Complex::new(   26.189867010892,  -17.124071629849),
   Complex::new(  -34.363585674086,   -4.077385676473),
   Complex::new(  -32.102375469900,   18.736917526908),
   Complex::new(  -20.887619654518,  -54.461316084166),
   Complex::new(    0.064775230615,   24.195856216286),
   Complex::new(   32.270028792805,   48.132373628158),
   Complex::new(   -1.916807810798,  -12.903225028783),
   Complex::new(   -1.669256173251,   16.652308679485),
   Complex::new(   -3.071210123118,   18.164002571879),
   Complex::new(   17.931710499892,  -13.922708426108),
   Complex::new(   19.373112705930,    8.858054642852),
   Complex::new(    1.712477146172,  -34.349666851373),
   Complex::new(    3.720328613972,  -37.016904392694),
   Complex::new(    5.546925594994,   -0.892192373145),
   Complex::new(  -22.124438618468,  -41.843458261756),
   Complex::new(  -19.235688566387,   -2.162824631740),
   Complex::new(   21.783941115220,   -6.695594391248),
   Complex::new(   33.493805068723,   62.763842873419),
   Complex::new(  -10.896810929881,   -8.404131804641),
   Complex::new(   18.216817415924,  -33.590802005326),
   Complex::new(  -25.763824584844,   -6.302405967415),
   Complex::new(  -15.929448259002,   49.656053432255),
   Complex::new(   -2.645182567345,    3.823015231654),
   Complex::new(   33.565352588744,  -14.801476451303),
   Complex::new(   34.780028538088,   14.782512818128),
   Complex::new(   22.270348337592,   17.396233784708),
   Complex::new(  -23.998646351712,   -2.572970386926),
   Complex::new(   -5.212660897164,  -38.032125746868),
   Complex::new(   -5.937127593805,  -21.823373120555),
   Complex::new(   12.376774565444,   33.920254294747),
   Complex::new(   19.629474738185,   -7.562284518099),
   Complex::new(  -25.524838793958,  -25.917842984307),
   Complex::new(    7.908690793819,   53.160190581823),
   Complex::new(  -22.547459647000,  -31.810110557445),
   Complex::new(   14.825411801114,   -2.623765490622),
   Complex::new(   21.016615330301,   22.000151402955),
   Complex::new(   -3.127363744257,  -13.350072969695),
   Complex::new(  -57.702154359177,  -15.154831462388),
   Complex::new(  -13.446876000722,  -13.069388640893),
   Complex::new(   -2.176317185084,   17.496721580831),
   Complex::new(  -54.132263906341,   16.018239354033),
   Complex::new(   -3.699736432956,   27.741980074527),
   Complex::new(   -7.311559889274,  -20.665154049268),
   Complex::new(    6.161991265193,   -5.267960280914),
   Complex::new(   -0.083765300728,  -15.394352140009),
   Complex::new(  -10.209228018076,   -6.471795099909),
   Complex::new(   -0.812704485184,   -3.943529308850),
   Complex::new(   -3.174962269778,  -37.702639197964),
   Complex::new(   14.138710546364,   11.048967022727),
   Complex::new(    6.870463853253,   10.314002260772),
   Complex::new(    3.221828051661,   51.234801230509),
   Complex::new(   -2.186983936437,   38.473329840101),
   Complex::new(   13.533239595473,   16.037592135971),
   Complex::new(   39.103943522729,    7.078614835194),
   Complex::new(   30.565445217772,   12.659846713522),
   Complex::new(   30.303359360199,  -34.312315640466),
   Complex::new(  -20.057347170511,   50.200448109342),
   Complex::new(   15.117190448180,    7.835893578929),
   Complex::new(  -15.209082571565,   10.364865373220),
   Complex::new(    9.144422828705,  -66.027702727533),
   Complex::new(  -18.356336362499,  -27.596404803404),
   Complex::new(  -21.642296590182,  -23.328234101983),
   Complex::new(  -38.679552975441,  -27.294969526274),
   Complex::new(  -17.537683264549,   11.145767113244),
   Complex::new(  -28.415217286677,    2.450538508370),
   Complex::new(   -7.839159290091,    9.590153493395),
   Complex::new(   -4.077913680565,    3.514849319651),
   Complex::new(   36.547874214296,  -13.621221107484),
   Complex::new(   14.644978554755,  -21.980389507971),
   Complex::new(   -3.073299724899,   -8.758687284937),
   Complex::new(   35.118241555864,  -42.903789231571),
   Complex::new(  -22.783245832308,   -9.082081737025),
   Complex::new(  -25.929291660507,   18.758508598154),
   Complex::new(   33.025142390877,    5.904152955421),
   Complex::new(   11.948227318252,    2.161590454494),
   Complex::new(   -1.006102550557,  -28.161894386541),
   Complex::new(   45.136250419544,    3.976787326589),
   Complex::new(  -33.291978336755,    0.798986604330),
   Complex::new(   11.265970488150,   -1.327315667000),
   Complex::new(    3.519436365736,   16.927952719295),
   Complex::new(  -33.602300462457,   32.163188907263),
   Complex::new(   -8.361310619248,   -8.809090782568),
   Complex::new(   11.294901581957,   -4.245164072484),
   Complex::new(   14.566011481616,   26.519668998172),
   Complex::new(   14.769898592012,   56.527707423485),
   Complex::new(   33.116957851259,   -1.090132926951),
   Complex::new(   20.848136410578,   10.345884350214),
   Complex::new(   18.958342797158,    6.566708563840),
   Complex::new(   15.396069027712,  -31.284159225464),
   Complex::new(    2.886181696729,   18.205515439993),
   Complex::new(    2.258601161648,  -12.548779081296),
   Complex::new(   18.639723094734,  -13.486140556024),
   Complex::new(  -11.071519074610,  -19.339094005264),
   Complex::new(   16.895170033002,   -9.987185658559),
   Complex::new(   -3.870068718996,   22.233540496971),
   Complex::new(    8.964139966565,  -27.313941129646),
   Complex::new(  -17.059785268381,   -4.400625859198),
   Complex::new(   -6.175147302779,   30.096445776903),
   Complex::new(   18.669084089316,    6.968259188573),
   Complex::new(    7.657184873046,  -41.697203143381),
   Complex::new(  -33.549050077833,   24.392895555181),
   Complex::new(   13.852529446346,  -24.121363551436),
   Complex::new(   -8.184532144280,  -21.955892305419),
   Complex::new(  -19.335525950576,   31.604135153122),
   Complex::new(   30.219851790692,    9.312089638267),
   Complex::new(   -9.099736227858,   10.891340718152),
   Complex::new(    8.000001281397,  -11.689007297193),
   Complex::new(   15.301942508385,  -30.427794390813),
   Complex::new(   -7.727208416300,   13.998979881879),
   Complex::new(   -6.394185171364,    3.146108002402),
   Complex::new(    9.252474513141,  -16.461589767495),
   Complex::new(   26.863242542498,   24.608331497751),
   Complex::new(   46.975091007265,  -22.976780803246),
   Complex::new(  -46.543917156055,   15.869672486948),
   Complex::new(   -4.728161553855,   29.037018944500),
   Complex::new(    4.070927662548,  -36.042387888924),
   Complex::new(   14.921971168495,   30.690814385233),
   Complex::new(   35.791446149577,    4.619796889845),
   Complex::new(    2.303273709336,   11.205822209351),
   Complex::new(    8.168201691579,  -10.908743400107),
   Complex::new(   -0.043567851626,   24.059334278527),
   Complex::new(    7.466916906592,   18.610504314019),
   Complex::new(    7.031977571019,   -9.358602921852),
   Complex::new(    5.391773391774,   -0.966245883858),
   Complex::new(    3.392189608224,  -10.986430122434),
   Complex::new(   34.562609814015,   40.520419348321),
   Complex::new(   -9.427806154592,   14.449317738714),
   Complex::new(  -28.980935248249,   35.723542184020),
   Complex::new(  -25.087680212574,  -12.353756547678),
   Complex::new(  -10.456225394292,   26.299032407868),
   Complex::new(   -3.551781425808,   36.487758403775),
   Complex::new(  -13.555856836256,   11.377498259126),
   Complex::new(   -5.711875186735,   63.014002174535),
   Complex::new(    8.802482546452,   -9.877617002550),
   Complex::new(   12.398023754693,  -17.252746153510),
   Complex::new(   48.590307765142,  -39.869959281353),
   Complex::new(   -4.228834590895,  -16.849706340702),
   Complex::new(    1.157565934241,   10.439891849608),
   Complex::new(    6.162905961542,  -42.121455332219),
   Complex::new(   18.623319771899,    6.782479204326),
   Complex::new(   40.359667537403,   -5.227038429096),
   Complex::new(    3.960846512784,   -2.184979700635),
   Complex::new(  -11.294281203268,    1.462688924503),
   Complex::new(    4.235940899795,   -5.069039031037),
   Complex::new(  -19.757480291431,  -19.995127344309),
   Complex::new(    9.293994179429,   30.574726633130),
   Complex::new(  -11.912765926945,    1.982525086253),
   Complex::new(   32.506223545239,  -17.228481622244),
   Complex::new(   23.261121675341,  -41.619757453530),
   Complex::new(  -16.699711374017,   17.184396509178),
   Complex::new(  -30.981944222728,   18.381540125799),
   Complex::new(  -28.134836328395,   -9.882313867372),
   Complex::new(  -40.216518853122,    7.954899537374),
   Complex::new(  -17.952578865387,   27.478809719211),
   Complex::new(  -28.849862783745,    0.512912610070),
   Complex::new(   21.721522411732,   -6.115881482201),
   Complex::new(  -82.815498795687,   -8.942733727142),
   Complex::new(    3.740277816696,  -14.522905567941),
   Complex::new(  -35.229732095265,   26.709488731346),
   Complex::new(   11.290125122898,   24.224877496545),
   Complex::new(  -16.635941007754,    8.630637395391),
   Complex::new(   22.134876007936,    2.574582351782),
   Complex::new(   33.251774617807,    5.457413908840),
   Complex::new(   -3.124095302802,  -30.945315750230),
   Complex::new(   25.380261145256,  -12.895408190578),
   Complex::new(   29.590560891351,  -35.336175817647),
   Complex::new(   23.190389336153,  -51.584432366600),
   Complex::new(   23.182126536797,  -30.991661680296),
   Complex::new(  -37.142295822241,    7.721940476748),
   Complex::new(   26.833304952389,   15.281809854672),
   Complex::new(    3.795011817607,   47.705908075813),
   Complex::new(   44.822699796166,    4.630736159645),
   Complex::new(   20.899042041270,    2.487657439412),
   Complex::new(    8.742060078106,    9.864203556590),
   Complex::new(   16.980059178338,   35.222546217902),
   Complex::new(  -19.255543627730,    9.410996006466),
   Complex::new(   21.517616907420,   26.338377945165),
   Complex::new(   48.642251867035,    6.924884525443),
   Complex::new(   23.548326097336,   10.784367397399),
   Complex::new(  -11.550545599595,  -22.108959248798),
   Complex::new(   16.733078720638,   -6.587000041071),
   Complex::new(  -24.552765736255,   20.310652954928),
   Complex::new(   17.292953612417,   29.643678070378),
   Complex::new(    9.373109698654,   24.904713123755),
   Complex::new(   25.238503675115,  -15.183892795659),
   Complex::new(   -1.508310287534,  -32.049583340956),
   Complex::new(   -1.442670825788,  -39.824563428950),
   Complex::new(    3.230145000210,  -25.420530195927),
   Complex::new(   13.229685977004,  -14.075607613923),
   Complex::new(  -19.526361502130,  -29.370000953029),
   Complex::new(  -21.782631521002,  -37.617721671791),
   Complex::new(   27.816003478663,   24.303079202481),
   Complex::new(  -43.381077867759,   24.837480951743),
   Complex::new(   -9.560217395595,    2.382563375055),
   Complex::new(   -1.168465306817,    1.589115227489),
   Complex::new(   52.542490127417,    1.424383301004),
   Complex::new(  -10.794625364629,  -19.749473263855),
   Complex::new(   26.168847841768,  -26.658825280073),
   Complex::new(    4.233092270819,  -48.303662607018),
   Complex::new(   -5.014341149907,  -33.130134324155),
   Complex::new(    9.190470374905,  -26.953795736734),
   Complex::new(   -2.846241405053,   -0.651859597413),
   Complex::new(  -20.225979212962,  -24.560140693339),
   Complex::new(  -10.802336686843,   51.446188240204),
   Complex::new(   -9.492345818087,  -27.286465734423),
   Complex::new(  -24.394227434292,   36.495286678206),
   Complex::new(   -4.610288224660,   13.785902137795),
   Complex::new(   25.266817655154,    8.853318181494),
   Complex::new(   -1.108114899344,   -8.902780819762),
   Complex::new(  -34.949213732955,   16.304692482063),
   Complex::new(   12.401176411050,  -49.617470306114),
   Complex::new(   13.450715987122,   23.780568951393),
   Complex::new(    0.327891662517,   20.945521301723),
   Complex::new(  -24.347872941432,  -20.261920769569),
   Complex::new(   -3.742508301325,   15.297035114593),
   Complex::new(   20.157765205649,   -2.771550168366),
   Complex::new(  -26.861338262008,   10.330263597466),
   Complex::new(  -19.103391377917,   29.070399414699),
   Complex::new(   33.355739256457,    0.786653290415),
   Complex::new(  -15.811410357704,   12.334342632002),
   Complex::new(  -31.067213179934,    4.812703947794),
   Complex::new(  -38.464666136613,   -9.734460624273),
   Complex::new(  -27.018641211199,  -10.676307399360),
   Complex::new(   10.601332462223,   12.602266185181),
   Complex::new(  -14.863945203402,   18.405001560411),
   Complex::new(    6.151006234331,   -1.325265142280),
   Complex::new(   10.654450023041,   24.877489064003),
   Complex::new(    7.753711320427,  -24.877496668386),
   Complex::new(   14.215523169674,   15.750750989795),
   Complex::new(   10.063422021746,   49.306566727230),
   Complex::new(  -83.835199786581,  -35.146747496108),
   Complex::new(   -0.218459362048,   -0.770721115796),
   Complex::new(   22.431242892732,  -36.430877828612),
   Complex::new(   17.435164403992,  -17.764746880777),
   Complex::new(  -18.336005961075,  -40.785661916947),
   Complex::new(   -9.708667273758,   -6.212236081880),
   Complex::new(   15.661415503945,  -23.058769144173),
   Complex::new(    6.754601945166,  -19.307935713609),
   Complex::new(   21.850846235150,    8.741417315883),
   Complex::new(   25.652896421543,    2.796534004126),
   Complex::new(   -1.843079544502,    1.784869908972),
   Complex::new(   -2.568058272174,  -31.336348759351),
   Complex::new(  -23.530597236048,   17.793870333201),
   Complex::new(   41.700575857144,    9.089193485713),
   Complex::new(   44.662282998158,   -3.699022752392),
   Complex::new(   29.042445473764,  -11.349519417295),
   Complex::new(   -7.073983554684,   29.402856163434),
   Complex::new(   19.939374137561,  -20.731019858441),
   Complex::new(  -27.044678373347,  -39.264065270489),
   Complex::new(   20.211317017215,   41.386816030545),
   Complex::new(    1.043164784676,   -2.519947587522),
   Complex::new(   -6.375700266136,  -29.785712929923),
   Complex::new(  -27.700591743931,   16.461560631605),
   Complex::new(   10.095278660268,    2.666042949098),
   Complex::new(    6.614197587453,  -36.267409940122),
   Complex::new(    3.024977063712,   22.518622158190),
   Complex::new(   22.730131517026,   14.937191189086),
   Complex::new(    0.061498915482,  -33.204005635365),
   Complex::new(    3.246333795519,   12.298349815877),
   Complex::new(    5.921582958906,   20.790686987339),
   Complex::new(   22.777331137604,    6.555360530677),
   Complex::new(   21.199065974566,   30.692801789200),
   Complex::new(   -1.064699299018,  -30.735783458333),
   Complex::new(    1.711968922160,    2.764830482799),
   Complex::new(   57.479865205031,   14.741051010187),
   Complex::new(   -5.222691142638,  -12.945556728288),
   Complex::new(   24.618941208703,   -8.335156868108),
   Complex::new(    5.362345191955,  -29.659123854849),
   Complex::new(  -13.759594910763,   -2.839225605024),
   Complex::new(   -0.744944069183,    9.536259763486),
   Complex::new(   -7.266281313994,   -9.788530410618),
   Complex::new(  -16.072026028887,   16.172115574565),
   Complex::new(   -6.901619139003,   -7.747255335591),
   Complex::new(  -16.302588968059,   -9.014933207001),
   Complex::new(   -9.878306363842,  -19.984075902846),
   Complex::new(    2.088664771255,   -8.999802528190),
   Complex::new(  -21.345209871678,  -33.541210734395),
   Complex::new(   12.617534995502,  -12.378687252061),
   Complex::new(   10.047409736042,   -6.607933917427),
   Complex::new(    9.334831941537,   10.948924308348),
   Complex::new(   25.695968260034,    7.063988558158),
   Complex::new(   -9.625298547784,   16.677076422518),
   Complex::new(   -3.108963319630,    3.376941849928),
   Complex::new(  -47.044223301845,  -22.447723404064),
   Complex::new(    6.172396063478,    3.130567372603),
   Complex::new(  -12.391233504725,  -18.965209575430),
   Complex::new(    7.816421386094,  -18.829210484343),
   Complex::new(    2.299165958987,   21.664313726413),
   Complex::new(   23.073574880632,  -40.647794133271),
   Complex::new(   11.788478207223,   10.388520650659),
   Complex::new(    2.495494346482,  -40.903748493834),
   Complex::new(    9.204196215081,    3.731305183829),
   Complex::new(  -11.705334181886,   -5.698373301119),
   Complex::new(  -10.576847226819,  -24.400174262686),
   Complex::new(    1.125349170571,  -42.931316430041),
   Complex::new(  -34.927593970119,   15.363588886694),
   Complex::new(   -5.051369474478,   57.553472286872),
   Complex::new(  -17.737882109182,   20.993190450070),
   Complex::new(   37.177637689060,   16.991173325998),
   Complex::new(   44.283601354742,   17.412222591528),
   Complex::new(   36.495623940354,  -20.061033291263),
   Complex::new(   -0.821113211121,   -3.092318774340),
   Complex::new(  -22.377701901316,  -16.198210370561),
   Complex::new(   12.319993479497,  -21.923811281565),
   Complex::new(   15.511676349072,   -9.483307137734),
   Complex::new(   20.189875802738,  -17.301968082172),
   Complex::new(   -5.805824615680,  -36.079316378374),
   Complex::new(   30.255637146078,  -44.362762846218),
   Complex::new(  -20.832965183425,   -7.304495538217),
   Complex::new(  -13.022907320332,  -57.530437725034),
   Complex::new(  -10.564105798288,  -34.560059804429),
   Complex::new(   21.361954258419,  -36.855969871716),
   Complex::new(    4.506530938557,   32.048954769246),
   Complex::new(  -33.027950438924,   28.211482991964),
   Complex::new(  -29.352439177975,   26.783042078482),
   Complex::new(  -28.424459734912,   -8.558362358430),
   Complex::new(  -19.967959416569,   10.959195107292),
   Complex::new(  -23.791686165010,   32.501306546259),
   Complex::new(  -33.216256571387,    2.738726266389),
   Complex::new(    8.569384712402,    1.130870024297),
   Complex::new(   28.525451062286,   17.073062203997),
   Complex::new(   -1.502286920189,  -10.160446478808),
   Complex::new(   -6.861394365693,   36.910381121986),
   Complex::new(   -6.268440765630,  -17.493038905156),
   Complex::new(   11.322039030102,  -23.206689618074),
   Complex::new(   -8.701154518730,   34.222038681525),
   Complex::new(  -24.669027160846,  -36.326555770368),
   Complex::new(   20.943711343327,  -24.033336369879),
   Complex::new(   29.209555657259,  -20.413413259064),
   Complex::new(   -2.572238542979,  -20.816303598934),
   Complex::new(   -1.994249544729,   23.007487924841),
   Complex::new(  -44.905945955860,   29.216643846282),
   Complex::new(  -24.062162530228,   12.109221679204),
   Complex::new(  -12.180111153692,   17.875695962678),
   Complex::new(   20.435116656247,    5.797199859832),
   Complex::new(    3.493004564937,   -5.812772133417),
   Complex::new(  -27.034394973848,   24.948810080561),
   Complex::new(   21.936211599800,   -5.553436322258),
   Complex::new(   -4.478679537619,   -2.641131963451),
   Complex::new(    5.120700840097,    6.186528528634),
   Complex::new(  -47.624247374659,  -34.895963725954),
   Complex::new(  -43.479965560285,   10.001886840601),
   Complex::new(  -20.718614873021,   24.908643623897),
   Complex::new(    9.472646766463,   -4.586461637219),
   Complex::new(    9.294883958873,    5.219642918744),
   Complex::new(   24.547287109336,   15.988189397184),
   Complex::new(   12.811611969328,  -60.146862637486),
   Complex::new(   33.520279815394,   29.907221430910),
   Complex::new(  -14.152533165001,  -16.446995449346),
   Complex::new(   23.465425390528,   -4.669981744595),
   Complex::new(  -29.290184394031,   -6.824899055323),
   Complex::new(   36.044925366731,   39.699979702815),
   Complex::new(   45.609805078654,   -0.363597033482),
   Complex::new(   12.247988815457,   -6.993931713410),
   Complex::new(   14.744368729437,    4.566968366531),
   Complex::new(   -3.612287261480,  -31.882623904258),
   Complex::new(   -4.625837065570,  -49.204985934025),
   Complex::new(   10.369874666738,   23.286668162235),
   Complex::new(  -29.995409795889,   22.748837275811),
   Complex::new(    7.693482749378,   12.894738140873),
   Complex::new(  -74.632562519909,  -20.685236968252),
   Complex::new(   24.465299052921,  -16.879295578319),
   Complex::new(  -17.287451187811,   -5.253265233981),
   Complex::new(  -12.792544818057,  -22.347701435426),
   Complex::new(  -30.500042038025,   -6.625643844530),
   Complex::new(  -25.032206738905,  -11.617648580783),
   Complex::new(  -33.767830120583,  -19.967382042671),
   Complex::new(    8.352625196160,   -0.210944382477),
   Complex::new(   -2.824794695557,    7.815259159406),
   Complex::new(  -30.449907818874,  -38.156235692042),
   Complex::new(   34.223672868260,    5.423974272822),
   Complex::new(   -3.473532089262,  -45.188663541294),
   Complex::new(    1.929635364775,  -17.899772348612),
   Complex::new(  -17.366629103993,   63.817371804672),
   Complex::new(  -23.515133356267,   -0.250964260288),
   Complex::new(  -26.558406280873,    5.464454223022),
   Complex::new(    7.459074663716,   -5.360173061781),
   Complex::new(   -2.740551125358,  -28.954513936397),
   Complex::new(   26.831634155936,    7.298762429258),
   Complex::new(   26.189721830795,   13.528176613886),
   Complex::new(    0.552527132215,   12.528332436204),
   Complex::new(  -18.980402436415,   14.388413407600),
   Complex::new(   -2.948074258737,  -26.092284933664),
   Complex::new(   11.237345817375,   40.862341094348),
   Complex::new(  -31.224869298160,   17.176727608508),
   Complex::new(    2.721793055983,   -9.744545888653),
   Complex::new(   -0.776323448517,  -40.995023347911),
   Complex::new(  -49.192082010750,   11.872769267713),
   Complex::new(  -43.807462185673,   -6.259081354893),
   Complex::new(   -2.175065114292,    6.493046453358),
   Complex::new(   23.334296943174,   19.135612282249),
   Complex::new(   -6.817794711121,    3.642740073112),
   Complex::new(   11.873498813840,   37.496197060973),
   Complex::new(   14.779256218032,  -13.159994239230),
   Complex::new(  -19.232512636676,    5.916208467040),
   Complex::new(   -0.581631693027,   22.531394609402),
   Complex::new(    1.544210909483,   14.296122579802),
   Complex::new(    7.044576628257,  -10.190237629704),
   Complex::new(   -4.813365711741,    7.129670574765),
   Complex::new(   41.167970529260,  -12.916981484001),
   Complex::new(   26.669078124418,  -15.501207232456),
   Complex::new(   12.492422072442,   -9.037015700661),
   Complex::new(   17.418311261915,   11.203344744823),
   Complex::new(   18.500273199469,   19.568644933327),
   Complex::new(  -23.216101473541,   -2.306087143311),
   Complex::new(   -1.651207984446,    1.920560461483),
   Complex::new(   22.032664625569,  -67.269204021659),
   Complex::new(    2.687054355440,   -6.150483980195),
   Complex::new(  -42.445780624117,  -52.847480030760),
   Complex::new(  -18.575368994624,  -11.378786258777),
   Complex::new(   12.874123481209,   11.199236114650),
   Complex::new(    6.553360933113,   -7.014357063713),
   Complex::new(   24.351668075370,   32.239707779122),
   Complex::new(   -3.293543380713,   15.964518188392),
   Complex::new(  -15.175792848341,   -2.924538577813),
   Complex::new(   17.561582795484,   -3.560828531875),
];