]> 4ch.mooo.com Git - 16.git/blob - src/lib/doslib/ext/faad/cfft_tab.h
wwww
[16.git] / src / lib / doslib / ext / faad / cfft_tab.h
1 /*
2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
3 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
4 **  
5 ** This program is free software; you can redistribute it and/or modify
6 ** it under the terms of the GNU General Public License as published by
7 ** the Free Software Foundation; either version 2 of the License, or
8 ** (at your option) any later version.
9 ** 
10 ** This program is distributed in the hope that it will be useful,
11 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ** GNU General Public License for more details.
14 ** 
15 ** You should have received a copy of the GNU General Public License
16 ** along with this program; if not, write to the Free Software 
17 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 **
19 ** Any non-GPL usage of this software or parts of this software is strictly
20 ** forbidden.
21 **
22 ** The "appropriate copyright message" mentioned in section 2c of the GPLv2
23 ** must read: "Code from FAAD2 is copyright (c) Nero AG, www.nero.com"
24 **
25 ** Commercial non-GPL licensing of this software is possible.
26 ** For more info contact Nero AG through Mpeg4AAClicense@nero.com.
27 **
28 ** $Id: cfft_tab.h,v 1.21 2007/11/01 12:33:29 menno Exp $
29 **/
30
31 #ifndef __CFFT_TAB_H__
32 #define __CFFT_TAB_H__
33
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37
38 #ifdef FIXED_POINT
39
40 ALIGN static const complex_t cfft_tab_512[] =
41 {
42     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
43     { FRAC_CONST(0.999924719333649), FRAC_CONST(0.012271538376808) },
44     { FRAC_CONST(0.999698817729950), FRAC_CONST(0.024541229009628) },
45     { FRAC_CONST(0.999322354793549), FRAC_CONST(0.036807224154472) },
46     { FRAC_CONST(0.998795449733734), FRAC_CONST(0.049067676067352) },
47     { FRAC_CONST(0.998118102550507), FRAC_CONST(0.061320740729570) },
48     { FRAC_CONST(0.997290432453156), FRAC_CONST(0.073564566671848) },
49     { FRAC_CONST(0.996312618255615), FRAC_CONST(0.085797317326069) },
50     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
51     { FRAC_CONST(0.993906974792480), FRAC_CONST(0.110222205519676) },
52     { FRAC_CONST(0.992479562759399), FRAC_CONST(0.122410677373409) },
53     { FRAC_CONST(0.990902662277222), FRAC_CONST(0.134580716490746) },
54     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
55     { FRAC_CONST(0.987301409244537), FRAC_CONST(0.158858150243759) },
56     { FRAC_CONST(0.985277652740479), FRAC_CONST(0.170961901545525) },
57     { FRAC_CONST(0.983105480670929), FRAC_CONST(0.183039888739586) },
58     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
59     { FRAC_CONST(0.978317379951477), FRAC_CONST(0.207111388444901) },
60     { FRAC_CONST(0.975702106952667), FRAC_CONST(0.219101235270500) },
61     { FRAC_CONST(0.972939968109131), FRAC_CONST(0.231058120727539) },
62     { FRAC_CONST(0.970031261444092), FRAC_CONST(0.242980197072029) },
63     { FRAC_CONST(0.966976463794708), FRAC_CONST(0.254865676164627) },
64     { FRAC_CONST(0.963776051998138), FRAC_CONST(0.266712784767151) },
65     { FRAC_CONST(0.960430502891541), FRAC_CONST(0.278519690036774) },
66     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
67     { FRAC_CONST(0.953306019306183), FRAC_CONST(0.302005946636200) },
68     { FRAC_CONST(0.949528157711029), FRAC_CONST(0.313681751489639) },
69     { FRAC_CONST(0.945607304573059), FRAC_CONST(0.325310319662094) },
70     { FRAC_CONST(0.941544055938721), FRAC_CONST(0.336889863014221) },
71     { FRAC_CONST(0.937339007854462), FRAC_CONST(0.348418682813644) },
72     { FRAC_CONST(0.932992815971375), FRAC_CONST(0.359895050525665) },
73     { FRAC_CONST(0.928506076335907), FRAC_CONST(0.371317207813263) },
74     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
75     { FRAC_CONST(0.919113874435425), FRAC_CONST(0.393992066383362) },
76     { FRAC_CONST(0.914209723472595), FRAC_CONST(0.405241340398788) },
77     { FRAC_CONST(0.909167945384979), FRAC_CONST(0.416429579257965) },
78     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
79     { FRAC_CONST(0.898674488067627), FRAC_CONST(0.438616245985031) },
80     { FRAC_CONST(0.893224298954010), FRAC_CONST(0.449611335992813) },
81     { FRAC_CONST(0.887639641761780), FRAC_CONST(0.460538715124130) },
82     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
83     { FRAC_CONST(0.876070082187653), FRAC_CONST(0.482183754444122) },
84     { FRAC_CONST(0.870086967945099), FRAC_CONST(0.492898225784302) },
85     { FRAC_CONST(0.863972842693329), FRAC_CONST(0.503538370132446) },
86     { FRAC_CONST(0.857728600502014), FRAC_CONST(0.514102756977081) },
87     { FRAC_CONST(0.851355195045471), FRAC_CONST(0.524589717388153) },
88     { FRAC_CONST(0.844853579998016), FRAC_CONST(0.534997642040253) },
89     { FRAC_CONST(0.838224709033966), FRAC_CONST(0.545324981212616) },
90     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
91     { FRAC_CONST(0.824589252471924), FRAC_CONST(0.565731823444366) },
92     { FRAC_CONST(0.817584812641144), FRAC_CONST(0.575808227062225) },
93     { FRAC_CONST(0.810457170009613), FRAC_CONST(0.585797905921936) },
94     { FRAC_CONST(0.803207516670227), FRAC_CONST(0.595699310302734) },
95     { FRAC_CONST(0.795836925506592), FRAC_CONST(0.605511009693146) },
96     { FRAC_CONST(0.788346409797668), FRAC_CONST(0.615231633186340) },
97     { FRAC_CONST(0.780737221240997), FRAC_CONST(0.624859511852264) },
98     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
99     { FRAC_CONST(0.765167236328125), FRAC_CONST(0.643831551074982) },
100     { FRAC_CONST(0.757208824157715), FRAC_CONST(0.653172850608826) },
101     { FRAC_CONST(0.749136388301849), FRAC_CONST(0.662415802478790) },
102     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
103     { FRAC_CONST(0.732654273509979), FRAC_CONST(0.680601000785828) },
104     { FRAC_CONST(0.724247097969055), FRAC_CONST(0.689540565013886) },
105     { FRAC_CONST(0.715730786323547), FRAC_CONST(0.698376297950745) },
106     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
107     { FRAC_CONST(0.698376238346100), FRAC_CONST(0.715730845928192) },
108     { FRAC_CONST(0.689540505409241), FRAC_CONST(0.724247097969055) },
109     { FRAC_CONST(0.680601000785828), FRAC_CONST(0.732654273509979) },
110     { FRAC_CONST(0.671558916568756), FRAC_CONST(0.740951180458069) },
111     { FRAC_CONST(0.662415742874146), FRAC_CONST(0.749136388301849) },
112     { FRAC_CONST(0.653172791004181), FRAC_CONST(0.757208883762360) },
113     { FRAC_CONST(0.643831551074982), FRAC_CONST(0.765167295932770) },
114     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
115     { FRAC_CONST(0.624859452247620), FRAC_CONST(0.780737280845642) },
116     { FRAC_CONST(0.615231573581696), FRAC_CONST(0.788346409797668) },
117     { FRAC_CONST(0.605511009693146), FRAC_CONST(0.795836925506592) },
118     { FRAC_CONST(0.595699310302734), FRAC_CONST(0.803207516670227) },
119     { FRAC_CONST(0.585797846317291), FRAC_CONST(0.810457170009613) },
120     { FRAC_CONST(0.575808167457581), FRAC_CONST(0.817584812641144) },
121     { FRAC_CONST(0.565731823444366), FRAC_CONST(0.824589312076569) },
122     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
123     { FRAC_CONST(0.545324981212616), FRAC_CONST(0.838224709033966) },
124     { FRAC_CONST(0.534997642040253), FRAC_CONST(0.844853579998016) },
125     { FRAC_CONST(0.524589657783508), FRAC_CONST(0.851355195045471) },
126     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
127     { FRAC_CONST(0.503538429737091), FRAC_CONST(0.863972842693329) },
128     { FRAC_CONST(0.492898195981979), FRAC_CONST(0.870086967945099) },
129     { FRAC_CONST(0.482183724641800), FRAC_CONST(0.876070141792297) },
130     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
131     { FRAC_CONST(0.460538715124130), FRAC_CONST(0.887639641761780) },
132     { FRAC_CONST(0.449611306190491), FRAC_CONST(0.893224298954010) },
133     { FRAC_CONST(0.438616186380386), FRAC_CONST(0.898674488067627) },
134     { FRAC_CONST(0.427555114030838), FRAC_CONST(0.903989315032959) },
135     { FRAC_CONST(0.416429549455643), FRAC_CONST(0.909168004989624) },
136     { FRAC_CONST(0.405241280794144), FRAC_CONST(0.914209783077240) },
137     { FRAC_CONST(0.393991947174072), FRAC_CONST(0.919113874435425) },
138     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
139     { FRAC_CONST(0.371317148208618), FRAC_CONST(0.928506076335907) },
140     { FRAC_CONST(0.359894961118698), FRAC_CONST(0.932992815971375) },
141     { FRAC_CONST(0.348418682813644), FRAC_CONST(0.937339007854462) },
142     { FRAC_CONST(0.336889833211899), FRAC_CONST(0.941544055938721) },
143     { FRAC_CONST(0.325310230255127), FRAC_CONST(0.945607364177704) },
144     { FRAC_CONST(0.313681662082672), FRAC_CONST(0.949528217315674) },
145     { FRAC_CONST(0.302005946636200), FRAC_CONST(0.953306019306183) },
146     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
147     { FRAC_CONST(0.278519600629807), FRAC_CONST(0.960430562496185) },
148     { FRAC_CONST(0.266712754964828), FRAC_CONST(0.963776051998138) },
149     { FRAC_CONST(0.254865646362305), FRAC_CONST(0.966976463794708) },
150     { FRAC_CONST(0.242980122566223), FRAC_CONST(0.970031261444092) },
151     { FRAC_CONST(0.231058135628700), FRAC_CONST(0.972939968109131) },
152     { FRAC_CONST(0.219101220369339), FRAC_CONST(0.975702106952667) },
153     { FRAC_CONST(0.207111328840256), FRAC_CONST(0.978317379951477) },
154     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
155     { FRAC_CONST(0.183039888739586), FRAC_CONST(0.983105480670929) },
156     { FRAC_CONST(0.170961856842041), FRAC_CONST(0.985277652740479) },
157     { FRAC_CONST(0.158858075737953), FRAC_CONST(0.987301409244537) },
158     { FRAC_CONST(0.146730497479439), FRAC_CONST(0.989176511764526) },
159     { FRAC_CONST(0.134580686688423), FRAC_CONST(0.990902662277222) },
160     { FRAC_CONST(0.122410625219345), FRAC_CONST(0.992479562759399) },
161     { FRAC_CONST(0.110222116112709), FRAC_CONST(0.993906974792480) },
162     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
163     { FRAC_CONST(0.085797272622585), FRAC_CONST(0.996312618255615) },
164     { FRAC_CONST(0.073564492166042), FRAC_CONST(0.997290432453156) },
165     { FRAC_CONST(0.061320748180151), FRAC_CONST(0.998118102550507) },
166     { FRAC_CONST(0.049067649990320), FRAC_CONST(0.998795449733734) },
167     { FRAC_CONST(0.036807164549828), FRAC_CONST(0.999322414398193) },
168     { FRAC_CONST(0.024541135877371), FRAC_CONST(0.999698817729950) },
169     { FRAC_CONST(0.012271529063582), FRAC_CONST(0.999924719333649) },
170     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
171     { FRAC_CONST(-0.012271616607904), FRAC_CONST(0.999924719333649) },
172     { FRAC_CONST(-0.024541223421693), FRAC_CONST(0.999698817729950) },
173     { FRAC_CONST(-0.036807250231504), FRAC_CONST(0.999322354793549) },
174     { FRAC_CONST(-0.049067739397287), FRAC_CONST(0.998795449733734) },
175     { FRAC_CONST(-0.061320833861828), FRAC_CONST(0.998118102550507) },
176     { FRAC_CONST(-0.073564574122429), FRAC_CONST(0.997290432453156) },
177     { FRAC_CONST(-0.085797362029552), FRAC_CONST(0.996312618255615) },
178     { FRAC_CONST(-0.098017223179340), FRAC_CONST(0.995184719562531) },
179     { FRAC_CONST(-0.110222205519676), FRAC_CONST(0.993906974792480) },
180     { FRAC_CONST(-0.122410707175732), FRAC_CONST(0.992479503154755) },
181     { FRAC_CONST(-0.134580776095390), FRAC_CONST(0.990902602672577) },
182     { FRAC_CONST(-0.146730571985245), FRAC_CONST(0.989176511764526) },
183     { FRAC_CONST(-0.158858165144920), FRAC_CONST(0.987301409244537) },
184     { FRAC_CONST(-0.170961946249008), FRAC_CONST(0.985277652740479) },
185     { FRAC_CONST(-0.183039978146553), FRAC_CONST(0.983105480670929) },
186     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
187     { FRAC_CONST(-0.207111418247223), FRAC_CONST(0.978317379951477) },
188     { FRAC_CONST(-0.219101309776306), FRAC_CONST(0.975702106952667) },
189     { FRAC_CONST(-0.231058210134506), FRAC_CONST(0.972939908504486) },
190     { FRAC_CONST(-0.242980197072029), FRAC_CONST(0.970031261444092) },
191     { FRAC_CONST(-0.254865705966949), FRAC_CONST(0.966976463794708) },
192     { FRAC_CONST(-0.266712844371796), FRAC_CONST(0.963776051998138) },
193     { FRAC_CONST(-0.278519690036774), FRAC_CONST(0.960430502891541) },
194     { FRAC_CONST(-0.290284723043442), FRAC_CONST(0.956940293312073) },
195     { FRAC_CONST(-0.302006036043167), FRAC_CONST(0.953306019306183) },
196     { FRAC_CONST(-0.313681721687317), FRAC_CONST(0.949528157711029) },
197     { FRAC_CONST(-0.325310319662094), FRAC_CONST(0.945607304573059) },
198     { FRAC_CONST(-0.336889922618866), FRAC_CONST(0.941544055938721) },
199     { FRAC_CONST(-0.348418772220612), FRAC_CONST(0.937338948249817) },
200     { FRAC_CONST(-0.359895050525665), FRAC_CONST(0.932992815971375) },
201     { FRAC_CONST(-0.371317237615585), FRAC_CONST(0.928506076335907) },
202     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
203     { FRAC_CONST(-0.393992036581039), FRAC_CONST(0.919113874435425) },
204     { FRAC_CONST(-0.405241340398788), FRAC_CONST(0.914209723472595) },
205     { FRAC_CONST(-0.416429519653320), FRAC_CONST(0.909168004989624) },
206     { FRAC_CONST(-0.427555084228516), FRAC_CONST(0.903989315032959) },
207     { FRAC_CONST(-0.438616245985031), FRAC_CONST(0.898674428462982) },
208     { FRAC_CONST(-0.449611365795136), FRAC_CONST(0.893224298954010) },
209     { FRAC_CONST(-0.460538804531097), FRAC_CONST(0.887639582157135) },
210     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
211     { FRAC_CONST(-0.482183903455734), FRAC_CONST(0.876070022583008) },
212     { FRAC_CONST(-0.492898166179657), FRAC_CONST(0.870087027549744) },
213     { FRAC_CONST(-0.503538370132446), FRAC_CONST(0.863972842693329) },
214     { FRAC_CONST(-0.514102756977081), FRAC_CONST(0.857728600502014) },
215     { FRAC_CONST(-0.524589717388153), FRAC_CONST(0.851355135440826) },
216     { FRAC_CONST(-0.534997701644897), FRAC_CONST(0.844853520393372) },
217     { FRAC_CONST(-0.545325100421906), FRAC_CONST(0.838224649429321) },
218     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
219     { FRAC_CONST(-0.565731763839722), FRAC_CONST(0.824589312076569) },
220     { FRAC_CONST(-0.575808167457581), FRAC_CONST(0.817584812641144) },
221     { FRAC_CONST(-0.585797905921936), FRAC_CONST(0.810457170009613) },
222     { FRAC_CONST(-0.595699369907379), FRAC_CONST(0.803207516670227) },
223     { FRAC_CONST(-0.605511128902435), FRAC_CONST(0.795836865901947) },
224     { FRAC_CONST(-0.615231692790985), FRAC_CONST(0.788346350193024) },
225     { FRAC_CONST(-0.624859631061554), FRAC_CONST(0.780737102031708) },
226     { FRAC_CONST(-0.634393274784088), FRAC_CONST(0.773010492324829) },
227     { FRAC_CONST(-0.643831551074982), FRAC_CONST(0.765167236328125) },
228     { FRAC_CONST(-0.653172850608826), FRAC_CONST(0.757208824157715) },
229     { FRAC_CONST(-0.662415802478790), FRAC_CONST(0.749136328697205) },
230     { FRAC_CONST(-0.671559035778046), FRAC_CONST(0.740951061248779) },
231     { FRAC_CONST(-0.680601119995117), FRAC_CONST(0.732654154300690) },
232     { FRAC_CONST(-0.689540684223175), FRAC_CONST(0.724246978759766) },
233     { FRAC_CONST(-0.698376238346100), FRAC_CONST(0.715730845928192) },
234     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
235     { FRAC_CONST(-0.715730845928192), FRAC_CONST(0.698376238346100) },
236     { FRAC_CONST(-0.724247157573700), FRAC_CONST(0.689540505409241) },
237     { FRAC_CONST(-0.732654333114624), FRAC_CONST(0.680600941181183) },
238     { FRAC_CONST(-0.740951240062714), FRAC_CONST(0.671558856964111) },
239     { FRAC_CONST(-0.749136507511139), FRAC_CONST(0.662415623664856) },
240     { FRAC_CONST(-0.757208824157715), FRAC_CONST(0.653172850608826) },
241     { FRAC_CONST(-0.765167295932770), FRAC_CONST(0.643831551074982) },
242     { FRAC_CONST(-0.773010492324829), FRAC_CONST(0.634393274784088) },
243     { FRAC_CONST(-0.780737280845642), FRAC_CONST(0.624859452247620) },
244     { FRAC_CONST(-0.788346469402313), FRAC_CONST(0.615231513977051) },
245     { FRAC_CONST(-0.795836985111237), FRAC_CONST(0.605510950088501) },
246     { FRAC_CONST(-0.803207635879517), FRAC_CONST(0.595699131488800) },
247     { FRAC_CONST(-0.810457170009613), FRAC_CONST(0.585797846317291) },
248     { FRAC_CONST(-0.817584812641144), FRAC_CONST(0.575808167457581) },
249     { FRAC_CONST(-0.824589312076569), FRAC_CONST(0.565731763839722) },
250     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
251     { FRAC_CONST(-0.838224768638611), FRAC_CONST(0.545324862003326) },
252     { FRAC_CONST(-0.844853639602661), FRAC_CONST(0.534997463226318) },
253     { FRAC_CONST(-0.851355314254761), FRAC_CONST(0.524589538574219) },
254     { FRAC_CONST(-0.857728600502014), FRAC_CONST(0.514102756977081) },
255     { FRAC_CONST(-0.863972842693329), FRAC_CONST(0.503538370132446) },
256     { FRAC_CONST(-0.870087027549744), FRAC_CONST(0.492898136377335) },
257     { FRAC_CONST(-0.876070141792297), FRAC_CONST(0.482183694839478) },
258     { FRAC_CONST(-0.881921350955963), FRAC_CONST(0.471396625041962) },
259     { FRAC_CONST(-0.887639701366425), FRAC_CONST(0.460538566112518) },
260     { FRAC_CONST(-0.893224298954010), FRAC_CONST(0.449611365795136) },
261     { FRAC_CONST(-0.898674488067627), FRAC_CONST(0.438616245985031) },
262     { FRAC_CONST(-0.903989315032959), FRAC_CONST(0.427555054426193) },
263     { FRAC_CONST(-0.909168004989624), FRAC_CONST(0.416429489850998) },
264     { FRAC_CONST(-0.914209783077240), FRAC_CONST(0.405241221189499) },
265     { FRAC_CONST(-0.919113874435425), FRAC_CONST(0.393991917371750) },
266     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
267     { FRAC_CONST(-0.928506076335907), FRAC_CONST(0.371317237615585) },
268     { FRAC_CONST(-0.932992815971375), FRAC_CONST(0.359895050525665) },
269     { FRAC_CONST(-0.937339007854462), FRAC_CONST(0.348418653011322) },
270     { FRAC_CONST(-0.941544115543365), FRAC_CONST(0.336889803409576) },
271     { FRAC_CONST(-0.945607364177704), FRAC_CONST(0.325310200452805) },
272     { FRAC_CONST(-0.949528217315674), FRAC_CONST(0.313681602478027) },
273     { FRAC_CONST(-0.953306078910828), FRAC_CONST(0.302005797624588) },
274     { FRAC_CONST(-0.956940352916718), FRAC_CONST(0.290284723043442) },
275     { FRAC_CONST(-0.960430502891541), FRAC_CONST(0.278519690036774) },
276     { FRAC_CONST(-0.963776051998138), FRAC_CONST(0.266712725162506) },
277     { FRAC_CONST(-0.966976463794708), FRAC_CONST(0.254865586757660) },
278     { FRAC_CONST(-0.970031261444092), FRAC_CONST(0.242980077862740) },
279     { FRAC_CONST(-0.972939968109131), FRAC_CONST(0.231057971715927) },
280     { FRAC_CONST(-0.975702166557312), FRAC_CONST(0.219101071357727) },
281     { FRAC_CONST(-0.978317379951477), FRAC_CONST(0.207111403346062) },
282     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
283     { FRAC_CONST(-0.983105480670929), FRAC_CONST(0.183039844036102) },
284     { FRAC_CONST(-0.985277652740479), FRAC_CONST(0.170961812138557) },
285     { FRAC_CONST(-0.987301409244537), FRAC_CONST(0.158858031034470) },
286     { FRAC_CONST(-0.989176511764526), FRAC_CONST(0.146730333566666) },
287     { FRAC_CONST(-0.990902662277222), FRAC_CONST(0.134580522775650) },
288     { FRAC_CONST(-0.992479503154755), FRAC_CONST(0.122410699725151) },
289     { FRAC_CONST(-0.993906974792480), FRAC_CONST(0.110222198069096) },
290     { FRAC_CONST(-0.995184719562531), FRAC_CONST(0.098017096519470) },
291     { FRAC_CONST(-0.996312618255615), FRAC_CONST(0.085797227919102) },
292     { FRAC_CONST(-0.997290492057800), FRAC_CONST(0.073564447462559) },
293     { FRAC_CONST(-0.998118102550507), FRAC_CONST(0.061320584267378) },
294     { FRAC_CONST(-0.998795449733734), FRAC_CONST(0.049067486077547) },
295     { FRAC_CONST(-0.999322354793549), FRAC_CONST(0.036807239055634) },
296     { FRAC_CONST(-0.999698817729950), FRAC_CONST(0.024541210383177) },
297     { FRAC_CONST(-0.999924719333649), FRAC_CONST(0.012271485291421) },
298     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
299     { FRAC_CONST(0.999698817729950), FRAC_CONST(0.024541229009628) },
300     { FRAC_CONST(0.998795449733734), FRAC_CONST(0.049067676067352) },
301     { FRAC_CONST(0.997290432453156), FRAC_CONST(0.073564566671848) },
302     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
303     { FRAC_CONST(0.992479562759399), FRAC_CONST(0.122410677373409) },
304     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
305     { FRAC_CONST(0.985277652740479), FRAC_CONST(0.170961901545525) },
306     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
307     { FRAC_CONST(0.975702106952667), FRAC_CONST(0.219101235270500) },
308     { FRAC_CONST(0.970031261444092), FRAC_CONST(0.242980197072029) },
309     { FRAC_CONST(0.963776051998138), FRAC_CONST(0.266712784767151) },
310     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
311     { FRAC_CONST(0.949528157711029), FRAC_CONST(0.313681751489639) },
312     { FRAC_CONST(0.941544055938721), FRAC_CONST(0.336889863014221) },
313     { FRAC_CONST(0.932992815971375), FRAC_CONST(0.359895050525665) },
314     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
315     { FRAC_CONST(0.914209723472595), FRAC_CONST(0.405241340398788) },
316     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
317     { FRAC_CONST(0.893224298954010), FRAC_CONST(0.449611335992813) },
318     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
319     { FRAC_CONST(0.870086967945099), FRAC_CONST(0.492898225784302) },
320     { FRAC_CONST(0.857728600502014), FRAC_CONST(0.514102756977081) },
321     { FRAC_CONST(0.844853579998016), FRAC_CONST(0.534997642040253) },
322     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
323     { FRAC_CONST(0.817584812641144), FRAC_CONST(0.575808227062225) },
324     { FRAC_CONST(0.803207516670227), FRAC_CONST(0.595699310302734) },
325     { FRAC_CONST(0.788346409797668), FRAC_CONST(0.615231633186340) },
326     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
327     { FRAC_CONST(0.757208824157715), FRAC_CONST(0.653172850608826) },
328     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
329     { FRAC_CONST(0.724247097969055), FRAC_CONST(0.689540565013886) },
330     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
331     { FRAC_CONST(0.689540505409241), FRAC_CONST(0.724247097969055) },
332     { FRAC_CONST(0.671558916568756), FRAC_CONST(0.740951180458069) },
333     { FRAC_CONST(0.653172791004181), FRAC_CONST(0.757208883762360) },
334     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
335     { FRAC_CONST(0.615231573581696), FRAC_CONST(0.788346409797668) },
336     { FRAC_CONST(0.595699310302734), FRAC_CONST(0.803207516670227) },
337     { FRAC_CONST(0.575808167457581), FRAC_CONST(0.817584812641144) },
338     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
339     { FRAC_CONST(0.534997642040253), FRAC_CONST(0.844853579998016) },
340     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
341     { FRAC_CONST(0.492898195981979), FRAC_CONST(0.870086967945099) },
342     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
343     { FRAC_CONST(0.449611306190491), FRAC_CONST(0.893224298954010) },
344     { FRAC_CONST(0.427555114030838), FRAC_CONST(0.903989315032959) },
345     { FRAC_CONST(0.405241280794144), FRAC_CONST(0.914209783077240) },
346     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
347     { FRAC_CONST(0.359894961118698), FRAC_CONST(0.932992815971375) },
348     { FRAC_CONST(0.336889833211899), FRAC_CONST(0.941544055938721) },
349     { FRAC_CONST(0.313681662082672), FRAC_CONST(0.949528217315674) },
350     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
351     { FRAC_CONST(0.266712754964828), FRAC_CONST(0.963776051998138) },
352     { FRAC_CONST(0.242980122566223), FRAC_CONST(0.970031261444092) },
353     { FRAC_CONST(0.219101220369339), FRAC_CONST(0.975702106952667) },
354     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
355     { FRAC_CONST(0.170961856842041), FRAC_CONST(0.985277652740479) },
356     { FRAC_CONST(0.146730497479439), FRAC_CONST(0.989176511764526) },
357     { FRAC_CONST(0.122410625219345), FRAC_CONST(0.992479562759399) },
358     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
359     { FRAC_CONST(0.073564492166042), FRAC_CONST(0.997290432453156) },
360     { FRAC_CONST(0.049067649990320), FRAC_CONST(0.998795449733734) },
361     { FRAC_CONST(0.024541135877371), FRAC_CONST(0.999698817729950) },
362     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
363     { FRAC_CONST(0.998795449733734), FRAC_CONST(0.049067676067352) },
364     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
365     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
366     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
367     { FRAC_CONST(0.970031261444092), FRAC_CONST(0.242980197072029) },
368     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
369     { FRAC_CONST(0.941544055938721), FRAC_CONST(0.336889863014221) },
370     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
371     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
372     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
373     { FRAC_CONST(0.857728600502014), FRAC_CONST(0.514102756977081) },
374     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
375     { FRAC_CONST(0.803207516670227), FRAC_CONST(0.595699310302734) },
376     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
377     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
378     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
379     { FRAC_CONST(0.671558916568756), FRAC_CONST(0.740951180458069) },
380     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
381     { FRAC_CONST(0.595699310302734), FRAC_CONST(0.803207516670227) },
382     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
383     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
384     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
385     { FRAC_CONST(0.427555114030838), FRAC_CONST(0.903989315032959) },
386     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
387     { FRAC_CONST(0.336889833211899), FRAC_CONST(0.941544055938721) },
388     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
389     { FRAC_CONST(0.242980122566223), FRAC_CONST(0.970031261444092) },
390     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
391     { FRAC_CONST(0.146730497479439), FRAC_CONST(0.989176511764526) },
392     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
393     { FRAC_CONST(0.049067649990320), FRAC_CONST(0.998795449733734) },
394     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
395     { FRAC_CONST(-0.049067739397287), FRAC_CONST(0.998795449733734) },
396     { FRAC_CONST(-0.098017223179340), FRAC_CONST(0.995184719562531) },
397     { FRAC_CONST(-0.146730571985245), FRAC_CONST(0.989176511764526) },
398     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
399     { FRAC_CONST(-0.242980197072029), FRAC_CONST(0.970031261444092) },
400     { FRAC_CONST(-0.290284723043442), FRAC_CONST(0.956940293312073) },
401     { FRAC_CONST(-0.336889922618866), FRAC_CONST(0.941544055938721) },
402     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
403     { FRAC_CONST(-0.427555084228516), FRAC_CONST(0.903989315032959) },
404     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
405     { FRAC_CONST(-0.514102756977081), FRAC_CONST(0.857728600502014) },
406     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
407     { FRAC_CONST(-0.595699369907379), FRAC_CONST(0.803207516670227) },
408     { FRAC_CONST(-0.634393274784088), FRAC_CONST(0.773010492324829) },
409     { FRAC_CONST(-0.671559035778046), FRAC_CONST(0.740951061248779) },
410     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
411     { FRAC_CONST(-0.740951240062714), FRAC_CONST(0.671558856964111) },
412     { FRAC_CONST(-0.773010492324829), FRAC_CONST(0.634393274784088) },
413     { FRAC_CONST(-0.803207635879517), FRAC_CONST(0.595699131488800) },
414     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
415     { FRAC_CONST(-0.857728600502014), FRAC_CONST(0.514102756977081) },
416     { FRAC_CONST(-0.881921350955963), FRAC_CONST(0.471396625041962) },
417     { FRAC_CONST(-0.903989315032959), FRAC_CONST(0.427555054426193) },
418     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
419     { FRAC_CONST(-0.941544115543365), FRAC_CONST(0.336889803409576) },
420     { FRAC_CONST(-0.956940352916718), FRAC_CONST(0.290284723043442) },
421     { FRAC_CONST(-0.970031261444092), FRAC_CONST(0.242980077862740) },
422     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
423     { FRAC_CONST(-0.989176511764526), FRAC_CONST(0.146730333566666) },
424     { FRAC_CONST(-0.995184719562531), FRAC_CONST(0.098017096519470) },
425     { FRAC_CONST(-0.998795449733734), FRAC_CONST(0.049067486077547) },
426     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
427     { FRAC_CONST(0.997290432453156), FRAC_CONST(0.073564566671848) },
428     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
429     { FRAC_CONST(0.975702106952667), FRAC_CONST(0.219101235270500) },
430     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
431     { FRAC_CONST(0.932992815971375), FRAC_CONST(0.359895050525665) },
432     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
433     { FRAC_CONST(0.870086967945099), FRAC_CONST(0.492898225784302) },
434     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
435     { FRAC_CONST(0.788346469402313), FRAC_CONST(0.615231573581696) },
436     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
437     { FRAC_CONST(0.689540505409241), FRAC_CONST(0.724247097969055) },
438     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
439     { FRAC_CONST(0.575808227062225), FRAC_CONST(0.817584812641144) },
440     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
441     { FRAC_CONST(0.449611306190491), FRAC_CONST(0.893224298954010) },
442     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
443     { FRAC_CONST(0.313681751489639), FRAC_CONST(0.949528157711029) },
444     { FRAC_CONST(0.242980241775513), FRAC_CONST(0.970031261444092) },
445     { FRAC_CONST(0.170961856842041), FRAC_CONST(0.985277652740479) },
446     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
447     { FRAC_CONST(0.024541255086660), FRAC_CONST(0.999698817729950) },
448     { FRAC_CONST(-0.049067739397287), FRAC_CONST(0.998795449733734) },
449     { FRAC_CONST(-0.122410707175732), FRAC_CONST(0.992479503154755) },
450     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
451     { FRAC_CONST(-0.266712725162506), FRAC_CONST(0.963776051998138) },
452     { FRAC_CONST(-0.336889803409576), FRAC_CONST(0.941544055938721) },
453     { FRAC_CONST(-0.405241340398788), FRAC_CONST(0.914209723472595) },
454     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
455     { FRAC_CONST(-0.534997701644897), FRAC_CONST(0.844853520393372) },
456     { FRAC_CONST(-0.595699369907379), FRAC_CONST(0.803207516670227) },
457     { FRAC_CONST(-0.653172850608826), FRAC_CONST(0.757208824157715) },
458     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
459     { FRAC_CONST(-0.757208824157715), FRAC_CONST(0.653172850608826) },
460     { FRAC_CONST(-0.803207516670227), FRAC_CONST(0.595699369907379) },
461     { FRAC_CONST(-0.844853520393372), FRAC_CONST(0.534997701644897) },
462     { FRAC_CONST(-0.881921231746674), FRAC_CONST(0.471396833658218) },
463     { FRAC_CONST(-0.914209783077240), FRAC_CONST(0.405241221189499) },
464     { FRAC_CONST(-0.941544115543365), FRAC_CONST(0.336889803409576) },
465     { FRAC_CONST(-0.963776051998138), FRAC_CONST(0.266712725162506) },
466     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
467     { FRAC_CONST(-0.992479503154755), FRAC_CONST(0.122410699725151) },
468     { FRAC_CONST(-0.998795449733734), FRAC_CONST(0.049067724496126) },
469     { FRAC_CONST(-0.999698817729950), FRAC_CONST(-0.024541147053242) },
470     { FRAC_CONST(-0.995184719562531), FRAC_CONST(-0.098017267882824) },
471     { FRAC_CONST(-0.985277652740479), FRAC_CONST(-0.170961990952492) },
472     { FRAC_CONST(-0.970031261444092), FRAC_CONST(-0.242980241775513) },
473     { FRAC_CONST(-0.949528157711029), FRAC_CONST(-0.313681781291962) },
474     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
475     { FRAC_CONST(-0.893224298954010), FRAC_CONST(-0.449611306190491) },
476     { FRAC_CONST(-0.857728660106659), FRAC_CONST(-0.514102697372437) },
477     { FRAC_CONST(-0.817584872245789), FRAC_CONST(-0.575808107852936) },
478     { FRAC_CONST(-0.773010551929474), FRAC_CONST(-0.634393215179443) },
479     { FRAC_CONST(-0.724247038364410), FRAC_CONST(-0.689540624618530) },
480     { FRAC_CONST(-0.671558916568756), FRAC_CONST(-0.740951180458069) },
481     { FRAC_CONST(-0.615231573581696), FRAC_CONST(-0.788346469402313) },
482     { FRAC_CONST(-0.555570006370544), FRAC_CONST(-0.831469774246216) },
483     { FRAC_CONST(-0.492898195981979), FRAC_CONST(-0.870086967945099) },
484     { FRAC_CONST(-0.427554935216904), FRAC_CONST(-0.903989374637604) },
485     { FRAC_CONST(-0.359895110130310), FRAC_CONST(-0.932992756366730) },
486     { FRAC_CONST(-0.290284544229507), FRAC_CONST(-0.956940352916718) },
487     { FRAC_CONST(-0.219101369380951), FRAC_CONST(-0.975702106952667) },
488     { FRAC_CONST(-0.146730408072472), FRAC_CONST(-0.989176511764526) },
489     { FRAC_CONST(-0.073564760386944), FRAC_CONST(-0.997290432453156) },
490     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
491     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
492     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
493     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
494     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
495     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
496     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
497     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
498     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
499     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
500     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
501     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
502     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
503     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
504     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
505     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
506     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
507     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
508     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
509     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
510     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
511     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
512     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
513     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
514     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
515     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
516     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
517     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
518     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
519     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
520     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
521     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
522     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
523     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
524     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
525     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
526     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
527     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
528     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
529     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
530     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
531     { FRAC_CONST(-0.881921231746674), FRAC_CONST(0.471396833658218) },
532     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
533     { FRAC_CONST(-0.995184719562531), FRAC_CONST(-0.098017267882824) },
534     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
535     { FRAC_CONST(-0.773010551929474), FRAC_CONST(-0.634393215179443) },
536     { FRAC_CONST(-0.555570006370544), FRAC_CONST(-0.831469774246216) },
537     { FRAC_CONST(-0.290284544229507), FRAC_CONST(-0.956940352916718) },
538     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
539     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
540     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
541     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
542     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
543     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
544     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
545     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
546     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
547     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
548     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
549     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
550     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
551     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
552     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
553     { FRAC_CONST(0.000000011924881), FRAC_CONST(-1.000000000000000) }
554 };
555
556 #ifdef ALLOW_SMALL_FRAMELENGTH
557 ALIGN static const complex_t cfft_tab_480[] =
558 {
559     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
560     { FRAC_CONST(0.999914348125458), FRAC_CONST(0.013089596293867) },
561     { FRAC_CONST(0.999657332897186), FRAC_CONST(0.026176949962974) },
562     { FRAC_CONST(0.999229013919830), FRAC_CONST(0.039259817451239) },
563     { FRAC_CONST(0.998629510402679), FRAC_CONST(0.052335958927870) },
564     { FRAC_CONST(0.997858941555023), FRAC_CONST(0.065403133630753) },
565     { FRAC_CONST(0.996917307376862), FRAC_CONST(0.078459098935127) },
566     { FRAC_CONST(0.995804905891418), FRAC_CONST(0.091501623392105) },
567     { FRAC_CONST(0.994521915912628), FRAC_CONST(0.104528464376926) },
568     { FRAC_CONST(0.993068456649780), FRAC_CONST(0.117537401616573) },
569     { FRAC_CONST(0.991444885730743), FRAC_CONST(0.130526199936867) },
570     { FRAC_CONST(0.989651381969452), FRAC_CONST(0.143492624163628) },
571     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
572     { FRAC_CONST(0.985556066036224), FRAC_CONST(0.169349506497383) },
573     { FRAC_CONST(0.983254909515381), FRAC_CONST(0.182235524058342) },
574     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
575     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
576     { FRAC_CONST(0.975342333316803), FRAC_CONST(0.220697447657585) },
577     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
578     { FRAC_CONST(0.969230890274048), FRAC_CONST(0.246153295040131) },
579     { FRAC_CONST(0.965925812721252), FRAC_CONST(0.258819043636322) },
580     { FRAC_CONST(0.962455213069916), FRAC_CONST(0.271440446376801) },
581     { FRAC_CONST(0.958819746971130), FRAC_CONST(0.284015357494354) },
582     { FRAC_CONST(0.955019950866699), FRAC_CONST(0.296541601419449) },
583     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
584     { FRAC_CONST(0.946930110454559), FRAC_CONST(0.321439445018768) },
585     { FRAC_CONST(0.942641496658325), FRAC_CONST(0.333806872367859) },
586     { FRAC_CONST(0.938191354274750), FRAC_CONST(0.346117079257965) },
587     { FRAC_CONST(0.933580398559570), FRAC_CONST(0.358367949724197) },
588     { FRAC_CONST(0.928809583187103), FRAC_CONST(0.370557427406311) },
589     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
590     { FRAC_CONST(0.918791174888611), FRAC_CONST(0.394743889570236) },
591     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
592     { FRAC_CONST(0.908143162727356), FRAC_CONST(0.418659746646881) },
593     { FRAC_CONST(0.902585268020630), FRAC_CONST(0.430511116981506) },
594     { FRAC_CONST(0.896872758865356), FRAC_CONST(0.442288726568222) },
595     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
596     { FRAC_CONST(0.884987652301788), FRAC_CONST(0.465614527463913) },
597     { FRAC_CONST(0.878817081451416), FRAC_CONST(0.477158784866333) },
598     { FRAC_CONST(0.872496008872986), FRAC_CONST(0.488621264696121) },
599     { FRAC_CONST(0.866025388240814), FRAC_CONST(0.500000000000000) },
600     { FRAC_CONST(0.859406411647797), FRAC_CONST(0.511293113231659) },
601     { FRAC_CONST(0.852640151977539), FRAC_CONST(0.522498548030853) },
602     { FRAC_CONST(0.845727801322937), FRAC_CONST(0.533614516258240) },
603     { FRAC_CONST(0.838670551776886), FRAC_CONST(0.544639050960541) },
604     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
605     { FRAC_CONST(0.824126183986664), FRAC_CONST(0.566406250000000) },
606     { FRAC_CONST(0.816641509532928), FRAC_CONST(0.577145218849182) },
607     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
608     { FRAC_CONST(0.801253795623779), FRAC_CONST(0.598324596881866) },
609     { FRAC_CONST(0.793353319168091), FRAC_CONST(0.608761429786682) },
610     { FRAC_CONST(0.785316884517670), FRAC_CONST(0.619093954563141) },
611     { FRAC_CONST(0.777145922183990), FRAC_CONST(0.629320383071899) },
612     { FRAC_CONST(0.768841803073883), FRAC_CONST(0.639438986778259) },
613     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
614     { FRAC_CONST(0.751839756965637), FRAC_CONST(0.659345865249634) },
615     { FRAC_CONST(0.743144810199738), FRAC_CONST(0.669130623340607) },
616     { FRAC_CONST(0.734322488307953), FRAC_CONST(0.678800761699677) },
617     { FRAC_CONST(0.725374400615692), FRAC_CONST(0.688354551792145) },
618     { FRAC_CONST(0.716301918029785), FRAC_CONST(0.697790503501892) },
619     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
620     { FRAC_CONST(0.697790443897247), FRAC_CONST(0.716301977634430) },
621     { FRAC_CONST(0.688354551792145), FRAC_CONST(0.725374400615692) },
622     { FRAC_CONST(0.678800702095032), FRAC_CONST(0.734322547912598) },
623     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
624     { FRAC_CONST(0.659345805644989), FRAC_CONST(0.751839816570282) },
625     { FRAC_CONST(0.649448037147522), FRAC_CONST(0.760405957698822) },
626     { FRAC_CONST(0.639438986778259), FRAC_CONST(0.768841862678528) },
627     { FRAC_CONST(0.629320383071899), FRAC_CONST(0.777145981788635) },
628     { FRAC_CONST(0.619093954563141), FRAC_CONST(0.785316944122314) },
629     { FRAC_CONST(0.608761370182037), FRAC_CONST(0.793353378772736) },
630     { FRAC_CONST(0.598324596881866), FRAC_CONST(0.801253855228424) },
631     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
632     { FRAC_CONST(0.577145159244537), FRAC_CONST(0.816641569137573) },
633     { FRAC_CONST(0.566406250000000), FRAC_CONST(0.824126183986664) },
634     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
635     { FRAC_CONST(0.544638991355896), FRAC_CONST(0.838670611381531) },
636     { FRAC_CONST(0.533614516258240), FRAC_CONST(0.845727801322937) },
637     { FRAC_CONST(0.522498488426209), FRAC_CONST(0.852640211582184) },
638     { FRAC_CONST(0.511293113231659), FRAC_CONST(0.859406411647797) },
639     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
640     { FRAC_CONST(0.488621175289154), FRAC_CONST(0.872496068477631) },
641     { FRAC_CONST(0.477158755064011), FRAC_CONST(0.878817141056061) },
642     { FRAC_CONST(0.465614467859268), FRAC_CONST(0.884987652301788) },
643     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
644     { FRAC_CONST(0.442288666963577), FRAC_CONST(0.896872758865356) },
645     { FRAC_CONST(0.430511027574539), FRAC_CONST(0.902585327625275) },
646     { FRAC_CONST(0.418659746646881), FRAC_CONST(0.908143162727356) },
647     { FRAC_CONST(0.406736612319946), FRAC_CONST(0.913545489311218) },
648     { FRAC_CONST(0.394743800163269), FRAC_CONST(0.918791234493256) },
649     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
650     { FRAC_CONST(0.370557397603989), FRAC_CONST(0.928809583187103) },
651     { FRAC_CONST(0.358367860317230), FRAC_CONST(0.933580458164215) },
652     { FRAC_CONST(0.346117049455643), FRAC_CONST(0.938191354274750) },
653     { FRAC_CONST(0.333806812763214), FRAC_CONST(0.942641496658325) },
654     { FRAC_CONST(0.321439474821091), FRAC_CONST(0.946930110454559) },
655     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
656     { FRAC_CONST(0.296541512012482), FRAC_CONST(0.955019950866699) },
657     { FRAC_CONST(0.284015327692032), FRAC_CONST(0.958819746971130) },
658     { FRAC_CONST(0.271440386772156), FRAC_CONST(0.962455272674561) },
659     { FRAC_CONST(0.258819073438644), FRAC_CONST(0.965925812721252) },
660     { FRAC_CONST(0.246153265237808), FRAC_CONST(0.969230890274048) },
661     { FRAC_CONST(0.233445301651955), FRAC_CONST(0.972369909286499) },
662     { FRAC_CONST(0.220697447657585), FRAC_CONST(0.975342333316803) },
663     { FRAC_CONST(0.207911655306816), FRAC_CONST(0.978147625923157) },
664     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
665     { FRAC_CONST(0.182235524058342), FRAC_CONST(0.983254909515381) },
666     { FRAC_CONST(0.169349446892738), FRAC_CONST(0.985556066036224) },
667     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
668     { FRAC_CONST(0.143492594361305), FRAC_CONST(0.989651381969452) },
669     { FRAC_CONST(0.130526125431061), FRAC_CONST(0.991444885730743) },
670     { FRAC_CONST(0.117537401616573), FRAC_CONST(0.993068456649780) },
671     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
672     { FRAC_CONST(0.091501533985138), FRAC_CONST(0.995804905891418) },
673     { FRAC_CONST(0.078459084033966), FRAC_CONST(0.996917307376862) },
674     { FRAC_CONST(0.065403074026108), FRAC_CONST(0.997858941555023) },
675     { FRAC_CONST(0.052335973829031), FRAC_CONST(0.998629510402679) },
676     { FRAC_CONST(0.039259787648916), FRAC_CONST(0.999229013919830) },
677     { FRAC_CONST(0.026176875457168), FRAC_CONST(0.999657332897186) },
678     { FRAC_CONST(0.013089597225189), FRAC_CONST(0.999914348125458) },
679     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
680     { FRAC_CONST(-0.013089684769511), FRAC_CONST(0.999914348125458) },
681     { FRAC_CONST(-0.026176963001490), FRAC_CONST(0.999657332897186) },
682     { FRAC_CONST(-0.039259877055883), FRAC_CONST(0.999229013919830) },
683     { FRAC_CONST(-0.052336059510708), FRAC_CONST(0.998629510402679) },
684     { FRAC_CONST(-0.065403163433075), FRAC_CONST(0.997858941555023) },
685     { FRAC_CONST(-0.078459173440933), FRAC_CONST(0.996917307376862) },
686     { FRAC_CONST(-0.091501623392105), FRAC_CONST(0.995804905891418) },
687     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
688     { FRAC_CONST(-0.117537491023541), FRAC_CONST(0.993068456649780) },
689     { FRAC_CONST(-0.130526214838028), FRAC_CONST(0.991444885730743) },
690     { FRAC_CONST(-0.143492683768272), FRAC_CONST(0.989651381969452) },
691     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
692     { FRAC_CONST(-0.169349536299706), FRAC_CONST(0.985556066036224) },
693     { FRAC_CONST(-0.182235598564148), FRAC_CONST(0.983254909515381) },
694     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
695     { FRAC_CONST(-0.207911744713783), FRAC_CONST(0.978147566318512) },
696     { FRAC_CONST(-0.220697522163391), FRAC_CONST(0.975342273712158) },
697     { FRAC_CONST(-0.233445391058922), FRAC_CONST(0.972369909286499) },
698     { FRAC_CONST(-0.246153354644775), FRAC_CONST(0.969230890274048) },
699     { FRAC_CONST(-0.258819162845612), FRAC_CONST(0.965925812721252) },
700     { FRAC_CONST(-0.271440476179123), FRAC_CONST(0.962455213069916) },
701     { FRAC_CONST(-0.284015417098999), FRAC_CONST(0.958819687366486) },
702     { FRAC_CONST(-0.296541571617126), FRAC_CONST(0.955019950866699) },
703     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
704     { FRAC_CONST(-0.321439564228058), FRAC_CONST(0.946930110454559) },
705     { FRAC_CONST(-0.333806872367859), FRAC_CONST(0.942641496658325) },
706     { FRAC_CONST(-0.346117109060287), FRAC_CONST(0.938191294670105) },
707     { FRAC_CONST(-0.358367949724197), FRAC_CONST(0.933580458164215) },
708     { FRAC_CONST(-0.370557487010956), FRAC_CONST(0.928809523582459) },
709     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
710     { FRAC_CONST(-0.394743859767914), FRAC_CONST(0.918791234493256) },
711     { FRAC_CONST(-0.406736701726913), FRAC_CONST(0.913545429706573) },
712     { FRAC_CONST(-0.418659836053848), FRAC_CONST(0.908143103122711) },
713     { FRAC_CONST(-0.430511116981506), FRAC_CONST(0.902585268020630) },
714     { FRAC_CONST(-0.442288637161255), FRAC_CONST(0.896872758865356) },
715     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
716     { FRAC_CONST(-0.465614557266235), FRAC_CONST(0.884987592697144) },
717     { FRAC_CONST(-0.477158725261688), FRAC_CONST(0.878817141056061) },
718     { FRAC_CONST(-0.488621354103088), FRAC_CONST(0.872495949268341) },
719     { FRAC_CONST(-0.500000059604645), FRAC_CONST(0.866025388240814) },
720     { FRAC_CONST(-0.511293053627014), FRAC_CONST(0.859406411647797) },
721     { FRAC_CONST(-0.522498667240143), FRAC_CONST(0.852640092372894) },
722     { FRAC_CONST(-0.533614575862885), FRAC_CONST(0.845727801322937) },
723     { FRAC_CONST(-0.544639050960541), FRAC_CONST(0.838670551776886) },
724     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
725     { FRAC_CONST(-0.566406309604645), FRAC_CONST(0.824126124382019) },
726     { FRAC_CONST(-0.577145218849182), FRAC_CONST(0.816641569137573) },
727     { FRAC_CONST(-0.587785184383392), FRAC_CONST(0.809017002582550) },
728     { FRAC_CONST(-0.598324656486511), FRAC_CONST(0.801253736019135) },
729     { FRAC_CONST(-0.608761429786682), FRAC_CONST(0.793353319168091) },
730     { FRAC_CONST(-0.619093894958496), FRAC_CONST(0.785316944122314) },
731     { FRAC_CONST(-0.629320502281189), FRAC_CONST(0.777145862579346) },
732     { FRAC_CONST(-0.639439046382904), FRAC_CONST(0.768841803073883) },
733     { FRAC_CONST(-0.649448037147522), FRAC_CONST(0.760405957698822) },
734     { FRAC_CONST(-0.659345924854279), FRAC_CONST(0.751839697360992) },
735     { FRAC_CONST(-0.669130682945251), FRAC_CONST(0.743144810199738) },
736     { FRAC_CONST(-0.678800761699677), FRAC_CONST(0.734322488307953) },
737     { FRAC_CONST(-0.688354671001434), FRAC_CONST(0.725374281406403) },
738     { FRAC_CONST(-0.697790503501892), FRAC_CONST(0.716301858425140) },
739     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
740     { FRAC_CONST(-0.716302037239075), FRAC_CONST(0.697790324687958) },
741     { FRAC_CONST(-0.725374460220337), FRAC_CONST(0.688354492187500) },
742     { FRAC_CONST(-0.734322547912598), FRAC_CONST(0.678800702095032) },
743     { FRAC_CONST(-0.743144929409027), FRAC_CONST(0.669130444526672) },
744     { FRAC_CONST(-0.751839876174927), FRAC_CONST(0.659345746040344) },
745     { FRAC_CONST(-0.760406017303467), FRAC_CONST(0.649448037147522) },
746     { FRAC_CONST(-0.768841803073883), FRAC_CONST(0.639439046382904) },
747     { FRAC_CONST(-0.777146041393280), FRAC_CONST(0.629320263862610) },
748     { FRAC_CONST(-0.785316944122314), FRAC_CONST(0.619093894958496) },
749     { FRAC_CONST(-0.793353319168091), FRAC_CONST(0.608761429786682) },
750     { FRAC_CONST(-0.801253914833069), FRAC_CONST(0.598324477672577) },
751     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
752     { FRAC_CONST(-0.816641569137573), FRAC_CONST(0.577145218849182) },
753     { FRAC_CONST(-0.824126303195953), FRAC_CONST(0.566406130790710) },
754     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
755     { FRAC_CONST(-0.838670551776886), FRAC_CONST(0.544639050960541) },
756     { FRAC_CONST(-0.845727920532227), FRAC_CONST(0.533614337444305) },
757     { FRAC_CONST(-0.852640211582184), FRAC_CONST(0.522498488426209) },
758     { FRAC_CONST(-0.859406411647797), FRAC_CONST(0.511293053627014) },
759     { FRAC_CONST(-0.866025388240814), FRAC_CONST(0.500000059604645) },
760     { FRAC_CONST(-0.872496068477631), FRAC_CONST(0.488621145486832) },
761     { FRAC_CONST(-0.878817141056061), FRAC_CONST(0.477158725261688) },
762     { FRAC_CONST(-0.884987652301788), FRAC_CONST(0.465614557266235) },
763     { FRAC_CONST(-0.891006588935852), FRAC_CONST(0.453990370035172) },
764     { FRAC_CONST(-0.896872758865356), FRAC_CONST(0.442288637161255) },
765     { FRAC_CONST(-0.902585268020630), FRAC_CONST(0.430511116981506) },
766     { FRAC_CONST(-0.908143222332001), FRAC_CONST(0.418659597635269) },
767     { FRAC_CONST(-0.913545489311218), FRAC_CONST(0.406736582517624) },
768     { FRAC_CONST(-0.918791234493256), FRAC_CONST(0.394743859767914) },
769     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
770     { FRAC_CONST(-0.928809583187103), FRAC_CONST(0.370557337999344) },
771     { FRAC_CONST(-0.933580458164215), FRAC_CONST(0.358367919921875) },
772     { FRAC_CONST(-0.938191413879395), FRAC_CONST(0.346116900444031) },
773     { FRAC_CONST(-0.942641556262970), FRAC_CONST(0.333806753158569) },
774     { FRAC_CONST(-0.946930170059204), FRAC_CONST(0.321439445018768) },
775     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
776     { FRAC_CONST(-0.955020010471344), FRAC_CONST(0.296541452407837) },
777     { FRAC_CONST(-0.958819746971130), FRAC_CONST(0.284015297889709) },
778     { FRAC_CONST(-0.962455213069916), FRAC_CONST(0.271440476179123) },
779     { FRAC_CONST(-0.965925872325897), FRAC_CONST(0.258818924427032) },
780     { FRAC_CONST(-0.969230949878693), FRAC_CONST(0.246153235435486) },
781     { FRAC_CONST(-0.972369909286499), FRAC_CONST(0.233445376157761) },
782     { FRAC_CONST(-0.975342333316803), FRAC_CONST(0.220697283744812) },
783     { FRAC_CONST(-0.978147625923157), FRAC_CONST(0.207911610603333) },
784     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
785     { FRAC_CONST(-0.983254909515381), FRAC_CONST(0.182235360145569) },
786     { FRAC_CONST(-0.985556066036224), FRAC_CONST(0.169349402189255) },
787     { FRAC_CONST(-0.987688362598419), FRAC_CONST(0.156434446573257) },
788     { FRAC_CONST(-0.989651441574097), FRAC_CONST(0.143492430448532) },
789     { FRAC_CONST(-0.991444885730743), FRAC_CONST(0.130526080727577) },
790     { FRAC_CONST(-0.993068456649780), FRAC_CONST(0.117537356913090) },
791     { FRAC_CONST(-0.994521915912628), FRAC_CONST(0.104528494179249) },
792     { FRAC_CONST(-0.995804965496063), FRAC_CONST(0.091501489281654) },
793     { FRAC_CONST(-0.996917366981506), FRAC_CONST(0.078459039330482) },
794     { FRAC_CONST(-0.997858941555023), FRAC_CONST(0.065403148531914) },
795     { FRAC_CONST(-0.998629570007324), FRAC_CONST(0.052335809916258) },
796     { FRAC_CONST(-0.999229013919830), FRAC_CONST(0.039259742945433) },
797     { FRAC_CONST(-0.999657332897186), FRAC_CONST(0.026176951825619) },
798     { FRAC_CONST(-0.999914348125458), FRAC_CONST(0.013089434243739) },
799     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
800     { FRAC_CONST(0.999657332897186), FRAC_CONST(0.026176949962974) },
801     { FRAC_CONST(0.998629510402679), FRAC_CONST(0.052335958927870) },
802     { FRAC_CONST(0.996917307376862), FRAC_CONST(0.078459098935127) },
803     { FRAC_CONST(0.994521915912628), FRAC_CONST(0.104528464376926) },
804     { FRAC_CONST(0.991444885730743), FRAC_CONST(0.130526199936867) },
805     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
806     { FRAC_CONST(0.983254909515381), FRAC_CONST(0.182235524058342) },
807     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
808     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
809     { FRAC_CONST(0.965925812721252), FRAC_CONST(0.258819043636322) },
810     { FRAC_CONST(0.958819746971130), FRAC_CONST(0.284015357494354) },
811     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
812     { FRAC_CONST(0.942641496658325), FRAC_CONST(0.333806872367859) },
813     { FRAC_CONST(0.933580398559570), FRAC_CONST(0.358367949724197) },
814     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
815     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
816     { FRAC_CONST(0.902585268020630), FRAC_CONST(0.430511116981506) },
817     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
818     { FRAC_CONST(0.878817081451416), FRAC_CONST(0.477158784866333) },
819     { FRAC_CONST(0.866025388240814), FRAC_CONST(0.500000000000000) },
820     { FRAC_CONST(0.852640151977539), FRAC_CONST(0.522498548030853) },
821     { FRAC_CONST(0.838670551776886), FRAC_CONST(0.544639050960541) },
822     { FRAC_CONST(0.824126183986664), FRAC_CONST(0.566406250000000) },
823     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
824     { FRAC_CONST(0.793353319168091), FRAC_CONST(0.608761429786682) },
825     { FRAC_CONST(0.777145922183990), FRAC_CONST(0.629320383071899) },
826     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
827     { FRAC_CONST(0.743144810199738), FRAC_CONST(0.669130623340607) },
828     { FRAC_CONST(0.725374400615692), FRAC_CONST(0.688354551792145) },
829     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
830     { FRAC_CONST(0.688354551792145), FRAC_CONST(0.725374400615692) },
831     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
832     { FRAC_CONST(0.649448037147522), FRAC_CONST(0.760405957698822) },
833     { FRAC_CONST(0.629320383071899), FRAC_CONST(0.777145981788635) },
834     { FRAC_CONST(0.608761370182037), FRAC_CONST(0.793353378772736) },
835     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
836     { FRAC_CONST(0.566406250000000), FRAC_CONST(0.824126183986664) },
837     { FRAC_CONST(0.544638991355896), FRAC_CONST(0.838670611381531) },
838     { FRAC_CONST(0.522498488426209), FRAC_CONST(0.852640211582184) },
839     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
840     { FRAC_CONST(0.477158755064011), FRAC_CONST(0.878817141056061) },
841     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
842     { FRAC_CONST(0.430511027574539), FRAC_CONST(0.902585327625275) },
843     { FRAC_CONST(0.406736612319946), FRAC_CONST(0.913545489311218) },
844     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
845     { FRAC_CONST(0.358367860317230), FRAC_CONST(0.933580458164215) },
846     { FRAC_CONST(0.333806812763214), FRAC_CONST(0.942641496658325) },
847     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
848     { FRAC_CONST(0.284015327692032), FRAC_CONST(0.958819746971130) },
849     { FRAC_CONST(0.258819073438644), FRAC_CONST(0.965925812721252) },
850     { FRAC_CONST(0.233445301651955), FRAC_CONST(0.972369909286499) },
851     { FRAC_CONST(0.207911655306816), FRAC_CONST(0.978147625923157) },
852     { FRAC_CONST(0.182235524058342), FRAC_CONST(0.983254909515381) },
853     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
854     { FRAC_CONST(0.130526125431061), FRAC_CONST(0.991444885730743) },
855     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
856     { FRAC_CONST(0.078459084033966), FRAC_CONST(0.996917307376862) },
857     { FRAC_CONST(0.052335973829031), FRAC_CONST(0.998629510402679) },
858     { FRAC_CONST(0.026176875457168), FRAC_CONST(0.999657332897186) },
859     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
860     { FRAC_CONST(-0.026176963001490), FRAC_CONST(0.999657332897186) },
861     { FRAC_CONST(-0.052336059510708), FRAC_CONST(0.998629510402679) },
862     { FRAC_CONST(-0.078459173440933), FRAC_CONST(0.996917307376862) },
863     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
864     { FRAC_CONST(-0.130526214838028), FRAC_CONST(0.991444885730743) },
865     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
866     { FRAC_CONST(-0.182235598564148), FRAC_CONST(0.983254909515381) },
867     { FRAC_CONST(-0.207911744713783), FRAC_CONST(0.978147566318512) },
868     { FRAC_CONST(-0.233445391058922), FRAC_CONST(0.972369909286499) },
869     { FRAC_CONST(-0.258819162845612), FRAC_CONST(0.965925812721252) },
870     { FRAC_CONST(-0.284015417098999), FRAC_CONST(0.958819687366486) },
871     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
872     { FRAC_CONST(-0.333806872367859), FRAC_CONST(0.942641496658325) },
873     { FRAC_CONST(-0.358367949724197), FRAC_CONST(0.933580458164215) },
874     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
875     { FRAC_CONST(-0.406736701726913), FRAC_CONST(0.913545429706573) },
876     { FRAC_CONST(-0.430511116981506), FRAC_CONST(0.902585268020630) },
877     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
878     { FRAC_CONST(-0.477158725261688), FRAC_CONST(0.878817141056061) },
879     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
880     { FRAC_CONST(0.998629510402679), FRAC_CONST(0.052335958927870) },
881     { FRAC_CONST(0.994521915912628), FRAC_CONST(0.104528464376926) },
882     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
883     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
884     { FRAC_CONST(0.965925812721252), FRAC_CONST(0.258819043636322) },
885     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
886     { FRAC_CONST(0.933580398559570), FRAC_CONST(0.358367949724197) },
887     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
888     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
889     { FRAC_CONST(0.866025388240814), FRAC_CONST(0.500000000000000) },
890     { FRAC_CONST(0.838670551776886), FRAC_CONST(0.544639050960541) },
891     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
892     { FRAC_CONST(0.777145922183990), FRAC_CONST(0.629320383071899) },
893     { FRAC_CONST(0.743144810199738), FRAC_CONST(0.669130623340607) },
894     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
895     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
896     { FRAC_CONST(0.629320383071899), FRAC_CONST(0.777145981788635) },
897     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
898     { FRAC_CONST(0.544638991355896), FRAC_CONST(0.838670611381531) },
899     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
900     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
901     { FRAC_CONST(0.406736612319946), FRAC_CONST(0.913545489311218) },
902     { FRAC_CONST(0.358367860317230), FRAC_CONST(0.933580458164215) },
903     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
904     { FRAC_CONST(0.258819073438644), FRAC_CONST(0.965925812721252) },
905     { FRAC_CONST(0.207911655306816), FRAC_CONST(0.978147625923157) },
906     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
907     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
908     { FRAC_CONST(0.052335973829031), FRAC_CONST(0.998629510402679) },
909     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
910     { FRAC_CONST(-0.052336059510708), FRAC_CONST(0.998629510402679) },
911     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
912     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
913     { FRAC_CONST(-0.207911744713783), FRAC_CONST(0.978147566318512) },
914     { FRAC_CONST(-0.258819162845612), FRAC_CONST(0.965925812721252) },
915     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
916     { FRAC_CONST(-0.358367949724197), FRAC_CONST(0.933580458164215) },
917     { FRAC_CONST(-0.406736701726913), FRAC_CONST(0.913545429706573) },
918     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
919     { FRAC_CONST(-0.500000059604645), FRAC_CONST(0.866025388240814) },
920     { FRAC_CONST(-0.544639050960541), FRAC_CONST(0.838670551776886) },
921     { FRAC_CONST(-0.587785184383392), FRAC_CONST(0.809017002582550) },
922     { FRAC_CONST(-0.629320502281189), FRAC_CONST(0.777145862579346) },
923     { FRAC_CONST(-0.669130682945251), FRAC_CONST(0.743144810199738) },
924     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
925     { FRAC_CONST(-0.743144929409027), FRAC_CONST(0.669130444526672) },
926     { FRAC_CONST(-0.777146041393280), FRAC_CONST(0.629320263862610) },
927     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
928     { FRAC_CONST(-0.838670551776886), FRAC_CONST(0.544639050960541) },
929     { FRAC_CONST(-0.866025388240814), FRAC_CONST(0.500000059604645) },
930     { FRAC_CONST(-0.891006588935852), FRAC_CONST(0.453990370035172) },
931     { FRAC_CONST(-0.913545489311218), FRAC_CONST(0.406736582517624) },
932     { FRAC_CONST(-0.933580458164215), FRAC_CONST(0.358367919921875) },
933     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
934     { FRAC_CONST(-0.965925872325897), FRAC_CONST(0.258818924427032) },
935     { FRAC_CONST(-0.978147625923157), FRAC_CONST(0.207911610603333) },
936     { FRAC_CONST(-0.987688362598419), FRAC_CONST(0.156434446573257) },
937     { FRAC_CONST(-0.994521915912628), FRAC_CONST(0.104528494179249) },
938     { FRAC_CONST(-0.998629570007324), FRAC_CONST(0.052335809916258) },
939     { FRAC_CONST(-1.000000000000000), FRAC_CONST(-0.000000087422777) },
940     { FRAC_CONST(-0.998629510402679), FRAC_CONST(-0.052335985004902) },
941     { FRAC_CONST(-0.994521856307983), FRAC_CONST(-0.104528672993183) },
942     { FRAC_CONST(-0.987688302993774), FRAC_CONST(-0.156434610486031) },
943     { FRAC_CONST(-0.978147566318512), FRAC_CONST(-0.207911789417267) },
944     { FRAC_CONST(-0.965925812721252), FRAC_CONST(-0.258819073438644) },
945     { FRAC_CONST(-0.951056540012360), FRAC_CONST(-0.309016972780228) },
946     { FRAC_CONST(-0.933580398559570), FRAC_CONST(-0.358368098735809) },
947     { FRAC_CONST(-0.913545429706573), FRAC_CONST(-0.406736731529236) },
948     { FRAC_CONST(-0.891006529331207), FRAC_CONST(-0.453990548849106) },
949     { FRAC_CONST(-0.866025269031525), FRAC_CONST(-0.500000178813934) },
950     { FRAC_CONST(-0.838670492172241), FRAC_CONST(-0.544639170169830) },
951     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
952     { FRAC_CONST(-0.777145922183990), FRAC_CONST(-0.629320442676544) },
953     { FRAC_CONST(-0.743144810199738), FRAC_CONST(-0.669130623340607) },
954     { FRAC_CONST(-0.707106649875641), FRAC_CONST(-0.707106888294220) },
955     { FRAC_CONST(-0.669130504131317), FRAC_CONST(-0.743144869804382) },
956     { FRAC_CONST(-0.629320323467255), FRAC_CONST(-0.777145981788635) },
957     { FRAC_CONST(-0.587785065174103), FRAC_CONST(-0.809017121791840) },
958     { FRAC_CONST(-0.544639110565186), FRAC_CONST(-0.838670551776886) },
959     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
960     { FRAC_CONST(0.996917307376862), FRAC_CONST(0.078459098935127) },
961     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
962     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
963     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
964     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
965     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
966     { FRAC_CONST(0.852640151977539), FRAC_CONST(0.522498548030853) },
967     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
968     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
969     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
970     { FRAC_CONST(0.649448037147522), FRAC_CONST(0.760405957698822) },
971     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
972     { FRAC_CONST(0.522498488426209), FRAC_CONST(0.852640211582184) },
973     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
974     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
975     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
976     { FRAC_CONST(0.233445301651955), FRAC_CONST(0.972369909286499) },
977     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
978     { FRAC_CONST(0.078459084033966), FRAC_CONST(0.996917307376862) },
979     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
980     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
981     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
982     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
983     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
984     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
985     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
986     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
987     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
988     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
989     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
990     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
991     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
992     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
993     { FRAC_CONST(-0.587785184383392), FRAC_CONST(0.809017002582550) },
994     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
995     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
996     { FRAC_CONST(-0.891006588935852), FRAC_CONST(0.453990370035172) },
997     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
998     { FRAC_CONST(-0.987688362598419), FRAC_CONST(0.156434446573257) },
999     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1000     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
1001     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
1002     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
1003     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1004     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1005     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
1006     { FRAC_CONST(-0.078459173440933), FRAC_CONST(0.996917307376862) },
1007     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1008     { FRAC_CONST(-0.522498667240143), FRAC_CONST(0.852640092372894) },
1009     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1010     { FRAC_CONST(-0.852640211582184), FRAC_CONST(0.522498488426209) },
1011     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1012     { FRAC_CONST(-0.996917366981506), FRAC_CONST(0.078459039330482) },
1013     { FRAC_CONST(-0.987688302993774), FRAC_CONST(-0.156434610486031) },
1014     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1015     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1016     { FRAC_CONST(-0.649447917938232), FRAC_CONST(-0.760406076908112) },
1017     { FRAC_CONST(-0.453990221023560), FRAC_CONST(-0.891006648540497) },
1018     { FRAC_CONST(-0.233445450663567), FRAC_CONST(-0.972369909286499) },
1019     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1020     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1021     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1022     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1023     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1024     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1025     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1026     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1027     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1028     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
1029     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1030     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1031     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1032     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1033     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1034     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1035     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1036     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1037     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1038     { FRAC_CONST(0.309017121791840), FRAC_CONST(-0.951056480407715) }
1039 };
1040 #endif
1041
1042 ALIGN static const complex_t cfft_tab_64[] =
1043 {
1044     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1045     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
1046     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1047     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1048     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1049     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
1050     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1051     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
1052     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1053     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1054     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1055     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
1056     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1057     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
1058     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1059     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1060     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1061     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1062     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1063     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1064     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1065     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1066     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1067     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1068     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1069     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1070     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
1071     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
1072     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1073     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
1074     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
1075     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1076     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1077     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1078     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1079     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1080     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1081     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1082     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1083     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
1084     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1085     { FRAC_CONST(-0.881921231746674), FRAC_CONST(0.471396833658218) },
1086     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1087     { FRAC_CONST(-0.995184719562531), FRAC_CONST(-0.098017267882824) },
1088     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1089     { FRAC_CONST(-0.773010551929474), FRAC_CONST(-0.634393215179443) },
1090     { FRAC_CONST(-0.555570006370544), FRAC_CONST(-0.831469774246216) },
1091     { FRAC_CONST(-0.290284544229507), FRAC_CONST(-0.956940352916718) },
1092     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1093     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1094     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1095     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1096     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1097     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1098     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1099     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1100     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1101     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1102     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1103     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1104     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1105     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1106     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1107     { FRAC_CONST(0.000000011924881), FRAC_CONST(-1.000000000000000) }
1108 };
1109
1110 #ifdef ALLOW_SMALL_FRAMELENGTH
1111 ALIGN static const complex_t cfft_tab_60[] =
1112 {
1113     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1114     { FRAC_CONST(0.994521915912628), FRAC_CONST(0.104528464376926) },
1115     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
1116     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1117     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
1118     { FRAC_CONST(0.866025388240814), FRAC_CONST(0.500000000000000) },
1119     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1120     { FRAC_CONST(0.743144810199738), FRAC_CONST(0.669130623340607) },
1121     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
1122     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1123     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
1124     { FRAC_CONST(0.406736612319946), FRAC_CONST(0.913545489311218) },
1125     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1126     { FRAC_CONST(0.207911655306816), FRAC_CONST(0.978147625923157) },
1127     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
1128     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1129     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
1130     { FRAC_CONST(-0.207911744713783), FRAC_CONST(0.978147566318512) },
1131     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1132     { FRAC_CONST(-0.406736701726913), FRAC_CONST(0.913545429706573) },
1133     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1134     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
1135     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
1136     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1137     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
1138     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
1139     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1140     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
1141     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
1142     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1143     { FRAC_CONST(-0.500000059604645), FRAC_CONST(0.866025388240814) },
1144     { FRAC_CONST(-0.669130682945251), FRAC_CONST(0.743144810199738) },
1145     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
1146     { FRAC_CONST(-0.913545489311218), FRAC_CONST(0.406736582517624) },
1147     { FRAC_CONST(-0.978147625923157), FRAC_CONST(0.207911610603333) },
1148     { FRAC_CONST(-1.000000000000000), FRAC_CONST(-0.000000087422777) },
1149     { FRAC_CONST(-0.978147566318512), FRAC_CONST(-0.207911789417267) },
1150     { FRAC_CONST(-0.913545429706573), FRAC_CONST(-0.406736731529236) },
1151     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1152     { FRAC_CONST(-0.669130504131317), FRAC_CONST(-0.743144869804382) },
1153     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1154     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1155     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1156     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1157     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1158     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1159     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1160     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1161     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1162     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
1163     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1164     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1165     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1166     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1167     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1168     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1169     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1170     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1171     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1172     { FRAC_CONST(0.309017121791840), FRAC_CONST(-0.951056480407715) }
1173 };
1174 #endif
1175
1176 #ifdef LD_DEC
1177
1178 ALIGN static const complex_t cfft_tab_256[] =
1179 {
1180     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1181     { FRAC_CONST(0.999698817729950), FRAC_CONST(0.024541229009628) },
1182     { FRAC_CONST(0.998795449733734), FRAC_CONST(0.049067676067352) },
1183     { FRAC_CONST(0.997290432453156), FRAC_CONST(0.073564566671848) },
1184     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
1185     { FRAC_CONST(0.992479562759399), FRAC_CONST(0.122410677373409) },
1186     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
1187     { FRAC_CONST(0.985277652740479), FRAC_CONST(0.170961901545525) },
1188     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1189     { FRAC_CONST(0.975702106952667), FRAC_CONST(0.219101235270500) },
1190     { FRAC_CONST(0.970031261444092), FRAC_CONST(0.242980197072029) },
1191     { FRAC_CONST(0.963776051998138), FRAC_CONST(0.266712784767151) },
1192     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1193     { FRAC_CONST(0.949528157711029), FRAC_CONST(0.313681751489639) },
1194     { FRAC_CONST(0.941544055938721), FRAC_CONST(0.336889863014221) },
1195     { FRAC_CONST(0.932992815971375), FRAC_CONST(0.359895050525665) },
1196     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1197     { FRAC_CONST(0.914209723472595), FRAC_CONST(0.405241340398788) },
1198     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
1199     { FRAC_CONST(0.893224298954010), FRAC_CONST(0.449611335992813) },
1200     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
1201     { FRAC_CONST(0.870086967945099), FRAC_CONST(0.492898225784302) },
1202     { FRAC_CONST(0.857728600502014), FRAC_CONST(0.514102756977081) },
1203     { FRAC_CONST(0.844853579998016), FRAC_CONST(0.534997642040253) },
1204     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1205     { FRAC_CONST(0.817584812641144), FRAC_CONST(0.575808227062225) },
1206     { FRAC_CONST(0.803207516670227), FRAC_CONST(0.595699310302734) },
1207     { FRAC_CONST(0.788346409797668), FRAC_CONST(0.615231633186340) },
1208     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
1209     { FRAC_CONST(0.757208824157715), FRAC_CONST(0.653172850608826) },
1210     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
1211     { FRAC_CONST(0.724247097969055), FRAC_CONST(0.689540565013886) },
1212     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1213     { FRAC_CONST(0.689540505409241), FRAC_CONST(0.724247097969055) },
1214     { FRAC_CONST(0.671558916568756), FRAC_CONST(0.740951180458069) },
1215     { FRAC_CONST(0.653172791004181), FRAC_CONST(0.757208883762360) },
1216     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1217     { FRAC_CONST(0.615231573581696), FRAC_CONST(0.788346409797668) },
1218     { FRAC_CONST(0.595699310302734), FRAC_CONST(0.803207516670227) },
1219     { FRAC_CONST(0.575808167457581), FRAC_CONST(0.817584812641144) },
1220     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1221     { FRAC_CONST(0.534997642040253), FRAC_CONST(0.844853579998016) },
1222     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
1223     { FRAC_CONST(0.492898195981979), FRAC_CONST(0.870086967945099) },
1224     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
1225     { FRAC_CONST(0.449611306190491), FRAC_CONST(0.893224298954010) },
1226     { FRAC_CONST(0.427555114030838), FRAC_CONST(0.903989315032959) },
1227     { FRAC_CONST(0.405241280794144), FRAC_CONST(0.914209783077240) },
1228     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1229     { FRAC_CONST(0.359894961118698), FRAC_CONST(0.932992815971375) },
1230     { FRAC_CONST(0.336889833211899), FRAC_CONST(0.941544055938721) },
1231     { FRAC_CONST(0.313681662082672), FRAC_CONST(0.949528217315674) },
1232     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
1233     { FRAC_CONST(0.266712754964828), FRAC_CONST(0.963776051998138) },
1234     { FRAC_CONST(0.242980122566223), FRAC_CONST(0.970031261444092) },
1235     { FRAC_CONST(0.219101220369339), FRAC_CONST(0.975702106952667) },
1236     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1237     { FRAC_CONST(0.170961856842041), FRAC_CONST(0.985277652740479) },
1238     { FRAC_CONST(0.146730497479439), FRAC_CONST(0.989176511764526) },
1239     { FRAC_CONST(0.122410625219345), FRAC_CONST(0.992479562759399) },
1240     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1241     { FRAC_CONST(0.073564492166042), FRAC_CONST(0.997290432453156) },
1242     { FRAC_CONST(0.049067649990320), FRAC_CONST(0.998795449733734) },
1243     { FRAC_CONST(0.024541135877371), FRAC_CONST(0.999698817729950) },
1244     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1245     { FRAC_CONST(0.998795449733734), FRAC_CONST(0.049067676067352) },
1246     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
1247     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
1248     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1249     { FRAC_CONST(0.970031261444092), FRAC_CONST(0.242980197072029) },
1250     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1251     { FRAC_CONST(0.941544055938721), FRAC_CONST(0.336889863014221) },
1252     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1253     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
1254     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
1255     { FRAC_CONST(0.857728600502014), FRAC_CONST(0.514102756977081) },
1256     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1257     { FRAC_CONST(0.803207516670227), FRAC_CONST(0.595699310302734) },
1258     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
1259     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
1260     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1261     { FRAC_CONST(0.671558916568756), FRAC_CONST(0.740951180458069) },
1262     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1263     { FRAC_CONST(0.595699310302734), FRAC_CONST(0.803207516670227) },
1264     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1265     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
1266     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
1267     { FRAC_CONST(0.427555114030838), FRAC_CONST(0.903989315032959) },
1268     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1269     { FRAC_CONST(0.336889833211899), FRAC_CONST(0.941544055938721) },
1270     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
1271     { FRAC_CONST(0.242980122566223), FRAC_CONST(0.970031261444092) },
1272     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1273     { FRAC_CONST(0.146730497479439), FRAC_CONST(0.989176511764526) },
1274     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1275     { FRAC_CONST(0.049067649990320), FRAC_CONST(0.998795449733734) },
1276     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1277     { FRAC_CONST(-0.049067739397287), FRAC_CONST(0.998795449733734) },
1278     { FRAC_CONST(-0.098017223179340), FRAC_CONST(0.995184719562531) },
1279     { FRAC_CONST(-0.146730571985245), FRAC_CONST(0.989176511764526) },
1280     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1281     { FRAC_CONST(-0.242980197072029), FRAC_CONST(0.970031261444092) },
1282     { FRAC_CONST(-0.290284723043442), FRAC_CONST(0.956940293312073) },
1283     { FRAC_CONST(-0.336889922618866), FRAC_CONST(0.941544055938721) },
1284     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
1285     { FRAC_CONST(-0.427555084228516), FRAC_CONST(0.903989315032959) },
1286     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
1287     { FRAC_CONST(-0.514102756977081), FRAC_CONST(0.857728600502014) },
1288     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
1289     { FRAC_CONST(-0.595699369907379), FRAC_CONST(0.803207516670227) },
1290     { FRAC_CONST(-0.634393274784088), FRAC_CONST(0.773010492324829) },
1291     { FRAC_CONST(-0.671559035778046), FRAC_CONST(0.740951061248779) },
1292     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1293     { FRAC_CONST(-0.740951240062714), FRAC_CONST(0.671558856964111) },
1294     { FRAC_CONST(-0.773010492324829), FRAC_CONST(0.634393274784088) },
1295     { FRAC_CONST(-0.803207635879517), FRAC_CONST(0.595699131488800) },
1296     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
1297     { FRAC_CONST(-0.857728600502014), FRAC_CONST(0.514102756977081) },
1298     { FRAC_CONST(-0.881921350955963), FRAC_CONST(0.471396625041962) },
1299     { FRAC_CONST(-0.903989315032959), FRAC_CONST(0.427555054426193) },
1300     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
1301     { FRAC_CONST(-0.941544115543365), FRAC_CONST(0.336889803409576) },
1302     { FRAC_CONST(-0.956940352916718), FRAC_CONST(0.290284723043442) },
1303     { FRAC_CONST(-0.970031261444092), FRAC_CONST(0.242980077862740) },
1304     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1305     { FRAC_CONST(-0.989176511764526), FRAC_CONST(0.146730333566666) },
1306     { FRAC_CONST(-0.995184719562531), FRAC_CONST(0.098017096519470) },
1307     { FRAC_CONST(-0.998795449733734), FRAC_CONST(0.049067486077547) },
1308     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1309     { FRAC_CONST(0.997290432453156), FRAC_CONST(0.073564566671848) },
1310     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
1311     { FRAC_CONST(0.975702106952667), FRAC_CONST(0.219101235270500) },
1312     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1313     { FRAC_CONST(0.932992815971375), FRAC_CONST(0.359895050525665) },
1314     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
1315     { FRAC_CONST(0.870086967945099), FRAC_CONST(0.492898225784302) },
1316     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1317     { FRAC_CONST(0.788346469402313), FRAC_CONST(0.615231573581696) },
1318     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
1319     { FRAC_CONST(0.689540505409241), FRAC_CONST(0.724247097969055) },
1320     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1321     { FRAC_CONST(0.575808227062225), FRAC_CONST(0.817584812641144) },
1322     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
1323     { FRAC_CONST(0.449611306190491), FRAC_CONST(0.893224298954010) },
1324     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1325     { FRAC_CONST(0.313681751489639), FRAC_CONST(0.949528157711029) },
1326     { FRAC_CONST(0.242980241775513), FRAC_CONST(0.970031261444092) },
1327     { FRAC_CONST(0.170961856842041), FRAC_CONST(0.985277652740479) },
1328     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1329     { FRAC_CONST(0.024541255086660), FRAC_CONST(0.999698817729950) },
1330     { FRAC_CONST(-0.049067739397287), FRAC_CONST(0.998795449733734) },
1331     { FRAC_CONST(-0.122410707175732), FRAC_CONST(0.992479503154755) },
1332     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1333     { FRAC_CONST(-0.266712725162506), FRAC_CONST(0.963776051998138) },
1334     { FRAC_CONST(-0.336889803409576), FRAC_CONST(0.941544055938721) },
1335     { FRAC_CONST(-0.405241340398788), FRAC_CONST(0.914209723472595) },
1336     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
1337     { FRAC_CONST(-0.534997701644897), FRAC_CONST(0.844853520393372) },
1338     { FRAC_CONST(-0.595699369907379), FRAC_CONST(0.803207516670227) },
1339     { FRAC_CONST(-0.653172850608826), FRAC_CONST(0.757208824157715) },
1340     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1341     { FRAC_CONST(-0.757208824157715), FRAC_CONST(0.653172850608826) },
1342     { FRAC_CONST(-0.803207516670227), FRAC_CONST(0.595699369907379) },
1343     { FRAC_CONST(-0.844853520393372), FRAC_CONST(0.534997701644897) },
1344     { FRAC_CONST(-0.881921231746674), FRAC_CONST(0.471396833658218) },
1345     { FRAC_CONST(-0.914209783077240), FRAC_CONST(0.405241221189499) },
1346     { FRAC_CONST(-0.941544115543365), FRAC_CONST(0.336889803409576) },
1347     { FRAC_CONST(-0.963776051998138), FRAC_CONST(0.266712725162506) },
1348     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1349     { FRAC_CONST(-0.992479503154755), FRAC_CONST(0.122410699725151) },
1350     { FRAC_CONST(-0.998795449733734), FRAC_CONST(0.049067724496126) },
1351     { FRAC_CONST(-0.999698817729950), FRAC_CONST(-0.024541147053242) },
1352     { FRAC_CONST(-0.995184719562531), FRAC_CONST(-0.098017267882824) },
1353     { FRAC_CONST(-0.985277652740479), FRAC_CONST(-0.170961990952492) },
1354     { FRAC_CONST(-0.970031261444092), FRAC_CONST(-0.242980241775513) },
1355     { FRAC_CONST(-0.949528157711029), FRAC_CONST(-0.313681781291962) },
1356     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1357     { FRAC_CONST(-0.893224298954010), FRAC_CONST(-0.449611306190491) },
1358     { FRAC_CONST(-0.857728660106659), FRAC_CONST(-0.514102697372437) },
1359     { FRAC_CONST(-0.817584872245789), FRAC_CONST(-0.575808107852936) },
1360     { FRAC_CONST(-0.773010551929474), FRAC_CONST(-0.634393215179443) },
1361     { FRAC_CONST(-0.724247038364410), FRAC_CONST(-0.689540624618530) },
1362     { FRAC_CONST(-0.671558916568756), FRAC_CONST(-0.740951180458069) },
1363     { FRAC_CONST(-0.615231573581696), FRAC_CONST(-0.788346469402313) },
1364     { FRAC_CONST(-0.555570006370544), FRAC_CONST(-0.831469774246216) },
1365     { FRAC_CONST(-0.492898195981979), FRAC_CONST(-0.870086967945099) },
1366     { FRAC_CONST(-0.427554935216904), FRAC_CONST(-0.903989374637604) },
1367     { FRAC_CONST(-0.359895110130310), FRAC_CONST(-0.932992756366730) },
1368     { FRAC_CONST(-0.290284544229507), FRAC_CONST(-0.956940352916718) },
1369     { FRAC_CONST(-0.219101369380951), FRAC_CONST(-0.975702106952667) },
1370     { FRAC_CONST(-0.146730408072472), FRAC_CONST(-0.989176511764526) },
1371     { FRAC_CONST(-0.073564760386944), FRAC_CONST(-0.997290432453156) },
1372     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1373     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
1374     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1375     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1376     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1377     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
1378     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1379     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
1380     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1381     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1382     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1383     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
1384     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1385     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
1386     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1387     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1388     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1389     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1390     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1391     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1392     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1393     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1394     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1395     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1396     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1397     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1398     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
1399     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
1400     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1401     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
1402     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
1403     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1404     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1405     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1406     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1407     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1408     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1409     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1410     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1411     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
1412     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1413     { FRAC_CONST(-0.881921231746674), FRAC_CONST(0.471396833658218) },
1414     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1415     { FRAC_CONST(-0.995184719562531), FRAC_CONST(-0.098017267882824) },
1416     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1417     { FRAC_CONST(-0.773010551929474), FRAC_CONST(-0.634393215179443) },
1418     { FRAC_CONST(-0.555570006370544), FRAC_CONST(-0.831469774246216) },
1419     { FRAC_CONST(-0.290284544229507), FRAC_CONST(-0.956940352916718) },
1420     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1421     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1422     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1423     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1424     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1425     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1426     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1427     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1428     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1429     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1430     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1431     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1432     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1433     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1434     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1435     { FRAC_CONST(0.000000011924881), FRAC_CONST(-1.000000000000000) }
1436 };
1437
1438 #ifdef ALLOW_SMALL_FRAMELENGTH
1439 ALIGN static const complex_t cfft_tab_240[] =
1440 {
1441     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1442     { FRAC_CONST(0.999657332897186), FRAC_CONST(0.026176949962974) },
1443     { FRAC_CONST(0.998629510402679), FRAC_CONST(0.052335958927870) },
1444     { FRAC_CONST(0.996917307376862), FRAC_CONST(0.078459098935127) },
1445     { FRAC_CONST(0.994521915912628), FRAC_CONST(0.104528464376926) },
1446     { FRAC_CONST(0.991444885730743), FRAC_CONST(0.130526199936867) },
1447     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
1448     { FRAC_CONST(0.983254909515381), FRAC_CONST(0.182235524058342) },
1449     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
1450     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
1451     { FRAC_CONST(0.965925812721252), FRAC_CONST(0.258819043636322) },
1452     { FRAC_CONST(0.958819746971130), FRAC_CONST(0.284015357494354) },
1453     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1454     { FRAC_CONST(0.942641496658325), FRAC_CONST(0.333806872367859) },
1455     { FRAC_CONST(0.933580398559570), FRAC_CONST(0.358367949724197) },
1456     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1457     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
1458     { FRAC_CONST(0.902585268020630), FRAC_CONST(0.430511116981506) },
1459     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
1460     { FRAC_CONST(0.878817081451416), FRAC_CONST(0.477158784866333) },
1461     { FRAC_CONST(0.866025388240814), FRAC_CONST(0.500000000000000) },
1462     { FRAC_CONST(0.852640151977539), FRAC_CONST(0.522498548030853) },
1463     { FRAC_CONST(0.838670551776886), FRAC_CONST(0.544639050960541) },
1464     { FRAC_CONST(0.824126183986664), FRAC_CONST(0.566406250000000) },
1465     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1466     { FRAC_CONST(0.793353319168091), FRAC_CONST(0.608761429786682) },
1467     { FRAC_CONST(0.777145922183990), FRAC_CONST(0.629320383071899) },
1468     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
1469     { FRAC_CONST(0.743144810199738), FRAC_CONST(0.669130623340607) },
1470     { FRAC_CONST(0.725374400615692), FRAC_CONST(0.688354551792145) },
1471     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1472     { FRAC_CONST(0.688354551792145), FRAC_CONST(0.725374400615692) },
1473     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
1474     { FRAC_CONST(0.649448037147522), FRAC_CONST(0.760405957698822) },
1475     { FRAC_CONST(0.629320383071899), FRAC_CONST(0.777145981788635) },
1476     { FRAC_CONST(0.608761370182037), FRAC_CONST(0.793353378772736) },
1477     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1478     { FRAC_CONST(0.566406250000000), FRAC_CONST(0.824126183986664) },
1479     { FRAC_CONST(0.544638991355896), FRAC_CONST(0.838670611381531) },
1480     { FRAC_CONST(0.522498488426209), FRAC_CONST(0.852640211582184) },
1481     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
1482     { FRAC_CONST(0.477158755064011), FRAC_CONST(0.878817141056061) },
1483     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
1484     { FRAC_CONST(0.430511027574539), FRAC_CONST(0.902585327625275) },
1485     { FRAC_CONST(0.406736612319946), FRAC_CONST(0.913545489311218) },
1486     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1487     { FRAC_CONST(0.358367860317230), FRAC_CONST(0.933580458164215) },
1488     { FRAC_CONST(0.333806812763214), FRAC_CONST(0.942641496658325) },
1489     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1490     { FRAC_CONST(0.284015327692032), FRAC_CONST(0.958819746971130) },
1491     { FRAC_CONST(0.258819073438644), FRAC_CONST(0.965925812721252) },
1492     { FRAC_CONST(0.233445301651955), FRAC_CONST(0.972369909286499) },
1493     { FRAC_CONST(0.207911655306816), FRAC_CONST(0.978147625923157) },
1494     { FRAC_CONST(0.182235524058342), FRAC_CONST(0.983254909515381) },
1495     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
1496     { FRAC_CONST(0.130526125431061), FRAC_CONST(0.991444885730743) },
1497     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
1498     { FRAC_CONST(0.078459084033966), FRAC_CONST(0.996917307376862) },
1499     { FRAC_CONST(0.052335973829031), FRAC_CONST(0.998629510402679) },
1500     { FRAC_CONST(0.026176875457168), FRAC_CONST(0.999657332897186) },
1501     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1502     { FRAC_CONST(-0.026176963001490), FRAC_CONST(0.999657332897186) },
1503     { FRAC_CONST(-0.052336059510708), FRAC_CONST(0.998629510402679) },
1504     { FRAC_CONST(-0.078459173440933), FRAC_CONST(0.996917307376862) },
1505     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
1506     { FRAC_CONST(-0.130526214838028), FRAC_CONST(0.991444885730743) },
1507     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
1508     { FRAC_CONST(-0.182235598564148), FRAC_CONST(0.983254909515381) },
1509     { FRAC_CONST(-0.207911744713783), FRAC_CONST(0.978147566318512) },
1510     { FRAC_CONST(-0.233445391058922), FRAC_CONST(0.972369909286499) },
1511     { FRAC_CONST(-0.258819162845612), FRAC_CONST(0.965925812721252) },
1512     { FRAC_CONST(-0.284015417098999), FRAC_CONST(0.958819687366486) },
1513     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1514     { FRAC_CONST(-0.333806872367859), FRAC_CONST(0.942641496658325) },
1515     { FRAC_CONST(-0.358367949724197), FRAC_CONST(0.933580458164215) },
1516     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
1517     { FRAC_CONST(-0.406736701726913), FRAC_CONST(0.913545429706573) },
1518     { FRAC_CONST(-0.430511116981506), FRAC_CONST(0.902585268020630) },
1519     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
1520     { FRAC_CONST(-0.477158725261688), FRAC_CONST(0.878817141056061) },
1521     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1522     { FRAC_CONST(0.998629510402679), FRAC_CONST(0.052335958927870) },
1523     { FRAC_CONST(0.994521915912628), FRAC_CONST(0.104528464376926) },
1524     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
1525     { FRAC_CONST(0.978147625923157), FRAC_CONST(0.207911700010300) },
1526     { FRAC_CONST(0.965925812721252), FRAC_CONST(0.258819043636322) },
1527     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1528     { FRAC_CONST(0.933580398559570), FRAC_CONST(0.358367949724197) },
1529     { FRAC_CONST(0.913545429706573), FRAC_CONST(0.406736642122269) },
1530     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
1531     { FRAC_CONST(0.866025388240814), FRAC_CONST(0.500000000000000) },
1532     { FRAC_CONST(0.838670551776886), FRAC_CONST(0.544639050960541) },
1533     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1534     { FRAC_CONST(0.777145922183990), FRAC_CONST(0.629320383071899) },
1535     { FRAC_CONST(0.743144810199738), FRAC_CONST(0.669130623340607) },
1536     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1537     { FRAC_CONST(0.669130563735962), FRAC_CONST(0.743144869804382) },
1538     { FRAC_CONST(0.629320383071899), FRAC_CONST(0.777145981788635) },
1539     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1540     { FRAC_CONST(0.544638991355896), FRAC_CONST(0.838670611381531) },
1541     { FRAC_CONST(0.499999970197678), FRAC_CONST(0.866025447845459) },
1542     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
1543     { FRAC_CONST(0.406736612319946), FRAC_CONST(0.913545489311218) },
1544     { FRAC_CONST(0.358367860317230), FRAC_CONST(0.933580458164215) },
1545     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1546     { FRAC_CONST(0.258819073438644), FRAC_CONST(0.965925812721252) },
1547     { FRAC_CONST(0.207911655306816), FRAC_CONST(0.978147625923157) },
1548     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
1549     { FRAC_CONST(0.104528419673443), FRAC_CONST(0.994521915912628) },
1550     { FRAC_CONST(0.052335973829031), FRAC_CONST(0.998629510402679) },
1551     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1552     { FRAC_CONST(-0.052336059510708), FRAC_CONST(0.998629510402679) },
1553     { FRAC_CONST(-0.104528509080410), FRAC_CONST(0.994521915912628) },
1554     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
1555     { FRAC_CONST(-0.207911744713783), FRAC_CONST(0.978147566318512) },
1556     { FRAC_CONST(-0.258819162845612), FRAC_CONST(0.965925812721252) },
1557     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1558     { FRAC_CONST(-0.358367949724197), FRAC_CONST(0.933580458164215) },
1559     { FRAC_CONST(-0.406736701726913), FRAC_CONST(0.913545429706573) },
1560     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
1561     { FRAC_CONST(-0.500000059604645), FRAC_CONST(0.866025388240814) },
1562     { FRAC_CONST(-0.544639050960541), FRAC_CONST(0.838670551776886) },
1563     { FRAC_CONST(-0.587785184383392), FRAC_CONST(0.809017002582550) },
1564     { FRAC_CONST(-0.629320502281189), FRAC_CONST(0.777145862579346) },
1565     { FRAC_CONST(-0.669130682945251), FRAC_CONST(0.743144810199738) },
1566     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1567     { FRAC_CONST(-0.743144929409027), FRAC_CONST(0.669130444526672) },
1568     { FRAC_CONST(-0.777146041393280), FRAC_CONST(0.629320263862610) },
1569     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
1570     { FRAC_CONST(-0.838670551776886), FRAC_CONST(0.544639050960541) },
1571     { FRAC_CONST(-0.866025388240814), FRAC_CONST(0.500000059604645) },
1572     { FRAC_CONST(-0.891006588935852), FRAC_CONST(0.453990370035172) },
1573     { FRAC_CONST(-0.913545489311218), FRAC_CONST(0.406736582517624) },
1574     { FRAC_CONST(-0.933580458164215), FRAC_CONST(0.358367919921875) },
1575     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1576     { FRAC_CONST(-0.965925872325897), FRAC_CONST(0.258818924427032) },
1577     { FRAC_CONST(-0.978147625923157), FRAC_CONST(0.207911610603333) },
1578     { FRAC_CONST(-0.987688362598419), FRAC_CONST(0.156434446573257) },
1579     { FRAC_CONST(-0.994521915912628), FRAC_CONST(0.104528494179249) },
1580     { FRAC_CONST(-0.998629570007324), FRAC_CONST(0.052335809916258) },
1581     { FRAC_CONST(-1.000000000000000), FRAC_CONST(-0.000000087422777) },
1582     { FRAC_CONST(-0.998629510402679), FRAC_CONST(-0.052335985004902) },
1583     { FRAC_CONST(-0.994521856307983), FRAC_CONST(-0.104528672993183) },
1584     { FRAC_CONST(-0.987688302993774), FRAC_CONST(-0.156434610486031) },
1585     { FRAC_CONST(-0.978147566318512), FRAC_CONST(-0.207911789417267) },
1586     { FRAC_CONST(-0.965925812721252), FRAC_CONST(-0.258819073438644) },
1587     { FRAC_CONST(-0.951056540012360), FRAC_CONST(-0.309016972780228) },
1588     { FRAC_CONST(-0.933580398559570), FRAC_CONST(-0.358368098735809) },
1589     { FRAC_CONST(-0.913545429706573), FRAC_CONST(-0.406736731529236) },
1590     { FRAC_CONST(-0.891006529331207), FRAC_CONST(-0.453990548849106) },
1591     { FRAC_CONST(-0.866025269031525), FRAC_CONST(-0.500000178813934) },
1592     { FRAC_CONST(-0.838670492172241), FRAC_CONST(-0.544639170169830) },
1593     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1594     { FRAC_CONST(-0.777145922183990), FRAC_CONST(-0.629320442676544) },
1595     { FRAC_CONST(-0.743144810199738), FRAC_CONST(-0.669130623340607) },
1596     { FRAC_CONST(-0.707106649875641), FRAC_CONST(-0.707106888294220) },
1597     { FRAC_CONST(-0.669130504131317), FRAC_CONST(-0.743144869804382) },
1598     { FRAC_CONST(-0.629320323467255), FRAC_CONST(-0.777145981788635) },
1599     { FRAC_CONST(-0.587785065174103), FRAC_CONST(-0.809017121791840) },
1600     { FRAC_CONST(-0.544639110565186), FRAC_CONST(-0.838670551776886) },
1601     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1602     { FRAC_CONST(0.996917307376862), FRAC_CONST(0.078459098935127) },
1603     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
1604     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
1605     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1606     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1607     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
1608     { FRAC_CONST(0.852640151977539), FRAC_CONST(0.522498548030853) },
1609     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1610     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
1611     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1612     { FRAC_CONST(0.649448037147522), FRAC_CONST(0.760405957698822) },
1613     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1614     { FRAC_CONST(0.522498488426209), FRAC_CONST(0.852640211582184) },
1615     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
1616     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1617     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1618     { FRAC_CONST(0.233445301651955), FRAC_CONST(0.972369909286499) },
1619     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
1620     { FRAC_CONST(0.078459084033966), FRAC_CONST(0.996917307376862) },
1621     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1622     { FRAC_CONST(0.987688362598419), FRAC_CONST(0.156434476375580) },
1623     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1624     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
1625     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1626     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1627     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1628     { FRAC_CONST(0.453990519046783), FRAC_CONST(0.891006529331207) },
1629     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1630     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
1631     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1632     { FRAC_CONST(-0.156434446573257), FRAC_CONST(0.987688362598419) },
1633     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1634     { FRAC_CONST(-0.453990608453751), FRAC_CONST(0.891006469726563) },
1635     { FRAC_CONST(-0.587785184383392), FRAC_CONST(0.809017002582550) },
1636     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1637     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
1638     { FRAC_CONST(-0.891006588935852), FRAC_CONST(0.453990370035172) },
1639     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1640     { FRAC_CONST(-0.987688362598419), FRAC_CONST(0.156434446573257) },
1641     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1642     { FRAC_CONST(0.972369909286499), FRAC_CONST(0.233445376157761) },
1643     { FRAC_CONST(0.891006529331207), FRAC_CONST(0.453990519046783) },
1644     { FRAC_CONST(0.760405957698822), FRAC_CONST(0.649448096752167) },
1645     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1646     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1647     { FRAC_CONST(0.156434372067451), FRAC_CONST(0.987688362598419) },
1648     { FRAC_CONST(-0.078459173440933), FRAC_CONST(0.996917307376862) },
1649     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1650     { FRAC_CONST(-0.522498667240143), FRAC_CONST(0.852640092372894) },
1651     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1652     { FRAC_CONST(-0.852640211582184), FRAC_CONST(0.522498488426209) },
1653     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1654     { FRAC_CONST(-0.996917366981506), FRAC_CONST(0.078459039330482) },
1655     { FRAC_CONST(-0.987688302993774), FRAC_CONST(-0.156434610486031) },
1656     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1657     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1658     { FRAC_CONST(-0.649447917938232), FRAC_CONST(-0.760406076908112) },
1659     { FRAC_CONST(-0.453990221023560), FRAC_CONST(-0.891006648540497) },
1660     { FRAC_CONST(-0.233445450663567), FRAC_CONST(-0.972369909286499) },
1661     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1662     { FRAC_CONST(0.951056540012360), FRAC_CONST(0.309017002582550) },
1663     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1664     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1665     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1666     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1667     { FRAC_CONST(0.809017002582550), FRAC_CONST(0.587785243988037) },
1668     { FRAC_CONST(0.309016972780228), FRAC_CONST(0.951056540012360) },
1669     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1670     { FRAC_CONST(-0.809017062187195), FRAC_CONST(0.587785184383392) },
1671     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1672     { FRAC_CONST(0.587785243988037), FRAC_CONST(0.809017002582550) },
1673     { FRAC_CONST(-0.309017032384872), FRAC_CONST(0.951056480407715) },
1674     { FRAC_CONST(-0.951056599617004), FRAC_CONST(0.309016793966293) },
1675     { FRAC_CONST(-0.809016942977905), FRAC_CONST(-0.587785363197327) },
1676     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1677     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1678     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1679     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1680     { FRAC_CONST(0.309017121791840), FRAC_CONST(-0.951056480407715) }
1681 };
1682 #endif
1683
1684 #endif
1685
1686 ALIGN static const complex_t cfft_tab_128[] =
1687 {
1688     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1689     { FRAC_CONST(0.998795449733734), FRAC_CONST(0.049067676067352) },
1690     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
1691     { FRAC_CONST(0.989176511764526), FRAC_CONST(0.146730467677116) },
1692     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1693     { FRAC_CONST(0.970031261444092), FRAC_CONST(0.242980197072029) },
1694     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1695     { FRAC_CONST(0.941544055938721), FRAC_CONST(0.336889863014221) },
1696     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1697     { FRAC_CONST(0.903989315032959), FRAC_CONST(0.427555084228516) },
1698     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
1699     { FRAC_CONST(0.857728600502014), FRAC_CONST(0.514102756977081) },
1700     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1701     { FRAC_CONST(0.803207516670227), FRAC_CONST(0.595699310302734) },
1702     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
1703     { FRAC_CONST(0.740951120853424), FRAC_CONST(0.671558976173401) },
1704     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1705     { FRAC_CONST(0.671558916568756), FRAC_CONST(0.740951180458069) },
1706     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1707     { FRAC_CONST(0.595699310302734), FRAC_CONST(0.803207516670227) },
1708     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1709     { FRAC_CONST(0.514102697372437), FRAC_CONST(0.857728660106659) },
1710     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
1711     { FRAC_CONST(0.427555114030838), FRAC_CONST(0.903989315032959) },
1712     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1713     { FRAC_CONST(0.336889833211899), FRAC_CONST(0.941544055938721) },
1714     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
1715     { FRAC_CONST(0.242980122566223), FRAC_CONST(0.970031261444092) },
1716     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1717     { FRAC_CONST(0.146730497479439), FRAC_CONST(0.989176511764526) },
1718     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1719     { FRAC_CONST(0.049067649990320), FRAC_CONST(0.998795449733734) },
1720     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1721     { FRAC_CONST(-0.049067739397287), FRAC_CONST(0.998795449733734) },
1722     { FRAC_CONST(-0.098017223179340), FRAC_CONST(0.995184719562531) },
1723     { FRAC_CONST(-0.146730571985245), FRAC_CONST(0.989176511764526) },
1724     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1725     { FRAC_CONST(-0.242980197072029), FRAC_CONST(0.970031261444092) },
1726     { FRAC_CONST(-0.290284723043442), FRAC_CONST(0.956940293312073) },
1727     { FRAC_CONST(-0.336889922618866), FRAC_CONST(0.941544055938721) },
1728     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
1729     { FRAC_CONST(-0.427555084228516), FRAC_CONST(0.903989315032959) },
1730     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
1731     { FRAC_CONST(-0.514102756977081), FRAC_CONST(0.857728600502014) },
1732     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
1733     { FRAC_CONST(-0.595699369907379), FRAC_CONST(0.803207516670227) },
1734     { FRAC_CONST(-0.634393274784088), FRAC_CONST(0.773010492324829) },
1735     { FRAC_CONST(-0.671559035778046), FRAC_CONST(0.740951061248779) },
1736     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1737     { FRAC_CONST(-0.740951240062714), FRAC_CONST(0.671558856964111) },
1738     { FRAC_CONST(-0.773010492324829), FRAC_CONST(0.634393274784088) },
1739     { FRAC_CONST(-0.803207635879517), FRAC_CONST(0.595699131488800) },
1740     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
1741     { FRAC_CONST(-0.857728600502014), FRAC_CONST(0.514102756977081) },
1742     { FRAC_CONST(-0.881921350955963), FRAC_CONST(0.471396625041962) },
1743     { FRAC_CONST(-0.903989315032959), FRAC_CONST(0.427555054426193) },
1744     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
1745     { FRAC_CONST(-0.941544115543365), FRAC_CONST(0.336889803409576) },
1746     { FRAC_CONST(-0.956940352916718), FRAC_CONST(0.290284723043442) },
1747     { FRAC_CONST(-0.970031261444092), FRAC_CONST(0.242980077862740) },
1748     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1749     { FRAC_CONST(-0.989176511764526), FRAC_CONST(0.146730333566666) },
1750     { FRAC_CONST(-0.995184719562531), FRAC_CONST(0.098017096519470) },
1751     { FRAC_CONST(-0.998795449733734), FRAC_CONST(0.049067486077547) },
1752     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1753     { FRAC_CONST(0.995184719562531), FRAC_CONST(0.098017141222954) },
1754     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1755     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1756     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1757     { FRAC_CONST(0.881921231746674), FRAC_CONST(0.471396744251251) },
1758     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1759     { FRAC_CONST(0.773010432720184), FRAC_CONST(0.634393334388733) },
1760     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1761     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1762     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1763     { FRAC_CONST(0.471396654844284), FRAC_CONST(0.881921291351318) },
1764     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1765     { FRAC_CONST(0.290284633636475), FRAC_CONST(0.956940352916718) },
1766     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1767     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1768     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1769     { FRAC_CONST(0.980785250663757), FRAC_CONST(0.195090323686600) },
1770     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1771     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1772     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1773     { FRAC_CONST(0.555570185184479), FRAC_CONST(0.831469655036926) },
1774     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1775     { FRAC_CONST(0.195090234279633), FRAC_CONST(0.980785310268402) },
1776     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1777     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1778     { FRAC_CONST(-0.382683515548706), FRAC_CONST(0.923879504203796) },
1779     { FRAC_CONST(-0.555570363998413), FRAC_CONST(0.831469535827637) },
1780     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1781     { FRAC_CONST(-0.831469655036926), FRAC_CONST(0.555570185184479) },
1782     { FRAC_CONST(-0.923879623413086), FRAC_CONST(0.382683277130127) },
1783     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1784     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1785     { FRAC_CONST(0.956940352916718), FRAC_CONST(0.290284663438797) },
1786     { FRAC_CONST(0.831469595432281), FRAC_CONST(0.555570244789124) },
1787     { FRAC_CONST(0.634393274784088), FRAC_CONST(0.773010432720184) },
1788     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1789     { FRAC_CONST(0.098017133772373), FRAC_CONST(0.995184719562531) },
1790     { FRAC_CONST(-0.195090323686600), FRAC_CONST(0.980785250663757) },
1791     { FRAC_CONST(-0.471396833658218), FRAC_CONST(0.881921231746674) },
1792     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1793     { FRAC_CONST(-0.881921231746674), FRAC_CONST(0.471396833658218) },
1794     { FRAC_CONST(-0.980785310268402), FRAC_CONST(0.195090308785439) },
1795     { FRAC_CONST(-0.995184719562531), FRAC_CONST(-0.098017267882824) },
1796     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1797     { FRAC_CONST(-0.773010551929474), FRAC_CONST(-0.634393215179443) },
1798     { FRAC_CONST(-0.555570006370544), FRAC_CONST(-0.831469774246216) },
1799     { FRAC_CONST(-0.290284544229507), FRAC_CONST(-0.956940352916718) },
1800     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1801     { FRAC_CONST(0.923879504203796), FRAC_CONST(0.382683455944061) },
1802     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1803     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1804     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1805     { FRAC_CONST(0.707106769084930), FRAC_CONST(0.707106769084930) },
1806     { FRAC_CONST(-0.000000043711388), FRAC_CONST(1.000000000000000) },
1807     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1808     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1809     { FRAC_CONST(0.382683426141739), FRAC_CONST(0.923879504203796) },
1810     { FRAC_CONST(-0.707106769084930), FRAC_CONST(0.707106769084930) },
1811     { FRAC_CONST(-0.923879504203796), FRAC_CONST(-0.382683426141739) },
1812     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1813     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1814     { FRAC_CONST(1.000000000000000), FRAC_CONST(0.000000000000000) },
1815     { FRAC_CONST(0.000000011924881), FRAC_CONST(-1.000000000000000) }
1816 };
1817
1818 #endif
1819
1820 #ifdef __cplusplus
1821 }
1822 #endif
1823 #endif