diff options
Diffstat (limited to 'src/libfaad/sine_win.h')
-rw-r--r-- | src/libfaad/sine_win.h | 12719 |
1 files changed, 4239 insertions, 8480 deletions
diff --git a/src/libfaad/sine_win.h b/src/libfaad/sine_win.h index 9e6fd503b..807190633 100644 --- a/src/libfaad/sine_win.h +++ b/src/libfaad/sine_win.h @@ -1,6 +1,6 @@ /* -** FAAD - Freeware Advanced Audio Decoder -** Copyright (C) 2002 M. Bakker +** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding +** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by @@ -16,7 +16,13 @@ ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ** -** $Id: sine_win.h,v 1.1 2002/12/16 19:01:06 miguelfreitas Exp $ +** Any non-GPL usage of this software or parts of this software is strictly +** forbidden. +** +** Commercial non-GPL licensing of this software is possible. +** For more info contact Ahead Software through Mpeg4AAClicense@nero.com. +** +** $Id: sine_win.h,v 1.2 2003/12/30 02:00:11 miguelfreitas Exp $ **/ #ifndef __SINE_WIN_H__ @@ -26,8514 +32,4267 @@ extern "C" { #endif -#ifndef FIXED_POINT - #ifdef _MSC_VER #pragma warning(disable:4305) #pragma warning(disable:4244) #endif -real_t sine_long_1024[] = -{ - 0.0007669903, - 0.0023009692, - 0.0038349427, - 0.0053689071, - 0.0069028589, - 0.0084367945, - 0.0099707102, - 0.0115046024, - 0.0130384676, - 0.0145723021, - 0.0161061023, - 0.0176398646, - 0.0191735854, - 0.0207072611, - 0.0222408880, - 0.0237744627, - 0.0253079813, - 0.0268414404, - 0.0283748364, - 0.0299081656, - 0.0314414244, - 0.0329746092, - 0.0345077165, - 0.0360407425, - 0.0375736838, - 0.0391065366, - 0.0406392974, - 0.0421719625, - 0.0437045285, - 0.0452369916, - 0.0467693482, - 0.0483015948, - 0.0498337277, - 0.0513657434, - 0.0528976382, - 0.0544294085, - 0.0559610508, - 0.0574925613, - 0.0590239366, - 0.0605551730, - 0.0620862669, - 0.0636172147, - 0.0651480128, - 0.0666786576, - 0.0682091456, - 0.0697394730, - 0.0712696363, - 0.0727996319, - 0.0743294562, - 0.0758591055, - 0.0773885764, - 0.0789178652, - 0.0804469683, - 0.0819758821, - 0.0835046030, - 0.0850331273, - 0.0865614516, - 0.0880895722, - 0.0896174856, - 0.0911451880, - 0.0926726760, - 0.0941999459, - 0.0957269942, - 0.0972538171, - 0.0987804113, - 0.1003067730, - 0.1018328987, - 0.1033587847, - 0.1048844276, - 0.1064098236, - 0.1079349692, - 0.1094598609, - 0.1109844950, - 0.1125088679, - 0.1140329761, - 0.1155568160, - 0.1170803839, - 0.1186036763, - 0.1201266897, - 0.1216494204, - 0.1231718648, - 0.1246940194, - 0.1262158806, - 0.1277374448, - 0.1292587084, - 0.1307796678, - 0.1323003195, - 0.1338206599, - 0.1353406854, - 0.1368603924, - 0.1383797774, - 0.1398988368, - 0.1414175669, - 0.1429359643, - 0.1444540254, - 0.1459717465, - 0.1474891242, - 0.1490061548, - 0.1505228347, - 0.1520391605, - 0.1535551285, - 0.1550707352, - 0.1565859770, - 0.1581008503, - 0.1596153516, - 0.1611294774, - 0.1626432239, - 0.1641565877, - 0.1656695653, - 0.1671821530, - 0.1686943474, - 0.1702061448, - 0.1717175416, - 0.1732285344, - 0.1747391196, - 0.1762492936, - 0.1777590529, - 0.1792683938, - 0.1807773130, - 0.1822858067, - 0.1837938716, - 0.1853015039, - 0.1868087002, - 0.1883154569, - 0.1898217705, - 0.1913276375, - 0.1928330542, - 0.1943380172, - 0.1958425228, - 0.1973465677, - 0.1988501481, - 0.2003532607, - 0.2018559018, - 0.2033580679, - 0.2048597554, - 0.2063609610, - 0.2078616809, - 0.2093619117, - 0.2108616499, - 0.2123608919, - 0.2138596342, - 0.2153578733, - 0.2168556056, - 0.2183528276, - 0.2198495358, - 0.2213457267, - 0.2228413967, - 0.2243365424, - 0.2258311602, - 0.2273252466, - 0.2288187981, - 0.2303118111, - 0.2318042822, - 0.2332962078, - 0.2347875845, - 0.2362784086, - 0.2377686768, - 0.2392583855, - 0.2407475313, - 0.2422361105, - 0.2437241197, - 0.2452115554, - 0.2466984140, - 0.2481846922, - 0.2496703864, - 0.2511554931, - 0.2526400088, - 0.2541239300, - 0.2556072532, - 0.2570899749, - 0.2585720917, - 0.2600536001, - 0.2615344965, - 0.2630147775, - 0.2644944396, - 0.2659734793, - 0.2674518932, - 0.2689296777, - 0.2704068294, - 0.2718833448, - 0.2733592205, - 0.2748344529, - 0.2763090386, - 0.2777829741, - 0.2792562559, - 0.2807288807, - 0.2822008448, - 0.2836721449, - 0.2851427776, - 0.2866127392, - 0.2880820264, - 0.2895506357, - 0.2910185637, - 0.2924858069, - 0.2939523618, - 0.2954182251, - 0.2968833932, - 0.2983478627, - 0.2998116301, - 0.3012746921, - 0.3027370451, - 0.3041986858, - 0.3056596107, - 0.3071198163, - 0.3085792992, - 0.3100380561, - 0.3114960833, - 0.3129533776, - 0.3144099355, - 0.3158657535, - 0.3173208283, - 0.3187751564, - 0.3202287344, - 0.3216815589, - 0.3231336264, - 0.3245849335, - 0.3260354769, - 0.3274852530, - 0.3289342586, - 0.3303824902, - 0.3318299443, - 0.3332766176, - 0.3347225067, - 0.3361676081, - 0.3376119185, - 0.3390554345, - 0.3404981526, - 0.3419400695, - 0.3433811818, - 0.3448214861, - 0.3462609790, - 0.3476996571, - 0.3491375170, - 0.3505745554, - 0.3520107688, - 0.3534461540, - 0.3548807074, - 0.3563144257, - 0.3577473057, - 0.3591793438, - 0.3606105367, - 0.3620408811, - 0.3634703735, - 0.3648990107, - 0.3663267892, - 0.3677537058, - 0.3691797569, - 0.3706049394, - 0.3720292498, - 0.3734526847, - 0.3748752409, - 0.3762969150, - 0.3777177036, - 0.3791376034, - 0.3805566111, - 0.3819747232, - 0.3833919366, - 0.3848082478, - 0.3862236535, - 0.3876381503, - 0.3890517351, - 0.3904644043, - 0.3918761548, - 0.3932869831, - 0.3946968860, - 0.3961058601, - 0.3975139021, - 0.3989210088, - 0.4003271768, - 0.4017324027, - 0.4031366834, - 0.4045400154, - 0.4059423955, - 0.4073438203, - 0.4087442867, - 0.4101437912, - 0.4115423307, - 0.4129399017, - 0.4143365010, - 0.4157321254, - 0.4171267715, - 0.4185204361, - 0.4199131159, - 0.4213048075, - 0.4226955078, - 0.4240852135, - 0.4254739212, - 0.4268616277, - 0.4282483298, - 0.4296340242, - 0.4310187077, - 0.4324023768, - 0.4337850286, - 0.4351666595, - 0.4365472665, - 0.4379268463, - 0.4393053955, - 0.4406829110, - 0.4420593896, - 0.4434348280, - 0.4448092229, - 0.4461825711, - 0.4475548694, - 0.4489261146, - 0.4502963034, - 0.4516654326, - 0.4530334990, - 0.4544004994, - 0.4557664305, - 0.4571312892, - 0.4584950722, - 0.4598577763, - 0.4612193983, - 0.4625799351, - 0.4639393833, - 0.4652977398, - 0.4666550015, - 0.4680111650, - 0.4693662273, - 0.4707201851, - 0.4720730353, - 0.4734247746, - 0.4747754000, - 0.4761249081, - 0.4774732959, - 0.4788205601, - 0.4801666976, - 0.4815117052, - 0.4828555798, - 0.4841983182, - 0.4855399172, - 0.4868803737, - 0.4882196845, - 0.4895578465, - 0.4908948565, - 0.4922307114, - 0.4935654080, - 0.4948989433, - 0.4962313139, - 0.4975625169, - 0.4988925491, - 0.5002214073, - 0.5015490885, - 0.5028755895, - 0.5042009071, - 0.5055250384, - 0.5068479800, - 0.5081697290, - 0.5094902823, - 0.5108096366, - 0.5121277890, - 0.5134447363, - 0.5147604754, - 0.5160750032, - 0.5173883167, - 0.5187004127, - 0.5200112881, - 0.5213209399, - 0.5226293650, - 0.5239365603, - 0.5252425227, - 0.5265472491, - 0.5278507366, - 0.5291529819, - 0.5304539821, - 0.5317537341, - 0.5330522349, - 0.5343494813, - 0.5356454703, - 0.5369401989, - 0.5382336641, - 0.5395258627, - 0.5408167917, - 0.5421064482, - 0.5433948291, - 0.5446819312, - 0.5459677517, - 0.5472522875, - 0.5485355355, - 0.5498174928, - 0.5510981563, - 0.5523775230, - 0.5536555900, - 0.5549323541, - 0.5562078124, - 0.5574819619, - 0.5587547996, - 0.5600263225, - 0.5612965275, - 0.5625654118, - 0.5638329724, - 0.5650992062, - 0.5663641102, - 0.5676276815, - 0.5688899172, - 0.5701508142, - 0.5714103696, - 0.5726685804, - 0.5739254436, - 0.5751809564, - 0.5764351157, - 0.5776879185, - 0.5789393621, - 0.5801894433, - 0.5814381593, - 0.5826855071, - 0.5839314838, - 0.5851760864, - 0.5864193121, - 0.5876611579, - 0.5889016208, - 0.5901406980, - 0.5913783866, - 0.5926146835, - 0.5938495860, - 0.5950830911, - 0.5963151959, - 0.5975458976, - 0.5987751931, - 0.6000030797, - 0.6012295544, - 0.6024546144, - 0.6036782567, - 0.6049004785, - 0.6061212769, - 0.6073406491, - 0.6085585921, - 0.6097751031, - 0.6109901793, - 0.6122038177, - 0.6134160156, - 0.6146267701, - 0.6158360782, - 0.6170439373, - 0.6182503444, - 0.6194552967, - 0.6206587913, - 0.6218608255, - 0.6230613964, - 0.6242605011, - 0.6254581369, - 0.6266543010, - 0.6278489904, - 0.6290422025, - 0.6302339344, - 0.6314241833, - 0.6326129463, - 0.6338002208, - 0.6349860039, - 0.6361702928, - 0.6373530847, - 0.6385343769, - 0.6397141665, - 0.6408924509, - 0.6420692271, - 0.6432444925, - 0.6444182443, - 0.6455904797, - 0.6467611960, - 0.6479303904, - 0.6490980601, - 0.6502642024, - 0.6514288146, - 0.6525918940, - 0.6537534377, - 0.6549134431, - 0.6560719074, - 0.6572288279, - 0.6583842018, - 0.6595380266, - 0.6606902994, - 0.6618410175, - 0.6629901782, - 0.6641377789, - 0.6652838167, - 0.6664282891, - 0.6675711934, - 0.6687125267, - 0.6698522866, - 0.6709904702, - 0.6721270748, - 0.6732620980, - 0.6743955368, - 0.6755273888, - 0.6766576511, - 0.6777863212, - 0.6789133965, - 0.6800388741, - 0.6811627516, - 0.6822850262, - 0.6834056954, - 0.6845247564, - 0.6856422067, - 0.6867580436, - 0.6878722645, - 0.6889848667, - 0.6900958478, - 0.6912052049, - 0.6923129356, - 0.6934190372, - 0.6945235071, - 0.6956263427, - 0.6967275415, - 0.6978271008, - 0.6989250180, - 0.7000212906, - 0.7011159160, - 0.7022088916, - 0.7033002148, - 0.7043898831, - 0.7054778939, - 0.7065642446, - 0.7076489327, - 0.7087319557, - 0.7098133109, - 0.7108929959, - 0.7119710081, - 0.7130473449, - 0.7141220039, - 0.7151949824, - 0.7162662781, - 0.7173358883, - 0.7184038105, - 0.7194700423, - 0.7205345811, - 0.7215974244, - 0.7226585697, - 0.7237180145, - 0.7247757564, - 0.7258317928, - 0.7268861212, - 0.7279387392, - 0.7289896443, - 0.7300388340, - 0.7310863058, - 0.7321320574, - 0.7331760861, - 0.7342183896, - 0.7352589655, - 0.7362978112, - 0.7373349243, - 0.7383703024, - 0.7394039430, - 0.7404358438, - 0.7414660022, - 0.7424944159, - 0.7435210825, - 0.7445459994, - 0.7455691644, - 0.7465905750, - 0.7476102287, - 0.7486281233, - 0.7496442563, - 0.7506586253, - 0.7516712279, - 0.7526820618, - 0.7536911245, - 0.7546984137, - 0.7557039270, - 0.7567076622, - 0.7577096166, - 0.7587097882, - 0.7597081744, - 0.7607047729, - 0.7616995815, - 0.7626925976, - 0.7636838191, - 0.7646732436, - 0.7656608687, - 0.7666466922, - 0.7676307116, - 0.7686129248, - 0.7695933293, - 0.7705719229, - 0.7715487032, - 0.7725236681, - 0.7734968151, - 0.7744681420, - 0.7754376465, - 0.7764053263, - 0.7773711792, - 0.7783352028, - 0.7792973950, - 0.7802577533, - 0.7812162757, - 0.7821729598, - 0.7831278033, - 0.7840808041, - 0.7850319598, - 0.7859812683, - 0.7869287273, - 0.7878743346, - 0.7888180880, - 0.7897599851, - 0.7907000239, - 0.7916382021, - 0.7925745175, - 0.7935089679, - 0.7944415511, - 0.7953722649, - 0.7963011071, - 0.7972280756, - 0.7981531680, - 0.7990763824, - 0.7999977164, - 0.8009171680, - 0.8018347350, - 0.8027504151, - 0.8036642063, - 0.8045761064, - 0.8054861132, - 0.8063942247, - 0.8073004386, - 0.8082047529, - 0.8091071654, - 0.8100076740, - 0.8109062766, - 0.8118029710, - 0.8126977551, - 0.8135906270, - 0.8144815843, - 0.8153706251, - 0.8162577473, - 0.8171429487, - 0.8180262273, - 0.8189075810, - 0.8197870078, - 0.8206645055, - 0.8215400721, - 0.8224137055, - 0.8232854037, - 0.8241551647, - 0.8250229863, - 0.8258888666, - 0.8267528035, - 0.8276147949, - 0.8284748389, - 0.8293329334, - 0.8301890764, - 0.8310432659, - 0.8318954999, - 0.8327457763, - 0.8335940932, - 0.8344404486, - 0.8352848405, - 0.8361272668, - 0.8369677257, - 0.8378062151, - 0.8386427331, - 0.8394772776, - 0.8403098468, - 0.8411404387, - 0.8419690512, - 0.8427956826, - 0.8436203307, - 0.8444429937, - 0.8452636697, - 0.8460823567, - 0.8468990528, - 0.8477137560, - 0.8485264645, - 0.8493371763, - 0.8501458896, - 0.8509526024, - 0.8517573128, - 0.8525600189, - 0.8533607189, - 0.8541594108, - 0.8549560928, - 0.8557507630, - 0.8565434196, - 0.8573340606, - 0.8581226843, - 0.8589092887, - 0.8596938720, - 0.8604764323, - 0.8612569679, - 0.8620354768, - 0.8628119573, - 0.8635864076, - 0.8643588257, - 0.8651292099, - 0.8658975583, - 0.8666638692, - 0.8674281408, - 0.8681903713, - 0.8689505588, - 0.8697087015, - 0.8704647978, - 0.8712188458, - 0.8719708437, - 0.8727207898, - 0.8734686823, - 0.8742145194, - 0.8749582994, - 0.8757000206, - 0.8764396811, - 0.8771772793, - 0.8779128134, - 0.8786462817, - 0.8793776825, - 0.8801070140, - 0.8808342745, - 0.8815594624, - 0.8822825758, - 0.8830036132, - 0.8837225727, - 0.8844394528, - 0.8851542517, - 0.8858669678, - 0.8865775993, - 0.8872861446, - 0.8879926020, - 0.8886969699, - 0.8893992467, - 0.8900994305, - 0.8907975199, - 0.8914935132, - 0.8921874087, - 0.8928792048, - 0.8935688998, - 0.8942564922, - 0.8949419803, - 0.8956253626, - 0.8963066373, - 0.8969858030, - 0.8976628579, - 0.8983378006, - 0.8990106294, - 0.8996813427, - 0.9003499390, - 0.9010164167, - 0.9016807742, - 0.9023430100, - 0.9030031224, - 0.9036611101, - 0.9043169713, - 0.9049707045, - 0.9056223083, - 0.9062717811, - 0.9069191213, - 0.9075643274, - 0.9082073980, - 0.9088483315, - 0.9094871263, - 0.9101237811, - 0.9107582942, - 0.9113906642, - 0.9120208897, - 0.9126489690, - 0.9132749009, - 0.9138986837, - 0.9145203160, - 0.9151397963, - 0.9157571232, - 0.9163722953, - 0.9169853111, - 0.9175961691, - 0.9182048679, - 0.9188114061, - 0.9194157822, - 0.9200179948, - 0.9206180426, - 0.9212159241, - 0.9218116378, - 0.9224051825, - 0.9229965566, - 0.9235857588, - 0.9241727878, - 0.9247576421, - 0.9253403203, - 0.9259208211, - 0.9264991431, - 0.9270752850, - 0.9276492454, - 0.9282210230, - 0.9287906163, - 0.9293580242, - 0.9299232451, - 0.9304862779, - 0.9310471211, - 0.9316057735, - 0.9321622337, - 0.9327165005, - 0.9332685724, - 0.9338184484, - 0.9343661269, - 0.9349116068, - 0.9354548868, - 0.9359959655, - 0.9365348418, - 0.9370715142, - 0.9376059817, - 0.9381382429, - 0.9386682966, - 0.9391961415, - 0.9397217764, - 0.9402452000, - 0.9407664111, - 0.9412854085, - 0.9418021910, - 0.9423167573, - 0.9428291063, - 0.9433392367, - 0.9438471473, - 0.9443528370, - 0.9448563045, - 0.9453575486, - 0.9458565683, - 0.9463533623, - 0.9468479294, - 0.9473402684, - 0.9478303783, - 0.9483182579, - 0.9488039059, - 0.9492873214, - 0.9497685031, - 0.9502474498, - 0.9507241606, - 0.9511986342, - 0.9516708696, - 0.9521408655, - 0.9526086210, - 0.9530741350, - 0.9535374062, - 0.9539984337, - 0.9544572163, - 0.9549137530, - 0.9553680427, - 0.9558200843, - 0.9562698768, - 0.9567174191, - 0.9571627101, - 0.9576057488, - 0.9580465342, - 0.9584850652, - 0.9589213409, - 0.9593553600, - 0.9597871218, - 0.9602166250, - 0.9606438688, - 0.9610688521, - 0.9614915739, - 0.9619120332, - 0.9623302290, - 0.9627461604, - 0.9631598263, - 0.9635712259, - 0.9639803580, - 0.9643872219, - 0.9647918164, - 0.9651941407, - 0.9655941938, - 0.9659919747, - 0.9663874826, - 0.9667807165, - 0.9671716754, - 0.9675603585, - 0.9679467648, - 0.9683308935, - 0.9687127436, - 0.9690923142, - 0.9694696044, - 0.9698446134, - 0.9702173403, - 0.9705877841, - 0.9709559440, - 0.9713218192, - 0.9716854088, - 0.9720467119, - 0.9724057277, - 0.9727624553, - 0.9731168939, - 0.9734690427, - 0.9738189008, - 0.9741664675, - 0.9745117418, - 0.9748547230, - 0.9751954102, - 0.9755338028, - 0.9758698998, - 0.9762037005, - 0.9765352041, - 0.9768644098, - 0.9771913168, - 0.9775159245, - 0.9778382319, - 0.9781582384, - 0.9784759432, - 0.9787913456, - 0.9791044447, - 0.9794152399, - 0.9797237305, - 0.9800299157, - 0.9803337948, - 0.9806353670, - 0.9809346317, - 0.9812315882, - 0.9815262358, - 0.9818185737, - 0.9821086014, - 0.9823963180, - 0.9826817229, - 0.9829648155, - 0.9832455951, - 0.9835240610, - 0.9838002126, - 0.9840740493, - 0.9843455703, - 0.9846147750, - 0.9848816628, - 0.9851462332, - 0.9854084853, - 0.9856684187, - 0.9859260328, - 0.9861813268, - 0.9864343003, - 0.9866849526, - 0.9869332832, - 0.9871792914, - 0.9874229766, - 0.9876643384, - 0.9879033761, - 0.9881400891, - 0.9883744770, - 0.9886065391, - 0.9888362750, - 0.9890636840, - 0.9892887657, - 0.9895115194, - 0.9897319448, - 0.9899500412, - 0.9901658081, - 0.9903792451, - 0.9905903517, - 0.9907991273, - 0.9910055714, - 0.9912096836, - 0.9914114634, - 0.9916109103, - 0.9918080239, - 0.9920028036, - 0.9921952491, - 0.9923853598, - 0.9925731354, - 0.9927585753, - 0.9929416792, - 0.9931224466, - 0.9933008770, - 0.9934769702, - 0.9936507256, - 0.9938221428, - 0.9939912215, - 0.9941579612, - 0.9943223616, - 0.9944844222, - 0.9946441427, - 0.9948015227, - 0.9949565619, - 0.9951092598, - 0.9952596161, - 0.9954076305, - 0.9955533026, - 0.9956966321, - 0.9958376186, - 0.9959762618, - 0.9961125614, - 0.9962465170, - 0.9963781284, - 0.9965073951, - 0.9966343170, - 0.9967588938, - 0.9968811250, - 0.9970010105, - 0.9971185500, - 0.9972337431, - 0.9973465897, - 0.9974570894, - 0.9975652420, - 0.9976710472, - 0.9977745048, - 0.9978756145, - 0.9979743762, - 0.9980707895, - 0.9981648543, - 0.9982565703, - 0.9983459372, - 0.9984329550, - 0.9985176234, - 0.9985999422, - 0.9986799111, - 0.9987575301, - 0.9988327989, - 0.9989057173, - 0.9989762853, - 0.9990445025, - 0.9991103689, - 0.9991738843, - 0.9992350485, - 0.9992938615, - 0.9993503230, - 0.9994044329, - 0.9994561911, - 0.9995055976, - 0.9995526521, - 0.9995973545, - 0.9996397048, - 0.9996797029, - 0.9997173486, - 0.9997526418, - 0.9997855826, - 0.9998161708, - 0.9998444063, - 0.9998702890, - 0.9998938190, - 0.9999149961, - 0.9999338204, - 0.9999502917, - 0.9999644100, - 0.9999761753, - 0.9999855875, - 0.9999926467, - 0.9999973529, - 0.9999997059 -}; - -real_t sine_long_960[] = -{ - 0.0008181230, - 0.0024543669, - 0.0040906041, - 0.0057268305, - 0.0073630415, - 0.0089992327, - 0.0106353999, - 0.0122715386, - 0.0139076445, - 0.0155437131, - 0.0171797401, - 0.0188157211, - 0.0204516518, - 0.0220875276, - 0.0237233444, - 0.0253590976, - 0.0269947829, - 0.0286303960, - 0.0302659324, - 0.0319013878, - 0.0335367578, - 0.0351720379, - 0.0368072240, - 0.0384423114, - 0.0400772960, - 0.0417121732, - 0.0433469388, - 0.0449815883, - 0.0466161174, - 0.0482505217, - 0.0498847968, - 0.0515189384, - 0.0531529420, - 0.0547868033, - 0.0564205179, - 0.0580540815, - 0.0596874897, - 0.0613207380, - 0.0629538222, - 0.0645867378, - 0.0662194805, - 0.0678520459, - 0.0694844297, - 0.0711166274, - 0.0727486347, - 0.0743804473, - 0.0760120607, - 0.0776434706, - 0.0792746727, - 0.0809056625, - 0.0825364356, - 0.0841669879, - 0.0857973147, - 0.0874274119, - 0.0890572750, - 0.0906868996, - 0.0923162815, - 0.0939454162, - 0.0955742994, - 0.0972029267, - 0.0988312938, - 0.1004593962, - 0.1020872297, - 0.1037147899, - 0.1053420724, - 0.1069690729, - 0.1085957870, - 0.1102222103, - 0.1118483386, - 0.1134741674, - 0.1150996924, - 0.1167249092, - 0.1183498135, - 0.1199744010, - 0.1215986673, - 0.1232226080, - 0.1248462188, - 0.1264694953, - 0.1280924333, - 0.1297150283, - 0.1313372760, - 0.1329591721, - 0.1345807122, - 0.1362018920, - 0.1378227072, - 0.1394431534, - 0.1410632262, - 0.1426829214, - 0.1443022345, - 0.1459211613, - 0.1475396975, - 0.1491578386, - 0.1507755804, - 0.1523929185, - 0.1540098486, - 0.1556263664, - 0.1572424676, - 0.1588581477, - 0.1604734026, - 0.1620882278, - 0.1637026190, - 0.1653165720, - 0.1669300823, - 0.1685431457, - 0.1701557579, - 0.1717679146, - 0.1733796113, - 0.1749908439, - 0.1766016080, - 0.1782118992, - 0.1798217134, - 0.1814310460, - 0.1830398930, - 0.1846482499, - 0.1862561124, - 0.1878634763, - 0.1894703372, - 0.1910766908, - 0.1926825329, - 0.1942878591, - 0.1958926651, - 0.1974969467, - 0.1991006995, - 0.2007039192, - 0.2023066016, - 0.2039087424, - 0.2055103372, - 0.2071113819, - 0.2087118720, - 0.2103118034, - 0.2119111716, - 0.2135099726, - 0.2151082019, - 0.2167058553, - 0.2183029285, - 0.2198994172, - 0.2214953172, - 0.2230906242, - 0.2246853339, - 0.2262794421, - 0.2278729444, - 0.2294658367, - 0.2310581146, - 0.2326497739, - 0.2342408103, - 0.2358312196, - 0.2374209975, - 0.2390101398, - 0.2405986421, - 0.2421865003, - 0.2437737101, - 0.2453602672, - 0.2469461675, - 0.2485314066, - 0.2501159802, - 0.2516998843, - 0.2532831145, - 0.2548656665, - 0.2564475362, - 0.2580287194, - 0.2596092117, - 0.2611890089, - 0.2627681069, - 0.2643465014, - 0.2659241881, - 0.2675011628, - 0.2690774214, - 0.2706529596, - 0.2722277732, - 0.2738018579, - 0.2753752096, - 0.2769478240, - 0.2785196969, - 0.2800908242, - 0.2816612016, - 0.2832308248, - 0.2847996898, - 0.2863677923, - 0.2879351281, - 0.2895016930, - 0.2910674829, - 0.2926324934, - 0.2941967205, - 0.2957601599, - 0.2973228075, - 0.2988846591, - 0.3004457105, - 0.3020059575, - 0.3035653959, - 0.3051240216, - 0.3066818303, - 0.3082388180, - 0.3097949805, - 0.3113503135, - 0.3129048130, - 0.3144584747, - 0.3160112945, - 0.3175632683, - 0.3191143918, - 0.3206646610, - 0.3222140717, - 0.3237626197, - 0.3253103009, - 0.3268571111, - 0.3284030463, - 0.3299481022, - 0.3314922747, - 0.3330355597, - 0.3345779531, - 0.3361194508, - 0.3376600485, - 0.3391997422, - 0.3407385278, - 0.3422764011, - 0.3438133581, - 0.3453493945, - 0.3468845064, - 0.3484186895, - 0.3499519398, - 0.3514842532, - 0.3530156256, - 0.3545460528, - 0.3560755308, - 0.3576040555, - 0.3591316228, - 0.3606582285, - 0.3621838687, - 0.3637085392, - 0.3652322359, - 0.3667549548, - 0.3682766918, - 0.3697974428, - 0.3713172038, - 0.3728359706, - 0.3743537392, - 0.3758705056, - 0.3773862656, - 0.3789010153, - 0.3804147505, - 0.3819274673, - 0.3834391615, - 0.3849498291, - 0.3864594661, - 0.3879680685, - 0.3894756321, - 0.3909821530, - 0.3924876271, - 0.3939920504, - 0.3954954189, - 0.3969977285, - 0.3984989752, - 0.3999991550, - 0.4014982640, - 0.4029962979, - 0.4044932530, - 0.4059891250, - 0.4074839102, - 0.4089776043, - 0.4104702036, - 0.4119617038, - 0.4134521011, - 0.4149413915, - 0.4164295710, - 0.4179166355, - 0.4194025812, - 0.4208874040, - 0.4223710999, - 0.4238536651, - 0.4253350954, - 0.4268153870, - 0.4282945359, - 0.4297725381, - 0.4312493897, - 0.4327250867, - 0.4341996252, - 0.4356730012, - 0.4371452107, - 0.4386162499, - 0.4400861148, - 0.4415548014, - 0.4430223059, - 0.4444886242, - 0.4459537525, - 0.4474176869, - 0.4488804234, - 0.4503419581, - 0.4518022871, - 0.4532614065, - 0.4547193124, - 0.4561760009, - 0.4576314680, - 0.4590857100, - 0.4605387228, - 0.4619905026, - 0.4634410455, - 0.4648903477, - 0.4663384052, - 0.4677852142, - 0.4692307707, - 0.4706750710, - 0.4721181112, - 0.4735598874, - 0.4750003957, - 0.4764396322, - 0.4778775932, - 0.4793142748, - 0.4807496731, - 0.4821837843, - 0.4836166046, - 0.4850481301, - 0.4864783569, - 0.4879072813, - 0.4893348994, - 0.4907612075, - 0.4921862016, - 0.4936098779, - 0.4950322328, - 0.4964532623, - 0.4978729626, - 0.4992913300, - 0.5007083606, - 0.5021240507, - 0.5035383964, - 0.5049513940, - 0.5063630397, - 0.5077733298, - 0.5091822603, - 0.5105898276, - 0.5119960280, - 0.5134008575, - 0.5148043125, - 0.5162063893, - 0.5176070840, - 0.5190063929, - 0.5204043123, - 0.5218008384, - 0.5231959674, - 0.5245896958, - 0.5259820196, - 0.5273729352, - 0.5287624389, - 0.5301505270, - 0.5315371956, - 0.5329224412, - 0.5343062600, - 0.5356886483, - 0.5370696023, - 0.5384491185, - 0.5398271931, - 0.5412038224, - 0.5425790028, - 0.5439527305, - 0.5453250019, - 0.5466958133, - 0.5480651610, - 0.5494330413, - 0.5507994507, - 0.5521643854, - 0.5535278418, - 0.5548898163, - 0.5562503051, - 0.5576093047, - 0.5589668114, - 0.5603228216, - 0.5616773317, - 0.5630303379, - 0.5643818368, - 0.5657318246, - 0.5670802978, - 0.5684272527, - 0.5697726858, - 0.5711165935, - 0.5724589721, - 0.5737998180, - 0.5751391277, - 0.5764768976, - 0.5778131241, - 0.5791478036, - 0.5804809326, - 0.5818125074, - 0.5831425246, - 0.5844709805, - 0.5857978716, - 0.5871231943, - 0.5884469451, - 0.5897691205, - 0.5910897169, - 0.5924087308, - 0.5937261586, - 0.5950419968, - 0.5963562420, - 0.5976688905, - 0.5989799388, - 0.6002893835, - 0.6015972211, - 0.6029034480, - 0.6042080607, - 0.6055110558, - 0.6068124298, - 0.6081121791, - 0.6094103003, - 0.6107067900, - 0.6120016446, - 0.6132948607, - 0.6145864349, - 0.6158763636, - 0.6171646434, - 0.6184512709, - 0.6197362426, - 0.6210195550, - 0.6223012049, - 0.6235811886, - 0.6248595028, - 0.6261361441, - 0.6274111090, - 0.6286843942, - 0.6299559962, - 0.6312259115, - 0.6324941370, - 0.6337606690, - 0.6350255043, - 0.6362886394, - 0.6375500710, - 0.6388097956, - 0.6400678100, - 0.6413241107, - 0.6425786945, - 0.6438315578, - 0.6450826974, - 0.6463321099, - 0.6475797920, - 0.6488257403, - 0.6500699516, - 0.6513124223, - 0.6525531494, - 0.6537921293, - 0.6550293589, - 0.6562648347, - 0.6574985536, - 0.6587305121, - 0.6599607069, - 0.6611891349, - 0.6624157927, - 0.6636406770, - 0.6648637845, - 0.6660851120, - 0.6673046561, - 0.6685224137, - 0.6697383815, - 0.6709525561, - 0.6721649344, - 0.6733755132, - 0.6745842891, - 0.6757912589, - 0.6769964195, - 0.6781997675, - 0.6794012997, - 0.6806010131, - 0.6817989042, - 0.6829949700, - 0.6841892071, - 0.6853816125, - 0.6865721829, - 0.6877609152, - 0.6889478061, - 0.6901328525, - 0.6913160512, - 0.6924973990, - 0.6936768929, - 0.6948545295, - 0.6960303058, - 0.6972042186, - 0.6983762648, - 0.6995464412, - 0.7007147448, - 0.7018811723, - 0.7030457206, - 0.7042083867, - 0.7053691674, - 0.7065280597, - 0.7076850603, - 0.7088401663, - 0.7099933745, - 0.7111446818, - 0.7122940851, - 0.7134415815, - 0.7145871677, - 0.7157308408, - 0.7168725976, - 0.7180124352, - 0.7191503504, - 0.7202863403, - 0.7214204017, - 0.7225525317, - 0.7236827271, - 0.7248109851, - 0.7259373025, - 0.7270616764, - 0.7281841037, - 0.7293045814, - 0.7304231066, - 0.7315396762, - 0.7326542872, - 0.7337669368, - 0.7348776218, - 0.7359863393, - 0.7370930863, - 0.7381978600, - 0.7393006572, - 0.7404014752, - 0.7415003108, - 0.7425971612, - 0.7436920235, - 0.7447848947, - 0.7458757719, - 0.7469646521, - 0.7480515325, - 0.7491364101, - 0.7502192821, - 0.7513001455, - 0.7523789975, - 0.7534558351, - 0.7545306554, - 0.7556034557, - 0.7566742330, - 0.7577429844, - 0.7588097072, - 0.7598743984, - 0.7609370551, - 0.7619976746, - 0.7630562540, - 0.7641127905, - 0.7651672812, - 0.7662197234, - 0.7672701141, - 0.7683184506, - 0.7693647301, - 0.7704089498, - 0.7714511069, - 0.7724911985, - 0.7735292220, - 0.7745651745, - 0.7755990532, - 0.7766308555, - 0.7776605784, - 0.7786882194, - 0.7797137755, - 0.7807372441, - 0.7817586225, - 0.7827779079, - 0.7837950975, - 0.7848101886, - 0.7858231786, - 0.7868340647, - 0.7878428442, - 0.7888495145, - 0.7898540727, - 0.7908565162, - 0.7918568424, - 0.7928550486, - 0.7938511320, - 0.7948450901, - 0.7958369201, - 0.7968266194, - 0.7978141854, - 0.7987996154, - 0.7997829068, - 0.8007640569, - 0.8017430631, - 0.8027199228, - 0.8036946334, - 0.8046671923, - 0.8056375968, - 0.8066058444, - 0.8075719325, - 0.8085358584, - 0.8094976197, - 0.8104572137, - 0.8114146378, - 0.8123698896, - 0.8133229663, - 0.8142738656, - 0.8152225848, - 0.8161691215, - 0.8171134730, - 0.8180556368, - 0.8189956104, - 0.8199333914, - 0.8208689772, - 0.8218023652, - 0.8227335530, - 0.8236625381, - 0.8245893180, - 0.8255138903, - 0.8264362524, - 0.8273564019, - 0.8282743363, - 0.8291900531, - 0.8301035500, - 0.8310148244, - 0.8319238740, - 0.8328306962, - 0.8337352887, - 0.8346376491, - 0.8355377749, - 0.8364356636, - 0.8373313130, - 0.8382247206, - 0.8391158841, - 0.8400048009, - 0.8408914688, - 0.8417758854, - 0.8426580483, - 0.8435379552, - 0.8444156036, - 0.8452909913, - 0.8461641159, - 0.8470349751, - 0.8479035665, - 0.8487698878, - 0.8496339367, - 0.8504957108, - 0.8513552080, - 0.8522124258, - 0.8530673619, - 0.8539200142, - 0.8547703802, - 0.8556184578, - 0.8564642446, - 0.8573077384, - 0.8581489370, - 0.8589878380, - 0.8598244392, - 0.8606587385, - 0.8614907335, - 0.8623204220, - 0.8631478018, - 0.8639728707, - 0.8647956265, - 0.8656160670, - 0.8664341900, - 0.8672499933, - 0.8680634747, - 0.8688746320, - 0.8696834631, - 0.8704899657, - 0.8712941378, - 0.8720959772, - 0.8728954818, - 0.8736926493, - 0.8744874777, - 0.8752799648, - 0.8760701085, - 0.8768579067, - 0.8776433574, - 0.8784264583, - 0.8792072074, - 0.8799856025, - 0.8807616417, - 0.8815353229, - 0.8823066439, - 0.8830756027, - 0.8838421972, - 0.8846064254, - 0.8853682853, - 0.8861277748, - 0.8868848918, - 0.8876396344, - 0.8883920005, - 0.8891419881, - 0.8898895952, - 0.8906348198, - 0.8913776599, - 0.8921181136, - 0.8928561787, - 0.8935918534, - 0.8943251357, - 0.8950560237, - 0.8957845152, - 0.8965106085, - 0.8972343016, - 0.8979555925, - 0.8986744793, - 0.8993909601, - 0.9001050330, - 0.9008166959, - 0.9015259472, - 0.9022327848, - 0.9029372068, - 0.9036392114, - 0.9043387967, - 0.9050359608, - 0.9057307018, - 0.9064230179, - 0.9071129073, - 0.9078003680, - 0.9084853983, - 0.9091679963, - 0.9098481602, - 0.9105258881, - 0.9112011783, - 0.9118740290, - 0.9125444382, - 0.9132124044, - 0.9138779255, - 0.9145410000, - 0.9152016259, - 0.9158598016, - 0.9165155252, - 0.9171687951, - 0.9178196094, - 0.9184679665, - 0.9191138645, - 0.9197573017, - 0.9203982766, - 0.9210367872, - 0.9216728319, - 0.9223064091, - 0.9229375169, - 0.9235661538, - 0.9241923180, - 0.9248160078, - 0.9254372217, - 0.9260559578, - 0.9266722147, - 0.9272859906, - 0.9278972838, - 0.9285060928, - 0.9291124159, - 0.9297162514, - 0.9303175979, - 0.9309164536, - 0.9315128169, - 0.9321066864, - 0.9326980603, - 0.9332869370, - 0.9338733151, - 0.9344571929, - 0.9350385689, - 0.9356174416, - 0.9361938093, - 0.9367676705, - 0.9373390237, - 0.9379078674, - 0.9384742000, - 0.9390380200, - 0.9395993260, - 0.9401581163, - 0.9407143896, - 0.9412681443, - 0.9418193789, - 0.9423680920, - 0.9429142821, - 0.9434579477, - 0.9439990874, - 0.9445376998, - 0.9450737833, - 0.9456073366, - 0.9461383582, - 0.9466668467, - 0.9471928007, - 0.9477162188, - 0.9482370995, - 0.9487554416, - 0.9492712435, - 0.9497845040, - 0.9502952216, - 0.9508033949, - 0.9513090227, - 0.9518121035, - 0.9523126361, - 0.9528106190, - 0.9533060510, - 0.9537989307, - 0.9542892567, - 0.9547770279, - 0.9552622428, - 0.9557449002, - 0.9562249988, - 0.9567025372, - 0.9571775143, - 0.9576499288, - 0.9581197793, - 0.9585870647, - 0.9590517836, - 0.9595139348, - 0.9599735172, - 0.9604305294, - 0.9608849703, - 0.9613368385, - 0.9617861330, - 0.9622328525, - 0.9626769958, - 0.9631185617, - 0.9635575491, - 0.9639939567, - 0.9644277835, - 0.9648590281, - 0.9652876896, - 0.9657137667, - 0.9661372582, - 0.9665581632, - 0.9669764804, - 0.9673922086, - 0.9678053469, - 0.9682158941, - 0.9686238491, - 0.9690292108, - 0.9694319780, - 0.9698321499, - 0.9702297252, - 0.9706247029, - 0.9710170819, - 0.9714068613, - 0.9717940399, - 0.9721786167, - 0.9725605907, - 0.9729399608, - 0.9733167261, - 0.9736908855, - 0.9740624381, - 0.9744313828, - 0.9747977187, - 0.9751614448, - 0.9755225600, - 0.9758810635, - 0.9762369542, - 0.9765902313, - 0.9769408937, - 0.9772889406, - 0.9776343710, - 0.9779771840, - 0.9783173786, - 0.9786549539, - 0.9789899092, - 0.9793222433, - 0.9796519555, - 0.9799790449, - 0.9803035106, - 0.9806253518, - 0.9809445675, - 0.9812611569, - 0.9815751192, - 0.9818864535, - 0.9821951590, - 0.9825012349, - 0.9828046803, - 0.9831054945, - 0.9834036766, - 0.9836992258, - 0.9839921414, - 0.9842824225, - 0.9845700684, - 0.9848550783, - 0.9851374515, - 0.9854171871, - 0.9856942845, - 0.9859687429, - 0.9862405616, - 0.9865097398, - 0.9867762768, - 0.9870401719, - 0.9873014244, - 0.9875600336, - 0.9878159988, - 0.9880693193, - 0.9883199945, - 0.9885680237, - 0.9888134061, - 0.9890561412, - 0.9892962283, - 0.9895336667, - 0.9897684559, - 0.9900005952, - 0.9902300839, - 0.9904569215, - 0.9906811073, - 0.9909026408, - 0.9911215213, - 0.9913377484, - 0.9915513213, - 0.9917622395, - 0.9919705024, - 0.9921761096, - 0.9923790604, - 0.9925793543, - 0.9927769908, - 0.9929719693, - 0.9931642894, - 0.9933539504, - 0.9935409519, - 0.9937252935, - 0.9939069745, - 0.9940859945, - 0.9942623531, - 0.9944360497, - 0.9946070839, - 0.9947754553, - 0.9949411633, - 0.9951042076, - 0.9952645877, - 0.9954223032, - 0.9955773536, - 0.9957297385, - 0.9958794576, - 0.9960265105, - 0.9961708966, - 0.9963126157, - 0.9964516674, - 0.9965880513, - 0.9967217670, - 0.9968528142, - 0.9969811925, - 0.9971069016, - 0.9972299412, - 0.9973503108, - 0.9974680103, - 0.9975830392, - 0.9976953973, - 0.9978050843, - 0.9979120998, - 0.9980164436, - 0.9981181155, - 0.9982171151, - 0.9983134421, - 0.9984070964, - 0.9984980776, - 0.9985863855, - 0.9986720200, - 0.9987549807, - 0.9988352674, - 0.9989128799, - 0.9989878181, - 0.9990600816, - 0.9991296704, - 0.9991965842, - 0.9992608228, - 0.9993223862, - 0.9993812740, - 0.9994374862, - 0.9994910226, - 0.9995418831, - 0.9995900674, - 0.9996355756, - 0.9996784075, - 0.9997185629, - 0.9997560418, - 0.9997908440, - 0.9998229695, - 0.9998524181, - 0.9998791899, - 0.9999032846, - 0.9999247024, - 0.9999434430, - 0.9999595065, - 0.9999728928, - 0.9999836018, - 0.9999916336, - 0.9999969881, - 0.9999996654 -}; - -real_t sine_short_128[] = -{ - 0.0061358848, - 0.0184067304, - 0.0306748040, - 0.0429382581, - 0.0551952459, - 0.0674439214, - 0.0796824402, - 0.0919089590, - 0.1041216368, - 0.1163186341, - 0.1284981143, - 0.1406582432, - 0.1527971895, - 0.1649131250, - 0.1770042253, - 0.1890686693, - 0.2011046404, - 0.2131103258, - 0.2250839175, - 0.2370236125, - 0.2489276125, - 0.2607941250, - 0.2726213628, - 0.2844075449, - 0.2961508962, - 0.3078496483, - 0.3195020394, - 0.3311063146, - 0.3426607265, - 0.3541635348, - 0.3656130075, - 0.3770074202, - 0.3883450569, - 0.3996242103, - 0.4108431818, - 0.4220002818, - 0.4330938301, - 0.4441221560, - 0.4550835988, - 0.4659765077, - 0.4767992422, - 0.4875501725, - 0.4982276796, - 0.5088301553, - 0.5193560032, - 0.5298036379, - 0.5401714861, - 0.5504579865, - 0.5606615899, - 0.5707807598, - 0.5808139721, - 0.5907597160, - 0.6006164937, - 0.6103828207, - 0.6200572264, - 0.6296382536, - 0.6391244597, - 0.6485144160, - 0.6578067083, - 0.6669999374, - 0.6760927188, - 0.6850836831, - 0.6939714763, - 0.7027547599, - 0.7114322112, - 0.7200025235, - 0.7284644060, - 0.7368165845, - 0.7450578010, - 0.7531868147, - 0.7612024011, - 0.7691033533, - 0.7768884813, - 0.7845566127, - 0.7921065928, - 0.7995372846, - 0.8068475690, - 0.8140363451, - 0.8211025303, - 0.8280450605, - 0.8348628901, - 0.8415549925, - 0.8481203597, - 0.8545580032, - 0.8608669533, - 0.8670462601, - 0.8730949928, - 0.8790122407, - 0.8847971125, - 0.8904487372, - 0.8959662635, - 0.9013488606, - 0.9065957178, - 0.9117060451, - 0.9166790728, - 0.9215140520, - 0.9262102546, - 0.9307669733, - 0.9351835219, - 0.9394592352, - 0.9435934695, - 0.9475856021, - 0.9514350317, - 0.9551411788, - 0.9587034850, - 0.9621214141, - 0.9653944512, - 0.9685221034, - 0.9715038998, - 0.9743393912, - 0.9770281507, - 0.9795697733, - 0.9819638764, - 0.9842100992, - 0.9863081037, - 0.9882575738, - 0.9900582159, - 0.9917097588, - 0.9932119539, - 0.9945645750, - 0.9957674182, - 0.9968203026, - 0.9977230695, - 0.9984755829, - 0.9990777296, - 0.9995294188, - 0.9998305826, - 0.9999811755 -}; - -real_t sine_short_120[] = -{ - 0.0065449381, - 0.0196336930, - 0.0327190837, - 0.0457988682, - 0.0588708053, - 0.0719326552, - 0.0849821797, - 0.0980171430, - 0.1110353116, - 0.1240344549, - 0.1370123455, - 0.1499667597, - 0.1628954779, - 0.1757962848, - 0.1886669699, - 0.2015053279, - 0.2143091589, - 0.2270762692, - 0.2398044712, - 0.2524915839, - 0.2651354334, - 0.2777338534, - 0.2902846851, - 0.3027857780, - 0.3152349901, - 0.3276301883, - 0.3399692488, - 0.3522500573, - 0.3644705095, - 0.3766285116, - 0.3887219804, - 0.4007488436, - 0.4127070406, - 0.4245945223, - 0.4364092520, - 0.4481492051, - 0.4598123703, - 0.4713967489, - 0.4829003561, - 0.4943212208, - 0.5056573861, - 0.5169069096, - 0.5280678638, - 0.5391383363, - 0.5501164301, - 0.5610002644, - 0.5717879741, - 0.5824777109, - 0.5930676432, - 0.6035559563, - 0.6139408533, - 0.6242205546, - 0.6343932989, - 0.6444573433, - 0.6544109631, - 0.6642524530, - 0.6739801267, - 0.6835923173, - 0.6930873779, - 0.7024636815, - 0.7117196216, - 0.7208536122, - 0.7298640883, - 0.7387495058, - 0.7475083425, - 0.7561390974, - 0.7646402918, - 0.7730104690, - 0.7812481948, - 0.7893520577, - 0.7973206693, - 0.8051526640, - 0.8128467000, - 0.8204014588, - 0.8278156461, - 0.8350879914, - 0.8422172487, - 0.8492021964, - 0.8560416377, - 0.8627344006, - 0.8692793384, - 0.8756753297, - 0.8819212785, - 0.8880161146, - 0.8939587938, - 0.8997482976, - 0.9053836343, - 0.9108638381, - 0.9161879700, - 0.9213551179, - 0.9263643963, - 0.9312149469, - 0.9359059386, - 0.9404365677, - 0.9448060577, - 0.9490136602, - 0.9530586539, - 0.9569403460, - 0.9606580713, - 0.9642111928, - 0.9675991016, - 0.9708212173, - 0.9738769878, - 0.9767658894, - 0.9794874272, - 0.9820411349, - 0.9844265749, - 0.9866433385, - 0.9886910458, - 0.9905693459, - 0.9922779171, - 0.9938164666, - 0.9951847307, - 0.9963824750, - 0.9974094943, - 0.9982656127, - 0.9989506833, - 0.9994645889, - 0.9998072413, - 0.9999785819 -}; - -#ifdef LD_DEC -real_t sine_mid_512[] = +ALIGN static const real_t sine_long_1024[] = { - 0.0015339802, - 0.0046019262, - 0.0076698290, - 0.0107376595, - 0.0138053889, - 0.0168729884, - 0.0199404291, - 0.0230076821, - 0.0260747186, - 0.0291415096, - 0.0322080263, - 0.0352742399, - 0.0383401214, - 0.0414056421, - 0.0444707731, - 0.0475354855, - 0.0505997504, - 0.0536635391, - 0.0567268227, - 0.0597895724, - 0.0628517593, - 0.0659133546, - 0.0689743295, - 0.0720346552, - 0.0750943029, - 0.0781532438, - 0.0812114491, - 0.0842688899, - 0.0873255376, - 0.0903813634, - 0.0934363384, - 0.0964904340, - 0.0995436214, - 0.1025958719, - 0.1056471566, - 0.1086974470, - 0.1117467143, - 0.1147949298, - 0.1178420648, - 0.1208880906, - 0.1239329785, - 0.1269767000, - 0.1300192263, - 0.1330605288, - 0.1361005789, - 0.1391393480, - 0.1421768074, - 0.1452129287, - 0.1482476831, - 0.1512810421, - 0.1543129773, - 0.1573434600, - 0.1603724617, - 0.1633999539, - 0.1664259081, - 0.1694502959, - 0.1724730887, - 0.1754942582, - 0.1785137759, - 0.1815316133, - 0.1845477420, - 0.1875621337, - 0.1905747601, - 0.1935855926, - 0.1965946031, - 0.1996017631, - 0.2026070444, - 0.2056104187, - 0.2086118577, - 0.2116113332, - 0.2146088169, - 0.2176042806, - 0.2205976961, - 0.2235890353, - 0.2265782700, - 0.2295653721, - 0.2325503134, - 0.2355330658, - 0.2385136014, - 0.2414918919, - 0.2444679094, - 0.2474416259, - 0.2504130134, - 0.2533820439, - 0.2563486895, - 0.2593129222, - 0.2622747142, - 0.2652340375, - 0.2681908643, - 0.2711451669, - 0.2740969173, - 0.2770460878, - 0.2799926507, - 0.2829365781, - 0.2858778425, - 0.2888164160, - 0.2917522711, - 0.2946853801, - 0.2976157155, - 0.3005432495, - 0.3034679547, - 0.3063898036, - 0.3093087686, - 0.3122248223, - 0.3151379372, - 0.3180480859, - 0.3209552410, - 0.3238593752, - 0.3267604611, - 0.3296584714, - 0.3325533788, - 0.3354451561, - 0.3383337760, - 0.3412192114, - 0.3441014352, - 0.3469804201, - 0.3498561391, - 0.3527285651, - 0.3555976712, - 0.3584634302, - 0.3613258152, - 0.3641847992, - 0.3670403554, - 0.3698924569, - 0.3727410769, - 0.3755861884, - 0.3784277648, - 0.3812657793, - 0.3841002051, - 0.3869310157, - 0.3897581843, - 0.3925816844, - 0.3954014893, - 0.3982175726, - 0.4010299077, - 0.4038384682, - 0.4066432275, - 0.4094441594, - 0.4122412374, - 0.4150344353, - 0.4178237267, - 0.4206090854, - 0.4233904852, - 0.4261678998, - 0.4289413032, - 0.4317106692, - 0.4344759718, - 0.4372371850, - 0.4399942827, - 0.4427472390, - 0.4454960280, - 0.4482406238, - 0.4509810007, - 0.4537171327, - 0.4564489941, - 0.4591765593, - 0.4618998026, - 0.4646186982, - 0.4673332207, - 0.4700433445, - 0.4727490440, - 0.4754502939, - 0.4781470686, - 0.4808393428, - 0.4835270912, - 0.4862102885, - 0.4888889093, - 0.4915629286, - 0.4942323210, - 0.4968970616, - 0.4995571252, - 0.5022124867, - 0.5048631212, - 0.5075090038, - 0.5101501095, - 0.5127864135, - 0.5154178909, - 0.5180445171, - 0.5206662672, - 0.5232831165, - 0.5258950406, - 0.5285020147, - 0.5311040144, - 0.5337010151, - 0.5362929924, - 0.5388799219, - 0.5414617792, - 0.5440385402, - 0.5466101804, - 0.5491766757, - 0.5517380020, - 0.5542941351, - 0.5568450509, - 0.5593907256, - 0.5619311350, - 0.5644662553, - 0.5669960626, - 0.5695205332, - 0.5720396432, - 0.5745533690, - 0.5770616868, - 0.5795645732, - 0.5820620044, - 0.5845539570, - 0.5870404077, - 0.5895213328, - 0.5919967092, - 0.5944665134, - 0.5969307223, - 0.5993893127, - 0.6018422614, - 0.6042895453, - 0.6067311415, - 0.6091670268, - 0.6115971784, - 0.6140215735, - 0.6164401891, - 0.6188530025, - 0.6212599911, - 0.6236611322, - 0.6260564031, - 0.6284457813, - 0.6308292444, - 0.6332067698, - 0.6355783353, - 0.6379439184, - 0.6403034970, - 0.6426570488, - 0.6450045517, - 0.6473459836, - 0.6496813224, - 0.6520105461, - 0.6543336328, - 0.6566505608, - 0.6589613080, - 0.6612658529, - 0.6635641737, - 0.6658562488, - 0.6681420566, - 0.6704215756, - 0.6726947843, - 0.6749616613, - 0.6772221854, - 0.6794763352, - 0.6817240894, - 0.6839654271, - 0.6862003270, - 0.6884287681, - 0.6906507295, - 0.6928661902, - 0.6950751294, - 0.6972775262, - 0.6994733600, - 0.7016626102, - 0.7038452560, - 0.7060212769, - 0.7081906525, - 0.7103533623, - 0.7125093860, - 0.7146587034, - 0.7168012940, - 0.7189371379, - 0.7210662148, - 0.7231885048, - 0.7253039879, - 0.7274126442, - 0.7295144537, - 0.7316093968, - 0.7336974537, - 0.7357786047, - 0.7378528304, - 0.7399201111, - 0.7419804273, - 0.7440337598, - 0.7460800891, - 0.7481193961, - 0.7501516614, - 0.7521768661, - 0.7541949909, - 0.7562060170, - 0.7582099254, - 0.7602066973, - 0.7621963137, - 0.7641787561, - 0.7661540058, - 0.7681220441, - 0.7700828526, - 0.7720364128, - 0.7739827062, - 0.7759217146, - 0.7778534198, - 0.7797778035, - 0.7816948476, - 0.7836045342, - 0.7855068451, - 0.7874017626, - 0.7892892687, - 0.7911693458, - 0.7930419760, - 0.7949071418, - 0.7967648257, - 0.7986150101, - 0.8004576777, - 0.8022928110, - 0.8041203929, - 0.8059404060, - 0.8077528334, - 0.8095576578, - 0.8113548624, - 0.8131444302, - 0.8149263444, - 0.8167005882, - 0.8184671449, - 0.8202259979, - 0.8219771306, - 0.8237205265, - 0.8254561693, - 0.8271840425, - 0.8289041300, - 0.8306164155, - 0.8323208829, - 0.8340175162, - 0.8357062995, - 0.8373872167, - 0.8390602521, - 0.8407253900, - 0.8423826147, - 0.8440319105, - 0.8456732620, - 0.8473066536, - 0.8489320701, - 0.8505494961, - 0.8521589165, - 0.8537603160, - 0.8553536795, - 0.8569389922, - 0.8585162390, - 0.8600854051, - 0.8616464758, - 0.8631994363, - 0.8647442721, - 0.8662809686, - 0.8678095113, - 0.8693298858, - 0.8708420779, - 0.8723460733, - 0.8738418578, - 0.8753294174, - 0.8768087381, - 0.8782798059, - 0.8797426070, - 0.8811971277, - 0.8826433541, - 0.8840812728, - 0.8855108702, - 0.8869321328, - 0.8883450473, - 0.8897496003, - 0.8911457787, - 0.8925335692, - 0.8939129589, - 0.8952839348, - 0.8966464839, - 0.8980005934, - 0.8993462506, - 0.9006834428, - 0.9020121574, - 0.9033323820, - 0.9046441040, - 0.9059473112, - 0.9072419912, - 0.9085281320, - 0.9098057213, - 0.9110747472, - 0.9123351977, - 0.9135870610, - 0.9148303252, - 0.9160649787, - 0.9172910099, - 0.9185084071, - 0.9197171590, - 0.9209172542, - 0.9221086814, - 0.9232914293, - 0.9244654868, - 0.9256308430, - 0.9267874867, - 0.9279354072, - 0.9290745935, - 0.9302050351, - 0.9313267212, - 0.9324396413, - 0.9335437850, - 0.9346391418, - 0.9357257014, - 0.9368034535, - 0.9378723882, - 0.9389324952, - 0.9399837646, - 0.9410261866, - 0.9420597512, - 0.9430844489, - 0.9441002698, - 0.9451072045, - 0.9461052436, - 0.9470943775, - 0.9480745970, - 0.9490458928, - 0.9500082559, - 0.9509616771, - 0.9519061475, - 0.9528416583, - 0.9537682005, - 0.9546857654, - 0.9555943446, - 0.9564939293, - 0.9573845111, - 0.9582660816, - 0.9591386326, - 0.9600021558, - 0.9608566431, - 0.9617020864, - 0.9625384778, - 0.9633658095, - 0.9641840736, - 0.9649932624, - 0.9657933683, - 0.9665843838, - 0.9673663015, - 0.9681391139, - 0.9689028139, - 0.9696573941, - 0.9704028476, - 0.9711391673, - 0.9718663462, - 0.9725843776, - 0.9732932546, - 0.9739929706, - 0.9746835191, - 0.9753648934, - 0.9760370872, - 0.9767000942, - 0.9773539081, - 0.9779985228, - 0.9786339322, - 0.9792601304, - 0.9798771113, - 0.9804848693, - 0.9810833986, - 0.9816726935, - 0.9822527486, - 0.9828235583, - 0.9833851173, - 0.9839374204, - 0.9844804622, - 0.9850142377, - 0.9855387419, - 0.9860539698, - 0.9865599167, - 0.9870565776, - 0.9875439480, - 0.9880220232, - 0.9884907988, - 0.9889502704, - 0.9894004335, - 0.9898412841, - 0.9902728179, - 0.9906950309, - 0.9911079190, - 0.9915114785, - 0.9919057055, - 0.9922905963, - 0.9926661473, - 0.9930323550, - 0.9933892158, - 0.9937367265, - 0.9940748837, - 0.9944036844, - 0.9947231253, - 0.9950332035, - 0.9953339161, - 0.9956252602, - 0.9959072331, - 0.9961798322, - 0.9964430548, - 0.9966968986, - 0.9969413610, - 0.9971764399, - 0.9974021329, - 0.9976184380, - 0.9978253532, - 0.9980228764, - 0.9982110059, - 0.9983897398, - 0.9985590765, - 0.9987190144, - 0.9988695519, - 0.9990106877, - 0.9991424205, - 0.9992647489, - 0.9993776719, - 0.9994811883, - 0.9995752973, - 0.9996599979, - 0.9997352893, - 0.9998011707, - 0.9998576417, - 0.9999047017, - 0.9999423501, - 0.9999705868, - 0.9999894113, - 0.9999988235 + FRAC_CONST(0.00076699031874270449), + FRAC_CONST(0.002300969151425805), + FRAC_CONST(0.0038349425697062275), + FRAC_CONST(0.0053689069639963425), + FRAC_CONST(0.0069028587247297558), + FRAC_CONST(0.0084367942423697988), + FRAC_CONST(0.0099707099074180308), + FRAC_CONST(0.011504602110422714), + FRAC_CONST(0.013038467241987334), + FRAC_CONST(0.014572301692779064), + FRAC_CONST(0.016106101853537287), + FRAC_CONST(0.017639864115082053), + FRAC_CONST(0.019173584868322623), + FRAC_CONST(0.020707260504265895), + FRAC_CONST(0.022240887414024961), + FRAC_CONST(0.023774461988827555), + FRAC_CONST(0.025307980620024571), + FRAC_CONST(0.026841439699098531), + FRAC_CONST(0.028374835617672099), + FRAC_CONST(0.029908164767516555), + FRAC_CONST(0.031441423540560301), + FRAC_CONST(0.032974608328897335), + FRAC_CONST(0.03450771552479575), + FRAC_CONST(0.036040741520706229), + FRAC_CONST(0.037573682709270494), + FRAC_CONST(0.039106535483329888), + FRAC_CONST(0.040639296235933736), + FRAC_CONST(0.042171961360347947), + FRAC_CONST(0.043704527250063421), + FRAC_CONST(0.04523699029880459), + FRAC_CONST(0.046769346900537863), + FRAC_CONST(0.048301593449480144), + FRAC_CONST(0.049833726340107277), + FRAC_CONST(0.051365741967162593), + FRAC_CONST(0.052897636725665324), + FRAC_CONST(0.054429407010919133), + FRAC_CONST(0.055961049218520569), + FRAC_CONST(0.057492559744367566), + FRAC_CONST(0.059023934984667931), + FRAC_CONST(0.060555171335947788), + FRAC_CONST(0.062086265195060088), + FRAC_CONST(0.063617212959193106), + FRAC_CONST(0.065148011025878833), + FRAC_CONST(0.066678655793001557), + FRAC_CONST(0.068209143658806329), + FRAC_CONST(0.069739471021907307), + FRAC_CONST(0.071269634281296401), + FRAC_CONST(0.072799629836351673), + FRAC_CONST(0.074329454086845756), + FRAC_CONST(0.075859103432954447), + FRAC_CONST(0.077388574275265049), + FRAC_CONST(0.078917863014784942), + FRAC_CONST(0.080446966052950014), + FRAC_CONST(0.081975879791633066), + FRAC_CONST(0.083504600633152432), + FRAC_CONST(0.085033124980280275), + FRAC_CONST(0.08656144923625117), + FRAC_CONST(0.088089569804770507), + FRAC_CONST(0.089617483090022959), + FRAC_CONST(0.091145185496681005), + FRAC_CONST(0.09267267342991331), + FRAC_CONST(0.094199943295393204), + FRAC_CONST(0.095726991499307162), + FRAC_CONST(0.097253814448363271), + FRAC_CONST(0.098780408549799623), + FRAC_CONST(0.10030677021139286), + FRAC_CONST(0.10183289584146653), + FRAC_CONST(0.10335878184889961), + FRAC_CONST(0.10488442464313497), + FRAC_CONST(0.10640982063418768), + FRAC_CONST(0.10793496623265365), + FRAC_CONST(0.10945985784971798), + FRAC_CONST(0.11098449189716339), + FRAC_CONST(0.11250886478737869), + FRAC_CONST(0.1140329729333672), + FRAC_CONST(0.11555681274875526), + FRAC_CONST(0.11708038064780059), + FRAC_CONST(0.11860367304540072), + FRAC_CONST(0.1201266863571015), + FRAC_CONST(0.12164941699910553), + FRAC_CONST(0.12317186138828048), + FRAC_CONST(0.12469401594216764), + FRAC_CONST(0.12621587707899035), + FRAC_CONST(0.12773744121766231), + FRAC_CONST(0.12925870477779614), + FRAC_CONST(0.13077966417971171), + FRAC_CONST(0.13230031584444465), + FRAC_CONST(0.13382065619375472), + FRAC_CONST(0.13534068165013421), + FRAC_CONST(0.13686038863681638), + FRAC_CONST(0.13837977357778389), + FRAC_CONST(0.13989883289777721), + FRAC_CONST(0.14141756302230302), + FRAC_CONST(0.14293596037764267), + FRAC_CONST(0.14445402139086047), + FRAC_CONST(0.14597174248981221), + FRAC_CONST(0.14748912010315357), + FRAC_CONST(0.14900615066034845), + FRAC_CONST(0.1505228305916774), + FRAC_CONST(0.15203915632824605), + FRAC_CONST(0.15355512430199345), + FRAC_CONST(0.15507073094570051), + FRAC_CONST(0.15658597269299843), + FRAC_CONST(0.15810084597837698), + FRAC_CONST(0.15961534723719306), + FRAC_CONST(0.16112947290567881), + FRAC_CONST(0.16264321942095031), + FRAC_CONST(0.16415658322101581), + FRAC_CONST(0.16566956074478412), + FRAC_CONST(0.16718214843207294), + FRAC_CONST(0.16869434272361733), + FRAC_CONST(0.17020614006107807), + FRAC_CONST(0.17171753688704997), + FRAC_CONST(0.17322852964507032), + FRAC_CONST(0.1747391147796272), + FRAC_CONST(0.17624928873616788), + FRAC_CONST(0.17775904796110717), + FRAC_CONST(0.17926838890183575), + FRAC_CONST(0.18077730800672859), + FRAC_CONST(0.1822858017251533), + FRAC_CONST(0.18379386650747845), + FRAC_CONST(0.1853014988050819), + FRAC_CONST(0.18680869507035927), + FRAC_CONST(0.18831545175673212), + FRAC_CONST(0.18982176531865641), + FRAC_CONST(0.1913276322116309), + FRAC_CONST(0.19283304889220523), + FRAC_CONST(0.1943380118179886), + FRAC_CONST(0.19584251744765785), + FRAC_CONST(0.19734656224096592), + FRAC_CONST(0.19885014265875009), + FRAC_CONST(0.20035325516294045), + FRAC_CONST(0.20185589621656805), + FRAC_CONST(0.20335806228377332), + FRAC_CONST(0.20485974982981442), + FRAC_CONST(0.20636095532107551), + FRAC_CONST(0.20786167522507507), + FRAC_CONST(0.20936190601047416), + FRAC_CONST(0.21086164414708486), + FRAC_CONST(0.21236088610587842), + FRAC_CONST(0.21385962835899375), + FRAC_CONST(0.21535786737974555), + FRAC_CONST(0.21685559964263262), + FRAC_CONST(0.21835282162334632), + FRAC_CONST(0.2198495297987787), + FRAC_CONST(0.22134572064703081), + FRAC_CONST(0.22284139064742112), + FRAC_CONST(0.2243365362804936), + FRAC_CONST(0.22583115402802617), + FRAC_CONST(0.22732524037303886), + FRAC_CONST(0.22881879179980222), + FRAC_CONST(0.23031180479384544), + FRAC_CONST(0.23180427584196478), + FRAC_CONST(0.23329620143223159), + FRAC_CONST(0.23478757805400097), + FRAC_CONST(0.23627840219791957), + FRAC_CONST(0.23776867035593419), + FRAC_CONST(0.23925837902129998), + FRAC_CONST(0.24074752468858843), + FRAC_CONST(0.24223610385369601), + FRAC_CONST(0.24372411301385216), + FRAC_CONST(0.24521154866762754), + FRAC_CONST(0.24669840731494241), + FRAC_CONST(0.24818468545707478), + FRAC_CONST(0.24967037959666857), + FRAC_CONST(0.25115548623774192), + FRAC_CONST(0.25264000188569552), + FRAC_CONST(0.25412392304732062), + FRAC_CONST(0.25560724623080738), + FRAC_CONST(0.25708996794575312), + FRAC_CONST(0.25857208470317034), + FRAC_CONST(0.26005359301549519), + FRAC_CONST(0.26153448939659552), + FRAC_CONST(0.263014770361779), + FRAC_CONST(0.26449443242780163), + FRAC_CONST(0.26597347211287559), + FRAC_CONST(0.26745188593667762), + FRAC_CONST(0.26892967042035726), + FRAC_CONST(0.27040682208654482), + FRAC_CONST(0.27188333745935972), + FRAC_CONST(0.27335921306441868), + FRAC_CONST(0.27483444542884394), + FRAC_CONST(0.27630903108127108), + FRAC_CONST(0.27778296655185769), + FRAC_CONST(0.27925624837229118), + FRAC_CONST(0.28072887307579719), + FRAC_CONST(0.28220083719714756), + FRAC_CONST(0.28367213727266843), + FRAC_CONST(0.28514276984024867), + FRAC_CONST(0.28661273143934779), + FRAC_CONST(0.28808201861100413), + FRAC_CONST(0.28955062789784303), + FRAC_CONST(0.29101855584408509), + FRAC_CONST(0.29248579899555388), + FRAC_CONST(0.29395235389968466), + FRAC_CONST(0.29541821710553201), + FRAC_CONST(0.29688338516377827), + FRAC_CONST(0.2983478546267414), + FRAC_CONST(0.29981162204838335), + FRAC_CONST(0.30127468398431795), + FRAC_CONST(0.30273703699181914), + FRAC_CONST(0.30419867762982911), + FRAC_CONST(0.30565960245896612), + FRAC_CONST(0.3071198080415331), + FRAC_CONST(0.30857929094152509), + FRAC_CONST(0.31003804772463789), + FRAC_CONST(0.31149607495827591), + FRAC_CONST(0.3129533692115602), + FRAC_CONST(0.31440992705533666), + FRAC_CONST(0.31586574506218396), + FRAC_CONST(0.31732081980642174), + FRAC_CONST(0.31877514786411848), + FRAC_CONST(0.32022872581309986), + FRAC_CONST(0.32168155023295658), + FRAC_CONST(0.32313361770505233), + FRAC_CONST(0.32458492481253215), + FRAC_CONST(0.32603546814033024), + FRAC_CONST(0.327485244275178), + FRAC_CONST(0.3289342498056122), + FRAC_CONST(0.33038248132198278), + FRAC_CONST(0.33182993541646111), + FRAC_CONST(0.33327660868304793), + FRAC_CONST(0.33472249771758122), + FRAC_CONST(0.33616759911774452), + FRAC_CONST(0.33761190948307462), + FRAC_CONST(0.33905542541496964), + FRAC_CONST(0.34049814351669716), + FRAC_CONST(0.34194006039340219), + FRAC_CONST(0.34338117265211504), + FRAC_CONST(0.34482147690175929), + FRAC_CONST(0.34626096975316001), + FRAC_CONST(0.34769964781905138), + FRAC_CONST(0.34913750771408497), + FRAC_CONST(0.35057454605483751), + FRAC_CONST(0.35201075945981908), + FRAC_CONST(0.35344614454948081), + FRAC_CONST(0.35488069794622279), + FRAC_CONST(0.35631441627440241), + FRAC_CONST(0.3577472961603419), + FRAC_CONST(0.3591793342323365), + FRAC_CONST(0.36061052712066227), + FRAC_CONST(0.36204087145758418), + FRAC_CONST(0.36347036387736376), + FRAC_CONST(0.36489900101626732), + FRAC_CONST(0.36632677951257359), + FRAC_CONST(0.36775369600658198), + FRAC_CONST(0.36917974714062002), + FRAC_CONST(0.37060492955905167), + FRAC_CONST(0.37202923990828501), + FRAC_CONST(0.3734526748367803), + FRAC_CONST(0.37487523099505754), + FRAC_CONST(0.37629690503570479), + FRAC_CONST(0.37771769361338564), + FRAC_CONST(0.37913759338484732), + FRAC_CONST(0.38055660100892852), + FRAC_CONST(0.38197471314656722), + FRAC_CONST(0.38339192646080866), + FRAC_CONST(0.38480823761681288), + FRAC_CONST(0.38622364328186298), + FRAC_CONST(0.38763814012537273), + FRAC_CONST(0.38905172481889438), + FRAC_CONST(0.39046439403612659), + FRAC_CONST(0.39187614445292235), + FRAC_CONST(0.3932869727472964), + FRAC_CONST(0.39469687559943356), + FRAC_CONST(0.39610584969169627), + FRAC_CONST(0.39751389170863233), + FRAC_CONST(0.39892099833698291), + FRAC_CONST(0.40032716626569009), + FRAC_CONST(0.40173239218590501), + FRAC_CONST(0.4031366727909953), + FRAC_CONST(0.404540004776553), + FRAC_CONST(0.40594238484040251), + FRAC_CONST(0.40734380968260797), + FRAC_CONST(0.40874427600548136), + FRAC_CONST(0.41014378051359024), + FRAC_CONST(0.41154231991376522), + FRAC_CONST(0.41293989091510808), + FRAC_CONST(0.4143364902289991), + FRAC_CONST(0.41573211456910536), + FRAC_CONST(0.41712676065138787), + FRAC_CONST(0.4185204251941097), + FRAC_CONST(0.41991310491784362), + FRAC_CONST(0.42130479654547964), + FRAC_CONST(0.42269549680223295), + FRAC_CONST(0.42408520241565156), + FRAC_CONST(0.4254739101156238), + FRAC_CONST(0.42686161663438643), + FRAC_CONST(0.42824831870653196), + FRAC_CONST(0.42963401306901638), + FRAC_CONST(0.43101869646116703), + FRAC_CONST(0.43240236562469014), + FRAC_CONST(0.43378501730367852), + FRAC_CONST(0.43516664824461926), + FRAC_CONST(0.4365472551964012), + FRAC_CONST(0.43792683491032286), + FRAC_CONST(0.43930538414009995), + FRAC_CONST(0.4406828996418729), + FRAC_CONST(0.4420593781742147), + FRAC_CONST(0.44343481649813848), + FRAC_CONST(0.44480921137710488), + FRAC_CONST(0.44618255957703007), + FRAC_CONST(0.44755485786629301), + FRAC_CONST(0.44892610301574326), + FRAC_CONST(0.45029629179870861), + FRAC_CONST(0.45166542099100249), + FRAC_CONST(0.45303348737093158), + FRAC_CONST(0.45440048771930358), + FRAC_CONST(0.45576641881943464), + FRAC_CONST(0.45713127745715698), + FRAC_CONST(0.45849506042082627), + FRAC_CONST(0.45985776450132954), + FRAC_CONST(0.46121938649209238), + FRAC_CONST(0.46257992318908681), + FRAC_CONST(0.46393937139083852), + FRAC_CONST(0.4652977278984346), + FRAC_CONST(0.46665498951553092), + FRAC_CONST(0.46801115304835983), + FRAC_CONST(0.46936621530573752), + FRAC_CONST(0.4707201730990716), + FRAC_CONST(0.47207302324236866), + FRAC_CONST(0.47342476255224153), + FRAC_CONST(0.47477538784791712), + FRAC_CONST(0.47612489595124358), + FRAC_CONST(0.47747328368669806), + FRAC_CONST(0.47882054788139389), + FRAC_CONST(0.48016668536508839), + FRAC_CONST(0.48151169297018986), + FRAC_CONST(0.48285556753176567), + FRAC_CONST(0.48419830588754903), + FRAC_CONST(0.48553990487794696), + FRAC_CONST(0.48688036134604734), + FRAC_CONST(0.48821967213762679), + FRAC_CONST(0.48955783410115744), + FRAC_CONST(0.49089484408781509), + FRAC_CONST(0.49223069895148602), + FRAC_CONST(0.49356539554877477), + FRAC_CONST(0.49489893073901126), + FRAC_CONST(0.49623130138425825), + FRAC_CONST(0.49756250434931915), + FRAC_CONST(0.49889253650174459), + FRAC_CONST(0.50022139471184068), + FRAC_CONST(0.50154907585267539), + FRAC_CONST(0.50287557680008699), + FRAC_CONST(0.50420089443269034), + FRAC_CONST(0.50552502563188539), + FRAC_CONST(0.50684796728186321), + FRAC_CONST(0.5081697162696146), + FRAC_CONST(0.50949026948493636), + FRAC_CONST(0.51080962382043904), + FRAC_CONST(0.51212777617155469), + FRAC_CONST(0.51344472343654346), + FRAC_CONST(0.5147604625165012), + FRAC_CONST(0.51607499031536663), + FRAC_CONST(0.51738830373992906), + FRAC_CONST(0.51870039969983495), + FRAC_CONST(0.52001127510759604), + FRAC_CONST(0.52132092687859566), + FRAC_CONST(0.52262935193109661), + FRAC_CONST(0.5239365471862486), + FRAC_CONST(0.52524250956809471), + FRAC_CONST(0.52654723600357944), + FRAC_CONST(0.52785072342255523), + FRAC_CONST(0.52915296875779061), + FRAC_CONST(0.53045396894497632), + FRAC_CONST(0.53175372092273332), + FRAC_CONST(0.53305222163261945), + FRAC_CONST(0.53434946801913752), + FRAC_CONST(0.53564545702974109), + FRAC_CONST(0.53694018561484291), + FRAC_CONST(0.5382336507278217), + FRAC_CONST(0.53952584932502889), + FRAC_CONST(0.54081677836579667), + FRAC_CONST(0.54210643481244392), + FRAC_CONST(0.5433948156302848), + FRAC_CONST(0.54468191778763453), + FRAC_CONST(0.54596773825581757), + FRAC_CONST(0.54725227400917409), + FRAC_CONST(0.54853552202506739), + FRAC_CONST(0.54981747928389091), + FRAC_CONST(0.55109814276907543), + FRAC_CONST(0.55237750946709607), + FRAC_CONST(0.55365557636747931), + FRAC_CONST(0.55493234046281037), + FRAC_CONST(0.55620779874873993), + FRAC_CONST(0.55748194822399155), + FRAC_CONST(0.55875478589036831), + FRAC_CONST(0.56002630875276038), + FRAC_CONST(0.56129651381915147), + FRAC_CONST(0.56256539810062656), + FRAC_CONST(0.56383295861137817), + FRAC_CONST(0.56509919236871398), + FRAC_CONST(0.56636409639306384), + FRAC_CONST(0.56762766770798623), + FRAC_CONST(0.56888990334017586), + FRAC_CONST(0.5701508003194703), + FRAC_CONST(0.57141035567885723), + FRAC_CONST(0.57266856645448116), + FRAC_CONST(0.57392542968565075), + FRAC_CONST(0.57518094241484508), + FRAC_CONST(0.57643510168772183), + FRAC_CONST(0.5776879045531228), + FRAC_CONST(0.57893934806308178), + FRAC_CONST(0.58018942927283168), + FRAC_CONST(0.58143814524081017), + FRAC_CONST(0.58268549302866846), + FRAC_CONST(0.58393146970127618), + FRAC_CONST(0.58517607232673041), + FRAC_CONST(0.5864192979763605), + FRAC_CONST(0.58766114372473666), + FRAC_CONST(0.58890160664967572), + FRAC_CONST(0.59014068383224882), + FRAC_CONST(0.59137837235678758), + FRAC_CONST(0.59261466931089113), + FRAC_CONST(0.59384957178543363), + FRAC_CONST(0.59508307687456996), + FRAC_CONST(0.59631518167574371), + FRAC_CONST(0.59754588328969316), + FRAC_CONST(0.59877517882045872), + FRAC_CONST(0.60000306537538894), + FRAC_CONST(0.6012295400651485), + FRAC_CONST(0.60245460000372375), + FRAC_CONST(0.60367824230843037), + FRAC_CONST(0.60490046409991982), + FRAC_CONST(0.60612126250218612), + FRAC_CONST(0.60734063464257293), + FRAC_CONST(0.60855857765177945), + FRAC_CONST(0.60977508866386843), + FRAC_CONST(0.61099016481627166), + FRAC_CONST(0.61220380324979795), + FRAC_CONST(0.61341600110863859), + FRAC_CONST(0.61462675554037505), + FRAC_CONST(0.61583606369598509), + FRAC_CONST(0.61704392272984976), + FRAC_CONST(0.61825032979976025), + FRAC_CONST(0.61945528206692402), + FRAC_CONST(0.62065877669597214), + FRAC_CONST(0.62186081085496536), + FRAC_CONST(0.62306138171540126), + FRAC_CONST(0.62426048645222065), + FRAC_CONST(0.62545812224381436), + FRAC_CONST(0.62665428627202935), + FRAC_CONST(0.62784897572217646), + FRAC_CONST(0.629042187783036), + FRAC_CONST(0.63023391964686437), + FRAC_CONST(0.63142416850940186), + FRAC_CONST(0.63261293156987741), + FRAC_CONST(0.63380020603101728), + FRAC_CONST(0.63498598909904946), + FRAC_CONST(0.63617027798371217), + FRAC_CONST(0.63735306989825913), + FRAC_CONST(0.63853436205946679), + FRAC_CONST(0.63971415168764045), + FRAC_CONST(0.64089243600662138), + FRAC_CONST(0.64206921224379254), + FRAC_CONST(0.64324447763008585), + FRAC_CONST(0.64441822939998838), + FRAC_CONST(0.64559046479154869), + FRAC_CONST(0.64676118104638392), + FRAC_CONST(0.64793037540968534), + FRAC_CONST(0.64909804513022595), + FRAC_CONST(0.65026418746036585), + FRAC_CONST(0.65142879965605982), + FRAC_CONST(0.65259187897686244), + FRAC_CONST(0.65375342268593606), + FRAC_CONST(0.65491342805005603), + FRAC_CONST(0.6560718923396176), + FRAC_CONST(0.65722881282864254), + FRAC_CONST(0.65838418679478505), + FRAC_CONST(0.65953801151933866), + FRAC_CONST(0.6606902842872423), + FRAC_CONST(0.66184100238708687), + FRAC_CONST(0.66299016311112147), + FRAC_CONST(0.66413776375526001), + FRAC_CONST(0.66528380161908718), + FRAC_CONST(0.66642827400586524), + FRAC_CONST(0.66757117822254031), + FRAC_CONST(0.66871251157974798), + FRAC_CONST(0.66985227139182102), + FRAC_CONST(0.67099045497679422), + FRAC_CONST(0.67212705965641173), + FRAC_CONST(0.67326208275613297), + FRAC_CONST(0.67439552160513905), + FRAC_CONST(0.67552737353633852), + FRAC_CONST(0.67665763588637495), + FRAC_CONST(0.6777863059956315), + FRAC_CONST(0.67891338120823841), + FRAC_CONST(0.68003885887207893), + FRAC_CONST(0.68116273633879543), + FRAC_CONST(0.68228501096379557), + FRAC_CONST(0.68340568010625868), + FRAC_CONST(0.6845247411291423), + FRAC_CONST(0.68564219139918747), + FRAC_CONST(0.68675802828692589), + FRAC_CONST(0.68787224916668555), + FRAC_CONST(0.68898485141659704), + FRAC_CONST(0.69009583241859995), + FRAC_CONST(0.69120518955844845), + FRAC_CONST(0.69231292022571822), + FRAC_CONST(0.69341902181381176), + FRAC_CONST(0.69452349171996552), + FRAC_CONST(0.69562632734525487), + FRAC_CONST(0.6967275260946012), + FRAC_CONST(0.69782708537677729), + FRAC_CONST(0.69892500260441415), + FRAC_CONST(0.70002127519400625), + FRAC_CONST(0.70111590056591866), + FRAC_CONST(0.70220887614439187), + FRAC_CONST(0.70330019935754873), + FRAC_CONST(0.70438986763740041), + FRAC_CONST(0.7054778784198521), + FRAC_CONST(0.70656422914470951), + FRAC_CONST(0.70764891725568435), + FRAC_CONST(0.70873194020040065), + FRAC_CONST(0.70981329543040084), + FRAC_CONST(0.71089298040115168), + FRAC_CONST(0.71197099257204999), + FRAC_CONST(0.71304732940642923), + FRAC_CONST(0.71412198837156471), + FRAC_CONST(0.71519496693868001), + FRAC_CONST(0.71626626258295312), + FRAC_CONST(0.71733587278352173), + FRAC_CONST(0.71840379502348972), + FRAC_CONST(0.71947002678993299), + FRAC_CONST(0.72053456557390527), + FRAC_CONST(0.72159740887044366), + FRAC_CONST(0.72265855417857561), + FRAC_CONST(0.72371799900132339), + FRAC_CONST(0.72477574084571128), + FRAC_CONST(0.72583177722277037), + FRAC_CONST(0.72688610564754497), + FRAC_CONST(0.72793872363909862), + FRAC_CONST(0.72898962872051931), + FRAC_CONST(0.73003881841892615), + FRAC_CONST(0.73108629026547423), + FRAC_CONST(0.73213204179536129), + FRAC_CONST(0.73317607054783274), + FRAC_CONST(0.73421837406618817), + FRAC_CONST(0.73525894989778673), + FRAC_CONST(0.73629779559405306), + FRAC_CONST(0.73733490871048279), + FRAC_CONST(0.73837028680664851), + FRAC_CONST(0.73940392744620576), + FRAC_CONST(0.74043582819689802), + FRAC_CONST(0.74146598663056329), + FRAC_CONST(0.74249440032313918), + FRAC_CONST(0.74352106685466912), + FRAC_CONST(0.74454598380930725), + FRAC_CONST(0.74556914877532543), + FRAC_CONST(0.74659055934511731), + FRAC_CONST(0.74761021311520515), + FRAC_CONST(0.74862810768624533), + FRAC_CONST(0.74964424066303348), + FRAC_CONST(0.75065860965451059), + FRAC_CONST(0.75167121227376843), + FRAC_CONST(0.75268204613805523), + FRAC_CONST(0.75369110886878121), + FRAC_CONST(0.75469839809152439), + FRAC_CONST(0.75570391143603588), + FRAC_CONST(0.75670764653624567), + FRAC_CONST(0.75770960103026808), + FRAC_CONST(0.75870977256040739), + FRAC_CONST(0.75970815877316344), + FRAC_CONST(0.76070475731923692), + FRAC_CONST(0.76169956585353527), + FRAC_CONST(0.76269258203517787), + FRAC_CONST(0.76368380352750187), + FRAC_CONST(0.76467322799806714), + FRAC_CONST(0.76566085311866239), + FRAC_CONST(0.76664667656531038), + FRAC_CONST(0.76763069601827327), + FRAC_CONST(0.76861290916205827), + FRAC_CONST(0.76959331368542294), + FRAC_CONST(0.7705719072813807), + FRAC_CONST(0.7715486876472063), + FRAC_CONST(0.77252365248444133), + FRAC_CONST(0.77349679949889905), + FRAC_CONST(0.77446812640067086), + FRAC_CONST(0.77543763090413043), + FRAC_CONST(0.77640531072794039), + FRAC_CONST(0.7773711635950562), + FRAC_CONST(0.77833518723273309), + FRAC_CONST(0.7792973793725303), + FRAC_CONST(0.78025773775031659), + FRAC_CONST(0.78121626010627609), + FRAC_CONST(0.7821729441849129), + FRAC_CONST(0.78312778773505731), + FRAC_CONST(0.78408078850986995), + FRAC_CONST(0.78503194426684808), + FRAC_CONST(0.78598125276783015), + FRAC_CONST(0.7869287117790017), + FRAC_CONST(0.78787431907090011), + FRAC_CONST(0.78881807241842017), + FRAC_CONST(0.78975996960081907), + FRAC_CONST(0.79070000840172161), + FRAC_CONST(0.79163818660912577), + FRAC_CONST(0.79257450201540758), + FRAC_CONST(0.79350895241732666), + FRAC_CONST(0.79444153561603059), + FRAC_CONST(0.79537224941706119), + FRAC_CONST(0.79630109163035911), + FRAC_CONST(0.7972280600702687), + FRAC_CONST(0.79815315255554375), + FRAC_CONST(0.79907636690935235), + FRAC_CONST(0.79999770095928191), + FRAC_CONST(0.8009171525373443), + FRAC_CONST(0.80183471947998131), + FRAC_CONST(0.80275039962806916), + FRAC_CONST(0.80366419082692409), + FRAC_CONST(0.804576090926307), + FRAC_CONST(0.80548609778042912), + FRAC_CONST(0.80639420924795624), + FRAC_CONST(0.80730042319201445), + FRAC_CONST(0.80820473748019472), + FRAC_CONST(0.80910714998455813), + FRAC_CONST(0.81000765858164114), + FRAC_CONST(0.81090626115245967), + FRAC_CONST(0.81180295558251536), + FRAC_CONST(0.81269773976179949), + FRAC_CONST(0.81359061158479851), + FRAC_CONST(0.81448156895049861), + FRAC_CONST(0.81537060976239129), + FRAC_CONST(0.81625773192847739), + FRAC_CONST(0.81714293336127297), + FRAC_CONST(0.81802621197781344), + FRAC_CONST(0.81890756569965895), + FRAC_CONST(0.81978699245289899), + FRAC_CONST(0.82066449016815746), + FRAC_CONST(0.82154005678059761), + FRAC_CONST(0.82241369022992639), + FRAC_CONST(0.82328538846040011), + FRAC_CONST(0.82415514942082857), + FRAC_CONST(0.82502297106458022), + FRAC_CONST(0.82588885134958678), + FRAC_CONST(0.82675278823834852), + FRAC_CONST(0.8276147796979384), + FRAC_CONST(0.82847482370000713), + FRAC_CONST(0.82933291822078825), + FRAC_CONST(0.83018906124110237), + FRAC_CONST(0.83104325074636232), + FRAC_CONST(0.83189548472657759), + FRAC_CONST(0.83274576117635946), + FRAC_CONST(0.83359407809492514), + FRAC_CONST(0.83444043348610319), + FRAC_CONST(0.83528482535833737), + FRAC_CONST(0.83612725172469216), + FRAC_CONST(0.83696771060285702), + FRAC_CONST(0.83780620001515094), + FRAC_CONST(0.8386427179885273), + FRAC_CONST(0.83947726255457855), + FRAC_CONST(0.84030983174954077), + FRAC_CONST(0.84114042361429808), + FRAC_CONST(0.84196903619438768), + FRAC_CONST(0.84279566754000412), + FRAC_CONST(0.84362031570600404), + FRAC_CONST(0.84444297875191066), + FRAC_CONST(0.84526365474191822), + FRAC_CONST(0.84608234174489694), + FRAC_CONST(0.84689903783439735), + FRAC_CONST(0.84771374108865427), + FRAC_CONST(0.84852644959059265), + FRAC_CONST(0.84933716142783067), + FRAC_CONST(0.85014587469268521), + FRAC_CONST(0.85095258748217573), + FRAC_CONST(0.85175729789802912), + FRAC_CONST(0.85256000404668397), + FRAC_CONST(0.85336070403929543), + FRAC_CONST(0.85415939599173873), + FRAC_CONST(0.85495607802461482), + FRAC_CONST(0.85575074826325392), + FRAC_CONST(0.85654340483771996), + FRAC_CONST(0.85733404588281559), + FRAC_CONST(0.85812266953808602), + FRAC_CONST(0.8589092739478239), + FRAC_CONST(0.85969385726107261), + FRAC_CONST(0.86047641763163207), + FRAC_CONST(0.86125695321806206), + FRAC_CONST(0.86203546218368721), + FRAC_CONST(0.86281194269660033), + FRAC_CONST(0.86358639292966799), + FRAC_CONST(0.86435881106053403), + FRAC_CONST(0.86512919527162369), + FRAC_CONST(0.86589754375014882), + FRAC_CONST(0.86666385468811102), + FRAC_CONST(0.86742812628230692), + FRAC_CONST(0.86819035673433131), + FRAC_CONST(0.86895054425058238), + FRAC_CONST(0.86970868704226556), + FRAC_CONST(0.87046478332539767), + FRAC_CONST(0.8712188313208109), + FRAC_CONST(0.8719708292541577), + FRAC_CONST(0.8727207753559143), + FRAC_CONST(0.87346866786138488), + FRAC_CONST(0.8742145050107063), + FRAC_CONST(0.87495828504885154), + FRAC_CONST(0.8757000062256346), + FRAC_CONST(0.87643966679571361), + FRAC_CONST(0.87717726501859594), + FRAC_CONST(0.87791279915864173), + FRAC_CONST(0.87864626748506813), + FRAC_CONST(0.87937766827195318), + FRAC_CONST(0.88010699979824036), + FRAC_CONST(0.88083426034774204), + FRAC_CONST(0.88155944820914378), + FRAC_CONST(0.8822825616760086), + FRAC_CONST(0.88300359904678072), + FRAC_CONST(0.88372255862478966), + FRAC_CONST(0.8844394387182537), + FRAC_CONST(0.88515423764028511), + FRAC_CONST(0.88586695370889279), + FRAC_CONST(0.88657758524698704), + FRAC_CONST(0.88728613058238315), + FRAC_CONST(0.88799258804780556), + FRAC_CONST(0.88869695598089171), + FRAC_CONST(0.88939923272419552), + FRAC_CONST(0.89009941662519221), + FRAC_CONST(0.89079750603628149), + FRAC_CONST(0.89149349931479138), + FRAC_CONST(0.89218739482298248), + FRAC_CONST(0.89287919092805168), + FRAC_CONST(0.89356888600213602), + FRAC_CONST(0.89425647842231604), + FRAC_CONST(0.89494196657062075), + FRAC_CONST(0.89562534883403), + FRAC_CONST(0.89630662360447966), + FRAC_CONST(0.89698578927886397), + FRAC_CONST(0.89766284425904075), + FRAC_CONST(0.89833778695183419), + FRAC_CONST(0.89901061576903907), + FRAC_CONST(0.89968132912742393), + FRAC_CONST(0.9003499254487356), + FRAC_CONST(0.90101640315970233), + FRAC_CONST(0.90168076069203773), + FRAC_CONST(0.9023429964824442), + FRAC_CONST(0.90300310897261704), + FRAC_CONST(0.90366109660924798), + FRAC_CONST(0.90431695784402832), + FRAC_CONST(0.90497069113365325), + FRAC_CONST(0.90562229493982516), + FRAC_CONST(0.90627176772925766), + FRAC_CONST(0.90691910797367803), + FRAC_CONST(0.90756431414983252), + FRAC_CONST(0.9082073847394887), + FRAC_CONST(0.90884831822943912), + FRAC_CONST(0.90948711311150543), + FRAC_CONST(0.91012376788254157), + FRAC_CONST(0.91075828104443757), + FRAC_CONST(0.91139065110412232), + FRAC_CONST(0.91202087657356823), + FRAC_CONST(0.9126489559697939), + FRAC_CONST(0.91327488781486776), + FRAC_CONST(0.91389867063591168), + FRAC_CONST(0.91452030296510445), + FRAC_CONST(0.91513978333968526), + FRAC_CONST(0.91575711030195672), + FRAC_CONST(0.91637228239928914), + FRAC_CONST(0.91698529818412289), + FRAC_CONST(0.91759615621397295), + FRAC_CONST(0.9182048550514309), + FRAC_CONST(0.91881139326416994), + FRAC_CONST(0.91941576942494696), + FRAC_CONST(0.92001798211160657), + FRAC_CONST(0.92061802990708386), + FRAC_CONST(0.92121591139940873), + FRAC_CONST(0.92181162518170812), + FRAC_CONST(0.92240516985220988), + FRAC_CONST(0.92299654401424625), + FRAC_CONST(0.92358574627625656), + FRAC_CONST(0.9241727752517912), + FRAC_CONST(0.92475762955951391), + FRAC_CONST(0.9253403078232062), + FRAC_CONST(0.92592080867176996), + FRAC_CONST(0.92649913073923051), + FRAC_CONST(0.9270752726647401), + FRAC_CONST(0.92764923309258118), + FRAC_CONST(0.92822101067216944), + FRAC_CONST(0.92879060405805702), + FRAC_CONST(0.9293580119099355), + FRAC_CONST(0.92992323289263956), + FRAC_CONST(0.93048626567614978), + FRAC_CONST(0.93104710893559517), + FRAC_CONST(0.93160576135125783), + FRAC_CONST(0.93216222160857432), + FRAC_CONST(0.93271648839814025), + FRAC_CONST(0.93326856041571205), + FRAC_CONST(0.93381843636221096), + FRAC_CONST(0.9343661149437259), + FRAC_CONST(0.93491159487151609), + FRAC_CONST(0.93545487486201462), + FRAC_CONST(0.9359959536368313), + FRAC_CONST(0.9365348299227555), + FRAC_CONST(0.93707150245175919), + FRAC_CONST(0.93760596996099999), + FRAC_CONST(0.93813823119282436), + FRAC_CONST(0.93866828489477017), + FRAC_CONST(0.9391961298195699), + FRAC_CONST(0.93972176472515334), + FRAC_CONST(0.94024518837465088), + FRAC_CONST(0.94076639953639607), + FRAC_CONST(0.94128539698392866), + FRAC_CONST(0.94180217949599765), + FRAC_CONST(0.94231674585656378), + FRAC_CONST(0.94282909485480271), + FRAC_CONST(0.94333922528510772), + FRAC_CONST(0.94384713594709269), + FRAC_CONST(0.94435282564559475), + FRAC_CONST(0.94485629319067721), + FRAC_CONST(0.94535753739763229), + FRAC_CONST(0.94585655708698391), + FRAC_CONST(0.94635335108449059), + FRAC_CONST(0.946847918221148), + FRAC_CONST(0.94734025733319194), + FRAC_CONST(0.94783036726210101), + FRAC_CONST(0.94831824685459909), + FRAC_CONST(0.94880389496265838), + FRAC_CONST(0.94928731044350201), + FRAC_CONST(0.94976849215960668), + FRAC_CONST(0.95024743897870523), + FRAC_CONST(0.95072414977378961), + FRAC_CONST(0.95119862342311323), + FRAC_CONST(0.95167085881019386), + FRAC_CONST(0.95214085482381583), + FRAC_CONST(0.95260861035803324), + FRAC_CONST(0.9530741243121722), + FRAC_CONST(0.95353739559083328), + FRAC_CONST(0.95399842310389449), + FRAC_CONST(0.95445720576651349), + FRAC_CONST(0.95491374249913052), + FRAC_CONST(0.95536803222747024), + FRAC_CONST(0.95582007388254542), + FRAC_CONST(0.95626986640065814), + FRAC_CONST(0.95671740872340305), + FRAC_CONST(0.9571626997976701), + FRAC_CONST(0.95760573857564624), + FRAC_CONST(0.9580465240148186), + FRAC_CONST(0.9584850550779761), + FRAC_CONST(0.95892133073321306), + FRAC_CONST(0.95935534995393079), + FRAC_CONST(0.9597871117188399), + FRAC_CONST(0.96021661501196343), + FRAC_CONST(0.96064385882263847), + FRAC_CONST(0.96106884214551935), + FRAC_CONST(0.961491563980579), + FRAC_CONST(0.9619120233331121), + FRAC_CONST(0.9623302192137374), + FRAC_CONST(0.96274615063839941), + FRAC_CONST(0.96315981662837136), + FRAC_CONST(0.96357121621025721), + FRAC_CONST(0.96398034841599411), + FRAC_CONST(0.96438721228285429), + FRAC_CONST(0.9647918068534479), + FRAC_CONST(0.96519413117572472), + FRAC_CONST(0.96559418430297683), + FRAC_CONST(0.96599196529384057), + FRAC_CONST(0.96638747321229879), + FRAC_CONST(0.96678070712768327), + FRAC_CONST(0.96717166611467664), + FRAC_CONST(0.96756034925331436), + FRAC_CONST(0.9679467556289878), + FRAC_CONST(0.9683308843324453), + FRAC_CONST(0.96871273445979478), + FRAC_CONST(0.9690923051125061), + FRAC_CONST(0.96946959539741295), + FRAC_CONST(0.96984460442671483), + FRAC_CONST(0.97021733131797916), + FRAC_CONST(0.97058777519414363), + FRAC_CONST(0.97095593518351797), + FRAC_CONST(0.97132181041978616), + FRAC_CONST(0.97168540004200854), + FRAC_CONST(0.9720467031946235), + FRAC_CONST(0.97240571902744977), + FRAC_CONST(0.97276244669568857), + FRAC_CONST(0.97311688535992513), + FRAC_CONST(0.97346903418613095), + FRAC_CONST(0.9738188923456661), + FRAC_CONST(0.97416645901528032), + FRAC_CONST(0.97451173337711572), + FRAC_CONST(0.97485471461870843), + FRAC_CONST(0.97519540193299037), + FRAC_CONST(0.97553379451829136), + FRAC_CONST(0.97586989157834103), + FRAC_CONST(0.97620369232227056), + FRAC_CONST(0.97653519596461447), + FRAC_CONST(0.97686440172531264), + FRAC_CONST(0.97719130882971228), + FRAC_CONST(0.97751591650856928), + FRAC_CONST(0.97783822399805043), + FRAC_CONST(0.97815823053973505), + FRAC_CONST(0.97847593538061683), + FRAC_CONST(0.97879133777310567), + FRAC_CONST(0.97910443697502925), + FRAC_CONST(0.97941523224963478), + FRAC_CONST(0.97972372286559117), + FRAC_CONST(0.98002990809698998), + FRAC_CONST(0.98033378722334796), + FRAC_CONST(0.98063535952960812), + FRAC_CONST(0.98093462430614164), + FRAC_CONST(0.98123158084874973), + FRAC_CONST(0.98152622845866466), + FRAC_CONST(0.9818185664425525), + FRAC_CONST(0.98210859411251361), + FRAC_CONST(0.98239631078608469), + FRAC_CONST(0.98268171578624086), + FRAC_CONST(0.98296480844139644), + FRAC_CONST(0.98324558808540707), + FRAC_CONST(0.98352405405757126), + FRAC_CONST(0.98380020570263149), + FRAC_CONST(0.98407404237077645), + FRAC_CONST(0.9843455634176419), + FRAC_CONST(0.9846147682043126), + FRAC_CONST(0.9848816560973237), + FRAC_CONST(0.98514622646866223), + FRAC_CONST(0.98540847869576842), + FRAC_CONST(0.98566841216153755), + FRAC_CONST(0.98592602625432113), + FRAC_CONST(0.98618132036792827), + FRAC_CONST(0.98643429390162707), + FRAC_CONST(0.98668494626014669), + FRAC_CONST(0.98693327685367771), + FRAC_CONST(0.98717928509787434), + FRAC_CONST(0.98742297041385541), + FRAC_CONST(0.98766433222820571), + FRAC_CONST(0.98790336997297779), + FRAC_CONST(0.98814008308569257), + FRAC_CONST(0.98837447100934128), + FRAC_CONST(0.98860653319238645), + FRAC_CONST(0.98883626908876354), + FRAC_CONST(0.98906367815788154), + FRAC_CONST(0.98928875986462517), + FRAC_CONST(0.98951151367935519), + FRAC_CONST(0.98973193907791057), + FRAC_CONST(0.98995003554160899), + FRAC_CONST(0.9901658025572484), + FRAC_CONST(0.99037923961710816), + FRAC_CONST(0.99059034621895015), + FRAC_CONST(0.99079912186602037), + FRAC_CONST(0.99100556606704937), + FRAC_CONST(0.99120967833625406), + FRAC_CONST(0.99141145819333854), + FRAC_CONST(0.99161090516349537), + FRAC_CONST(0.99180801877740643), + FRAC_CONST(0.99200279857124452), + FRAC_CONST(0.99219524408667392), + FRAC_CONST(0.99238535487085167), + FRAC_CONST(0.99257313047642881), + FRAC_CONST(0.99275857046155114), + FRAC_CONST(0.99294167438986047), + FRAC_CONST(0.99312244183049558), + FRAC_CONST(0.99330087235809328), + FRAC_CONST(0.99347696555278919), + FRAC_CONST(0.99365072100021912), + FRAC_CONST(0.99382213829151966), + FRAC_CONST(0.99399121702332938), + FRAC_CONST(0.99415795679778973), + FRAC_CONST(0.99432235722254581), + FRAC_CONST(0.9944844179107476), + FRAC_CONST(0.99464413848105071), + FRAC_CONST(0.99480151855761711), + FRAC_CONST(0.99495655777011638), + FRAC_CONST(0.99510925575372611), + FRAC_CONST(0.99525961214913339), + FRAC_CONST(0.9954076266025349), + FRAC_CONST(0.99555329876563847), + FRAC_CONST(0.99569662829566352), + FRAC_CONST(0.99583761485534161), + FRAC_CONST(0.99597625811291779), + FRAC_CONST(0.99611255774215113), + FRAC_CONST(0.99624651342231552), + FRAC_CONST(0.99637812483820021), + FRAC_CONST(0.99650739168011082), + FRAC_CONST(0.9966343136438699), + FRAC_CONST(0.996758890430818), + FRAC_CONST(0.99688112174781385), + FRAC_CONST(0.99700100730723529), + FRAC_CONST(0.99711854682697998), + FRAC_CONST(0.99723374003046616), + FRAC_CONST(0.99734658664663323), + FRAC_CONST(0.99745708640994191), + FRAC_CONST(0.99756523906037575), + FRAC_CONST(0.997671044343441), + FRAC_CONST(0.99777450201016782), + FRAC_CONST(0.99787561181711015), + FRAC_CONST(0.99797437352634699), + FRAC_CONST(0.99807078690548234), + FRAC_CONST(0.99816485172764624), + FRAC_CONST(0.99825656777149518), + FRAC_CONST(0.99834593482121237), + FRAC_CONST(0.99843295266650844), + FRAC_CONST(0.99851762110262221), + FRAC_CONST(0.99859993993032037), + FRAC_CONST(0.99867990895589909), + FRAC_CONST(0.99875752799118334), + FRAC_CONST(0.99883279685352799), + FRAC_CONST(0.99890571536581829), + FRAC_CONST(0.99897628335646982), + FRAC_CONST(0.99904450065942929), + FRAC_CONST(0.99911036711417489), + FRAC_CONST(0.99917388256571638), + FRAC_CONST(0.99923504686459585), + FRAC_CONST(0.99929385986688779), + FRAC_CONST(0.99935032143419944), + FRAC_CONST(0.9994044314336713), + FRAC_CONST(0.99945618973797734), + FRAC_CONST(0.99950559622532531), + FRAC_CONST(0.99955265077945699), + FRAC_CONST(0.99959735328964838), + FRAC_CONST(0.9996397036507102), + FRAC_CONST(0.99967970176298793), + FRAC_CONST(0.99971734753236219), + FRAC_CONST(0.99975264087024884), + FRAC_CONST(0.99978558169359921), + FRAC_CONST(0.99981616992490041), + FRAC_CONST(0.99984440549217524), + FRAC_CONST(0.99987028832898295), + FRAC_CONST(0.99989381837441849), + FRAC_CONST(0.99991499557311347), + FRAC_CONST(0.999933819875236), + FRAC_CONST(0.99995029123649048), + FRAC_CONST(0.99996440961811828), + FRAC_CONST(0.99997617498689761), + FRAC_CONST(0.9999855873151432), + FRAC_CONST(0.99999264658070719), + FRAC_CONST(0.99999735276697821), + FRAC_CONST(0.99999970586288223) }; -real_t sine_mid_480[] = +#ifdef ALLOW_SMALL_FRAMELENGTH +ALIGN static const real_t sine_long_960[] = { - 0.0016362455, - 0.0049087189, - 0.0081811398, - 0.0114534731, - 0.0147256837, - 0.0179977366, - 0.0212695968, - 0.0245412292, - 0.0278125988, - 0.0310836705, - 0.0343544094, - 0.0376247803, - 0.0408947483, - 0.0441642784, - 0.0474333354, - 0.0507018846, - 0.0539698907, - 0.0572373189, - 0.0605041341, - 0.0637703013, - 0.0670357857, - 0.0703005521, - 0.0735645656, - 0.0768277914, - 0.0800901944, - 0.0833517396, - 0.0866123923, - 0.0898721174, - 0.0931308800, - 0.0963886453, - 0.0996453784, - 0.1029010443, - 0.1061556082, - 0.1094090353, - 0.1126612907, - 0.1159123396, - 0.1191621472, - 0.1224106786, - 0.1256578991, - 0.1289037739, - 0.1321482683, - 0.1353913474, - 0.1386329767, - 0.1418731213, - 0.1451117465, - 0.1483488177, - 0.1515843002, - 0.1548181594, - 0.1580503605, - 0.1612808691, - 0.1645096505, - 0.1677366702, - 0.1709618935, - 0.1741852859, - 0.1774068130, - 0.1806264402, - 0.1838441330, - 0.1870598570, - 0.1902735777, - 0.1934852607, - 0.1966948717, - 0.1999023762, - 0.2031077400, - 0.2063109286, - 0.2095119078, - 0.2127106433, - 0.2159071008, - 0.2191012462, - 0.2222930451, - 0.2254824635, - 0.2286694671, - 0.2318540218, - 0.2350360936, - 0.2382156484, - 0.2413926520, - 0.2445670705, - 0.2477388699, - 0.2509080162, - 0.2540744755, - 0.2572382139, - 0.2603991974, - 0.2635573923, - 0.2667127647, - 0.2698652808, - 0.2730149069, - 0.2761616092, - 0.2793053540, - 0.2824461077, - 0.2855838367, - 0.2887185072, - 0.2918500858, - 0.2949785389, - 0.2981038331, - 0.3012259348, - 0.3043448106, - 0.3074604271, - 0.3105727510, - 0.3136817488, - 0.3167873874, - 0.3198896335, - 0.3229884538, - 0.3260838151, - 0.3291756844, - 0.3322640284, - 0.3353488142, - 0.3384300086, - 0.3415075788, - 0.3445814916, - 0.3476517143, - 0.3507182139, - 0.3537809576, - 0.3568399126, - 0.3598950461, - 0.3629463254, - 0.3659937179, - 0.3690371908, - 0.3720767117, - 0.3751122479, - 0.3781437670, - 0.3811712365, - 0.3841946239, - 0.3872138969, - 0.3902290232, - 0.3932399704, - 0.3962467063, - 0.3992491987, - 0.4022474156, - 0.4052413246, - 0.4082308939, - 0.4112160913, - 0.4141968849, - 0.4171732429, - 0.4201451332, - 0.4231125241, - 0.4260753838, - 0.4290336806, - 0.4319873828, - 0.4349364587, - 0.4378808768, - 0.4408206056, - 0.4437556136, - 0.4466858692, - 0.4496113412, - 0.4525319983, - 0.4554478091, - 0.4583587424, - 0.4612647671, - 0.4641658519, - 0.4670619660, - 0.4699530782, - 0.4728391575, - 0.4757201731, - 0.4785960942, - 0.4814668899, - 0.4843325294, - 0.4871929822, - 0.4900482174, - 0.4928982047, - 0.4957429134, - 0.4985823131, - 0.5014163734, - 0.5042450640, - 0.5070683544, - 0.5098862146, - 0.5126986143, - 0.5155055234, - 0.5183069119, - 0.5211027497, - 0.5238930069, - 0.5266776537, - 0.5294566601, - 0.5322299965, - 0.5349976332, - 0.5377595404, - 0.5405156887, - 0.5432660485, - 0.5460105903, - 0.5487492848, - 0.5514821026, - 0.5542090145, - 0.5569299913, - 0.5596450038, - 0.5623540230, - 0.5650570198, - 0.5677539653, - 0.5704448306, - 0.5731295868, - 0.5758082054, - 0.5784806575, - 0.5811469145, - 0.5838069479, - 0.5864607292, - 0.5891082300, - 0.5917494219, - 0.5943842766, - 0.5970127660, - 0.5996348618, - 0.6022505361, - 0.6048597607, - 0.6074625077, - 0.6100587493, - 0.6126484577, - 0.6152316051, - 0.6178081639, - 0.6203781064, - 0.6229414052, - 0.6254980328, - 0.6280479618, - 0.6305911649, - 0.6331276149, - 0.6356572846, - 0.6381801469, - 0.6406961748, - 0.6432053414, - 0.6457076197, - 0.6482029831, - 0.6506914047, - 0.6531728580, - 0.6556473162, - 0.6581147531, - 0.6605751420, - 0.6630284567, - 0.6654746709, - 0.6679137584, - 0.6703456931, - 0.6727704490, - 0.6751880000, - 0.6775983202, - 0.6800013840, - 0.6823971654, - 0.6847856390, - 0.6871667790, - 0.6895405601, - 0.6919069567, - 0.6942659435, - 0.6966174953, - 0.6989615869, - 0.7012981932, - 0.7036272892, - 0.7059488498, - 0.7082628503, - 0.7105692659, - 0.7128680719, - 0.7151592436, - 0.7174427565, - 0.7197185862, - 0.7219867083, - 0.7242470985, - 0.7264997326, - 0.7287445864, - 0.7309816360, - 0.7332108574, - 0.7354322266, - 0.7376457200, - 0.7398513138, - 0.7420489844, - 0.7442387082, - 0.7464204618, - 0.7485942218, - 0.7507599651, - 0.7529176682, - 0.7550673083, - 0.7572088621, - 0.7593423069, - 0.7614676197, - 0.7635847778, - 0.7656937585, - 0.7677945393, - 0.7698870976, - 0.7719714111, - 0.7740474573, - 0.7761152141, - 0.7781746593, - 0.7802257710, - 0.7822685270, - 0.7843029055, - 0.7863288848, - 0.7883464432, - 0.7903555590, - 0.7923562107, - 0.7943483769, - 0.7963320363, - 0.7983071676, - 0.8002737497, - 0.8022317615, - 0.8041811820, - 0.8061219904, - 0.8080541659, - 0.8099776877, - 0.8118925354, - 0.8137986883, - 0.8156961261, - 0.8175848285, - 0.8194647752, - 0.8213359460, - 0.8231983211, - 0.8250518803, - 0.8268966039, - 0.8287324721, - 0.8305594652, - 0.8323775637, - 0.8341867481, - 0.8359869990, - 0.8377782972, - 0.8395606235, - 0.8413339587, - 0.8430982839, - 0.8448535802, - 0.8465998288, - 0.8483370110, - 0.8500651082, - 0.8517841019, - 0.8534939737, - 0.8551947052, - 0.8568862783, - 0.8585686748, - 0.8602418767, - 0.8619058662, - 0.8635606253, - 0.8652061363, - 0.8668423818, - 0.8684693440, - 0.8700870056, - 0.8716953493, - 0.8732943578, - 0.8748840140, - 0.8764643010, - 0.8780352017, - 0.8795966993, - 0.8811487772, - 0.8826914187, - 0.8842246072, - 0.8857483265, - 0.8872625600, - 0.8887672917, - 0.8902625055, - 0.8917481852, - 0.8932243150, - 0.8946908791, - 0.8961478618, - 0.8975952475, - 0.8990330206, - 0.9004611658, - 0.9018796678, - 0.9032885114, - 0.9046876815, - 0.9060771631, - 0.9074569413, - 0.9088270015, - 0.9101873288, - 0.9115379087, - 0.9128787268, - 0.9142097687, - 0.9155310202, - 0.9168424670, - 0.9181440952, - 0.9194358908, - 0.9207178400, - 0.9219899290, - 0.9232521443, - 0.9245044723, - 0.9257468996, - 0.9269794128, - 0.9282019989, - 0.9294146447, - 0.9306173372, - 0.9318100635, - 0.9329928109, - 0.9341655667, - 0.9353283183, - 0.9364810533, - 0.9376237593, - 0.9387564242, - 0.9398790357, - 0.9409915818, - 0.9420940507, - 0.9431864306, - 0.9442687096, - 0.9453408763, - 0.9464029192, - 0.9474548268, - 0.9484965880, - 0.9495281915, - 0.9505496264, - 0.9515608816, - 0.9525619463, - 0.9535528099, - 0.9545334617, - 0.9555038913, - 0.9564640881, - 0.9574140420, - 0.9583537427, - 0.9592831803, - 0.9602023446, - 0.9611112260, - 0.9620098147, - 0.9628981010, - 0.9637760755, - 0.9646437286, - 0.9655010512, - 0.9663480341, - 0.9671846682, - 0.9680109445, - 0.9688268541, - 0.9696323885, - 0.9704275388, - 0.9712122966, - 0.9719866535, - 0.9727506013, - 0.9735041316, - 0.9742472365, - 0.9749799080, - 0.9757021383, - 0.9764139195, - 0.9771152442, - 0.9778061047, - 0.9784864937, - 0.9791564039, - 0.9798158282, - 0.9804647593, - 0.9811031905, - 0.9817311149, - 0.9823485257, - 0.9829554164, - 0.9835517804, - 0.9841376113, - 0.9847129029, - 0.9852776490, - 0.9858318436, - 0.9863754808, - 0.9869085546, - 0.9874310595, - 0.9879429897, - 0.9884443399, - 0.9889351046, - 0.9894152786, - 0.9898848568, - 0.9903438341, - 0.9907922056, - 0.9912299666, - 0.9916571122, - 0.9920736380, - 0.9924795395, - 0.9928748124, - 0.9932594523, - 0.9936334552, - 0.9939968171, - 0.9943495342, - 0.9946916025, - 0.9950230184, - 0.9953437785, - 0.9956538793, - 0.9959533173, - 0.9962420896, - 0.9965201929, - 0.9967876242, - 0.9970443807, - 0.9972904597, - 0.9975258586, - 0.9977505747, - 0.9979646057, - 0.9981679493, - 0.9983606034, - 0.9985425657, - 0.9987138346, - 0.9988744079, - 0.9990242842, - 0.9991634617, - 0.9992919389, - 0.9994097146, - 0.9995167873, - 0.9996131561, - 0.9996988198, - 0.9997737775, - 0.9998380284, - 0.9998915719, - 0.9999344073, - 0.9999665343, - 0.9999879524, - 0.9999986614 -}; - -real_t ld_mid_512[] = -{ - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0061358848, - 0.0184067304, - 0.0306748040, - 0.0429382581, - 0.0551952459, - 0.0674439214, - 0.0796824402, - 0.0919089590, - 0.1041216368, - 0.1163186341, - 0.1284981143, - 0.1406582432, - 0.1527971895, - 0.1649131250, - 0.1770042253, - 0.1890686693, - 0.2011046404, - 0.2131103258, - 0.2250839175, - 0.2370236125, - 0.2489276125, - 0.2607941250, - 0.2726213628, - 0.2844075449, - 0.2961508962, - 0.3078496483, - 0.3195020394, - 0.3311063146, - 0.3426607265, - 0.3541635348, - 0.3656130075, - 0.3770074202, - 0.3883450569, - 0.3996242103, - 0.4108431818, - 0.4220002818, - 0.4330938301, - 0.4441221560, - 0.4550835988, - 0.4659765077, - 0.4767992422, - 0.4875501725, - 0.4982276796, - 0.5088301553, - 0.5193560032, - 0.5298036379, - 0.5401714861, - 0.5504579865, - 0.5606615899, - 0.5707807598, - 0.5808139721, - 0.5907597160, - 0.6006164937, - 0.6103828207, - 0.6200572264, - 0.6296382536, - 0.6391244597, - 0.6485144160, - 0.6578067083, - 0.6669999374, - 0.6760927188, - 0.6850836831, - 0.6939714763, - 0.7027547599, - 0.7114322112, - 0.7200025235, - 0.7284644060, - 0.7368165845, - 0.7450578010, - 0.7531868147, - 0.7612024011, - 0.7691033533, - 0.7768884813, - 0.7845566127, - 0.7921065928, - 0.7995372846, - 0.8068475690, - 0.8140363451, - 0.8211025303, - 0.8280450605, - 0.8348628901, - 0.8415549925, - 0.8481203597, - 0.8545580032, - 0.8608669533, - 0.8670462601, - 0.8730949928, - 0.8790122407, - 0.8847971125, - 0.8904487372, - 0.8959662635, - 0.9013488606, - 0.9065957178, - 0.9117060451, - 0.9166790728, - 0.9215140520, - 0.9262102546, - 0.9307669733, - 0.9351835219, - 0.9394592352, - 0.9435934695, - 0.9475856021, - 0.9514350317, - 0.9551411788, - 0.9587034850, - 0.9621214141, - 0.9653944512, - 0.9685221034, - 0.9715038998, - 0.9743393912, - 0.9770281507, - 0.9795697733, - 0.9819638764, - 0.9842100992, - 0.9863081037, - 0.9882575738, - 0.9900582159, - 0.9917097588, - 0.9932119539, - 0.9945645750, - 0.9957674182, - 0.9968203026, - 0.9977230695, - 0.9984755829, - 0.9990777296, - 0.9995294188, - 0.9998305826, - 0.9999811755, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000 -}; - -real_t ld_mid_480[] = -{ - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0000000000, - 0.0065449381, - 0.0196336930, - 0.0327190837, - 0.0457988682, - 0.0588708053, - 0.0719326552, - 0.0849821797, - 0.0980171430, - 0.1110353116, - 0.1240344549, - 0.1370123455, - 0.1499667597, - 0.1628954779, - 0.1757962848, - 0.1886669699, - 0.2015053279, - 0.2143091589, - 0.2270762692, - 0.2398044712, - 0.2524915839, - 0.2651354334, - 0.2777338534, - 0.2902846851, - 0.3027857780, - 0.3152349901, - 0.3276301883, - 0.3399692488, - 0.3522500573, - 0.3644705095, - 0.3766285116, - 0.3887219804, - 0.4007488436, - 0.4127070406, - 0.4245945223, - 0.4364092520, - 0.4481492051, - 0.4598123703, - 0.4713967489, - 0.4829003561, - 0.4943212208, - 0.5056573861, - 0.5169069096, - 0.5280678638, - 0.5391383363, - 0.5501164301, - 0.5610002644, - 0.5717879741, - 0.5824777109, - 0.5930676432, - 0.6035559563, - 0.6139408533, - 0.6242205546, - 0.6343932989, - 0.6444573433, - 0.6544109631, - 0.6642524530, - 0.6739801267, - 0.6835923173, - 0.6930873779, - 0.7024636815, - 0.7117196216, - 0.7208536122, - 0.7298640883, - 0.7387495058, - 0.7475083425, - 0.7561390974, - 0.7646402918, - 0.7730104690, - 0.7812481948, - 0.7893520577, - 0.7973206693, - 0.8051526640, - 0.8128467000, - 0.8204014588, - 0.8278156461, - 0.8350879914, - 0.8422172487, - 0.8492021964, - 0.8560416377, - 0.8627344006, - 0.8692793384, - 0.8756753297, - 0.8819212785, - 0.8880161146, - 0.8939587938, - 0.8997482976, - 0.9053836343, - 0.9108638381, - 0.9161879700, - 0.9213551179, - 0.9263643963, - 0.9312149469, - 0.9359059386, - 0.9404365677, - 0.9448060577, - 0.9490136602, - 0.9530586539, - 0.9569403460, - 0.9606580713, - 0.9642111928, - 0.9675991016, - 0.9708212173, - 0.9738769878, - 0.9767658894, - 0.9794874272, - 0.9820411349, - 0.9844265749, - 0.9866433385, - 0.9886910458, - 0.9905693459, - 0.9922779171, - 0.9938164666, - 0.9951847307, - 0.9963824750, - 0.9974094943, - 0.9982656127, - 0.9989506833, - 0.9994645889, - 0.9998072413, - 0.9999785819, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000, - 1.0000000000 + FRAC_CONST(0.00081812299560725323), + FRAC_CONST(0.0024543667964602917), + FRAC_CONST(0.0040906040262347889), + FRAC_CONST(0.0057268303042312674), + FRAC_CONST(0.0073630412497795667), + FRAC_CONST(0.0089992324822505774), + FRAC_CONST(0.010635399621067975), + FRAC_CONST(0.012271538285719924), + FRAC_CONST(0.013907644095770845), + FRAC_CONST(0.015543712670873098), + FRAC_CONST(0.017179739630778748), + FRAC_CONST(0.018815720595351273), + FRAC_CONST(0.020451651184577292), + FRAC_CONST(0.022087527018578291), + FRAC_CONST(0.023723343717622358), + FRAC_CONST(0.025359096902135895), + FRAC_CONST(0.02699478219271537), + FRAC_CONST(0.028630395210139003), + FRAC_CONST(0.030265931575378519), + FRAC_CONST(0.031901386909610863), + FRAC_CONST(0.033536756834229922), + FRAC_CONST(0.035172036970858266), + FRAC_CONST(0.036807222941358832), + FRAC_CONST(0.038442310367846677), + FRAC_CONST(0.040077294872700696), + FRAC_CONST(0.041712172078575326), + FRAC_CONST(0.043346937608412288), + FRAC_CONST(0.044981587085452281), + FRAC_CONST(0.046616116133246711), + FRAC_CONST(0.048250520375669431), + FRAC_CONST(0.049884795436928406), + FRAC_CONST(0.051518936941577477), + FRAC_CONST(0.053152940514528055), + FRAC_CONST(0.05478680178106083), + FRAC_CONST(0.056420516366837495), + FRAC_CONST(0.05805407989791244), + FRAC_CONST(0.059687488000744485), + FRAC_CONST(0.061320736302208578), + FRAC_CONST(0.062953820429607482), + FRAC_CONST(0.064586736010683557), + FRAC_CONST(0.066219478673630344), + FRAC_CONST(0.06785204404710439), + FRAC_CONST(0.069484427760236861), + FRAC_CONST(0.071116625442645326), + FRAC_CONST(0.072748632724445372), + FRAC_CONST(0.07438044523626236), + FRAC_CONST(0.076012058609243122), + FRAC_CONST(0.077643468475067631), + FRAC_CONST(0.079274670465960706), + FRAC_CONST(0.080905660214703745), + FRAC_CONST(0.082536433354646319), + FRAC_CONST(0.084166985519717977), + FRAC_CONST(0.085797312344439894), + FRAC_CONST(0.08742740946393647), + FRAC_CONST(0.089057272513947183), + FRAC_CONST(0.090686897130838162), + FRAC_CONST(0.092316278951613845), + FRAC_CONST(0.093945413613928788), + FRAC_CONST(0.095574296756099186), + FRAC_CONST(0.097202924017114667), + FRAC_CONST(0.098831291036649963), + FRAC_CONST(0.10045939345507648), + FRAC_CONST(0.10208722691347409), + FRAC_CONST(0.10371478705364276), + FRAC_CONST(0.10534206951811415), + FRAC_CONST(0.10696906995016341), + FRAC_CONST(0.10859578399382072), + FRAC_CONST(0.11022220729388306), + FRAC_CONST(0.11184833549592579), + FRAC_CONST(0.11347416424631435), + FRAC_CONST(0.11509968919221586), + FRAC_CONST(0.11672490598161089), + FRAC_CONST(0.11834981026330495), + FRAC_CONST(0.11997439768694031), + FRAC_CONST(0.12159866390300751), + FRAC_CONST(0.12322260456285709), + FRAC_CONST(0.12484621531871121), + FRAC_CONST(0.12646949182367517), + FRAC_CONST(0.12809242973174936), + FRAC_CONST(0.12971502469784052), + FRAC_CONST(0.13133727237777362), + FRAC_CONST(0.13295916842830346), + FRAC_CONST(0.13458070850712617), + FRAC_CONST(0.13620188827289101), + FRAC_CONST(0.1378227033852118), + FRAC_CONST(0.13944314950467873), + FRAC_CONST(0.14106322229286994), + FRAC_CONST(0.14268291741236291), + FRAC_CONST(0.14430223052674654), + FRAC_CONST(0.1459211573006321), + FRAC_CONST(0.14753969339966552), + FRAC_CONST(0.14915783449053857), + FRAC_CONST(0.15077557624100058), + FRAC_CONST(0.15239291431987001), + FRAC_CONST(0.1540098443970461), + FRAC_CONST(0.15562636214352044), + FRAC_CONST(0.15724246323138855), + FRAC_CONST(0.15885814333386142), + FRAC_CONST(0.16047339812527725), + FRAC_CONST(0.16208822328111283), + FRAC_CONST(0.16370261447799525), + FRAC_CONST(0.16531656739371339), + FRAC_CONST(0.16693007770722967), + FRAC_CONST(0.16854314109869134), + FRAC_CONST(0.17015575324944232), + FRAC_CONST(0.17176790984203447), + FRAC_CONST(0.17337960656023954), + FRAC_CONST(0.1749908390890603), + FRAC_CONST(0.17660160311474243), + FRAC_CONST(0.17821189432478593), + FRAC_CONST(0.17982170840795647), + FRAC_CONST(0.18143104105429744), + FRAC_CONST(0.18303988795514095), + FRAC_CONST(0.1846482448031197), + FRAC_CONST(0.18625610729217834), + FRAC_CONST(0.1878634711175852), + FRAC_CONST(0.18947033197594348), + FRAC_CONST(0.19107668556520319), + FRAC_CONST(0.19268252758467228), + FRAC_CONST(0.19428785373502844), + FRAC_CONST(0.19589265971833042), + FRAC_CONST(0.19749694123802966), + FRAC_CONST(0.19910069399898173), + FRAC_CONST(0.20070391370745785), + FRAC_CONST(0.20230659607115639), + FRAC_CONST(0.20390873679921437), + FRAC_CONST(0.20551033160221882), + FRAC_CONST(0.20711137619221856), + FRAC_CONST(0.2087118662827353), + FRAC_CONST(0.21031179758877552), + FRAC_CONST(0.21191116582684155), + FRAC_CONST(0.21350996671494335), + FRAC_CONST(0.21510819597260972), + FRAC_CONST(0.21670584932089998), + FRAC_CONST(0.2183029224824154), + FRAC_CONST(0.21989941118131037), + FRAC_CONST(0.22149531114330431), + FRAC_CONST(0.22309061809569264), + FRAC_CONST(0.22468532776735861), + FRAC_CONST(0.22627943588878449), + FRAC_CONST(0.22787293819206314), + FRAC_CONST(0.22946583041090929), + FRAC_CONST(0.23105810828067114), + FRAC_CONST(0.23264976753834157), + FRAC_CONST(0.23424080392256985), + FRAC_CONST(0.2358312131736727), + FRAC_CONST(0.23742099103364595), + FRAC_CONST(0.23901013324617584), + FRAC_CONST(0.24059863555665045), + FRAC_CONST(0.24218649371217096), + FRAC_CONST(0.24377370346156332), + FRAC_CONST(0.24536026055538934), + FRAC_CONST(0.24694616074595824), + FRAC_CONST(0.24853139978733788), + FRAC_CONST(0.25011597343536629), + FRAC_CONST(0.25169987744766298), + FRAC_CONST(0.25328310758364025), + FRAC_CONST(0.25486565960451457), + FRAC_CONST(0.25644752927331788), + FRAC_CONST(0.25802871235490898), + FRAC_CONST(0.25960920461598508), + FRAC_CONST(0.26118900182509258), + FRAC_CONST(0.26276809975263904), + FRAC_CONST(0.264346494170904), + FRAC_CONST(0.26592418085405067), + FRAC_CONST(0.26750115557813692), + FRAC_CONST(0.2690774141211269), + FRAC_CONST(0.27065295226290209), + FRAC_CONST(0.2722277657852728), + FRAC_CONST(0.27380185047198918), + FRAC_CONST(0.27537520210875299), + FRAC_CONST(0.2769478164832283), + FRAC_CONST(0.27851968938505312), + FRAC_CONST(0.28009081660585067), + FRAC_CONST(0.28166119393924061), + FRAC_CONST(0.28323081718085019), + FRAC_CONST(0.28479968212832563), + FRAC_CONST(0.28636778458134327), + FRAC_CONST(0.28793512034162105), + FRAC_CONST(0.2895016852129294), + FRAC_CONST(0.29106747500110264), + FRAC_CONST(0.29263248551405047), + FRAC_CONST(0.2941967125617686), + FRAC_CONST(0.29576015195635058), + FRAC_CONST(0.29732279951199847), + FRAC_CONST(0.29888465104503475), + FRAC_CONST(0.30044570237391266), + FRAC_CONST(0.30200594931922808), + FRAC_CONST(0.30356538770373032), + FRAC_CONST(0.30512401335233358), + FRAC_CONST(0.30668182209212791), + FRAC_CONST(0.3082388097523906), + FRAC_CONST(0.30979497216459695), + FRAC_CONST(0.31135030516243201), + FRAC_CONST(0.3129048045818012), + FRAC_CONST(0.31445846626084178), + FRAC_CONST(0.31601128603993378), + FRAC_CONST(0.31756325976171151), + FRAC_CONST(0.31911438327107416), + FRAC_CONST(0.32066465241519732), + FRAC_CONST(0.32221406304354389), + FRAC_CONST(0.3237626110078754), + FRAC_CONST(0.32531029216226293), + FRAC_CONST(0.32685710236309828), + FRAC_CONST(0.32840303746910487), + FRAC_CONST(0.32994809334134939), + FRAC_CONST(0.3314922658432522), + FRAC_CONST(0.33303555084059877), + FRAC_CONST(0.33457794420155085), + FRAC_CONST(0.33611944179665709), + FRAC_CONST(0.33766003949886464), + FRAC_CONST(0.33919973318352969), + FRAC_CONST(0.34073851872842903), + FRAC_CONST(0.34227639201377064), + FRAC_CONST(0.34381334892220483), + FRAC_CONST(0.34534938533883547), + FRAC_CONST(0.34688449715123082), + FRAC_CONST(0.34841868024943456), + FRAC_CONST(0.34995193052597684), + FRAC_CONST(0.35148424387588523), + FRAC_CONST(0.3530156161966958), + FRAC_CONST(0.35454604338846402), + FRAC_CONST(0.35607552135377557), + FRAC_CONST(0.35760404599775775), + FRAC_CONST(0.35913161322809023), + FRAC_CONST(0.36065821895501554), + FRAC_CONST(0.36218385909135092), + FRAC_CONST(0.36370852955249849), + FRAC_CONST(0.36523222625645668), + FRAC_CONST(0.36675494512383078), + FRAC_CONST(0.36827668207784414), + FRAC_CONST(0.36979743304434909), + FRAC_CONST(0.37131719395183754), + FRAC_CONST(0.37283596073145214), + FRAC_CONST(0.37435372931699717), + FRAC_CONST(0.37587049564494951), + FRAC_CONST(0.37738625565446909), + FRAC_CONST(0.37890100528741022), + FRAC_CONST(0.38041474048833229), + FRAC_CONST(0.38192745720451066), + FRAC_CONST(0.38343915138594736), + FRAC_CONST(0.38494981898538222), + FRAC_CONST(0.38645945595830333), + FRAC_CONST(0.38796805826295838), + FRAC_CONST(0.38947562186036483), + FRAC_CONST(0.39098214271432141), + FRAC_CONST(0.39248761679141814), + FRAC_CONST(0.3939920400610481), + FRAC_CONST(0.39549540849541737), + FRAC_CONST(0.39699771806955625), + FRAC_CONST(0.39849896476132979), + FRAC_CONST(0.39999914455144892), + FRAC_CONST(0.40149825342348083), + FRAC_CONST(0.4029962873638599), + FRAC_CONST(0.40449324236189854), + FRAC_CONST(0.40598911440979762), + FRAC_CONST(0.40748389950265762), + FRAC_CONST(0.40897759363848879), + FRAC_CONST(0.41047019281822261), + FRAC_CONST(0.41196169304572178), + FRAC_CONST(0.4134520903277914), + FRAC_CONST(0.41494138067418929), + FRAC_CONST(0.41642956009763715), + FRAC_CONST(0.41791662461383078), + FRAC_CONST(0.41940257024145089), + FRAC_CONST(0.42088739300217382), + FRAC_CONST(0.42237108892068231), + FRAC_CONST(0.42385365402467584), + FRAC_CONST(0.42533508434488143), + FRAC_CONST(0.42681537591506419), + FRAC_CONST(0.42829452477203828), + FRAC_CONST(0.42977252695567697), + FRAC_CONST(0.43124937850892364), + FRAC_CONST(0.4327250754778022), + FRAC_CONST(0.43419961391142781), + FRAC_CONST(0.43567298986201736), + FRAC_CONST(0.43714519938489987), + FRAC_CONST(0.43861623853852766), + FRAC_CONST(0.44008610338448595), + FRAC_CONST(0.44155478998750436), + FRAC_CONST(0.44302229441546676), + FRAC_CONST(0.4444886127394222), + FRAC_CONST(0.44595374103359531), + FRAC_CONST(0.44741767537539667), + FRAC_CONST(0.44888041184543348), + FRAC_CONST(0.45034194652752002), + FRAC_CONST(0.45180227550868812), + FRAC_CONST(0.45326139487919759), + FRAC_CONST(0.45471930073254679), + FRAC_CONST(0.45617598916548296), + FRAC_CONST(0.45763145627801283), + FRAC_CONST(0.45908569817341294), + FRAC_CONST(0.46053871095824001), + FRAC_CONST(0.46199049074234161), + FRAC_CONST(0.46344103363886635), + FRAC_CONST(0.46489033576427435), + FRAC_CONST(0.46633839323834758), + FRAC_CONST(0.46778520218420055), + FRAC_CONST(0.46923075872829029), + FRAC_CONST(0.47067505900042683), + FRAC_CONST(0.47211809913378361), + FRAC_CONST(0.47355987526490806), + FRAC_CONST(0.47500038353373153), + FRAC_CONST(0.47643962008357982), + FRAC_CONST(0.47787758106118372), + FRAC_CONST(0.47931426261668875), + FRAC_CONST(0.48074966090366611), + FRAC_CONST(0.48218377207912272), + FRAC_CONST(0.48361659230351117), + FRAC_CONST(0.48504811774074069), + FRAC_CONST(0.48647834455818684), + FRAC_CONST(0.48790726892670194), + FRAC_CONST(0.48933488702062544), + FRAC_CONST(0.49076119501779414), + FRAC_CONST(0.49218618909955225), + FRAC_CONST(0.4936098654507618), + FRAC_CONST(0.49503222025981269), + FRAC_CONST(0.49645324971863303), + FRAC_CONST(0.49787295002269943), + FRAC_CONST(0.49929131737104687), + FRAC_CONST(0.50070834796627917), + FRAC_CONST(0.50212403801457872), + FRAC_CONST(0.50353838372571758), + FRAC_CONST(0.50495138131306638), + FRAC_CONST(0.50636302699360547), + FRAC_CONST(0.50777331698793449), + FRAC_CONST(0.50918224752028263), + FRAC_CONST(0.51058981481851906), + FRAC_CONST(0.51199601511416237), + FRAC_CONST(0.51340084464239111), + FRAC_CONST(0.51480429964205421), + FRAC_CONST(0.51620637635567967), + FRAC_CONST(0.51760707102948678), + FRAC_CONST(0.51900637991339404), + FRAC_CONST(0.5204042992610306), + FRAC_CONST(0.52180082532974559), + FRAC_CONST(0.5231959543806185), + FRAC_CONST(0.52458968267846895), + FRAC_CONST(0.52598200649186677), + FRAC_CONST(0.52737292209314235), + FRAC_CONST(0.52876242575839572), + FRAC_CONST(0.53015051376750777), + FRAC_CONST(0.53153718240414882), + FRAC_CONST(0.53292242795578992), + FRAC_CONST(0.53430624671371152), + FRAC_CONST(0.53568863497301467), + FRAC_CONST(0.5370695890326298), + FRAC_CONST(0.5384491051953274), + FRAC_CONST(0.53982717976772743), + FRAC_CONST(0.54120380906030963), + FRAC_CONST(0.54257898938742311), + FRAC_CONST(0.54395271706729609), + FRAC_CONST(0.54532498842204646), + FRAC_CONST(0.54669579977769045), + FRAC_CONST(0.54806514746415402), + FRAC_CONST(0.54943302781528081), + FRAC_CONST(0.55079943716884383), + FRAC_CONST(0.55216437186655387), + FRAC_CONST(0.55352782825406999), + FRAC_CONST(0.55488980268100907), + FRAC_CONST(0.55625029150095584), + FRAC_CONST(0.55760929107147217), + FRAC_CONST(0.55896679775410718), + FRAC_CONST(0.56032280791440714), + FRAC_CONST(0.56167731792192455), + FRAC_CONST(0.56303032415022869), + FRAC_CONST(0.56438182297691453), + FRAC_CONST(0.56573181078361312), + FRAC_CONST(0.56708028395600085), + FRAC_CONST(0.56842723888380908), + FRAC_CONST(0.56977267196083425), + FRAC_CONST(0.57111657958494688), + FRAC_CONST(0.5724589581581021), + FRAC_CONST(0.57379980408634845), + FRAC_CONST(0.57513911377983773), + FRAC_CONST(0.57647688365283478), + FRAC_CONST(0.57781311012372738), + FRAC_CONST(0.57914778961503466), + FRAC_CONST(0.58048091855341843), + FRAC_CONST(0.5818124933696911), + FRAC_CONST(0.58314251049882604), + FRAC_CONST(0.58447096637996743), + FRAC_CONST(0.58579785745643886), + FRAC_CONST(0.5871231801757536), + FRAC_CONST(0.58844693098962408), + FRAC_CONST(0.58976910635397084), + FRAC_CONST(0.59108970272893235), + FRAC_CONST(0.59240871657887517), + FRAC_CONST(0.59372614437240179), + FRAC_CONST(0.59504198258236196), + FRAC_CONST(0.5963562276858605), + FRAC_CONST(0.59766887616426767), + FRAC_CONST(0.5989799245032289), + FRAC_CONST(0.60028936919267273), + FRAC_CONST(0.60159720672682204), + FRAC_CONST(0.60290343360420195), + FRAC_CONST(0.60420804632765002), + FRAC_CONST(0.60551104140432543), + FRAC_CONST(0.60681241534571839), + FRAC_CONST(0.60811216466765883), + FRAC_CONST(0.60941028589032709), + FRAC_CONST(0.61070677553826169), + FRAC_CONST(0.61200163014036979), + FRAC_CONST(0.61329484622993602), + FRAC_CONST(0.6145864203446314), + FRAC_CONST(0.61587634902652377), + FRAC_CONST(0.61716462882208556), + FRAC_CONST(0.61845125628220421), + FRAC_CONST(0.61973622796219074), + FRAC_CONST(0.6210195404217892), + FRAC_CONST(0.62230119022518593), + FRAC_CONST(0.62358117394101897), + FRAC_CONST(0.62485948814238634), + FRAC_CONST(0.62613612940685637), + FRAC_CONST(0.62741109431647646), + FRAC_CONST(0.62868437945778133), + FRAC_CONST(0.62995598142180387), + FRAC_CONST(0.6312258968040827), + FRAC_CONST(0.63249412220467238), + FRAC_CONST(0.63376065422815175), + FRAC_CONST(0.63502548948363347), + FRAC_CONST(0.63628862458477287), + FRAC_CONST(0.63755005614977711), + FRAC_CONST(0.63880978080141437), + FRAC_CONST(0.6400677951670225), + FRAC_CONST(0.6413240958785188), + FRAC_CONST(0.64257867957240766), + FRAC_CONST(0.6438315428897915), + FRAC_CONST(0.64508268247637779), + FRAC_CONST(0.64633209498248945), + FRAC_CONST(0.64757977706307335), + FRAC_CONST(0.64882572537770888), + FRAC_CONST(0.65006993659061751), + FRAC_CONST(0.65131240737067142), + FRAC_CONST(0.65255313439140239), + FRAC_CONST(0.65379211433101081), + FRAC_CONST(0.65502934387237444), + FRAC_CONST(0.6562648197030575), + FRAC_CONST(0.65749853851531959), + FRAC_CONST(0.65873049700612374), + FRAC_CONST(0.65996069187714679), + FRAC_CONST(0.66118911983478657), + FRAC_CONST(0.66241577759017178), + FRAC_CONST(0.66364066185917048), + FRAC_CONST(0.66486376936239888), + FRAC_CONST(0.66608509682523009), + FRAC_CONST(0.66730464097780284), + FRAC_CONST(0.66852239855503071), + FRAC_CONST(0.66973836629660977), + FRAC_CONST(0.67095254094702894), + FRAC_CONST(0.67216491925557675), + FRAC_CONST(0.67337549797635199), + FRAC_CONST(0.67458427386827102), + FRAC_CONST(0.67579124369507693), + FRAC_CONST(0.67699640422534846), + FRAC_CONST(0.67819975223250772), + FRAC_CONST(0.6794012844948305), + FRAC_CONST(0.68060099779545302), + FRAC_CONST(0.68179888892238183), + FRAC_CONST(0.6829949546685018), + FRAC_CONST(0.68418919183158522), + FRAC_CONST(0.68538159721429948), + FRAC_CONST(0.6865721676242168), + FRAC_CONST(0.68776089987382172), + FRAC_CONST(0.68894779078052026), + FRAC_CONST(0.69013283716664853), + FRAC_CONST(0.69131603585948032), + FRAC_CONST(0.69249738369123692), + FRAC_CONST(0.69367687749909468), + FRAC_CONST(0.69485451412519361), + FRAC_CONST(0.69603029041664599), + FRAC_CONST(0.6972042032255451), + FRAC_CONST(0.6983762494089728), + FRAC_CONST(0.69954642582900894), + FRAC_CONST(0.70071472935273893), + FRAC_CONST(0.70188115685226271), + FRAC_CONST(0.703045705204703), + FRAC_CONST(0.70420837129221303), + FRAC_CONST(0.70536915200198613), + FRAC_CONST(0.70652804422626281), + FRAC_CONST(0.70768504486233985), + FRAC_CONST(0.70884015081257845), + FRAC_CONST(0.70999335898441229), + FRAC_CONST(0.711144666290356), + FRAC_CONST(0.71229406964801356), + FRAC_CONST(0.71344156598008623), + FRAC_CONST(0.71458715221438096), + FRAC_CONST(0.71573082528381871), + FRAC_CONST(0.71687258212644234), + FRAC_CONST(0.7180124196854254), + FRAC_CONST(0.71915033490907943), + FRAC_CONST(0.72028632475086318), + FRAC_CONST(0.72142038616938997), + FRAC_CONST(0.72255251612843596), + FRAC_CONST(0.72368271159694852), + FRAC_CONST(0.72481096954905444), + FRAC_CONST(0.72593728696406756), + FRAC_CONST(0.72706166082649704), + FRAC_CONST(0.72818408812605595), + FRAC_CONST(0.72930456585766834), + FRAC_CONST(0.73042309102147851), + FRAC_CONST(0.73153966062285747), + FRAC_CONST(0.73265427167241282), + FRAC_CONST(0.73376692118599507), + FRAC_CONST(0.73487760618470677), + FRAC_CONST(0.73598632369490979), + FRAC_CONST(0.73709307074823405), + FRAC_CONST(0.73819784438158409), + FRAC_CONST(0.73930064163714881), + FRAC_CONST(0.74040145956240788), + FRAC_CONST(0.74150029521014049), + FRAC_CONST(0.74259714563843304), + FRAC_CONST(0.74369200791068657), + FRAC_CONST(0.74478487909562552), + FRAC_CONST(0.74587575626730485), + FRAC_CONST(0.74696463650511791), + FRAC_CONST(0.74805151689380456), + FRAC_CONST(0.74913639452345926), + FRAC_CONST(0.75021926648953785), + FRAC_CONST(0.75130012989286621), + FRAC_CONST(0.7523789818396478), + FRAC_CONST(0.75345581944147111), + FRAC_CONST(0.75453063981531809), + FRAC_CONST(0.75560344008357094), + FRAC_CONST(0.75667421737402052), + FRAC_CONST(0.7577429688198738), + FRAC_CONST(0.75880969155976163), + FRAC_CONST(0.75987438273774599), + FRAC_CONST(0.76093703950332836), + FRAC_CONST(0.76199765901145666), + FRAC_CONST(0.76305623842253345), + FRAC_CONST(0.76411277490242291), + FRAC_CONST(0.76516726562245885), + FRAC_CONST(0.76621970775945258), + FRAC_CONST(0.76727009849569949), + FRAC_CONST(0.76831843501898767), + FRAC_CONST(0.76936471452260458), + FRAC_CONST(0.77040893420534517), + FRAC_CONST(0.77145109127151923), + FRAC_CONST(0.77249118293095853), + FRAC_CONST(0.77352920639902467), + FRAC_CONST(0.77456515889661659), + FRAC_CONST(0.77559903765017746), + FRAC_CONST(0.7766308398917029), + FRAC_CONST(0.77766056285874774), + FRAC_CONST(0.77868820379443371), + FRAC_CONST(0.77971375994745684), + FRAC_CONST(0.78073722857209438), + FRAC_CONST(0.7817586069282132), + FRAC_CONST(0.78277789228127592), + FRAC_CONST(0.78379508190234881), + FRAC_CONST(0.78481017306810918), + FRAC_CONST(0.78582316306085265), + FRAC_CONST(0.78683404916849986), + FRAC_CONST(0.78784282868460476), + FRAC_CONST(0.78884949890836087), + FRAC_CONST(0.78985405714460888), + FRAC_CONST(0.7908565007038445), + FRAC_CONST(0.79185682690222425), + FRAC_CONST(0.79285503306157412), + FRAC_CONST(0.79385111650939566), + FRAC_CONST(0.79484507457887377), + FRAC_CONST(0.79583690460888357), + FRAC_CONST(0.79682660394399751), + FRAC_CONST(0.79781416993449272), + FRAC_CONST(0.79879959993635785), + FRAC_CONST(0.7997828913113002), + FRAC_CONST(0.80076404142675273), + FRAC_CONST(0.80174304765588156), + FRAC_CONST(0.80271990737759213), + FRAC_CONST(0.80369461797653707), + FRAC_CONST(0.80466717684312306), + FRAC_CONST(0.80563758137351682), + FRAC_CONST(0.80660582896965372), + FRAC_CONST(0.80757191703924336), + FRAC_CONST(0.80853584299577752), + FRAC_CONST(0.80949760425853612), + FRAC_CONST(0.81045719825259477), + FRAC_CONST(0.81141462240883167), + FRAC_CONST(0.81236987416393436), + FRAC_CONST(0.81332295096040608), + FRAC_CONST(0.81427385024657373), + FRAC_CONST(0.81522256947659355), + FRAC_CONST(0.81616910611045879), + FRAC_CONST(0.817113457614006), + FRAC_CONST(0.81805562145892186), + FRAC_CONST(0.81899559512275044), + FRAC_CONST(0.81993337608889916), + FRAC_CONST(0.82086896184664637), + FRAC_CONST(0.8218023498911472), + FRAC_CONST(0.82273353772344116), + FRAC_CONST(0.82366252285045805), + FRAC_CONST(0.82458930278502529), + FRAC_CONST(0.82551387504587381), + FRAC_CONST(0.82643623715764558), + FRAC_CONST(0.82735638665089983), + FRAC_CONST(0.82827432106211907), + FRAC_CONST(0.82919003793371693), + FRAC_CONST(0.83010353481404364), + FRAC_CONST(0.83101480925739324), + FRAC_CONST(0.83192385882400965), + FRAC_CONST(0.83283068108009373), + FRAC_CONST(0.8337352735978093), + FRAC_CONST(0.83463763395529011), + FRAC_CONST(0.83553775973664579), + FRAC_CONST(0.83643564853196872), + FRAC_CONST(0.83733129793734051), + FRAC_CONST(0.83822470555483797), + FRAC_CONST(0.83911586899254031), + FRAC_CONST(0.84000478586453453), + FRAC_CONST(0.84089145379092289), + FRAC_CONST(0.84177587039782842), + FRAC_CONST(0.84265803331740163), + FRAC_CONST(0.84353794018782702), + FRAC_CONST(0.844415588653329), + FRAC_CONST(0.8452909763641786), + FRAC_CONST(0.84616410097669936), + FRAC_CONST(0.84703496015327406), + FRAC_CONST(0.84790355156235053), + FRAC_CONST(0.84876987287844818), + FRAC_CONST(0.8496339217821639), + FRAC_CONST(0.85049569596017938), + FRAC_CONST(0.85135519310526508), + FRAC_CONST(0.85221241091628896), + FRAC_CONST(0.85306734709822085), + FRAC_CONST(0.85391999936213903), + FRAC_CONST(0.85477036542523732), + FRAC_CONST(0.85561844301082923), + FRAC_CONST(0.85646422984835635), + FRAC_CONST(0.85730772367339259), + FRAC_CONST(0.85814892222765116), + FRAC_CONST(0.85898782325899026), + FRAC_CONST(0.85982442452141961), + FRAC_CONST(0.86065872377510555), + FRAC_CONST(0.86149071878637817), + FRAC_CONST(0.8623204073277364), + FRAC_CONST(0.86314778717785412), + FRAC_CONST(0.8639728561215867), + FRAC_CONST(0.86479561194997623), + FRAC_CONST(0.86561605246025763), + FRAC_CONST(0.86643417545586487), + FRAC_CONST(0.8672499787464365), + FRAC_CONST(0.86806346014782154), + FRAC_CONST(0.8688746174820855), + FRAC_CONST(0.86968344857751589), + FRAC_CONST(0.87048995126862883), + FRAC_CONST(0.87129412339617363), + FRAC_CONST(0.87209596280713941), + FRAC_CONST(0.8728954673547612), + FRAC_CONST(0.87369263489852422), + FRAC_CONST(0.87448746330417149), + FRAC_CONST(0.87527995044370765), + FRAC_CONST(0.8760700941954066), + FRAC_CONST(0.87685789244381551), + FRAC_CONST(0.87764334307976144), + FRAC_CONST(0.87842644400035663), + FRAC_CONST(0.8792071931090043), + FRAC_CONST(0.87998558831540408), + FRAC_CONST(0.88076162753555787), + FRAC_CONST(0.88153530869177488), + FRAC_CONST(0.88230662971267804), + FRAC_CONST(0.88307558853320878), + FRAC_CONST(0.88384218309463292), + FRAC_CONST(0.8846064113445461), + FRAC_CONST(0.88536827123687933), + FRAC_CONST(0.88612776073190425), + FRAC_CONST(0.88688487779623937), + FRAC_CONST(0.88763962040285393), + FRAC_CONST(0.8883919865310751), + FRAC_CONST(0.88914197416659235), + FRAC_CONST(0.88988958130146301), + FRAC_CONST(0.8906348059341177), + FRAC_CONST(0.89137764606936609), + FRAC_CONST(0.89211809971840139), + FRAC_CONST(0.89285616489880615), + FRAC_CONST(0.89359183963455813), + FRAC_CONST(0.89432512195603453), + FRAC_CONST(0.89505600990001799), + FRAC_CONST(0.89578450150970124), + FRAC_CONST(0.8965105948346932), + FRAC_CONST(0.89723428793102367), + FRAC_CONST(0.89795557886114807), + FRAC_CONST(0.89867446569395382), + FRAC_CONST(0.89939094650476448), + FRAC_CONST(0.90010501937534515), + FRAC_CONST(0.900816682393908), + FRAC_CONST(0.90152593365511691), + FRAC_CONST(0.90223277126009283), + FRAC_CONST(0.90293719331641886), + FRAC_CONST(0.90363919793814496), + FRAC_CONST(0.90433878324579353), + FRAC_CONST(0.90503594736636439), + FRAC_CONST(0.90573068843333915), + FRAC_CONST(0.90642300458668679), + FRAC_CONST(0.90711289397286898), + FRAC_CONST(0.90780035474484411), + FRAC_CONST(0.90848538506207266), + FRAC_CONST(0.90916798309052227), + FRAC_CONST(0.90984814700267291), + FRAC_CONST(0.9105258749775208), + FRAC_CONST(0.91120116520058425), + FRAC_CONST(0.91187401586390815), + FRAC_CONST(0.91254442516606893), + FRAC_CONST(0.9132123913121788), + FRAC_CONST(0.91387791251389161), + FRAC_CONST(0.91454098698940678), + FRAC_CONST(0.91520161296347435), + FRAC_CONST(0.91585978866739981), + FRAC_CONST(0.91651551233904871), + FRAC_CONST(0.91716878222285148), + FRAC_CONST(0.91781959656980805), + FRAC_CONST(0.91846795363749245), + FRAC_CONST(0.91911385169005766), + FRAC_CONST(0.9197572889982405), + FRAC_CONST(0.9203982638393654), + FRAC_CONST(0.92103677449734989), + FRAC_CONST(0.92167281926270861), + FRAC_CONST(0.92230639643255874), + FRAC_CONST(0.92293750431062316), + FRAC_CONST(0.92356614120723612), + FRAC_CONST(0.92419230543934783), + FRAC_CONST(0.92481599533052783), + FRAC_CONST(0.92543720921097061), + FRAC_CONST(0.92605594541749991), + FRAC_CONST(0.92667220229357261), + FRAC_CONST(0.92728597818928349), + FRAC_CONST(0.9278972714613698), + FRAC_CONST(0.92850608047321548), + FRAC_CONST(0.9291124035948557), + FRAC_CONST(0.92971623920298097), + FRAC_CONST(0.93031758568094147), + FRAC_CONST(0.93091644141875196), + FRAC_CONST(0.93151280481309506), + FRAC_CONST(0.93210667426732674), + FRAC_CONST(0.93269804819147983), + FRAC_CONST(0.93328692500226818), + FRAC_CONST(0.93387330312309147), + FRAC_CONST(0.93445718098403896), + FRAC_CONST(0.93503855702189376), + FRAC_CONST(0.9356174296801375), + FRAC_CONST(0.93619379740895381), + FRAC_CONST(0.93676765866523259), + FRAC_CONST(0.93733901191257496), + FRAC_CONST(0.93790785562129597), + FRAC_CONST(0.93847418826842988), + FRAC_CONST(0.93903800833773399), + FRAC_CONST(0.93959931431969212), + FRAC_CONST(0.94015810471151917), + FRAC_CONST(0.94071437801716529), + FRAC_CONST(0.94126813274731924), + FRAC_CONST(0.94181936741941319), + FRAC_CONST(0.94236808055762578), + FRAC_CONST(0.94291427069288691), + FRAC_CONST(0.94345793636288133), + FRAC_CONST(0.94399907611205225), + FRAC_CONST(0.9445376884916058), + FRAC_CONST(0.94507377205951448), + FRAC_CONST(0.94560732538052128), + FRAC_CONST(0.94613834702614352), + FRAC_CONST(0.94666683557467624), + FRAC_CONST(0.94719278961119657), + FRAC_CONST(0.94771620772756759), + FRAC_CONST(0.94823708852244104), + FRAC_CONST(0.94875543060126255), + FRAC_CONST(0.94927123257627433), + FRAC_CONST(0.94978449306651924), + FRAC_CONST(0.95029521069784428), + FRAC_CONST(0.9508033841029051), + FRAC_CONST(0.95130901192116835), + FRAC_CONST(0.9518120927989161), + FRAC_CONST(0.95231262538924943), + FRAC_CONST(0.95281060835209208), + FRAC_CONST(0.95330604035419386), + FRAC_CONST(0.95379892006913403), + FRAC_CONST(0.95428924617732525), + FRAC_CONST(0.95477701736601728), + FRAC_CONST(0.95526223232929941), + FRAC_CONST(0.95574488976810545), + FRAC_CONST(0.95622498839021619), + FRAC_CONST(0.95670252691026292), + FRAC_CONST(0.95717750404973156), + FRAC_CONST(0.95764991853696524), + FRAC_CONST(0.95811976910716812), + FRAC_CONST(0.95858705450240911), + FRAC_CONST(0.95905177347162429), + FRAC_CONST(0.95951392477062125), + FRAC_CONST(0.95997350716208196), + FRAC_CONST(0.96043051941556579), + FRAC_CONST(0.96088496030751369), + FRAC_CONST(0.96133682862125036), + FRAC_CONST(0.96178612314698864), + FRAC_CONST(0.96223284268183173), + FRAC_CONST(0.9626769860297768), + FRAC_CONST(0.96311855200171881), + FRAC_CONST(0.96355753941545252), + FRAC_CONST(0.96399394709567654), + FRAC_CONST(0.96442777387399625), + FRAC_CONST(0.96485901858892686), + FRAC_CONST(0.96528768008589627), + FRAC_CONST(0.96571375721724895), + FRAC_CONST(0.96613724884224783), + FRAC_CONST(0.96655815382707866), + FRAC_CONST(0.96697647104485207), + FRAC_CONST(0.96739219937560694), + FRAC_CONST(0.96780533770631338), + FRAC_CONST(0.96821588493087585), + FRAC_CONST(0.9686238399501359), + FRAC_CONST(0.96902920167187501), + FRAC_CONST(0.96943196901081796), + FRAC_CONST(0.96983214088863534), + FRAC_CONST(0.9702297162339466), + FRAC_CONST(0.97062469398232287), + FRAC_CONST(0.97101707307629004), + FRAC_CONST(0.97140685246533098), + FRAC_CONST(0.97179403110588902), + FRAC_CONST(0.97217860796137046), + FRAC_CONST(0.97256058200214734), + FRAC_CONST(0.97293995220556007), + FRAC_CONST(0.97331671755592064), + FRAC_CONST(0.97369087704451474), + FRAC_CONST(0.97406242966960455), + FRAC_CONST(0.97443137443643235), + FRAC_CONST(0.97479771035722163), + FRAC_CONST(0.97516143645118103), + FRAC_CONST(0.97552255174450631), + FRAC_CONST(0.97588105527038305), + FRAC_CONST(0.97623694606898959), + FRAC_CONST(0.97659022318749911), + FRAC_CONST(0.97694088568008242), + FRAC_CONST(0.97728893260791039), + FRAC_CONST(0.97763436303915685), + FRAC_CONST(0.97797717604900047), + FRAC_CONST(0.97831737071962765), + FRAC_CONST(0.97865494614023485), + FRAC_CONST(0.97898990140703124), + FRAC_CONST(0.97932223562324061), + FRAC_CONST(0.97965194789910426), + FRAC_CONST(0.9799790373518833), + FRAC_CONST(0.98030350310586067), + FRAC_CONST(0.98062534429234405), + FRAC_CONST(0.98094456004966768), + FRAC_CONST(0.98126114952319499), + FRAC_CONST(0.98157511186532054), + FRAC_CONST(0.98188644623547261), + FRAC_CONST(0.98219515180011563), + FRAC_CONST(0.98250122773275184), + FRAC_CONST(0.98280467321392362), + FRAC_CONST(0.98310548743121629), + FRAC_CONST(0.98340366957925973), + FRAC_CONST(0.98369921885973044), + FRAC_CONST(0.98399213448135414), + FRAC_CONST(0.98428241565990748), + FRAC_CONST(0.98457006161822058), + FRAC_CONST(0.98485507158617835), + FRAC_CONST(0.98513744480072363), + FRAC_CONST(0.98541718050585803), + FRAC_CONST(0.98569427795264519), + FRAC_CONST(0.98596873639921168), + FRAC_CONST(0.98624055511074971), + FRAC_CONST(0.98650973335951875), + FRAC_CONST(0.98677627042484772), + FRAC_CONST(0.98704016559313645), + FRAC_CONST(0.98730141815785832), + FRAC_CONST(0.98756002741956173), + FRAC_CONST(0.9878159926858715), + FRAC_CONST(0.98806931327149194), + FRAC_CONST(0.98831998849820735), + FRAC_CONST(0.98856801769488489), + FRAC_CONST(0.98881340019747566), + FRAC_CONST(0.98905613534901682), + FRAC_CONST(0.98929622249963345), + FRAC_CONST(0.98953366100653983), + FRAC_CONST(0.98976845023404181), + FRAC_CONST(0.99000058955353776), + FRAC_CONST(0.99023007834352106), + FRAC_CONST(0.99045691598958097), + FRAC_CONST(0.99068110188440506), + FRAC_CONST(0.99090263542778001), + FRAC_CONST(0.99112151602659404), + FRAC_CONST(0.99133774309483769), + FRAC_CONST(0.99155131605360625), + FRAC_CONST(0.99176223433110056), + FRAC_CONST(0.99197049736262888), + FRAC_CONST(0.99217610459060845), + FRAC_CONST(0.99237905546456673), + FRAC_CONST(0.99257934944114334), + FRAC_CONST(0.99277698598409092), + FRAC_CONST(0.99297196456427694), + FRAC_CONST(0.99316428465968509), + FRAC_CONST(0.99335394575541669), + FRAC_CONST(0.99354094734369169), + FRAC_CONST(0.99372528892385081), + FRAC_CONST(0.99390697000235606), + FRAC_CONST(0.99408599009279242), + FRAC_CONST(0.99426234871586938), + FRAC_CONST(0.99443604539942176), + FRAC_CONST(0.99460707967841133), + FRAC_CONST(0.99477545109492771), + FRAC_CONST(0.99494115919819004), + FRAC_CONST(0.99510420354454787), + FRAC_CONST(0.99526458369748239), + FRAC_CONST(0.99542229922760772), + FRAC_CONST(0.99557734971267187), + FRAC_CONST(0.9957297347375581), + FRAC_CONST(0.99587945389428578), + FRAC_CONST(0.99602650678201154), + FRAC_CONST(0.99617089300703077), + FRAC_CONST(0.996312612182778), + FRAC_CONST(0.99645166392982831), + FRAC_CONST(0.99658804787589839), + FRAC_CONST(0.99672176365584741), + FRAC_CONST(0.99685281091167788), + FRAC_CONST(0.99698118929253687), + FRAC_CONST(0.99710689845471678), + FRAC_CONST(0.99722993806165661), + FRAC_CONST(0.99735030778394196), + FRAC_CONST(0.99746800729930707), + FRAC_CONST(0.99758303629263489), + FRAC_CONST(0.99769539445595812), + FRAC_CONST(0.99780508148846014), + FRAC_CONST(0.99791209709647588), + FRAC_CONST(0.99801644099349218), + FRAC_CONST(0.99811811290014918), + FRAC_CONST(0.9982171125442405), + FRAC_CONST(0.9983134396607144), + FRAC_CONST(0.99840709399167404), + FRAC_CONST(0.99849807528637868), + FRAC_CONST(0.99858638330124405), + FRAC_CONST(0.99867201779984294), + FRAC_CONST(0.99875497855290607), + FRAC_CONST(0.99883526533832245), + FRAC_CONST(0.99891287794114036), + FRAC_CONST(0.99898781615356746), + FRAC_CONST(0.99906007977497147), + FRAC_CONST(0.99912966861188113), + FRAC_CONST(0.99919658247798593), + FRAC_CONST(0.99926082119413751), + FRAC_CONST(0.99932238458834954), + FRAC_CONST(0.999381272495798), + FRAC_CONST(0.99943748475882255), + FRAC_CONST(0.9994910212269259), + FRAC_CONST(0.99954188175677483), + FRAC_CONST(0.99959006621220048), + FRAC_CONST(0.99963557446419837), + FRAC_CONST(0.99967840639092931), + FRAC_CONST(0.99971856187771946), + FRAC_CONST(0.99975604081706027), + FRAC_CONST(0.99979084310860955), + FRAC_CONST(0.99982296865919107), + FRAC_CONST(0.99985241738279484), + FRAC_CONST(0.99987918920057806), + FRAC_CONST(0.99990328404086426), + FRAC_CONST(0.9999247018391445), + FRAC_CONST(0.99994344253807688), + FRAC_CONST(0.99995950608748674), + FRAC_CONST(0.99997289244436727), + FRAC_CONST(0.99998360157287902), + FRAC_CONST(0.9999916334443506), + FRAC_CONST(0.99999698803727821), + FRAC_CONST(0.99999966533732598) }; #endif -#else - -real_t sine_long_1024[] = +ALIGN static const real_t sine_short_128[] = { - 0x3243F, - 0x96CBD, - 0xFB53A, - 0x15FDB5, - 0x1C462C, - 0x228E9E, - 0x28D70C, - 0x2F1F73, - 0x3567D2, - 0x3BB02A, - 0x41F878, - 0x4840BD, - 0x4E88F6, - 0x54D123, - 0x5B1942, - 0x616154, - 0x67A957, - 0x6DF14A, - 0x74392C, - 0x7A80FC, - 0x80C8B9, - 0x871062, - 0x8D57F6, - 0x939F75, - 0x99E6DC, - 0xA02E2C, - 0xA67564, - 0xACBC81, - 0xB30385, - 0xB94A6C, - 0xBF9137, - 0xC5D7E4, - 0xCC1E73, - 0xD264E2, - 0xD8AB31, - 0xDEF15F, - 0xE5376A, - 0xEB7D51, - 0xF1C315, - 0xF808B3, - 0xFE4E2B, - 0x104937C, - 0x10AD8A4, - 0x1111DA3, - 0x1176279, - 0x11DA723, - 0x123EBA1, - 0x12A2FF2, - 0x1307415, - 0x136B809, - 0x13CFBCD, - 0x1433F61, - 0x14982C2, - 0x14FC5F1, - 0x15608EC, - 0x15C4BB2, - 0x1628E42, - 0x168D09C, - 0x16F12BE, - 0x17554A8, - 0x17B9658, - 0x181D7CD, - 0x1881907, - 0x18E5A04, - 0x1949AC4, - 0x19ADB46, - 0x1A11B88, - 0x1A75B8A, - 0x1AD9B4B, - 0x1B3DAC9, - 0x1BA1A04, - 0x1C058FB, - 0x1C697AD, - 0x1CCD619, - 0x1D3143D, - 0x1D9521A, - 0x1DF8FAE, - 0x1E5CCF7, - 0x1EC09F6, - 0x1F246A9, - 0x1F8830F, - 0x1FEBF27, - 0x204FAF1, - 0x20B366B, - 0x2117194, - 0x217AC6B, - 0x21DE6F0, - 0x2242121, - 0x22A5AFE, - 0x2309485, - 0x236CDB6, - 0x23D0690, - 0x2433F11, - 0x2497738, - 0x24FAF06, - 0x255E678, - 0x25C1D8E, - 0x2625447, - 0x2688AA1, - 0x26EC09D, - 0x274F638, - 0x27B2B73, - 0x281604C, - 0x28794C1, - 0x28DC8D3, - 0x293FC80, - 0x29A2FC7, - 0x2A062A8, - 0x2A69521, - 0x2ACC731, - 0x2B2F8D8, - 0x2B92A14, - 0x2BF5AE4, - 0x2C58B48, - 0x2CBBB3F, - 0x2D1EAC7, - 0x2D819E0, - 0x2DE4889, - 0x2E476C0, - 0x2EAA485, - 0x2F0D1D7, - 0x2F6FEB5, - 0x2FD2B1E, - 0x3035711, - 0x309828D, - 0x30FAD91, - 0x315D81C, - 0x31C022E, - 0x3222BC4, - 0x32854DF, - 0x32E7D7E, - 0x334A59E, - 0x33ACD41, - 0x340F463, - 0x3471B05, - 0x34D4126, - 0x35366C5, - 0x3598BE0, - 0x35FB077, - 0x365D488, - 0x36BF814, - 0x3721B18, - 0x3783D95, - 0x37E5F88, - 0x38480F2, - 0x38AA1D1, - 0x390C223, - 0x396E1EA, - 0x39D0122, - 0x3A31FCC, - 0x3A93DE6, - 0x3AF5B70, - 0x3B57868, - 0x3BB94CD, - 0x3C1B0A0, - 0x3C7CBDE, - 0x3CDE687, - 0x3D40099, - 0x3DA1A15, - 0x3E032F8, - 0x3E64B43, - 0x3EC62F3, - 0x3F27A09, - 0x3F89083, - 0x3FEA660, - 0x404BB9F, - 0x40AD03F, - 0x410E441, - 0x416F7A1, - 0x41D0A60, - 0x4231C7D, - 0x4292DF6, - 0x42F3ECB, - 0x4354EFB, - 0x43B5E85, - 0x4416D68, - 0x4477BA2, - 0x44D8934, - 0x453961C, - 0x459A259, - 0x45FADEB, - 0x465B8CF, - 0x46BC306, - 0x471CC8F, - 0x477D568, - 0x47DDD91, - 0x483E508, - 0x489EBCD, - 0x48FF1DF, - 0x495F73D, - 0x49BFBE6, - 0x4A1FFD8, - 0x4A80314, - 0x4AE0598, - 0x4B40764, - 0x4BA0875, - 0x4C008CD, - 0x4C60868, - 0x4CC0747, - 0x4D20569, - 0x4D802CC, - 0x4DDFF70, - 0x4E3FB54, - 0x4E9F677, - 0x4EFF0D8, - 0x4F5EA76, - 0x4FBE351, - 0x501DB66, - 0x507D2B6, - 0x50DC93F, - 0x513BF01, - 0x519B3FA, - 0x51FA82A, - 0x5259B8F, - 0x52B8E2A, - 0x5317FF8, - 0x53770F9, - 0x53D612D, - 0x5435091, - 0x5493F26, - 0x54F2CEA, - 0x55519DC, - 0x55B05FC, - 0x560F149, - 0x566DBC1, - 0x56CC564, - 0x572AE30, - 0x5789626, - 0x57E7D44, - 0x5846388, - 0x58A48F3, - 0x5902D84, - 0x5961138, - 0x59BF410, - 0x5A1D60B, - 0x5A7B727, - 0x5AD9764, - 0x5B376C1, - 0x5B9553D, - 0x5BF32D6, - 0x5C50F8D, - 0x5CAEB60, - 0x5D0C64F, - 0x5D6A058, - 0x5DC797A, - 0x5E251B5, - 0x5E82908, - 0x5EDFF71, - 0x5F3D4F1, - 0x5F9A985, - 0x5FF7D2E, - 0x6054FE9, - 0x60B21B8, - 0x610F297, - 0x616C287, - 0x61C9187, - 0x6225F95, - 0x6282CB1, - 0x62DF8DA, - 0x633C40F, - 0x6398E4F, - 0x63F579A, - 0x6451FEE, - 0x64AE74A, - 0x650ADAE, - 0x6567319, - 0x65C3789, - 0x661FAFE, - 0x667BD78, - 0x66D7EF4, - 0x6733F73, - 0x678FEF3, - 0x67EBD74, - 0x6847AF4, - 0x68A3772, - 0x68FF2EF, - 0x695AD69, - 0x69B66DE, - 0x6A11F4F, - 0x6A6D6BA, - 0x6AC8D1F, - 0x6B2427C, - 0x6B7F6D0, - 0x6BDAA1C, - 0x6C35C5D, - 0x6C90D93, - 0x6CEBDBE, - 0x6D46CDB, - 0x6DA1AEB, - 0x6DFC7ED, - 0x6E573DF, - 0x6EB1EC1, - 0x6F0C891, - 0x6F67150, - 0x6FC18FC, - 0x701BF94, - 0x7076518, - 0x70D0986, - 0x712ACDD, - 0x7184F1E, - 0x71DF046, - 0x7239055, - 0x7292F4B, - 0x72ECD26, - 0x73469E5, - 0x73A0588, - 0x73FA00D, - 0x7453975, - 0x74AD1BD, - 0x75068E6, - 0x755FEED, - 0x75B93D3, - 0x7612797, - 0x766BA37, - 0x76C4BB3, - 0x771DC0A, - 0x7776B3C, - 0x77CF946, - 0x7828629, - 0x78811E3, - 0x78D9C74, - 0x79325DB, - 0x798AE16, - 0x79E3526, - 0x7A3BB09, - 0x7A93FBF, - 0x7AEC346, - 0x7B4459E, - 0x7B9C6C5, - 0x7BF46BC, - 0x7C4C581, - 0x7CA4313, - 0x7CFBF71, - 0x7D53A9B, - 0x7DAB490, - 0x7E02D4F, - 0x7E5A4D7, - 0x7EB1B27, - 0x7F0903F, - 0x7F6041D, - 0x7FB76C0, - 0x800E829, - 0x8065856, - 0x80BC746, - 0x81134F8, - 0x816A16C, - 0x81C0CA0, - 0x8217694, - 0x826DF48, - 0x82C46B9, - 0x831ACE8, - 0x83711D3, - 0x83C757A, - 0x841D7DC, - 0x84738F8, - 0x84C98CD, - 0x851F75B, - 0x85754A0, - 0x85CB09B, - 0x8620B4D, - 0x86764B4, - 0x86CBCCE, - 0x872139D, - 0x877691D, - 0x87CBD50, - 0x8821034, - 0x88761C7, - 0x88CB20A, - 0x89200FC, - 0x8974E9B, - 0x89C9AE7, - 0x8A1E5DE, - 0x8A72F82, - 0x8AC77CF, - 0x8B1BEC6, - 0x8B70466, - 0x8BC48AE, - 0x8C18B9D, - 0x8C6CD32, - 0x8CC0D6D, - 0x8D14C4C, - 0x8D689D0, - 0x8DBC5F6, - 0x8E100BF, - 0x8E63A29, - 0x8EB7234, - 0x8F0A8DF, - 0x8F5DE29, - 0x8FB1211, - 0x9004496, - 0x90575B9, - 0x90AA577, - 0x90FD3D0, - 0x91500C3, - 0x91A2C50, - 0x91F5675, - 0x9247F33, - 0x929A687, - 0x92ECC72, - 0x933F0F2, - 0x9391407, - 0x93E35AF, - 0x94355EB, - 0x94874B9, - 0x94D9219, - 0x952AE09, - 0x957C88A, - 0x95CE199, - 0x961F937, - 0x9670F62, - 0x96C241B, - 0x971375F, - 0x976492E, - 0x97B5988, - 0x980686C, - 0x98575D8, - 0x98A81CD, - 0x98F8C49, - 0x994954C, - 0x9999CD4, - 0x99EA2E1, - 0x9A3A773, - 0x9A8AA88, - 0x9ADAC1F, - 0x9B2AC39, - 0x9B7AAD4, - 0x9BCA7EF, - 0x9C1A389, - 0x9C69DA3, - 0x9CB963A, - 0x9D08D4F, - 0x9D582E1, - 0x9DA76EE, - 0x9DF6976, - 0x9E45A79, - 0x9E949F5, - 0x9EE37E9, - 0x9F32456, - 0x9F80F3A, - 0x9FCF894, - 0xA01E064, - 0xA06C6A9, - 0xA0BAB62, - 0xA108E8E, - 0xA15702D, - 0xA1A503E, - 0xA1F2EC0, - 0xA240BB3, - 0xA28E715, - 0xA2DC0E6, - 0xA329925, - 0xA376FD2, - 0xA3C44EC, - 0xA411871, - 0xA45EA61, - 0xA4ABABC, - 0xA4F8981, - 0xA5456AE, - 0xA592244, - 0xA5DEC41, - 0xA62B4A5, - 0xA677B6F, - 0xA6C409E, - 0xA710432, - 0xA75C62A, - 0xA7A8684, - 0xA7F4541, - 0xA840260, - 0xA88BDDF, - 0xA8D77BE, - 0xA922FFD, - 0xA96E69B, - 0xA9B9B96, - 0xAA04EEF, - 0xAA500A4, - 0xAA9B0B5, - 0xAAE5F21, - 0xAB30BE8, - 0xAB7B707, - 0xABC6080, - 0xAC10851, - 0xAC5AE7A, - 0xACA52F9, - 0xACEF5CE, - 0xAD396F9, - 0xAD83678, - 0xADCD44B, - 0xAE17071, - 0xAE60AE9, - 0xAEAA3B4, - 0xAEF3ACF, - 0xAF3D03B, - 0xAF863F6, - 0xAFCF600, - 0xB018658, - 0xB0614FE, - 0xB0AA1F1, - 0xB0F2D30, - 0xB13B6BA, - 0xB183E8F, - 0xB1CC4AE, - 0xB214916, - 0xB25CBC7, - 0xB2A4CC0, - 0xB2ECBFF, - 0xB334986, - 0xB37C552, - 0xB3C3F64, - 0xB40B7B9, - 0xB452E53, - 0xB49A330, - 0xB4E164F, - 0xB5287AF, - 0xB56F751, - 0xB5B6533, - 0xB5FD155, - 0xB643BB6, - 0xB68A455, - 0xB6D0B31, - 0xB71704B, - 0xB75D3A0, - 0xB7A3532, - 0xB7E94FE, - 0xB82F304, - 0xB874F44, - 0xB8BA9BD, - 0xB90026E, - 0xB945957, - 0xB98AE76, - 0xB9D01CC, - 0xBA15357, - 0xBA5A317, - 0xBA9F10B, - 0xBAE3D33, - 0xBB2878D, - 0xBB6D01A, - 0xBBB16D9, - 0xBBF5BC8, - 0xBC39EE7, - 0xBC7E036, - 0xBCC1FB4, - 0xBD05D60, - 0xBD4993A, - 0xBD8D341, - 0xBDD0B74, - 0xBE141D3, - 0xBE5765C, - 0xBE9A910, - 0xBEDD9EE, - 0xBF208F5, - 0xBF63624, - 0xBFA617B, - 0xBFE8AF9, - 0xC02B29E, - 0xC06D868, - 0xC0AFC58, - 0xC0F1E6C, - 0xC133EA4, - 0xC175D00, - 0xC1B797E, - 0xC1F941E, - 0xC23ACDF, - 0xC27C3C2, - 0xC2BD8C4, - 0xC2FEBE6, - 0xC33FD27, - 0xC380C86, - 0xC3C1A02, - 0xC40259C, - 0xC442F52, - 0xC483724, - 0xC4C3D10, - 0xC504118, - 0xC544339, - 0xC584373, - 0xC5C41C7, - 0xC603E32, - 0xC6438B4, - 0xC68314E, - 0xC6C27FD, - 0xC701CC2, - 0xC740F9D, - 0xC78008B, - 0xC7BEF8D, - 0xC7FDCA3, - 0xC83C7CB, - 0xC87B104, - 0xC8B9850, - 0xC8F7DAC, - 0xC936118, - 0xC974293, - 0xC9B221E, - 0xC9EFFB7, - 0xCA2DB5D, - 0xCA6B511, - 0xCAA8CD1, - 0xCAE629E, - 0xCB23675, - 0xCB60858, - 0xCB9D844, - 0xCBDA63A, - 0xCC1723A, - 0xCC53C41, - 0xCC90451, - 0xCCCCA67, - 0xCD08E85, - 0xCD450A8, - 0xCD810D1, - 0xCDBCEFF, - 0xCDF8B32, - 0xCE34568, - 0xCE6FDA1, - 0xCEAB3DD, - 0xCEE681B, - 0xCF21A5A, - 0xCF5CA9B, - 0xCF978DC, - 0xCFD251C, - 0xD00CF5C, - 0xD04779A, - 0xD081DD7, - 0xD0BC211, - 0xD0F6448, - 0xD13047C, - 0xD16A2AB, - 0xD1A3ED5, - 0xD1DD8FB, - 0xD21711A, - 0xD250733, - 0xD289B46, - 0xD2C2D50, - 0xD2FBD53, - 0xD334B4D, - 0xD36D73E, - 0xD3A6125, - 0xD3DE902, - 0xD416ED5, - 0xD44F29C, - 0xD487457, - 0xD4BF406, - 0xD4F71A7, - 0xD52ED3C, - 0xD5666C2, - 0xD59DE3A, - 0xD5D53A3, - 0xD60C6FC, - 0xD643845, - 0xD67A77D, - 0xD6B14A4, - 0xD6E7FB9, - 0xD71E8BC, - 0xD754FAD, - 0xD78B48A, - 0xD7C1753, - 0xD7F7808, - 0xD82D6A8, - 0xD863332, - 0xD898DA7, - 0xD8CE605, - 0xD903C4C, - 0xD93907C, - 0xD96E294, - 0xD9A3293, - 0xD9D8079, - 0xDA0CC46, - 0xDA415F9, - 0xDA75D91, - 0xDAAA30E, - 0xDADE670, - 0xDB127B6, - 0xDB466DF, - 0xDB7A3EB, - 0xDBADEDA, - 0xDBE17AA, - 0xDC14E5C, - 0xDC482EF, - 0xDC7B562, - 0xDCAE5B6, - 0xDCE13E9, - 0xDD13FFB, - 0xDD469EB, - 0xDD791B9, - 0xDDAB765, - 0xDDDDAEE, - 0xDE0FC54, - 0xDE41B96, - 0xDE738B3, - 0xDEA53AB, - 0xDED6C7E, - 0xDF0832C, - 0xDF397B3, - 0xDF6AA13, - 0xDF9BA4C, - 0xDFCC85D, - 0xDFFD446, - 0xE02DE06, - 0xE05E59D, - 0xE08EB0A, - 0xE0BEE4E, - 0xE0EEF67, - 0xE11EE55, - 0xE14EB17, - 0xE17E5AE, - 0xE1ADE18, - 0xE1DD455, - 0xE20C865, - 0xE23BA47, - 0xE26A9FB, - 0xE299781, - 0xE2C82D7, - 0xE2F6BFE, - 0xE3252F4, - 0xE3537BB, - 0xE381A50, - 0xE3AFAB4, - 0xE3DD8E6, - 0xE40B4E6, - 0xE438EB3, - 0xE46664D, - 0xE493BB4, - 0xE4C0EE7, - 0xE4EDFE5, - 0xE51AEAE, - 0xE547B42, - 0xE5745A0, - 0xE5A0DC9, - 0xE5CD3BA, - 0xE5F9775, - 0xE6258F8, - 0xE651843, - 0xE67D556, - 0xE6A9030, - 0xE6D48D1, - 0xE6FFF39, - 0xE72B366, - 0xE75655A, - 0xE781512, - 0xE7AC28F, - 0xE7D6DD1, - 0xE8016D6, - 0xE82BD9F, - 0xE85622C, - 0xE88047B, - 0xE8AA48C, - 0xE8D425F, - 0xE8FDDF4, - 0xE92774A, - 0xE950E60, - 0xE97A337, - 0xE9A35CE, - 0xE9CC624, - 0xE9F5439, - 0xEA1E00E, - 0xEA469A0, - 0xEA6F0F0, - 0xEA975FE, - 0xEABF8CA, - 0xEAE7952, - 0xEB0F796, - 0xEB37396, - 0xEB5ED52, - 0xEB864C9, - 0xEBAD9FC, - 0xEBD4CE8, - 0xEBFBD8F, - 0xEC22BEF, - 0xEC49809, - 0xEC701DC, - 0xEC96967, - 0xECBCEAB, - 0xECE31A6, - 0xED09259, - 0xED2F0C3, - 0xED54CE4, - 0xED7A6BC, - 0xED9FE49, - 0xEDC538C, - 0xEDEA685, - 0xEE0F732, - 0xEE34594, - 0xEE591AA, - 0xEE7DB74, - 0xEEA22F2, - 0xEEC6823, - 0xEEEAB06, - 0xEF0EB9D, - 0xEF329E5, - 0xEF565DF, - 0xEF79F8B, - 0xEF9D6E7, - 0xEFC0BF5, - 0xEFE3EB3, - 0xF006F21, - 0xF029D3F, - 0xF04C90C, - 0xF06F288, - 0xF0919B3, - 0xF0B3E8D, - 0xF0D6114, - 0xF0F8149, - 0xF119F2C, - 0xF13BABC, - 0xF15D3F9, - 0xF17EAE2, - 0xF19FF77, - 0xF1C11B8, - 0xF1E21A4, - 0xF202F3C, - 0xF223A7F, - 0xF24436C, - 0xF264A03, - 0xF284E44, - 0xF2A502F, - 0xF2C4FC3, - 0xF2E4D01, - 0xF3047E6, - 0xF324075, - 0xF3436AB, - 0xF362A89, - 0xF381C0F, - 0xF3A0B3B, - 0xF3BF80F, - 0xF3DE289, - 0xF3FCAAA, - 0xF41B070, - 0xF4393DC, - 0xF4574EE, - 0xF4753A4, - 0xF493000, - 0xF4B0A00, - 0xF4CE1A4, - 0xF4EB6EC, - 0xF5089D8, - 0xF525A67, - 0xF54289A, - 0xF55F46F, - 0xF57BDE7, - 0xF598501, - 0xF5B49BD, - 0xF5D0C1B, - 0xF5ECC1A, - 0xF6089BB, - 0xF6244FD, - 0xF63FDDF, - 0xF65B461, - 0xF676884, - 0xF691A47, - 0xF6AC9A9, - 0xF6C76AA, - 0xF6E214B, - 0xF6FC98B, - 0xF716F69, - 0xF7312E5, - 0xF74B400, - 0xF7652B8, - 0xF77EF0E, - 0xF798901, - 0xF7B2092, - 0xF7CB5BF, - 0xF7E4888, - 0xF7FD8EF, - 0xF8166F1, - 0xF82F28F, - 0xF847BC9, - 0xF86029E, - 0xF87870E, - 0xF890919, - 0xF8A88BF, - 0xF8C05FF, - 0xF8D80DA, - 0xF8EF94E, - 0xF906F5D, - 0xF91E305, - 0xF935446, - 0xF94C320, - 0xF962F93, - 0xF97999F, - 0xF990144, - 0xF9A6680, - 0xF9BC955, - 0xF9D29C1, - 0xF9E87C5, - 0xF9FE360, - 0xFA13C93, - 0xFA2935C, - 0xFA3E7BC, - 0xFA539B3, - 0xFA68940, - 0xFA7D663, - 0xFA9211D, - 0xFAA696C, - 0xFABAF50, - 0xFACF2CA, - 0xFAE33D9, - 0xFAF727D, - 0xFB0AEB5, - 0xFB1E883, - 0xFB31FE4, - 0xFB454DA, - 0xFB58764, - 0xFB6B782, - 0xFB7E533, - 0xFB91078, - 0xFBA3950, - 0xFBB5FBB, - 0xFBC83B9, - 0xFBDA54A, - 0xFBEC46E, - 0xFBFE124, - 0xFC0FB6C, - 0xFC21346, - 0xFC328B2, - 0xFC43BB0, - 0xFC54C3F, - 0xFC65A60, - 0xFC76612, - 0xFC86F55, - 0xFC97629, - 0xFCA7A8D, - 0xFCB7C83, - 0xFCC7C08, - 0xFCD791F, - 0xFCE73C5, - 0xFCF6BFB, - 0xFD061C1, - 0xFD15517, - 0xFD245FC, - 0xFD33471, - 0xFD42074, - 0xFD50A07, - 0xFD5F129, - 0xFD6D5DA, - 0xFD7B81A, - 0xFD897E8, - 0xFD97544, - 0xFDA502F, - 0xFDB28A8, - 0xFDBFEAF, - 0xFDCD244, - 0xFDDA366, - 0xFDE7217, - 0xFDF3E54, - 0xFE00820, - 0xFE0CF78, - 0xFE1945E, - 0xFE256D0, - 0xFE316D0, - 0xFE3D45C, - 0xFE48F75, - 0xFE5481B, - 0xFE5FE4D, - 0xFE6B20C, - 0xFE76356, - 0xFE8122D, - 0xFE8BE90, - 0xFE9687F, - 0xFEA0FFA, - 0xFEAB500, - 0xFEB5792, - 0xFEBF7AF, - 0xFEC9558, - 0xFED308D, - 0xFEDC94C, - 0xFEE5F97, - 0xFEEF36D, - 0xFEF84CE, - 0xFF013B9, - 0xFF0A030, - 0xFF12A31, - 0xFF1B1BD, - 0xFF236D3, - 0xFF2B974, - 0xFF3399F, - 0xFF3B754, - 0xFF43294, - 0xFF4AB5E, - 0xFF521B2, - 0xFF59590, - 0xFF606F8, - 0xFF675EA, - 0xFF6E266, - 0xFF74C6B, - 0xFF7B3FA, - 0xFF81913, - 0xFF87BB5, - 0xFF8DBE1, - 0xFF93996, - 0xFF994D5, - 0xFF9ED9D, - 0xFFA43EE, - 0xFFA97C9, - 0xFFAE92D, - 0xFFB3819, - 0xFFB848F, - 0xFFBCE8E, - 0xFFC1616, - 0xFFC5B27, - 0xFFC9DC1, - 0xFFCDDE3, - 0xFFD1B8F, - 0xFFD56C3, - 0xFFD8F80, - 0xFFDC5C6, - 0xFFDF994, - 0xFFE2AEB, - 0xFFE59CB, - 0xFFE8633, - 0xFFEB024, - 0xFFED79E, - 0xFFEFCA0, - 0xFFF1F2A, - 0xFFF3F3D, - 0xFFF5CD9, - 0xFFF77FC, - 0xFFF90A9, - 0xFFFA6DD, - 0xFFFBA9B, - 0xFFFCBE0, - 0xFFFDAAE, - 0xFFFE704, - 0xFFFF0E3, - 0xFFFF84A, - 0xFFFFD39, - 0xFFFFFB1 + FRAC_CONST(0.0061358846491544753), + FRAC_CONST(0.01840672990580482), + FRAC_CONST(0.030674803176636626), + FRAC_CONST(0.04293825693494082), + FRAC_CONST(0.055195244349689934), + FRAC_CONST(0.067443919563664051), + FRAC_CONST(0.079682437971430126), + FRAC_CONST(0.091908956497132724), + FRAC_CONST(0.10412163387205459), + FRAC_CONST(0.11631863091190475), + FRAC_CONST(0.12849811079379317), + FRAC_CONST(0.14065823933284921), + FRAC_CONST(0.15279718525844344), + FRAC_CONST(0.16491312048996989), + FRAC_CONST(0.17700422041214875), + FRAC_CONST(0.18906866414980619), + FRAC_CONST(0.2011046348420919), + FRAC_CONST(0.21311031991609136), + FRAC_CONST(0.22508391135979283), + FRAC_CONST(0.2370236059943672), + FRAC_CONST(0.24892760574572015), + FRAC_CONST(0.26079411791527551), + FRAC_CONST(0.27262135544994898), + FRAC_CONST(0.28440753721127188), + FRAC_CONST(0.29615088824362379), + FRAC_CONST(0.30784964004153487), + FRAC_CONST(0.31950203081601569), + FRAC_CONST(0.33110630575987643), + FRAC_CONST(0.34266071731199438), + FRAC_CONST(0.35416352542049034), + FRAC_CONST(0.36561299780477385), + FRAC_CONST(0.37700741021641826), + FRAC_CONST(0.38834504669882625), + FRAC_CONST(0.39962419984564679), + FRAC_CONST(0.41084317105790391), + FRAC_CONST(0.42200027079979968), + FRAC_CONST(0.43309381885315196), + FRAC_CONST(0.4441221445704292), + FRAC_CONST(0.45508358712634384), + FRAC_CONST(0.46597649576796618), + FRAC_CONST(0.47679923006332209), + FRAC_CONST(0.487550160148436), + FRAC_CONST(0.49822766697278187), + FRAC_CONST(0.50883014254310699), + FRAC_CONST(0.51935599016558964), + FRAC_CONST(0.52980362468629461), + FRAC_CONST(0.54017147272989285), + FRAC_CONST(0.55045797293660481), + FRAC_CONST(0.56066157619733603), + FRAC_CONST(0.57078074588696726), + FRAC_CONST(0.58081395809576453), + FRAC_CONST(0.59075970185887416), + FRAC_CONST(0.60061647938386897), + FRAC_CONST(0.61038280627630948), + FRAC_CONST(0.6200572117632891), + FRAC_CONST(0.62963823891492698), + FRAC_CONST(0.63912444486377573), + FRAC_CONST(0.64851440102211244), + FRAC_CONST(0.65780669329707864), + FRAC_CONST(0.66699992230363747), + FRAC_CONST(0.67609270357531592), + FRAC_CONST(0.68508366777270036), + FRAC_CONST(0.693971460889654), + FRAC_CONST(0.7027547444572253), + FRAC_CONST(0.71143219574521643), + FRAC_CONST(0.72000250796138165), + FRAC_CONST(0.7284643904482252), + FRAC_CONST(0.73681656887736979), + FRAC_CONST(0.74505778544146595), + FRAC_CONST(0.75318679904361241), + FRAC_CONST(0.76120238548426178), + FRAC_CONST(0.76910333764557959), + FRAC_CONST(0.77688846567323244), + FRAC_CONST(0.78455659715557524), + FRAC_CONST(0.79210657730021239), + FRAC_CONST(0.79953726910790501), + FRAC_CONST(0.80684755354379922), + FRAC_CONST(0.8140363297059483), + FRAC_CONST(0.82110251499110465), + FRAC_CONST(0.8280450452577558), + FRAC_CONST(0.83486287498638001), + FRAC_CONST(0.84155497743689833), + FRAC_CONST(0.84812034480329712), + FRAC_CONST(0.85455798836540053), + FRAC_CONST(0.86086693863776731), + FRAC_CONST(0.86704624551569265), + FRAC_CONST(0.87309497841829009), + FRAC_CONST(0.87901222642863341), + FRAC_CONST(0.88479709843093779), + FRAC_CONST(0.89044872324475788), + FRAC_CONST(0.89596624975618511), + FRAC_CONST(0.90134884704602203), + FRAC_CONST(0.90659570451491533), + FRAC_CONST(0.91170603200542988), + FRAC_CONST(0.9166790599210427), + FRAC_CONST(0.9215140393420419), + FRAC_CONST(0.92621024213831127), + FRAC_CONST(0.93076696107898371), + FRAC_CONST(0.9351835099389475), + FRAC_CONST(0.93945922360218992), + FRAC_CONST(0.94359345816196039), + FRAC_CONST(0.94758559101774109), + FRAC_CONST(0.95143502096900834), + FRAC_CONST(0.95514116830577067), + FRAC_CONST(0.9587034748958716), + FRAC_CONST(0.96212140426904158), + FRAC_CONST(0.9653944416976894), + FRAC_CONST(0.96852209427441727), + FRAC_CONST(0.97150389098625178), + FRAC_CONST(0.97433938278557586), + FRAC_CONST(0.97702814265775439), + FRAC_CONST(0.97956976568544052), + FRAC_CONST(0.98196386910955524), + FRAC_CONST(0.98421009238692903), + FRAC_CONST(0.98630809724459867), + FRAC_CONST(0.98825756773074946), + FRAC_CONST(0.99005821026229712), + FRAC_CONST(0.99170975366909953), + FRAC_CONST(0.9932119492347945), + FRAC_CONST(0.99456457073425542), + FRAC_CONST(0.99576741446765982), + FRAC_CONST(0.99682029929116567), + FRAC_CONST(0.99772306664419164), + FRAC_CONST(0.99847558057329477), + FRAC_CONST(0.99907772775264536), + FRAC_CONST(0.99952941750109314), + FRAC_CONST(0.9998305817958234), + FRAC_CONST(0.99998117528260111) }; -real_t sine_long_960[] = { - 0x359DD, - 0xA0D97, - 0x10C14F, - 0x177504, - 0x1E28B5, - 0x24DC61, - 0x2B9006, - 0x3243A4, - 0x38F738, - 0x3FAAC3, - 0x465E43, - 0x4D11B6, - 0x53C51C, - 0x5A7873, - 0x612BBA, - 0x67DEF0, - 0x6E9214, - 0x754525, - 0x7BF821, - 0x82AB07, - 0x895DD6, - 0x90108E, - 0x96C32B, - 0x9D75AF, - 0xA42817, - 0xAADA62, - 0xB18C8F, - 0xB83E9D, - 0xBEF08A, - 0xC5A256, - 0xCC5400, - 0xD30585, - 0xD9B6E6, - 0xE06820, - 0xE71933, - 0xEDCA1D, - 0xF47ADE, - 0xFB2B74, - 0x101DBDD, - 0x1088C1A, - 0x10F3C28, - 0x115EC06, - 0x11C9BB4, - 0x1234B30, - 0x129FA78, - 0x130A98D, - 0x137586C, - 0x13E0714, - 0x144B584, - 0x14B63BC, - 0x15211B9, - 0x158BF7B, - 0x15F6D01, - 0x1661A49, - 0x16CC752, - 0x173741B, - 0x17A20A3, - 0x180CCE8, - 0x18778EA, - 0x18E24A7, - 0x194D01F, - 0x19B7B4F, - 0x1A22638, - 0x1A8D0D6, - 0x1AF7B2B, - 0x1B62533, - 0x1BCCEEF, - 0x1C3785D, - 0x1CA217B, - 0x1D0CA49, - 0x1D772C6, - 0x1DE1AF0, - 0x1E4C2C6, - 0x1EB6A47, - 0x1F21171, - 0x1F8B844, - 0x1FF5EBF, - 0x20604E0, - 0x20CAAA6, - 0x2135010, - 0x219F51D, - 0x22099CB, - 0x2273E1A, - 0x22DE208, - 0x2348595, - 0x23B28BE, - 0x241CB83, - 0x2486DE3, - 0x24F0FDC, - 0x255B16D, - 0x25C5295, - 0x262F354, - 0x26993A7, - 0x270338E, - 0x276D307, - 0x27D7212, - 0x28410AD, - 0x28AAED7, - 0x2914C8E, - 0x297E9D3, - 0x29E86A3, - 0x2A522FD, - 0x2ABBEE0, - 0x2B25A4C, - 0x2B8F53E, - 0x2BF8FB6, - 0x2C629B3, - 0x2CCC332, - 0x2D35C35, - 0x2D9F4B8, - 0x2E08CBB, - 0x2E7243D, - 0x2EDBB3D, - 0x2F451B9, - 0x2FAE7B0, - 0x3017D21, - 0x308120C, - 0x30EA66E, - 0x3153A47, - 0x31BCD96, - 0x3226058, - 0x328F28E, - 0x32F8437, - 0x3361550, - 0x33CA5D8, - 0x34335D0, - 0x349C535, - 0x3505406, - 0x356E242, - 0x35D6FE8, - 0x363FCF7, - 0x36A896E, - 0x371154C, - 0x377A08F, - 0x37E2B36, - 0x384B540, - 0x38B3EAC, - 0x391C779, - 0x3984FA6, - 0x39ED731, - 0x3A55E19, - 0x3ABE45E, - 0x3B269FE, - 0x3B8EEF8, - 0x3BF734A, - 0x3C5F6F4, - 0x3CC79F5, - 0x3D2FC4B, - 0x3D97DF6, - 0x3DFFEF3, - 0x3E67F43, - 0x3ECFEE3, - 0x3F37DD3, - 0x3F9FC11, - 0x400799D, - 0x406F675, - 0x40D7298, - 0x413EE05, - 0x41A68BB, - 0x420E2B8, - 0x4275BFD, - 0x42DD486, - 0x4344C54, - 0x43AC365, - 0x44139B8, - 0x447AF4C, - 0x44E2420, - 0x4549832, - 0x45B0B82, - 0x4617E0E, - 0x467EFD5, - 0x46E60D7, - 0x474D111, - 0x47B4084, - 0x481AF2D, - 0x4881D0B, - 0x48E8A1E, - 0x494F664, - 0x49B61DD, - 0x4A1CC86, - 0x4A83660, - 0x4AE9F68, - 0x4B5079E, - 0x4BB6F01, - 0x4C1D58F, - 0x4C83B47, - 0x4CEA029, - 0x4D50432, - 0x4DB6763, - 0x4E1C9B9, - 0x4E82B34, - 0x4EE8BD3, - 0x4F4EB94, - 0x4FB4A77, - 0x501A87A, - 0x508059C, - 0x50E61DB, - 0x514BD38, - 0x51B17B1, - 0x5217144, - 0x527C9F1, - 0x52E21B6, - 0x5347892, - 0x53ACE85, - 0x541238D, - 0x54777A9, - 0x54DCAD7, - 0x5541D18, - 0x55A6E69, - 0x560BECA, - 0x5670E39, - 0x56D5CB5, - 0x573AA3E, - 0x579F6D1, - 0x580426F, - 0x5868D16, - 0x58CD6C4, - 0x5931F79, - 0x5996734, - 0x59FADF3, - 0x5A5F3B6, - 0x5AC387B, - 0x5B27C41, - 0x5B8BF07, - 0x5BF00CC, - 0x5C54190, - 0x5CB814F, - 0x5D1C00B, - 0x5D7FDC1, - 0x5DE3A71, - 0x5E47619, - 0x5EAB0B9, - 0x5F0EA4E, - 0x5F722D9, - 0x5FD5A58, - 0x60390CA, - 0x609C62E, - 0x60FFA82, - 0x6162DC7, - 0x61C5FF9, - 0x622911A, - 0x628C126, - 0x62EF01F, - 0x6351E01, - 0x63B4ACC, - 0x6417680, - 0x647A11B, - 0x64DCA9B, - 0x653F301, - 0x65A1A4A, - 0x6604076, - 0x6666583, - 0x66C8971, - 0x672AC3F, - 0x678CDEA, - 0x67EEE73, - 0x6850DD9, - 0x68B2C19, - 0x6914934, - 0x6976527, - 0x69D7FF3, - 0x6A39995, - 0x6A9B20D, - 0x6AFC95A, - 0x6B5DF7B, - 0x6BBF46E, - 0x6C20832, - 0x6C81AC7, - 0x6CE2C2C, - 0x6D43C5F, - 0x6DA4B5F, - 0x6E0592B, - 0x6E665C2, - 0x6EC7123, - 0x6F27B4E, - 0x6F88440, - 0x6FE8BF9, - 0x7049279, - 0x70A97BC, - 0x7109BC4, - 0x7169E8E, - 0x71CA01A, - 0x722A066, - 0x7289F72, - 0x72E9D3D, - 0x73499C4, - 0x73A9508, - 0x7408F08, - 0x74687C1, - 0x74C7F34, - 0x752755F, - 0x7586A41, - 0x75E5DDA, - 0x7645027, - 0x76A4128, - 0x77030DC, - 0x7761F42, - 0x77C0C59, - 0x781F81F, - 0x787E295, - 0x78DCBB8, - 0x793B388, - 0x7999A03, - 0x79F7F29, - 0x7A562F9, - 0x7AB4571, - 0x7B12691, - 0x7B70658, - 0x7BCE4C3, - 0x7C2C1D3, - 0x7C89D87, - 0x7CE77DD, - 0x7D450D4, - 0x7DA286C, - 0x7DFFEA3, - 0x7E5D378, - 0x7EBA6EB, - 0x7F178F9, - 0x7F749A3, - 0x7FD18E7, - 0x802E6C5, - 0x808B33A, - 0x80E7E47, - 0x81447E9, - 0x81A1021, - 0x81FD6ED, - 0x8259C4C, - 0x82B603D, - 0x83122BF, - 0x836E3D1, - 0x83CA372, - 0x84261A1, - 0x8481E5D, - 0x84DD9A5, - 0x8539378, - 0x8594BD5, - 0x85F02BC, - 0x864B82A, - 0x86A6C1F, - 0x8701E9A, - 0x875CF9A, - 0x87B7F1E, - 0x8812D25, - 0x886D9AE, - 0x88C84B8, - 0x8922E42, - 0x897D64B, - 0x89D7CD2, - 0x8A321D6, - 0x8A8C556, - 0x8AE6752, - 0x8B407C7, - 0x8B9A6B5, - 0x8BF441B, - 0x8C4DFF9, - 0x8CA7A4C, - 0x8D01315, - 0x8D5AA52, - 0x8DB4002, - 0x8E0D424, - 0x8E666B8, - 0x8EBF7BB, - 0x8F1872E, - 0x8F71510, - 0x8FCA15E, - 0x9022C19, - 0x907B53F, - 0x90D3CD0, - 0x912C2CA, - 0x918472C, - 0x91DC9F6, - 0x9234B27, - 0x928CABD, - 0x92E48B7, - 0x933C516, - 0x9393FD6, - 0x93EB8F9, - 0x944307C, - 0x949A65F, - 0x94F1AA1, - 0x9548D41, - 0x959FE3E, - 0x95F6D96, - 0x964DB4A, - 0x96A4758, - 0x96FB1BE, - 0x9751A7D, - 0x97A8193, - 0x97FE700, - 0x9854AC1, - 0x98AACD7, - 0x9900D41, - 0x9956BFD, - 0x99AC90A, - 0x9A02468, - 0x9A57E15, - 0x9AAD612, - 0x9B02C5C, - 0x9B580F3, - 0x9BAD3D6, - 0x9C02503, - 0x9C5747B, - 0x9CAC23C, - 0x9D00E45, - 0x9D55895, - 0x9DAA12C, - 0x9DFE808, - 0x9E52D28, - 0x9EA708C, - 0x9EFB233, - 0x9F4F21B, - 0x9FA3044, - 0x9FF6CAD, - 0xA04A755, - 0xA09E03B, - 0xA0F175E, - 0xA144CBD, - 0xA198057, - 0xA1EB22C, - 0xA23E23A, - 0xA291080, - 0xA2E3CFF, - 0xA3367B4, - 0xA38909E, - 0xA3DB7BE, - 0xA42DD12, - 0xA480098, - 0xA4D2251, - 0xA52423C, - 0xA576056, - 0xA5C7CA0, - 0xA619719, - 0xA66AFBF, - 0xA6BC693, - 0xA70DB92, - 0xA75EEBC, - 0xA7B0010, - 0xA800F8E, - 0xA851D34, - 0xA8A2901, - 0xA8F32F5, - 0xA943B0E, - 0xA99414D, - 0xA9E45AF, - 0xAA34835, - 0xAA848DC, - 0xAAD47A5, - 0xAB2448E, - 0xAB73F97, - 0xABC38BF, - 0xAC13004, - 0xAC62566, - 0xACB18E5, - 0xAD00A7E, - 0xAD4FA32, - 0xAD9E7FF, - 0xADED3E5, - 0xAE3BDE3, - 0xAE8A5F7, - 0xAED8C22, - 0xAF27061, - 0xAF752B5, - 0xAFC331D, - 0xB011196, - 0xB05EE22, - 0xB0AC8BE, - 0xB0FA16B, - 0xB147827, - 0xB194CF1, - 0xB1E1FC8, - 0xB22F0AC, - 0xB27BF9C, - 0xB2C8C97, - 0xB31579B, - 0xB3620AA, - 0xB3AE7C0, - 0xB3FACDE, - 0xB447003, - 0xB49312E, - 0xB4DF05D, - 0xB52AD91, - 0xB5768C9, - 0xB5C2203, - 0xB60D93E, - 0xB658E7B, - 0xB6A41B8, - 0xB6EF2F4, - 0xB73A22E, - 0xB784F66, - 0xB7CFA9B, - 0xB81A3CC, - 0xB864AF8, - 0xB8AF01E, - 0xB8F933E, - 0xB943456, - 0xB98D367, - 0xB9D706E, - 0xBA20B6C, - 0xBA6A45F, - 0xBAB3B47, - 0xBAFD023, - 0xBB462F2, - 0xBB8F3B3, - 0xBBD8266, - 0xBC20F09, - 0xBC6999C, - 0xBCB221E, - 0xBCFA88F, - 0xBD42CED, - 0xBD8AF37, - 0xBDD2F6E, - 0xBE1AD8F, - 0xBE6299B, - 0xBEAA390, - 0xBEF1B6E, - 0xBF39135, - 0xBF804E2, - 0xBFC7675, - 0xC00E5EF, - 0xC05534D, - 0xC09BE8F, - 0xC0E27B4, - 0xC128EBC, - 0xC16F3A6, - 0xC1B5670, - 0xC1FB71B, - 0xC2415A5, - 0xC28720E, - 0xC2CCC55, - 0xC312479, - 0xC357A79, - 0xC39CE55, - 0xC3E200C, - 0xC426F9C, - 0xC46BD06, - 0xC4B0849, - 0xC4F5164, - 0xC539855, - 0xC57DD1D, - 0xC5C1FBB, - 0xC60602D, - 0xC649E73, - 0xC68DA8D, - 0xC6D1479, - 0xC714C37, - 0xC7581C7, - 0xC79B526, - 0xC7DE656, - 0xC821554, - 0xC864220, - 0xC8A6CBA, - 0xC8E9520, - 0xC92BB53, - 0xC96DF50, - 0xC9B0119, - 0xC9F20AB, - 0xCA33E06, - 0xCA75929, - 0xCAB7214, - 0xCAF88C6, - 0xCB39D3E, - 0xCB7AF7C, - 0xCBBBF7E, - 0xCBFCD44, - 0xCC3D8CE, - 0xCC7E21B, - 0xCCBE929, - 0xCCFEDF8, - 0xCD3F088, - 0xCD7F0D8, - 0xCDBEEE7, - 0xCDFEAB4, - 0xCE3E43F, - 0xCE7DB87, - 0xCEBD08B, - 0xCEFC34B, - 0xCF3B3C6, - 0xCF7A1FB, - 0xCFB8DEA, - 0xCFF7791, - 0xD035EF1, - 0xD074408, - 0xD0B26D6, - 0xD0F075A, - 0xD12E593, - 0xD16C181, - 0xD1A9B24, - 0xD1E7279, - 0xD224782, - 0xD261A3C, - 0xD29EAA8, - 0xD2DB8C5, - 0xD318491, - 0xD354E0D, - 0xD391538, - 0xD3CDA11, - 0xD409C97, - 0xD445CCA, - 0xD481AA8, - 0xD4BD633, - 0xD4F8F68, - 0xD534647, - 0xD56FAD0, - 0xD5AAD01, - 0xD5E5CDB, - 0xD620A5C, - 0xD65B584, - 0xD695E53, - 0xD6D04C6, - 0xD70A8DF, - 0xD744A9C, - 0xD77E9FD, - 0xD7B8701, - 0xD7F21A7, - 0xD82B9EF, - 0xD864FD8, - 0xD89E362, - 0xD8D748B, - 0xD910354, - 0xD948FBB, - 0xD9819C1, - 0xD9BA163, - 0xD9F26A3, - 0xDA2A97F, - 0xDA629F6, - 0xDA9A808, - 0xDAD23B4, - 0xDB09CFA, - 0xDB413DA, - 0xDB78851, - 0xDBAFA61, - 0xDBE6A07, - 0xDC1D745, - 0xDC54218, - 0xDC8AA81, - 0xDCC107F, - 0xDCF7411, - 0xDD2D537, - 0xDD633F0, - 0xDD9903B, - 0xDDCEA18, - 0xDE04187, - 0xDE39686, - 0xDE6E916, - 0xDEA3934, - 0xDED86E2, - 0xDF0D21F, - 0xDF41AE9, - 0xDF76140, - 0xDFAA524, - 0xDFDE694, - 0xE012590, - 0xE046217, - 0xE079C28, - 0xE0AD3C2, - 0xE0E08E6, - 0xE113B93, - 0xE146BC8, - 0xE179984, - 0xE1AC4C8, - 0xE1DED92, - 0xE2113E2, - 0xE2437B7, - 0xE275911, - 0xE2A77EF, - 0xE2D9451, - 0xE30AE36, - 0xE33C59E, - 0xE36DA87, - 0xE39ECF3, - 0xE3CFCDF, - 0xE400A4B, - 0xE431538, - 0xE461DA4, - 0xE49238F, - 0xE4C26F8, - 0xE4F27DF, - 0xE522643, - 0xE552224, - 0xE581B82, - 0xE5B125A, - 0xE5E06AE, - 0xE60F87D, - 0xE63E7C6, - 0xE66D488, - 0xE69BEC4, - 0xE6CA678, - 0xE6F8BA4, - 0xE726E48, - 0xE754E63, - 0xE782BF5, - 0xE7B06FC, - 0xE7DDF79, - 0xE80B56C, - 0xE8388D2, - 0xE8659AD, - 0xE8927FC, - 0xE8BF3BD, - 0xE8EBCF1, - 0xE918397, - 0xE9447AF, - 0xE970938, - 0xE99C832, - 0xE9C849C, - 0xE9F3E75, - 0xEA1F5BE, - 0xEA4AA75, - 0xEA75C9B, - 0xEAA0C2E, - 0xEACB92F, - 0xEAF639D, - 0xEB20B77, - 0xEB4B0BD, - 0xEB7536E, - 0xEB9F38B, - 0xEBC9111, - 0xEBF2C02, - 0xEC1C45D, - 0xEC45A21, - 0xEC6ED4D, - 0xEC97DE2, - 0xECC0BDE, - 0xECE9742, - 0xED1200D, - 0xED3A63E, - 0xED629D5, - 0xED8AAD2, - 0xEDB2934, - 0xEDDA4FB, - 0xEE01E25, - 0xEE294B4, - 0xEE508A6, - 0xEE779FB, - 0xEE9E8B3, - 0xEEC54CD, - 0xEEEBE48, - 0xEF12525, - 0xEF38962, - 0xEF5EB00, - 0xEF849FE, - 0xEFAA65C, - 0xEFD0018, - 0xEFF5734, - 0xF01ABAE, - 0xF03FD85, - 0xF064CBB, - 0xF08994D, - 0xF0AE33C, - 0xF0D2A88, - 0xF0F6F2F, - 0xF11B132, - 0xF13F090, - 0xF162D49, - 0xF18675C, - 0xF1A9EC9, - 0xF1CD390, - 0xF1F05AF, - 0xF213528, - 0xF2361F9, - 0xF258C22, - 0xF27B3A3, - 0xF29D87B, - 0xF2BFAAA, - 0xF2E1A2F, - 0xF30370B, - 0xF32513C, - 0xF3468C3, - 0xF367D9E, - 0xF388FCF, - 0xF3A9F54, - 0xF3CAC2C, - 0xF3EB658, - 0xF40BDD8, - 0xF42C2AA, - 0xF44C4CF, - 0xF46C446, - 0xF48C10F, - 0xF4ABB2A, - 0xF4CB295, - 0xF4EA751, - 0xF50995E, - 0xF5288BB, - 0xF547567, - 0xF565F63, - 0xF5846AE, - 0xF5A2B48, - 0xF5C0D30, - 0xF5DEC67, - 0xF5FC8EB, - 0xF61A2BC, - 0xF6379DB, - 0xF654E46, - 0xF671FFE, - 0xF68EF02, - 0xF6ABB52, - 0xF6C84ED, - 0xF6E4BD3, - 0xF701005, - 0xF71D181, - 0xF739047, - 0xF754C57, - 0xF7705B1, - 0xF78BC54, - 0xF7A7040, - 0xF7C2175, - 0xF7DCFF3, - 0xF7F7BB8, - 0xF8124C6, - 0xF82CB1B, - 0xF846EB7, - 0xF860F9A, - 0xF87ADC4, - 0xF894935, - 0xF8AE1EB, - 0xF8C77E8, - 0xF8E0B2A, - 0xF8F9BB1, - 0xF91297E, - 0xF92B48F, - 0xF943CE4, - 0xF95C27E, - 0xF97455C, - 0xF98C57E, - 0xF9A42E3, - 0xF9BBD8B, - 0xF9D3576, - 0xF9EAAA3, - 0xFA01D14, - 0xFA18CC6, - 0xFA2F9BA, - 0xFA463F0, - 0xFA5CB67, - 0xFA7301F, - 0xFA89218, - 0xFA9F152, - 0xFAB4DCC, - 0xFACA787, - 0xFADFE81, - 0xFAF52BB, - 0xFB0A435, - 0xFB1F2EE, - 0xFB33EE6, - 0xFB4881C, - 0xFB5CE91, - 0xFB71245, - 0xFB85337, - 0xFB99166, - 0xFBACCD3, - 0xFBC057E, - 0xFBD3B66, - 0xFBE6E8B, - 0xFBF9EEC, - 0xFC0CC8B, - 0xFC1F766, - 0xFC31F7D, - 0xFC444CF, - 0xFC5675E, - 0xFC68729, - 0xFC7A42E, - 0xFC8BE6F, - 0xFC9D5EB, - 0xFCAEAA2, - 0xFCBFC94, - 0xFCD0BBF, - 0xFCE1826, - 0xFCF21C6, - 0xFD028A0, - 0xFD12CB4, - 0xFD22E01, - 0xFD32C88, - 0xFD42848, - 0xFD52141, - 0xFD61772, - 0xFD70ADD, - 0xFD7FB80, - 0xFD8E95B, - 0xFD9D46E, - 0xFDABCBA, - 0xFDBA23D, - 0xFDC84F8, - 0xFDD64EB, - 0xFDE4214, - 0xFDF1C76, - 0xFDFF40E, - 0xFE0C8DD, - 0xFE19AE3, - 0xFE26A20, - 0xFE33693, - 0xFE4003C, - 0xFE4C71C, - 0xFE58B32, - 0xFE64C7E, - 0xFE70AFF, - 0xFE7C6B7, - 0xFE87FA4, - 0xFE935C6, - 0xFE9E91E, - 0xFEA99AA, - 0xFEB476C, - 0xFEBF263, - 0xFEC9A8F, - 0xFED3FEF, - 0xFEDE284, - 0xFEE824E, - 0xFEF1F4C, - 0xFEFB97E, - 0xFF050E4, - 0xFF0E57F, - 0xFF1774D, - 0xFF2064F, - 0xFF29286, - 0xFF31BEF, - 0xFF3A28D, - 0xFF4265D, - 0xFF4A761, - 0xFF52599, - 0xFF5A104, - 0xFF619A2, - 0xFF68F72, - 0xFF70276, - 0xFF772AD, - 0xFF7E017, - 0xFF84AB3, - 0xFF8B282, - 0xFF91784, - 0xFF979B8, - 0xFF9D91E, - 0xFFA35B7, - 0xFFA8F83, - 0xFFAE680, - 0xFFB3AB0, - 0xFFB8C12, - 0xFFBDAA6, - 0xFFC266C, - 0xFFC6F64, - 0xFFCB58E, - 0xFFCF8EA, - 0xFFD3978, - 0xFFD7738, - 0xFFDB229, - 0xFFDEA4C, - 0xFFE1FA1, - 0xFFE5227, - 0xFFE81DF, - 0xFFEAEC9, - 0xFFED8E4, - 0xFFF0030, - 0xFFF24AF, - 0xFFF465E, - 0xFFF653F, - 0xFFF8152, - 0xFFF9A96, - 0xFFFB10B, - 0xFFFC4B2, - 0xFFFD58A, - 0xFFFE393, - 0xFFFEECE, - 0xFFFF73A, - 0xFFFFCD7, - 0xFFFFFA6 -}; - -real_t sine_short_128[] = -{ - 0x1921F1, - 0x4B64DB, - 0x7DA4DD, - 0xAFE006, - 0xE21468, - 0x1144013, - 0x1466118, - 0x1787587, - 0x1AA7B73, - 0x1DC70ED, - 0x20E5409, - 0x24022DB, - 0x271DB77, - 0x2A37BF1, - 0x2D50261, - 0x3066CDE, - 0x337B97F, - 0x368E65F, - 0x399F198, - 0x3CAD945, - 0x3FB9B85, - 0x42C3675, - 0x45CA837, - 0x48CEEED, - 0x4BD08B8, - 0x4ECF3C0, - 0x51CAE2B, - 0x54C3622, - 0x57B89D0, - 0x5AAA761, - 0x5D98D06, - 0x60838EE, - 0x636A94E, - 0x664DC5B, - 0x692D04C, - 0x6C0835E, - 0x6EDF3CB, - 0x71B1FD5, - 0x74805BD, - 0x774A3C8, - 0x7A0F83E, - 0x7CD0168, - 0x7F8BD96, - 0x8242B16, - 0x84F483D, - 0x87A1361, - 0x8A48ADB, - 0x8CEAD08, - 0x8F87849, - 0x921EB01, - 0x94B0397, - 0x973C075, - 0x99C200A, - 0x9C420C6, - 0x9EBC120, - 0xA12FF8F, - 0xA39DA91, - 0xA6050A6, - 0xA866053, - 0xAAC0820, - 0xAD14699, - 0xAF61A4E, - 0xB1A81D5, - 0xB3E7BC6, - 0xB6206BE, - 0xB85215D, - 0xBA7CA4B, - 0xBCA002F, - 0xBEBC1BA, - 0xC0D0D9E, - 0xC2DE291, - 0xC4E3F51, - 0xC6E229D, - 0xC8D8B3C, - 0xCAC77F6, - 0xCCAE79B, - 0xCE8D8FF, - 0xD064AF9, - 0xD233C68, - 0xD3FAC2D, - 0xD5B9930, - 0xD77025E, - 0xD91E6A7, - 0xDAC4503, - 0xDC61C6D, - 0xDDF6BE6, - 0xDF83274, - 0xE106F23, - 0xE282104, - 0xE3F472C, - 0xE55E0B8, - 0xE6BECC8, - 0xE816A82, - 0xE965913, - 0xEAAB7AC, - 0xEBE8584, - 0xED1C1D8, - 0xEE46BE8, - 0xEF682FF, - 0xF080668, - 0xF18F577, - 0xF294F85, - 0xF3913F0, - 0xF48421D, - 0xF56D977, - 0xF64D96C, - 0xF724173, - 0xF7F1108, - 0xF8B47AC, - 0xF96E4E6, - 0xFA1E845, - 0xFAC515A, - 0xFB61FC0, - 0xFBF5316, - 0xFC7EB01, - 0xFCFE72C, - 0xFD74748, - 0xFDE0B0D, - 0xFE43237, - 0xFE9BC8B, - 0xFEEA9D0, - 0xFF2F9D8, - 0xFF6AC77, - 0xFF9C188, - 0xFFC38ED, - 0xFFE128F, - 0xFFF4E5A, - 0xFFFEC42 -}; - -real_t sine_short_120[] = +#ifdef ALLOW_SMALL_FRAMELENGTH +ALIGN static const real_t sine_short_120[] = { - 0x1ACEDD, - 0x506B6B, - 0x860472, - 0xBB9798, - 0xF12283, - 0x126A2DB, - 0x15C1646, - 0x1917A6C, - 0x1C6CCF6, - 0x1FC0B8D, - 0x23133DB, - 0x266438B, - 0x29B3849, - 0x2D00FC3, - 0x304C7A8, - 0x3395DA6, - 0x36DCF70, - 0x3A21AB9, - 0x3D63D36, - 0x40A349D, - 0x43DFEA6, - 0x471990D, - 0x4A5018D, - 0x4D835E6, - 0x50B33D8, - 0x53DF927, - 0x5708398, - 0x5A2D0F4, - 0x5D4DF07, - 0x606AB9E, - 0x638348A, - 0x669779E, - 0x69A72B2, - 0x6CB23A0, - 0x6FB8844, - 0x72B9E80, - 0x75B6437, - 0x78AD751, - 0x7B9F5B9, - 0x7E8BD5E, - 0x8172C33, - 0x845402D, - 0x872F749, - 0x8A04F85, - 0x8CD46E2, - 0x8F9DB69, - 0x9260B25, - 0x951D425, - 0x97D347F, - 0x9A82A4A, - 0x9D2B3A4, - 0x9FCCEB1, - 0xA267996, - 0xA4FB280, - 0xA7877A1, - 0xAA0C72E, - 0xAC89F62, - 0xAEFFE7F, - 0xB16E2CA, - 0xB3D4A8E, - 0xB63341D, - 0xB889DCC, - 0xBAD85F7, - 0xBD1EB00, - 0xBF5CB4E, - 0xC19254F, - 0xC3BF775, - 0xC5E4039, - 0xC7FFE1B, - 0xCA12F9F, - 0xCC1D351, - 0xCE1E7C2, - 0xD016B8A, - 0xD205D47, - 0xD3EBB9E, - 0xD5C8539, - 0xD79B8CB, - 0xD96550A, - 0xDB258B7, - 0xDCDC296, - 0xDE89173, - 0xE02C422, - 0xE1C597C, - 0xE355062, - 0xE4DA7BC, - 0xE655E78, - 0xE7C738C, - 0xE92E5F5, - 0xEA8B4B7, - 0xEBDDEDD, - 0xED26379, - 0xEE641A4, - 0xEF97881, - 0xF0C0736, - 0xF1DECF4, - 0xF2F28F2, - 0xF3FBA6E, - 0xF4FA0AE, - 0xF5EDAFF, - 0xF6D68B7, - 0xF7B4932, - 0xF887BD4, - 0xF950009, - 0xFA0D544, - 0xFABFB02, - 0xFB670C3, - 0xFC03614, - 0xFC94A86, - 0xFD1ADB3, - 0xFD95F3E, - 0xFE05ECF, - 0xFE6AC18, - 0xFEC46D2, - 0xFF12EC0, - 0xFF563A8, - 0xFF8E55C, - 0xFFBB3B6, - 0xFFDCE94, - 0xFFF35E0, - 0xFFFE98A + FRAC_CONST(0.0065449379673518581), + FRAC_CONST(0.019633692460628301), + FRAC_CONST(0.032719082821776137), + FRAC_CONST(0.045798866936520771), + FRAC_CONST(0.058870803651189033), + FRAC_CONST(0.071932653156719387), + FRAC_CONST(0.084982177372441667), + FRAC_CONST(0.09801714032956059), + FRAC_CONST(0.11103530855427769), + FRAC_CONST(0.12403445145048532), + FRAC_CONST(0.13701234168196802), + FRAC_CONST(0.14996675555404498), + FRAC_CONST(0.16289547339458874), + FRAC_CONST(0.17579627993435451), + FRAC_CONST(0.18866696468655525), + FRAC_CONST(0.2015053223256171), + FRAC_CONST(0.21430915306505074), + FRAC_CONST(0.2270762630343732), + FRAC_CONST(0.23980446465501654), + FRAC_CONST(0.25249157701515795), + FRAC_CONST(0.26513542624340797), + FRAC_CONST(0.27773384588129219), + FRAC_CONST(0.29028467725446233), + FRAC_CONST(0.3027857698425746), + FRAC_CONST(0.31523498164776964), + FRAC_CONST(0.32763017956169349), + FRAC_CONST(0.33996923973099424), + FRAC_CONST(0.35225004792123354), + FRAC_CONST(0.36447049987914965), + FRAC_CONST(0.37662850169321077), + FRAC_CONST(0.38872197015239557), + FRAC_CONST(0.40074883310314097), + FRAC_CONST(0.41270702980439467), + FRAC_CONST(0.42459451128071307), + FRAC_CONST(0.43640924067334208), + FRAC_CONST(0.44814919358922256), + FRAC_CONST(0.45981235844785984), + FRAC_CONST(0.47139673682599764), + FRAC_CONST(0.48290034380003727), + FRAC_CONST(0.49432120828614462), + FRAC_CONST(0.50565737337798455), + FRAC_CONST(0.51690689668202761), + FRAC_CONST(0.52806785065036799), + FRAC_CONST(0.53913832291100017), + FRAC_CONST(0.55011641659549337), + FRAC_CONST(0.56100025066400983), + FRAC_CONST(0.57178796022761225), + FRAC_CONST(0.58247769686780215), + FRAC_CONST(0.59306762895323706), + FRAC_CONST(0.60355594195357143), + FRAC_CONST(0.61394083875036642), + FRAC_CONST(0.62422053994501758), + FRAC_CONST(0.63439328416364549), + FRAC_CONST(0.64445732835889735), + FRAC_CONST(0.65441094810861034), + FRAC_CONST(0.66425243791128175), + FRAC_CONST(0.67398011147829784), + FRAC_CONST(0.68359230202287125), + FRAC_CONST(0.69308736254563585), + FRAC_CONST(0.70246366611685174), + FRAC_CONST(0.71171960615517138), + FRAC_CONST(0.72085359670291882), + FRAC_CONST(0.7298640726978356), + FRAC_CONST(0.73874949024124625), + FRAC_CONST(0.74750832686259672), + FRAC_CONST(0.75613908178032285), + FRAC_CONST(0.76464027615900032), + FRAC_CONST(0.77301045336273699), + FRAC_CONST(0.78124817920475853), + FRAC_CONST(0.78935204219315003), + FRAC_CONST(0.79732065377270711), + FRAC_CONST(0.80515264856285829), + FRAC_CONST(0.81284668459161513), + FRAC_CONST(0.82040144352551359), + FRAC_CONST(0.82781563089550203), + FRAC_CONST(0.83508797631874299), + FRAC_CONST(0.84221723371628654), + FRAC_CONST(0.84920218152657889), + FRAC_CONST(0.85604162291477137), + FRAC_CONST(0.86273438597779184), + FRAC_CONST(0.86927932394514362), + FRAC_CONST(0.87567531537539967), + FRAC_CONST(0.88192126434835494), + FRAC_CONST(0.88801610065280734), + FRAC_CONST(0.89395877996993212), + FRAC_CONST(0.8997482840522214), + FRAC_CONST(0.90538362089795521), + FRAC_CONST(0.91086382492117568), + FRAC_CONST(0.91618795711713596), + FRAC_CONST(0.92135510522319242), + FRAC_CONST(0.9263643838751181), + FRAC_CONST(0.93121493475880346), + FRAC_CONST(0.93590592675732565), + FRAC_CONST(0.94043655609335486), + FRAC_CONST(0.94480604646687805), + FRAC_CONST(0.94901364918821385), + FRAC_CONST(0.95305864330629697), + FRAC_CONST(0.95694033573220882), + FRAC_CONST(0.9606580613579353), + FRAC_CONST(0.96421118317032928), + FRAC_CONST(0.96759909236025976), + FRAC_CONST(0.9708212084269281), + FRAC_CONST(0.97387697927733363), + FRAC_CONST(0.97676588132087239), + FRAC_CONST(0.97948741955905139), + FRAC_CONST(0.98204112767030394), + FRAC_CONST(0.98442656808989171), + FRAC_CONST(0.98664333208487898), + FRAC_CONST(0.98869103982416728), + FRAC_CONST(0.99056934044357725), + FRAC_CONST(0.99227791210596705), + FRAC_CONST(0.99381646205637808), + FRAC_CONST(0.99518472667219682), + FRAC_CONST(0.99638247150832537), + FRAC_CONST(0.99740949133735191), + FRAC_CONST(0.99826561018471593), + FRAC_CONST(0.99895068135886012), + FRAC_CONST(0.99946458747636568), + FRAC_CONST(0.99980724048206482), + FRAC_CONST(0.99997858166412923) }; +#endif #ifdef LD_DEC -real_t sine_mid_512[] = +ALIGN static const real_t sine_mid_512[] = { - 0x6487E, - 0x12D978, - 0x1F6A66, - 0x2BFB40, - 0x388BFF, - 0x451C9C, - 0x51AD0E, - 0x5E3D4D, - 0x6ACD52, - 0x775D16, - 0x83EC90, - 0x907BB8, - 0x9D0A87, - 0xA998F6, - 0xB626FC, - 0xC2B491, - 0xCF41AF, - 0xDBCE4C, - 0xE85A62, - 0xF4E5E9, - 0x10170D8, - 0x10DFB29, - 0x11A84D3, - 0x1270DCF, - 0x1339615, - 0x1401D9D, - 0x14CA460, - 0x1592A55, - 0x165AF76, - 0x17233BA, - 0x17EB71A, - 0x18B398D, - 0x197BB0D, - 0x1A43B91, - 0x1B0BB12, - 0x1BD3988, - 0x1C9B6EC, - 0x1D63335, - 0x1E2AE5C, - 0x1EF2859, - 0x1FBA125, - 0x20818B8, - 0x2148F0A, - 0x2210413, - 0x22D77CC, - 0x239EA2E, - 0x2465B30, - 0x252CACA, - 0x25F38F6, - 0x26BA5AB, - 0x27810E2, - 0x2847A93, - 0x290E2B6, - 0x29D4945, - 0x2A9AE36, - 0x2B61183, - 0x2C27324, - 0x2CED311, - 0x2DB3142, - 0x2E78DB1, - 0x2F3E855, - 0x3004126, - 0x30C981E, - 0x318ED34, - 0x3254061, - 0x331919E, - 0x33DE0E2, - 0x34A2E26, - 0x3567963, - 0x362C290, - 0x36F09A7, - 0x37B4EA0, - 0x3879173, - 0x393D218, - 0x3A01089, - 0x3AC4CBD, - 0x3B886AD, - 0x3C4BE51, - 0x3D0F3A3, - 0x3DD269A, - 0x3E9572E, - 0x3F58559, - 0x401B113, - 0x40DDA54, - 0x41A0115, - 0x426254E, - 0x43246F8, - 0x43E660B, - 0x44A8280, - 0x4569C50, - 0x462B372, - 0x46EC7E0, - 0x47AD992, - 0x486E881, - 0x492F4A5, - 0x49EFDF6, - 0x4AB046D, - 0x4B70804, - 0x4C308B2, - 0x4CF0670, - 0x4DB0136, - 0x4E6F8FE, - 0x4F2EDC0, - 0x4FEDF74, - 0x50ACE13, - 0x516B996, - 0x522A1F6, - 0x52E872B, - 0x53A692D, - 0x54647F6, - 0x552237D, - 0x55DFBBD, - 0x569D0AD, - 0x575A246, - 0x5817081, - 0x58D3B57, - 0x59902C0, - 0x5A4C6B5, - 0x5B0872F, - 0x5BC4426, - 0x5C7FD93, - 0x5D3B370, - 0x5DF65B5, - 0x5EB145A, - 0x5F6BF58, - 0x60266A9, - 0x60E0A45, - 0x619AA25, - 0x6254641, - 0x630DE93, - 0x63C7313, - 0x64803BB, - 0x6539083, - 0x65F1963, - 0x66A9E56, - 0x6761F53, - 0x6819C54, - 0x68D1551, - 0x6988A44, - 0x6A3FB25, - 0x6AF67EE, - 0x6BAD097, - 0x6C63519, - 0x6D1956E, - 0x6DCF18E, - 0x6E84972, - 0x6F39D13, - 0x6FEEC6B, - 0x70A3771, - 0x7157E20, - 0x720C071, - 0x72BFE5C, - 0x73737DA, - 0x7426CE5, - 0x74D9D75, - 0x758C985, - 0x763F10C, - 0x76F1404, - 0x77A3266, - 0x7854C2B, - 0x790614D, - 0x79B71C4, - 0x7A67D8A, - 0x7B18498, - 0x7BC86E7, - 0x7C78470, - 0x7D27D2D, - 0x7DD7116, - 0x7E86026, - 0x7F34A55, - 0x7FE2F9C, - 0x8090FF5, - 0x813EB5A, - 0x81EC1C2, - 0x8299329, - 0x8345F86, - 0x83F26D4, - 0x849E90C, - 0x854A626, - 0x85F5E1E, - 0x86A10EB, - 0x874BE87, - 0x87F66EC, - 0x88A0A13, - 0x894A7F5, - 0x89F408D, - 0x8A9D3D3, - 0x8B461C1, - 0x8BEEA51, - 0x8C96D7B, - 0x8D3EB3A, - 0x8DE6386, - 0x8E8D65B, - 0x8F343B0, - 0x8FDAB80, - 0x9080DC4, - 0x9126A76, - 0x91CC190, - 0x927130A, - 0x9315EDF, - 0x93BA509, - 0x945E580, - 0x950203F, - 0x95A5540, - 0x964847B, - 0x96EADEB, - 0x978D18A, - 0x982EF51, - 0x98D073A, - 0x997193F, - 0x9A12559, - 0x9AB2B83, - 0x9B52BB6, - 0x9BF25EC, - 0x9C91A1F, - 0x9D30849, - 0x9DCF063, - 0x9E6D267, - 0x9F0AE51, - 0x9FA8418, - 0xA0453B8, - 0xA0E1D29, - 0xA17E067, - 0xA219D6B, - 0xA2B5430, - 0xA3504AE, - 0xA3EAEE1, - 0xA4852C1, - 0xA51F04A, - 0xA5B8776, - 0xA65183E, - 0xA6EA29C, - 0xA78268B, - 0xA81A404, - 0xA8B1B03, - 0xA948B80, - 0xA9DF577, - 0xAA758E1, - 0xAB0B5B9, - 0xABA0BF9, - 0xAC35B9B, - 0xACCA499, - 0xAD5E6EE, - 0xADF2293, - 0xAE85784, - 0xAF185BB, - 0xAFAAD31, - 0xB03CDE2, - 0xB0CE7C7, - 0xB15FADB, - 0xB1F0719, - 0xB280C7A, - 0xB310AFA, - 0xB3A0292, - 0xB42F33E, - 0xB4BDCF7, - 0xB54BFB8, - 0xB5D9B7C, - 0xB66703D, - 0xB6F3DF6, - 0xB7804A2, - 0xB80C43A, - 0xB897CBA, - 0xB922E1C, - 0xB9AD85A, - 0xBA37B70, - 0xBAC1759, - 0xBB4AC0E, - 0xBBD398A, - 0xBC5BFC9, - 0xBCE3EC4, - 0xBD6B678, - 0xBDF26DE, - 0xBE78FF1, - 0xBEFF1AC, - 0xBF84C0B, - 0xC009F07, - 0xC08EA9C, - 0xC112EC4, - 0xC196B7B, - 0xC21A0BB, - 0xC29CE7F, - 0xC31F4C3, - 0xC3A1380, - 0xC422AB3, - 0xC4A3A57, - 0xC524265, - 0xC5A42DA, - 0xC623BB0, - 0xC6A2CE3, - 0xC72166D, - 0xC79F84A, - 0xC81D274, - 0xC89A4E8, - 0xC916FA0, - 0xC993297, - 0xCA0EDC8, - 0xCA8A130, - 0xCB04CC8, - 0xCB7F08D, - 0xCBF8C79, - 0xCC72088, - 0xCCEACB5, - 0xCD630FC, - 0xCDDAD58, - 0xCE521C4, - 0xCEC8E3C, - 0xCF3F2BB, - 0xCFB4F3C, - 0xD02A3BB, - 0xD09F034, - 0xD1134A2, - 0xD187101, - 0xD1FA54B, - 0xD26D17D, - 0xD2DF593, - 0xD351187, - 0xD3C2555, - 0xD4330FA, - 0xD4A3470, - 0xD512FB3, - 0xD5822C0, - 0xD5F0D91, - 0xD65F023, - 0xD6CCA71, - 0xD739C77, - 0xD7A6631, - 0xD81279A, - 0xD87E0AF, - 0xD8E916B, - 0xD9539CB, - 0xD9BD9C9, - 0xDA27163, - 0xDA90093, - 0xDAF8757, - 0xDB605A9, - 0xDBC7B86, - 0xDC2E8E9, - 0xDC94DD0, - 0xDCFAA36, - 0xDD5FE17, - 0xDDC496E, - 0xDE28C39, - 0xDE8C674, - 0xDEEF81A, - 0xDF52127, - 0xDFB4199, - 0xE01596B, - 0xE076899, - 0xE0D6F20, - 0xE136CFB, - 0xE196228, - 0xE1F4EA3, - 0xE253267, - 0xE2B0D72, - 0xE30DFBF, - 0xE36A94B, - 0xE3C6A13, - 0xE422213, - 0xE47D147, - 0xE4D77AC, - 0xE53153F, - 0xE58A9FB, - 0xE5E35DE, - 0xE63B8E4, - 0xE69330A, - 0xE6EA44C, - 0xE740CA7, - 0xE796C18, - 0xE7EC29B, - 0xE84102D, - 0xE8954CB, - 0xE8E9071, - 0xE93C31D, - 0xE98ECCA, - 0xE9E0D77, - 0xEA3251F, - 0xEA833C0, - 0xEAD3956, - 0xEB235DF, - 0xEB72956, - 0xEBC13BB, - 0xEC0F508, - 0xEC5CD3B, - 0xECA9C52, - 0xECF6249, - 0xED41F1D, - 0xED8D2CC, - 0xEDD7D52, - 0xEE21EAC, - 0xEE6B6D9, - 0xEEB45D4, - 0xEEFCB9B, - 0xEF4482C, - 0xEF8BB83, - 0xEFD259E, - 0xF01867A, - 0xF05DE14, - 0xF0A2C6A, - 0xF0E7179, - 0xF12AD3E, - 0xF16DFB8, - 0xF1B08E2, - 0xF1F28BB, - 0xF233F40, - 0xF274C6F, - 0xF2B5044, - 0xF2F4ABF, - 0xF333BDB, - 0xF372397, - 0xF3B01F0, - 0xF3ED6E5, - 0xF42A271, - 0xF466494, - 0xF4A1D4B, - 0xF4DCC94, - 0xF51726B, - 0xF550ED0, - 0xF58A1C0, - 0xF5C2B38, - 0xF5FAB37, - 0xF6321BA, - 0xF668EBF, - 0xF69F244, - 0xF6D4C47, - 0xF709CC6, - 0xF73E3BF, - 0xF77212F, - 0xF7A5516, - 0xF7D7F70, - 0xF80A03C, - 0xF83B778, - 0xF86C522, - 0xF89C939, - 0xF8CC3B9, - 0xF8FB4A2, - 0xF929BF2, - 0xF9579A7, - 0xF984DBE, - 0xF9B1837, - 0xF9DD910, - 0xFA09047, - 0xFA33DDA, - 0xFA5E1C7, - 0xFA87C0D, - 0xFAB0CAB, - 0xFAD939F, - 0xFB010E6, - 0xFB28481, - 0xFB4EE6D, - 0xFB74EA8, - 0xFB9A532, - 0xFBBF208, - 0xFBE352A, - 0xFC06E95, - 0xFC29E4A, - 0xFC4C445, - 0xFC6E087, - 0xFC8F30D, - 0xFCAFBD6, - 0xFCCFAE1, - 0xFCEF02E, - 0xFD0DBBA, - 0xFD2BD84, - 0xFD4958C, - 0xFD663D0, - 0xFD8284F, - 0xFD9E308, - 0xFDB93FA, - 0xFDD3B23, - 0xFDED884, - 0xFE06C1A, - 0xFE1F5E5, - 0xFE375E5, - 0xFE4EC17, - 0xFE6587B, - 0xFE7BB10, - 0xFE913D6, - 0xFEA62CB, - 0xFEBA7EF, - 0xFECE341, - 0xFEE14C0, - 0xFEF3C6C, - 0xFF05A43, - 0xFF16E45, - 0xFF27872, - 0xFF378C8, - 0xFF46F48, - 0xFF55BF0, - 0xFF63EC0, - 0xFF717B7, - 0xFF7E6D5, - 0xFF8AC1A, - 0xFF96785, - 0xFFA1915, - 0xFFAC0CA, - 0xFFB5EA3, - 0xFFBF2A1, - 0xFFC7CC3, - 0xFFCFD08, - 0xFFD7371, - 0xFFDDFFC, - 0xFFE42AA, - 0xFFE9B7B, - 0xFFEEA6E, - 0xFFF2F83, - 0xFFF6AB9, - 0xFFF9C12, - 0xFFFC38C, - 0xFFFE128, - 0xFFFF4E5, - 0xFFFFEC4 + FRAC_CONST(0.0015339801862847655), + FRAC_CONST(0.0046019261204485705), + FRAC_CONST(0.007669828739531097), + FRAC_CONST(0.010737659167264491), + FRAC_CONST(0.013805388528060391), + FRAC_CONST(0.01687298794728171), + FRAC_CONST(0.019940428551514441), + FRAC_CONST(0.023007681468839369), + FRAC_CONST(0.026074717829103901), + FRAC_CONST(0.029141508764193722), + FRAC_CONST(0.032208025408304586), + FRAC_CONST(0.035274238898213947), + FRAC_CONST(0.038340120373552694), + FRAC_CONST(0.041405640977076739), + FRAC_CONST(0.044470771854938668), + FRAC_CONST(0.047535484156959303), + FRAC_CONST(0.050599749036899282), + FRAC_CONST(0.05366353765273052), + FRAC_CONST(0.056726821166907748), + FRAC_CONST(0.059789570746639868), + FRAC_CONST(0.062851757564161406), + FRAC_CONST(0.065913352797003805), + FRAC_CONST(0.068974327628266746), + FRAC_CONST(0.072034653246889332), + FRAC_CONST(0.075094300847921305), + FRAC_CONST(0.078153241632794232), + FRAC_CONST(0.081211446809592441), + FRAC_CONST(0.084268887593324071), + FRAC_CONST(0.087325535206192059), + FRAC_CONST(0.090381360877864983), + FRAC_CONST(0.093436335845747787), + FRAC_CONST(0.096490431355252593), + FRAC_CONST(0.099543618660069319), + FRAC_CONST(0.10259586902243628), + FRAC_CONST(0.10564715371341062), + FRAC_CONST(0.10869744401313872), + FRAC_CONST(0.11174671121112659), + FRAC_CONST(0.11479492660651008), + FRAC_CONST(0.11784206150832498), + FRAC_CONST(0.12088808723577708), + FRAC_CONST(0.12393297511851216), + FRAC_CONST(0.12697669649688587), + FRAC_CONST(0.13001922272223335), + FRAC_CONST(0.13306052515713906), + FRAC_CONST(0.1361005751757062), + FRAC_CONST(0.1391393441638262), + FRAC_CONST(0.14217680351944803), + FRAC_CONST(0.14521292465284746), + FRAC_CONST(0.14824767898689603), + FRAC_CONST(0.15128103795733022), + FRAC_CONST(0.1543129730130201), + FRAC_CONST(0.15734345561623825), + FRAC_CONST(0.16037245724292828), + FRAC_CONST(0.16339994938297323), + FRAC_CONST(0.1664259035404641), + FRAC_CONST(0.16945029123396796), + FRAC_CONST(0.17247308399679595), + FRAC_CONST(0.17549425337727143), + FRAC_CONST(0.17851377093899751), + FRAC_CONST(0.18153160826112497), + FRAC_CONST(0.18454773693861962), + FRAC_CONST(0.1875621285825296), + FRAC_CONST(0.19057475482025274), + FRAC_CONST(0.19358558729580361), + FRAC_CONST(0.19659459767008022), + FRAC_CONST(0.19960175762113097), + FRAC_CONST(0.20260703884442113), + FRAC_CONST(0.20561041305309924), + FRAC_CONST(0.20861185197826349), + FRAC_CONST(0.21161132736922755), + FRAC_CONST(0.21460881099378676), + FRAC_CONST(0.21760427463848364), + FRAC_CONST(0.22059769010887351), + FRAC_CONST(0.22358902922978999), + FRAC_CONST(0.22657826384561), + FRAC_CONST(0.22956536582051887), + FRAC_CONST(0.23255030703877524), + FRAC_CONST(0.23553305940497549), + FRAC_CONST(0.23851359484431842), + FRAC_CONST(0.24149188530286933), + FRAC_CONST(0.24446790274782415), + FRAC_CONST(0.24744161916777327), + FRAC_CONST(0.25041300657296522), + FRAC_CONST(0.25338203699557016), + FRAC_CONST(0.25634868248994291), + FRAC_CONST(0.25931291513288623), + FRAC_CONST(0.26227470702391359), + FRAC_CONST(0.26523403028551179), + FRAC_CONST(0.26819085706340318), + FRAC_CONST(0.27114515952680801), + FRAC_CONST(0.27409690986870638), + FRAC_CONST(0.2770460803060999), + FRAC_CONST(0.27999264308027322), + FRAC_CONST(0.28293657045705539), + FRAC_CONST(0.28587783472708062), + FRAC_CONST(0.28881640820604948), + FRAC_CONST(0.29175226323498926), + FRAC_CONST(0.29468537218051433), + FRAC_CONST(0.2976157074350862), + FRAC_CONST(0.30054324141727345), + FRAC_CONST(0.30346794657201132), + FRAC_CONST(0.30638979537086092), + FRAC_CONST(0.30930876031226873), + FRAC_CONST(0.31222481392182488), + FRAC_CONST(0.31513792875252244), + FRAC_CONST(0.31804807738501495), + FRAC_CONST(0.32095523242787521), + FRAC_CONST(0.32385936651785285), + FRAC_CONST(0.32676045232013173), + FRAC_CONST(0.32965846252858749), + FRAC_CONST(0.33255336986604422), + FRAC_CONST(0.3354451470845316), + FRAC_CONST(0.33833376696554113), + FRAC_CONST(0.34121920232028236), + FRAC_CONST(0.34410142598993881), + FRAC_CONST(0.34698041084592368), + FRAC_CONST(0.34985612979013492), + FRAC_CONST(0.35272855575521073), + FRAC_CONST(0.35559766170478385), + FRAC_CONST(0.35846342063373654), + FRAC_CONST(0.36132580556845428), + FRAC_CONST(0.36418478956707989), + FRAC_CONST(0.36704034571976718), + FRAC_CONST(0.3698924471489341), + FRAC_CONST(0.37274106700951576), + FRAC_CONST(0.37558617848921722), + FRAC_CONST(0.37842775480876556), + FRAC_CONST(0.38126576922216238), + FRAC_CONST(0.38410019501693504), + FRAC_CONST(0.38693100551438858), + FRAC_CONST(0.38975817406985641), + FRAC_CONST(0.39258167407295147), + FRAC_CONST(0.39540147894781635), + FRAC_CONST(0.39821756215337356), + FRAC_CONST(0.40102989718357562), + FRAC_CONST(0.40383845756765407), + FRAC_CONST(0.40664321687036903), + FRAC_CONST(0.40944414869225759), + FRAC_CONST(0.41224122666988289), + FRAC_CONST(0.41503442447608163), + FRAC_CONST(0.41782371582021227), + FRAC_CONST(0.42060907444840251), + FRAC_CONST(0.42339047414379605), + FRAC_CONST(0.42616788872679962), + FRAC_CONST(0.42894129205532949), + FRAC_CONST(0.43171065802505726), + FRAC_CONST(0.43447596056965565), + FRAC_CONST(0.43723717366104409), + FRAC_CONST(0.43999427130963326), + FRAC_CONST(0.44274722756457002), + FRAC_CONST(0.44549601651398174), + FRAC_CONST(0.44824061228521989), + FRAC_CONST(0.45098098904510386), + FRAC_CONST(0.45371712100016387), + FRAC_CONST(0.45644898239688392), + FRAC_CONST(0.45917654752194409), + FRAC_CONST(0.46189979070246273), + FRAC_CONST(0.46461868630623782), + FRAC_CONST(0.46733320874198842), + FRAC_CONST(0.47004333245959562), + FRAC_CONST(0.47274903195034279), + FRAC_CONST(0.47545028174715587), + FRAC_CONST(0.47814705642484301), + FRAC_CONST(0.48083933060033396), + FRAC_CONST(0.48352707893291874), + FRAC_CONST(0.48621027612448642), + FRAC_CONST(0.48888889691976317), + FRAC_CONST(0.4915629161065499), + FRAC_CONST(0.49423230851595967), + FRAC_CONST(0.49689704902265447), + FRAC_CONST(0.49955711254508184), + FRAC_CONST(0.50221247404571079), + FRAC_CONST(0.50486310853126759), + FRAC_CONST(0.50750899105297087), + FRAC_CONST(0.51015009670676681), + FRAC_CONST(0.51278640063356296), + FRAC_CONST(0.51541787801946293), + FRAC_CONST(0.51804450409599934), + FRAC_CONST(0.52066625414036716), + FRAC_CONST(0.52328310347565643), + FRAC_CONST(0.52589502747108463), + FRAC_CONST(0.52850200154222848), + FRAC_CONST(0.531104001151255), + FRAC_CONST(0.53370100180715296), + FRAC_CONST(0.53629297906596318), + FRAC_CONST(0.53887990853100842), + FRAC_CONST(0.54146176585312344), + FRAC_CONST(0.54403852673088382), + FRAC_CONST(0.54661016691083486), + FRAC_CONST(0.54917666218771966), + FRAC_CONST(0.55173798840470734), + FRAC_CONST(0.55429412145362), + FRAC_CONST(0.5568450372751601), + FRAC_CONST(0.55939071185913614), + FRAC_CONST(0.56193112124468947), + FRAC_CONST(0.5644662415205195), + FRAC_CONST(0.56699604882510868), + FRAC_CONST(0.56952051934694714), + FRAC_CONST(0.57203962932475705), + FRAC_CONST(0.57455335504771576), + FRAC_CONST(0.57706167285567944), + FRAC_CONST(0.57956455913940563), + FRAC_CONST(0.58206199034077544), + FRAC_CONST(0.58455394295301533), + FRAC_CONST(0.58704039352091797), + FRAC_CONST(0.58952131864106394), + FRAC_CONST(0.59199669496204099), + FRAC_CONST(0.59446649918466443), + FRAC_CONST(0.5969307080621965), + FRAC_CONST(0.59938929840056454), + FRAC_CONST(0.60184224705858003), + FRAC_CONST(0.60428953094815596), + FRAC_CONST(0.60673112703452448), + FRAC_CONST(0.60916701233645321), + FRAC_CONST(0.61159716392646191), + FRAC_CONST(0.61402155893103838), + FRAC_CONST(0.61644017453085365), + FRAC_CONST(0.61885298796097632), + FRAC_CONST(0.62125997651108755), + FRAC_CONST(0.62366111752569453), + FRAC_CONST(0.62605638840434352), + FRAC_CONST(0.62844576660183271), + FRAC_CONST(0.63082922962842447), + FRAC_CONST(0.63320675505005719), + FRAC_CONST(0.63557832048855611), + FRAC_CONST(0.63794390362184406), + FRAC_CONST(0.64030348218415167), + FRAC_CONST(0.64265703396622686), + FRAC_CONST(0.64500453681554393), + FRAC_CONST(0.64734596863651206), + FRAC_CONST(0.64968130739068319), + FRAC_CONST(0.6520105310969595), + FRAC_CONST(0.65433361783180044), + FRAC_CONST(0.65665054572942894), + FRAC_CONST(0.65896129298203732), + FRAC_CONST(0.66126583783999227), + FRAC_CONST(0.66356415861203977), + FRAC_CONST(0.66585623366550972), + FRAC_CONST(0.66814204142651845), + FRAC_CONST(0.67042156038017309), + FRAC_CONST(0.67269476907077286), + FRAC_CONST(0.67496164610201193), + FRAC_CONST(0.67722217013718033), + FRAC_CONST(0.67947631989936497), + FRAC_CONST(0.68172407417164971), + FRAC_CONST(0.6839654117973154), + FRAC_CONST(0.68620031168003859), + FRAC_CONST(0.68842875278409044), + FRAC_CONST(0.6906507141345346), + FRAC_CONST(0.69286617481742463), + FRAC_CONST(0.69507511398000088), + FRAC_CONST(0.69727751083088652), + FRAC_CONST(0.69947334464028377), + FRAC_CONST(0.70166259474016845), + FRAC_CONST(0.70384524052448494), + FRAC_CONST(0.70602126144933974), + FRAC_CONST(0.70819063703319529), + FRAC_CONST(0.71035334685706231), + FRAC_CONST(0.71250937056469232), + FRAC_CONST(0.71465868786276898), + FRAC_CONST(0.71680127852109954), + FRAC_CONST(0.71893712237280438), + FRAC_CONST(0.72106619931450811), + FRAC_CONST(0.72318848930652735), + FRAC_CONST(0.72530397237306066), + FRAC_CONST(0.72741262860237577), + FRAC_CONST(0.7295144381469969), + FRAC_CONST(0.73160938122389252), + FRAC_CONST(0.73369743811466026), + FRAC_CONST(0.73577858916571348), + FRAC_CONST(0.73785281478846598), + FRAC_CONST(0.73992009545951609), + FRAC_CONST(0.74198041172083096), + FRAC_CONST(0.74403374417992918), + FRAC_CONST(0.74608007351006378), + FRAC_CONST(0.74811938045040349), + FRAC_CONST(0.75015164580621496), + FRAC_CONST(0.7521768504490427), + FRAC_CONST(0.75419497531688917), + FRAC_CONST(0.75620600141439454), + FRAC_CONST(0.75820990981301528), + FRAC_CONST(0.76020668165120242), + FRAC_CONST(0.7621962981345789), + FRAC_CONST(0.76417874053611667), + FRAC_CONST(0.76615399019631281), + FRAC_CONST(0.76812202852336531), + FRAC_CONST(0.7700828369933479), + FRAC_CONST(0.77203639715038441), + FRAC_CONST(0.77398269060682279), + FRAC_CONST(0.77592169904340758), + FRAC_CONST(0.77785340420945304), + FRAC_CONST(0.77977778792301444), + FRAC_CONST(0.78169483207105939), + FRAC_CONST(0.7836045186096382), + FRAC_CONST(0.78550682956405393), + FRAC_CONST(0.78740174702903132), + FRAC_CONST(0.78928925316888565), + FRAC_CONST(0.79116933021769009), + FRAC_CONST(0.79304196047944364), + FRAC_CONST(0.79490712632823701), + FRAC_CONST(0.79676481020841872), + FRAC_CONST(0.79861499463476082), + FRAC_CONST(0.80045766219262271), + FRAC_CONST(0.80229279553811572), + FRAC_CONST(0.8041203773982657), + FRAC_CONST(0.80594039057117628), + FRAC_CONST(0.80775281792619036), + FRAC_CONST(0.80955764240405126), + FRAC_CONST(0.81135484701706373), + FRAC_CONST(0.81314441484925359), + FRAC_CONST(0.81492632905652662), + FRAC_CONST(0.81670057286682785), + FRAC_CONST(0.81846712958029866), + FRAC_CONST(0.82022598256943469), + FRAC_CONST(0.82197711527924155), + FRAC_CONST(0.82372051122739132), + FRAC_CONST(0.82545615400437744), + FRAC_CONST(0.82718402727366902), + FRAC_CONST(0.82890411477186487), + FRAC_CONST(0.8306164003088462), + FRAC_CONST(0.83232086776792968), + FRAC_CONST(0.83401750110601813), + FRAC_CONST(0.8357062843537526), + FRAC_CONST(0.83738720161566194), + FRAC_CONST(0.83906023707031263), + FRAC_CONST(0.84072537497045807), + FRAC_CONST(0.84238259964318596), + FRAC_CONST(0.84403189549006641), + FRAC_CONST(0.84567324698729907), + FRAC_CONST(0.84730663868585832), + FRAC_CONST(0.84893205521163961), + FRAC_CONST(0.85054948126560337), + FRAC_CONST(0.85215890162391983), + FRAC_CONST(0.8537603011381113), + FRAC_CONST(0.85535366473519603), + FRAC_CONST(0.85693897741782865), + FRAC_CONST(0.85851622426444274), + FRAC_CONST(0.86008539042939014), + FRAC_CONST(0.8616464611430813), + FRAC_CONST(0.86319942171212416), + FRAC_CONST(0.86474425751946238), + FRAC_CONST(0.86628095402451299), + FRAC_CONST(0.86780949676330321), + FRAC_CONST(0.86932987134860673), + FRAC_CONST(0.87084206347007886), + FRAC_CONST(0.87234605889439154), + FRAC_CONST(0.87384184346536675), + FRAC_CONST(0.87532940310411078), + FRAC_CONST(0.87680872380914576), + FRAC_CONST(0.87827979165654146), + FRAC_CONST(0.87974259280004741), + FRAC_CONST(0.88119711347122198), + FRAC_CONST(0.88264333997956279), + FRAC_CONST(0.88408125871263499), + FRAC_CONST(0.88551085613619995), + FRAC_CONST(0.88693211879434208), + FRAC_CONST(0.88834503330959624), + FRAC_CONST(0.88974958638307289), + FRAC_CONST(0.89114576479458318), + FRAC_CONST(0.89253355540276469), + FRAC_CONST(0.89391294514520325), + FRAC_CONST(0.89528392103855758), + FRAC_CONST(0.89664647017868015), + FRAC_CONST(0.89800057974073988), + FRAC_CONST(0.89934623697934146), + FRAC_CONST(0.90068342922864686), + FRAC_CONST(0.90201214390249307), + FRAC_CONST(0.90333236849451182), + FRAC_CONST(0.90464409057824624), + FRAC_CONST(0.90594729780726846), + FRAC_CONST(0.90724197791529593), + FRAC_CONST(0.90852811871630612), + FRAC_CONST(0.90980570810465222), + FRAC_CONST(0.91107473405517625), + FRAC_CONST(0.91233518462332275), + FRAC_CONST(0.91358704794525081), + FRAC_CONST(0.91483031223794609), + FRAC_CONST(0.91606496579933161), + FRAC_CONST(0.91729099700837791), + FRAC_CONST(0.91850839432521225), + FRAC_CONST(0.91971714629122736), + FRAC_CONST(0.92091724152918952), + FRAC_CONST(0.92210866874334507), + FRAC_CONST(0.92329141671952764), + FRAC_CONST(0.9244654743252626), + FRAC_CONST(0.92563083050987272), + FRAC_CONST(0.92678747430458175), + FRAC_CONST(0.92793539482261789), + FRAC_CONST(0.92907458125931575), + FRAC_CONST(0.93020502289221907), + FRAC_CONST(0.93132670908118043), + FRAC_CONST(0.93243962926846236), + FRAC_CONST(0.93354377297883617), + FRAC_CONST(0.93463912981968078), + FRAC_CONST(0.93572568948108037), + FRAC_CONST(0.93680344173592156), + FRAC_CONST(0.93787237643998989), + FRAC_CONST(0.93893248353206449), + FRAC_CONST(0.93998375303401394), + FRAC_CONST(0.94102617505088926), + FRAC_CONST(0.94205973977101731), + FRAC_CONST(0.94308443746609349), + FRAC_CONST(0.94410025849127266), + FRAC_CONST(0.94510719328526061), + FRAC_CONST(0.94610523237040334), + FRAC_CONST(0.94709436635277722), + FRAC_CONST(0.94807458592227623), + FRAC_CONST(0.94904588185270056), + FRAC_CONST(0.950008245001843), + FRAC_CONST(0.95096166631157508), + FRAC_CONST(0.95190613680793223), + FRAC_CONST(0.95284164760119872), + FRAC_CONST(0.95376818988599033), + FRAC_CONST(0.95468575494133834), + FRAC_CONST(0.95559433413077111), + FRAC_CONST(0.95649391890239499), + FRAC_CONST(0.95738450078897586), + FRAC_CONST(0.95826607140801767), + FRAC_CONST(0.95913862246184189), + FRAC_CONST(0.96000214573766585), + FRAC_CONST(0.96085663310767966), + FRAC_CONST(0.96170207652912254), + FRAC_CONST(0.96253846804435916), + FRAC_CONST(0.96336579978095405), + FRAC_CONST(0.96418406395174572), + FRAC_CONST(0.96499325285492032), + FRAC_CONST(0.96579335887408357), + FRAC_CONST(0.96658437447833312), + FRAC_CONST(0.96736629222232851), + FRAC_CONST(0.96813910474636233), + FRAC_CONST(0.96890280477642887), + FRAC_CONST(0.96965738512429245), + FRAC_CONST(0.9704028386875555), + FRAC_CONST(0.97113915844972509), + FRAC_CONST(0.9718663374802794), + FRAC_CONST(0.97258436893473221), + FRAC_CONST(0.97329324605469825), + FRAC_CONST(0.97399296216795583), + FRAC_CONST(0.97468351068851067), + FRAC_CONST(0.97536488511665687), + FRAC_CONST(0.97603707903903902), + FRAC_CONST(0.97670008612871184), + FRAC_CONST(0.97735390014519996), + FRAC_CONST(0.97799851493455714), + FRAC_CONST(0.9786339244294231), + FRAC_CONST(0.97926012264908202), + FRAC_CONST(0.97987710369951764), + FRAC_CONST(0.98048486177346938), + FRAC_CONST(0.98108339115048659), + FRAC_CONST(0.98167268619698311), + FRAC_CONST(0.98225274136628937), + FRAC_CONST(0.98282355119870524), + FRAC_CONST(0.98338511032155118), + FRAC_CONST(0.98393741344921892), + FRAC_CONST(0.98448045538322093), + FRAC_CONST(0.98501423101223984), + FRAC_CONST(0.98553873531217606), + FRAC_CONST(0.98605396334619544), + FRAC_CONST(0.98655991026477541), + FRAC_CONST(0.98705657130575097), + FRAC_CONST(0.98754394179435923), + FRAC_CONST(0.98802201714328353), + FRAC_CONST(0.98849079285269659), + FRAC_CONST(0.98895026451030299), + FRAC_CONST(0.98940042779138038), + FRAC_CONST(0.98984127845882053), + FRAC_CONST(0.99027281236316911), + FRAC_CONST(0.99069502544266463), + FRAC_CONST(0.99110791372327678), + FRAC_CONST(0.9915114733187439), + FRAC_CONST(0.99190570043060933), + FRAC_CONST(0.99229059134825737), + FRAC_CONST(0.99266614244894802), + FRAC_CONST(0.99303235019785141), + FRAC_CONST(0.99338921114808065), + FRAC_CONST(0.9937367219407246), + FRAC_CONST(0.99407487930487937), + FRAC_CONST(0.9944036800576791), + FRAC_CONST(0.9947231211043257), + FRAC_CONST(0.99503319943811863), + FRAC_CONST(0.99533391214048228), + FRAC_CONST(0.99562525638099431), + FRAC_CONST(0.99590722941741172), + FRAC_CONST(0.99617982859569687), + FRAC_CONST(0.99644305135004263), + FRAC_CONST(0.99669689520289606), + FRAC_CONST(0.99694135776498216), + FRAC_CONST(0.99717643673532619), + FRAC_CONST(0.9974021299012753), + FRAC_CONST(0.99761843513851955), + FRAC_CONST(0.99782535041111164), + FRAC_CONST(0.99802287377148624), + FRAC_CONST(0.99821100336047819), + FRAC_CONST(0.99838973740734016), + FRAC_CONST(0.99855907422975931), + FRAC_CONST(0.99871901223387294), + FRAC_CONST(0.99886954991428356), + FRAC_CONST(0.99901068585407338), + FRAC_CONST(0.99914241872481691), + FRAC_CONST(0.99926474728659442), + FRAC_CONST(0.99937767038800285), + FRAC_CONST(0.99948118696616695), + FRAC_CONST(0.99957529604674922), + FRAC_CONST(0.99965999674395922), + FRAC_CONST(0.99973528826056168), + FRAC_CONST(0.99980116988788426), + FRAC_CONST(0.99985764100582386), + FRAC_CONST(0.9999047010828529), + FRAC_CONST(0.99994234967602391), + FRAC_CONST(0.99997058643097414), + FRAC_CONST(0.9999894110819284), + FRAC_CONST(0.99999882345170188) }; -real_t sine_mid_480[] = +#ifdef ALLOW_SMALL_FRAMELENGTH +ALIGN static const real_t sine_mid_480[] = { - 0x6B3BA, - 0x141B2A, - 0x21828C, - 0x2EE9D6, - 0x3C50FF, - 0x49B7FE, - 0x571EC9, - 0x648558, - 0x71EB9F, - 0x7F5197, - 0x8CB735, - 0x9A1C71, - 0xA78140, - 0xB4E59A, - 0xC24975, - 0xCFACC7, - 0xDD0F88, - 0xEA71AD, - 0xF7D32E, - 0x1053401, - 0x112941D, - 0x11FF378, - 0x12D5209, - 0x13AAFC7, - 0x1480CA7, - 0x15568A2, - 0x162C3AD, - 0x1701DBE, - 0x17D76CE, - 0x18ACED1, - 0x19825C0, - 0x1A57B90, - 0x1B2D039, - 0x1C023B0, - 0x1CD75EC, - 0x1DAC6E5, - 0x1E81691, - 0x1F564E6, - 0x202B1DB, - 0x20FFD67, - 0x21D4780, - 0x22A901E, - 0x237D736, - 0x2451CBF, - 0x25260B1, - 0x25FA302, - 0x26CE3A8, - 0x27A229B, - 0x2875FD0, - 0x2949B3F, - 0x2A1D4DF, - 0x2AF0CA5, - 0x2BC4289, - 0x2C97682, - 0x2D6A886, - 0x2E3D88C, - 0x2F1068B, - 0x2FE3279, - 0x30B5C4E, - 0x3188400, - 0x325A985, - 0x332CCD5, - 0x33FEDE6, - 0x34D0CB0, - 0x35A2928, - 0x3674346, - 0x3745B01, - 0x381704E, - 0x38E8326, - 0x39B937F, - 0x3A8A150, - 0x3B5AC90, - 0x3C2B534, - 0x3CFBB36, - 0x3DCBE8A, - 0x3E9BF29, - 0x3F6BD08, - 0x403B81F, - 0x410B065, - 0x41DA5D1, - 0x42A9859, - 0x43787F4, - 0x444749A, - 0x4515E41, - 0x45E44E1, - 0x46B286F, - 0x47808E4, - 0x484E635, - 0x491C05B, - 0x49E974C, - 0x4AB6AFE, - 0x4B83B6A, - 0x4C50886, - 0x4D1D249, - 0x4DE98AA, - 0x4EB5B9F, - 0x4F81B22, - 0x504D727, - 0x5118FA6, - 0x51E4497, - 0x52AF5F0, - 0x537A3A9, - 0x5444DB8, - 0x550F415, - 0x55D96B7, - 0x56A3595, - 0x576D0A6, - 0x58367E1, - 0x58FFB3E, - 0x59C8AB3, - 0x5A91638, - 0x5B59DC4, - 0x5C2214E, - 0x5CEA0CE, - 0x5DB1C3A, - 0x5E7938A, - 0x5F406B5, - 0x60075B3, - 0x60CE07A, - 0x6194702, - 0x625A943, - 0x6320732, - 0x63E60C9, - 0x64AB5FE, - 0x65706C9, - 0x6635320, - 0x66F9AFC, - 0x67BDE53, - 0x6881D1E, - 0x6945752, - 0x6A08CE9, - 0x6ACBDD9, - 0x6B8EA1A, - 0x6C511A3, - 0x6D1346B, - 0x6DD526B, - 0x6E96B9A, - 0x6F57FEE, - 0x7018F60, - 0x70D99E8, - 0x7199F7C, - 0x725A014, - 0x7319BA9, - 0x73D9231, - 0x74983A4, - 0x7556FFA, - 0x761572A, - 0x76D392C, - 0x77915F7, - 0x784ED84, - 0x790BFCA, - 0x79C8CC1, - 0x7A85460, - 0x7B416A0, - 0x7BFD377, - 0x7CB8ADE, - 0x7D73CCC, - 0x7E2E93A, - 0x7EE901F, - 0x7FA3172, - 0x805CD2C, - 0x8116345, - 0x81CF3B4, - 0x8287E72, - 0x8340376, - 0x83F82B8, - 0x84AFC30, - 0x8566FD6, - 0x861DDA2, - 0x86D458C, - 0x878A78B, - 0x8840399, - 0x88F59AD, - 0x89AA9BF, - 0x8A5F3C7, - 0x8B137BD, - 0x8BC7599, - 0x8C7AD54, - 0x8D2DEE5, - 0x8DE0A45, - 0x8E92F6C, - 0x8F44E51, - 0x8FF66EE, - 0x90A793A, - 0x915852E, - 0x9208AC2, - 0x92B89ED, - 0x93682AA, - 0x94174EF, - 0x94C60B4, - 0x95745F4, - 0x96224A5, - 0x96CFCC0, - 0x977CE3D, - 0x9829916, - 0x98D5D42, - 0x9981AB9, - 0x9A2D175, - 0x9AD816D, - 0x9B82A9B, - 0x9C2CCF6, - 0x9CD6878, - 0x9D7FD18, - 0x9E28AD0, - 0x9ED1197, - 0x9F79168, - 0xA020A39, - 0xA0C7C05, - 0xA16E6C2, - 0xA214A6C, - 0xA2BA6F9, - 0xA35FC62, - 0xA404AA1, - 0xA4A91AF, - 0xA54D183, - 0xA5F0A17, - 0xA693B63, - 0xA736561, - 0xA7D880A, - 0xA87A355, - 0xA91B73D, - 0xA9BC3BA, - 0xAA5C8C4, - 0xAAFC656, - 0xAB9BC67, - 0xAC3AAF2, - 0xACD91EE, - 0xAD77156, - 0xAE14921, - 0xAEB194A, - 0xAF4E1C9, - 0xAFEA297, - 0xB085BAE, - 0xB120D07, - 0xB1BB69B, - 0xB255863, - 0xB2EF258, - 0xB388474, - 0xB420EB0, - 0xB4B9105, - 0xB550B6D, - 0xB5E7DE0, - 0xB67E859, - 0xB714AD1, - 0xB7AA541, - 0xB83F7A2, - 0xB8D41EF, - 0xB968420, - 0xB9FBE2E, - 0xBA8F015, - 0xBB219CC, - 0xBBB3B4E, - 0xBC45495, - 0xBCD6599, - 0xBD66E54, - 0xBDF6EC1, - 0xBE866D9, - 0xBF15695, - 0xBFA3DEF, - 0xC031CE1, - 0xC0BF365, - 0xC14C175, - 0xC1D870A, - 0xC26441E, - 0xC2EF8AB, - 0xC37A4AC, - 0xC404819, - 0xC48E2ED, - 0xC517522, - 0xC59FEB1, - 0xC627F96, - 0xC6AF7C9, - 0xC736745, - 0xC7BCE04, - 0xC842C00, - 0xC8C8134, - 0xC94CD98, - 0xC9D1128, - 0xCA54BDE, - 0xCAD7DB4, - 0xCB5A6A4, - 0xCBDC6A9, - 0xCC5DDBC, - 0xCCDEBD8, - 0xCD5F0F8, - 0xCDDED16, - 0xCE5E02C, - 0xCEDCA34, - 0xCF5AB29, - 0xCFD8306, - 0xD0551C5, - 0xD0D1761, - 0xD14D3D4, - 0xD1C8718, - 0xD243129, - 0xD2BD200, - 0xD336999, - 0xD3AF7EE, - 0xD427CFB, - 0xD49F8B8, - 0xD516B22, - 0xD58D434, - 0xD6033E7, - 0xD678A37, - 0xD6ED71E, - 0xD761A98, - 0xD7D54A0, - 0xD848530, - 0xD8BAC43, - 0xD92C9D4, - 0xD99DDDE, - 0xDA0E85D, - 0xDA7E94C, - 0xDAEE0A4, - 0xDB5CE62, - 0xDBCB281, - 0xDC38CFC, - 0xDCA5DCE, - 0xDD124F2, - 0xDD7E263, - 0xDDE961E, - 0xDE5401C, - 0xDEBE05A, - 0xDF276D2, - 0xDF90381, - 0xDFF8661, - 0xE05FF6E, - 0xE0C6EA3, - 0xE12D3FD, - 0xE192F75, - 0xE1F8109, - 0xE25C8B3, - 0xE2C066F, - 0xE323A39, - 0xE38640D, - 0xE3E83E5, - 0xE4499BE, - 0xE4AA594, - 0xE50A762, - 0xE569F23, - 0xE5C8CD5, - 0xE627072, - 0xE6849F7, - 0xE6E195F, - 0xE73DEA7, - 0xE7999CA, - 0xE7F4AC4, - 0xE84F191, - 0xE8A8E2E, - 0xE902096, - 0xE95A8C6, - 0xE9B26B9, - 0xEA09A6C, - 0xEA603DA, - 0xEAB6301, - 0xEB0B7DC, - 0xEB60268, - 0xEBB42A1, - 0xEC07883, - 0xEC5A40A, - 0xECAC533, - 0xECFDBFB, - 0xED4E85D, - 0xED9EA56, - 0xEDEE1E3, - 0xEE3CF01, - 0xEE8B1AB, - 0xEED89DE, - 0xEF25797, - 0xEF71AD3, - 0xEFBD38E, - 0xF0081C5, - 0xF052574, - 0xF09BE99, - 0xF0E4D30, - 0xF12D136, - 0xF174AA7, - 0xF1BB981, - 0xF201DC1, - 0xF247763, - 0xF28C664, - 0xF2D0AC2, - 0xF314479, - 0xF357386, - 0xF3997E7, - 0xF3DB198, - 0xF41C097, - 0xF45C4E1, - 0xF49BE72, - 0xF4DAD49, - 0xF519162, - 0xF556ABB, - 0xF593951, - 0xF5CFD22, - 0xF60B62A, - 0xF646467, - 0xF6807D6, - 0xF6BA076, - 0xF6F2E43, - 0xF72B13A, - 0xF76295B, - 0xF7996A1, - 0xF7CF90B, - 0xF805096, - 0xF839D40, - 0xF86DF06, - 0xF8A15E7, - 0xF8D41E0, - 0xF9062EF, - 0xF937911, - 0xF968445, - 0xF998488, - 0xF9C79D8, - 0xF9F6433, - 0xFA24398, - 0xFA51803, - 0xFA7E174, - 0xFAA9FE7, - 0xFAD535C, - 0xFAFFBD0, - 0xFB29942, - 0xFB52BAF, - 0xFB7B316, - 0xFBA2F75, - 0xFBCA0CA, - 0xFBF0714, - 0xFC16251, - 0xFC3B27F, - 0xFC5F79C, - 0xFC831A7, - 0xFCA609F, - 0xFCC8482, - 0xFCE9D4E, - 0xFD0AB03, - 0xFD2AD9D, - 0xFD4A51D, - 0xFD69180, - 0xFD872C6, - 0xFDA48ED, - 0xFDC13F4, - 0xFDDD3D9, - 0xFDF889B, - 0xFE13239, - 0xFE2D0B3, - 0xFE46406, - 0xFE5EC31, - 0xFE76934, - 0xFE8DB0E, - 0xFEA41BD, - 0xFEB9D41, - 0xFECED99, - 0xFEE32C3, - 0xFEF6CBE, - 0xFF09B8B, - 0xFF1BF28, - 0xFF2D794, - 0xFF3E4CE, - 0xFF4E6D7, - 0xFF5DDAC, - 0xFF6C94E, - 0xFF7A9BC, - 0xFF87EF4, - 0xFF948F7, - 0xFFA07C4, - 0xFFABB5B, - 0xFFB63BB, - 0xFFC00E3, - 0xFFC92D3, - 0xFFD198B, - 0xFFD950A, - 0xFFE0550, - 0xFFE6A5D, - 0xFFEC430, - 0xFFF12C9, - 0xFFF5629, - 0xFFF8E4E, - 0xFFFBB38, - 0xFFFDCE8, - 0xFFFF35D, - 0xFFFFE98 + FRAC_CONST(0.0016362454436240478), + FRAC_CONST(0.00490871880799799), + FRAC_CONST(0.0081811396039371282), + FRAC_CONST(0.011453472786443779), + FRAC_CONST(0.014725683311458524), + FRAC_CONST(0.017997736136235509), + FRAC_CONST(0.021269596219717739), + FRAC_CONST(0.024541228522912285), + FRAC_CONST(0.027812598009265607), + FRAC_CONST(0.03108366964503869), + FRAC_CONST(0.034354408399682276), + FRAC_CONST(0.037624779246211978), + FRAC_CONST(0.04089474716158345), + FRAC_CONST(0.044164277127067358), + FRAC_CONST(0.047433334128624507), + FRAC_CONST(0.050701883157280733), + FRAC_CONST(0.053969889209501881), + FRAC_CONST(0.057237317287568618), + FRAC_CONST(0.060504132399951269), + FRAC_CONST(0.063770299561684493), + FRAC_CONST(0.06703578379474201), + FRAC_CONST(0.070300550128411174), + FRAC_CONST(0.073564563599667426), + FRAC_CONST(0.076827789253548759), + FRAC_CONST(0.080090192143530081), + FRAC_CONST(0.083351737331897449), + FRAC_CONST(0.086612389890122182), + FRAC_CONST(0.089872114899234967), + FRAC_CONST(0.093130877450199795), + FRAC_CONST(0.096388642644287828), + FRAC_CONST(0.09964537559345106), + FRAC_CONST(0.1029010414206961), + FRAC_CONST(0.10615560526045748), + FRAC_CONST(0.10940903225897117), + FRAC_CONST(0.11266128757464781), + FRAC_CONST(0.11591233637844581), + FRAC_CONST(0.11916214385424433), + FRAC_CONST(0.1224106751992162), + FRAC_CONST(0.12565789562420052), + FRAC_CONST(0.12890377035407541), + FRAC_CONST(0.13214826462813015), + FRAC_CONST(0.13539134370043773), + FRAC_CONST(0.13863297284022669), + FRAC_CONST(0.14187311733225325), + FRAC_CONST(0.14511174247717309), + FRAC_CONST(0.14834881359191271), + FRAC_CONST(0.15158429601004111), + FRAC_CONST(0.15481815508214106), + FRAC_CONST(0.1580503561761798), + FRAC_CONST(0.16128086467788047), + FRAC_CONST(0.16450964599109233), + FRAC_CONST(0.16773666553816149), + FRAC_CONST(0.17096188876030122), + FRAC_CONST(0.17418528111796186), + FRAC_CONST(0.17740680809120093), + FRAC_CONST(0.18062643518005275), + FRAC_CONST(0.18384412790489776), + FRAC_CONST(0.18705985180683199), + FRAC_CONST(0.19027357244803589), + FRAC_CONST(0.19348525541214331), + FRAC_CONST(0.19669486630460997), + FRAC_CONST(0.19990237075308173), + FRAC_CONST(0.20310773440776286), + FRAC_CONST(0.20631092294178383), + FRAC_CONST(0.20951190205156878), + FRAC_CONST(0.21271063745720317), + FRAC_CONST(0.21590709490280058), + FRAC_CONST(0.2191012401568698), + FRAC_CONST(0.22229303901268133), + FRAC_CONST(0.22548245728863364), + FRAC_CONST(0.22866946082861941), + FRAC_CONST(0.23185401550239115), + FRAC_CONST(0.23503608720592667), + FRAC_CONST(0.23821564186179459), + FRAC_CONST(0.24139264541951888), + FRAC_CONST(0.24456706385594387), + FRAC_CONST(0.24773886317559846), + FRAC_CONST(0.25090800941106001), + FRAC_CONST(0.25407446862331851), + FRAC_CONST(0.25723820690213967), + FRAC_CONST(0.26039919036642817), + FRAC_CONST(0.26355738516459076), + FRAC_CONST(0.26671275747489837), + FRAC_CONST(0.2698652735058486), + FRAC_CONST(0.27301489949652735), + FRAC_CONST(0.27616160171697068), + FRAC_CONST(0.27930534646852595), + FRAC_CONST(0.28244610008421245), + FRAC_CONST(0.2855838289290823), + FRAC_CONST(0.28871849940058025), + FRAC_CONST(0.29185007792890405), + FRAC_CONST(0.29497853097736348), + FRAC_CONST(0.2981038250427398), + FRAC_CONST(0.30122592665564446), + FRAC_CONST(0.30434480238087736), + FRAC_CONST(0.30746041881778519), + FRAC_CONST(0.31057274260061901), + FRAC_CONST(0.31368174039889146), + FRAC_CONST(0.31678737891773395), + FRAC_CONST(0.31988962489825296), + FRAC_CONST(0.32298844511788638), + FRAC_CONST(0.32608380639075912), + FRAC_CONST(0.32917567556803889), + FRAC_CONST(0.33226401953829071), + FRAC_CONST(0.33534880522783189), + FRAC_CONST(0.33842999960108583), + FRAC_CONST(0.34150756966093632), + FRAC_CONST(0.34458148244908043), + FRAC_CONST(0.34765170504638188), + FRAC_CONST(0.35071820457322322), + FRAC_CONST(0.35378094818985806), + FRAC_CONST(0.35683990309676283), + FRAC_CONST(0.35989503653498811), + FRAC_CONST(0.36294631578650921), + FRAC_CONST(0.36599370817457672), + FRAC_CONST(0.36903718106406647), + FRAC_CONST(0.37207670186182878), + FRAC_CONST(0.37511223801703802), + FRAC_CONST(0.37814375702154046), + FRAC_CONST(0.38117122641020335), + FRAC_CONST(0.38419461376126157), + FRAC_CONST(0.38721388669666562), + FRAC_CONST(0.39022901288242801), + FRAC_CONST(0.39323996002896966), + FRAC_CONST(0.39624669589146555), + FRAC_CONST(0.39924918827019029), + FRAC_CONST(0.40224740501086254), + FRAC_CONST(0.40524131400498986), + FRAC_CONST(0.40823088319021217), + FRAC_CONST(0.41121608055064529), + FRAC_CONST(0.41419687411722372), + FRAC_CONST(0.41717323196804335), + FRAC_CONST(0.42014512222870243), + FRAC_CONST(0.42311251307264408), + FRAC_CONST(0.42607537272149631), + FRAC_CONST(0.4290336694454126), + FRAC_CONST(0.43198737156341183), + FRAC_CONST(0.43493644744371707), + FRAC_CONST(0.43788086550409511), + FRAC_CONST(0.44082059421219388), + FRAC_CONST(0.44375560208588088), + FRAC_CONST(0.44668585769357955), + FRAC_CONST(0.4496113296546066), + FRAC_CONST(0.45253198663950756), + FRAC_CONST(0.45544779737039259), + FRAC_CONST(0.45835873062127125), + FRAC_CONST(0.46126475521838717), + FRAC_CONST(0.46416584004055156), + FRAC_CONST(0.46706195401947659), + FRAC_CONST(0.46995306614010829), + FRAC_CONST(0.47283914544095862), + FRAC_CONST(0.47572016101443682), + FRAC_CONST(0.47859608200718085), + FRAC_CONST(0.4814668776203872), + FRAC_CONST(0.48433251711014125), + FRAC_CONST(0.4871929697877464), + FRAC_CONST(0.49004820502005247), + FRAC_CONST(0.49289819222978404), + FRAC_CONST(0.49574290089586776), + FRAC_CONST(0.49858230055375902), + FRAC_CONST(0.50141636079576901), + FRAC_CONST(0.50424505127138919), + FRAC_CONST(0.50706834168761705), + FRAC_CONST(0.50988620180928057), + FRAC_CONST(0.51269860145936175), + FRAC_CONST(0.51550551051931948), + FRAC_CONST(0.51830689892941317), + FRAC_CONST(0.5211027366890234), + FRAC_CONST(0.52389299385697385), + FRAC_CONST(0.52667764055185196), + FRAC_CONST(0.52945664695232897), + FRAC_CONST(0.53222998329747884), + FRAC_CONST(0.53499761988709726), + FRAC_CONST(0.53775952708201991), + FRAC_CONST(0.54051567530443978), + FRAC_CONST(0.54326603503822357), + FRAC_CONST(0.54601057682922816), + FRAC_CONST(0.54874927128561579), + FRAC_CONST(0.55148208907816942), + FRAC_CONST(0.55420900094060566), + FRAC_CONST(0.55692997766988939), + FRAC_CONST(0.559644990126546), + FRAC_CONST(0.56235400923497314), + FRAC_CONST(0.56505700598375252), + FRAC_CONST(0.56775395142596052), + FRAC_CONST(0.57044481667947822), + FRAC_CONST(0.57312957292730071), + FRAC_CONST(0.57580819141784534), + FRAC_CONST(0.57848064346525996), + FRAC_CONST(0.58114690044973039), + FRAC_CONST(0.58380693381778626), + FRAC_CONST(0.58646071508260733), + FRAC_CONST(0.58910821582432815), + FRAC_CONST(0.5917494076903429), + FRAC_CONST(0.5943842623956086), + FRAC_CONST(0.59701275172294799), + FRAC_CONST(0.59963484752335228), + FRAC_CONST(0.60225052171628191), + FRAC_CONST(0.60485974628996786), + FRAC_CONST(0.60746249330171098), + FRAC_CONST(0.61005873487818185), + FRAC_CONST(0.61264844321571899), + FRAC_CONST(0.61523159058062682), + FRAC_CONST(0.61780814930947225), + FRAC_CONST(0.62037809180938108), + FRAC_CONST(0.62294139055833397), + FRAC_CONST(0.6254980181054608), + FRAC_CONST(0.62804794707133416), + FRAC_CONST(0.63059115014826372), + FRAC_CONST(0.63312760010058777), + FRAC_CONST(0.63565726976496484), + FRAC_CONST(0.63818013205066515), + FRAC_CONST(0.64069615993986073), + FRAC_CONST(0.64320532648791406), + FRAC_CONST(0.64570760482366729), + FRAC_CONST(0.64820296814972966), + FRAC_CONST(0.65069138974276486), + FRAC_CONST(0.65317284295377676), + FRAC_CONST(0.65564730120839498), + FRAC_CONST(0.65811473800715958), + FRAC_CONST(0.660575126925805), + FRAC_CONST(0.66302844161554231), + FRAC_CONST(0.6654746558033422), + FRAC_CONST(0.66791374329221598), + FRAC_CONST(0.67034567796149647), + FRAC_CONST(0.67277043376711676), + FRAC_CONST(0.67518798474189046), + FRAC_CONST(0.67759830499578866), + FRAC_CONST(0.68000136871621808), + FRAC_CONST(0.68239715016829683), + FRAC_CONST(0.6847856236951303), + FRAC_CONST(0.68716676371808583), + FRAC_CONST(0.68954054473706683), + FRAC_CONST(0.69190694133078579), + FRAC_CONST(0.69426592815703603), + FRAC_CONST(0.69661747995296419), + FRAC_CONST(0.69896157153533944), + FRAC_CONST(0.70129817780082437), + FRAC_CONST(0.7036272737262429), + FRAC_CONST(0.70594883436884903), + FRAC_CONST(0.70826283486659336), + FRAC_CONST(0.71056925043838959), + FRAC_CONST(0.71286805638437978), + FRAC_CONST(0.71515922808619936), + FRAC_CONST(0.71744274100723993), + FRAC_CONST(0.71971857069291278), + FRAC_CONST(0.7219866927709101), + FRAC_CONST(0.72424708295146689), + FRAC_CONST(0.72649971702762028), + FRAC_CONST(0.72874457087546896), + FRAC_CONST(0.73098162045443171), + FRAC_CONST(0.73321084180750484), + FRAC_CONST(0.73543221106151868), + FRAC_CONST(0.73764570442739286), + FRAC_CONST(0.73985129820039208), + FRAC_CONST(0.74204896876037885), + FRAC_CONST(0.7442386925720671), + FRAC_CONST(0.74642044618527381), + FRAC_CONST(0.74859420623517081), + FRAC_CONST(0.75075994944253421), + FRAC_CONST(0.75291765261399446), + FRAC_CONST(0.75506729264228367), + FRAC_CONST(0.75720884650648446), + FRAC_CONST(0.75934229127227548), + FRAC_CONST(0.76146760409217706), + FRAC_CONST(0.76358476220579641), + FRAC_CONST(0.7656937429400712), + FRAC_CONST(0.76779452370951196), + FRAC_CONST(0.76988708201644451), + FRAC_CONST(0.77197139545125026), + FRAC_CONST(0.7740474416926072), + FRAC_CONST(0.77611519850772781), + FRAC_CONST(0.77817464375259782), + FRAC_CONST(0.78022575537221317), + FRAC_CONST(0.78226851140081632), + FRAC_CONST(0.78430288996213138), + FRAC_CONST(0.78632886926959822), + FRAC_CONST(0.78834642762660623), + FRAC_CONST(0.79035554342672631), + FRAC_CONST(0.79235619515394229), + FRAC_CONST(0.79434836138288134), + FRAC_CONST(0.79633202077904397), + FRAC_CONST(0.79830715209903147), + FRAC_CONST(0.8002737341907743), + FRAC_CONST(0.80223174599375802), + FRAC_CONST(0.80418116653924954), + FRAC_CONST(0.80612197495052085), + FRAC_CONST(0.80805415044307316), + FRAC_CONST(0.80997767232485907), + FRAC_CONST(0.81189251999650469), + FRAC_CONST(0.81379867295152986), + FRAC_CONST(0.81569611077656778), + FRAC_CONST(0.81758481315158371), + FRAC_CONST(0.81946475985009259), + FRAC_CONST(0.82133593073937561), + FRAC_CONST(0.82319830578069586), + FRAC_CONST(0.82505186502951278), + FRAC_CONST(0.82689658863569615), + FRAC_CONST(0.82873245684373809), + FRAC_CONST(0.83055944999296494), + FRAC_CONST(0.83237754851774781), + FRAC_CONST(0.83418673294771239), + FRAC_CONST(0.83598698390794668), + FRAC_CONST(0.83777828211920935), + FRAC_CONST(0.83956060839813562), + FRAC_CONST(0.84133394365744296), + FRAC_CONST(0.84309826890613537), + FRAC_CONST(0.84485356524970701), + FRAC_CONST(0.84659981389034411), + FRAC_CONST(0.84833699612712676), + FRAC_CONST(0.85006509335622882), + FRAC_CONST(0.8517840870711173), + FRAC_CONST(0.85349395886275037), + FRAC_CONST(0.85519469041977514), + FRAC_CONST(0.85688626352872277), + FRAC_CONST(0.85856866007420429), + FRAC_CONST(0.86024186203910447), + FRAC_CONST(0.86190585150477417), + FRAC_CONST(0.86356061065122347), + FRAC_CONST(0.86520612175731115), + FRAC_CONST(0.86684236720093533), + FRAC_CONST(0.86846932945922151), + FRAC_CONST(0.87008699110871135), + FRAC_CONST(0.87169533482554817), + FRAC_CONST(0.87329434338566281), + FRAC_CONST(0.87488399966495822), + FRAC_CONST(0.87646428663949283), + FRAC_CONST(0.87803518738566277), + FRAC_CONST(0.87959668508038291), + FRAC_CONST(0.88114876300126743), + FRAC_CONST(0.88269140452680916), + FRAC_CONST(0.8842245931365561), + FRAC_CONST(0.88574831241129048), + FRAC_CONST(0.88726254603320276), + FRAC_CONST(0.88876727778606746), + FRAC_CONST(0.89026249155541637), + FRAC_CONST(0.8917481713287112), + FRAC_CONST(0.89322430119551532), + FRAC_CONST(0.89469086534766362), + FRAC_CONST(0.89614784807943237), + FRAC_CONST(0.89759523378770689), + FRAC_CONST(0.89903300697214927), + FRAC_CONST(0.9004611522353636), + FRAC_CONST(0.90187965428306172), + FRAC_CONST(0.90328849792422594), + FRAC_CONST(0.90468766807127299), + FRAC_CONST(0.90607714974021469), + FRAC_CONST(0.90745692805081868), + FRAC_CONST(0.90882698822676755), + FRAC_CONST(0.91018731559581767), + FRAC_CONST(0.91153789558995579), + FRAC_CONST(0.91287871374555518), + FRAC_CONST(0.91420975570353069), + FRAC_CONST(0.9155310072094921), + FRAC_CONST(0.91684245411389753), + FRAC_CONST(0.91814408237220391), + FRAC_CONST(0.91943587804501858), + FRAC_CONST(0.92071782729824769), + FRAC_CONST(0.92198991640324446), + FRAC_CONST(0.92325213173695675), + FRAC_CONST(0.92450445978207241), + FRAC_CONST(0.92574688712716402), + FRAC_CONST(0.92697940046683291), + FRAC_CONST(0.92820198660185149), + FRAC_CONST(0.92941463243930444), + FRAC_CONST(0.93061732499272909), + FRAC_CONST(0.93181005138225426), + FRAC_CONST(0.93299279883473885), + FRAC_CONST(0.93416555468390772), + FRAC_CONST(0.93532830637048769), + FRAC_CONST(0.93648104144234268), + FRAC_CONST(0.93762374755460598), + FRAC_CONST(0.93875641246981323), + FRAC_CONST(0.93987902405803303), + FRAC_CONST(0.94099157029699743), + FRAC_CONST(0.94209403927222979), + FRAC_CONST(0.94318641917717327), + FRAC_CONST(0.9442686983133165), + FRAC_CONST(0.94534086509031956), + FRAC_CONST(0.9464029080261378), + FRAC_CONST(0.94745481574714419), + FRAC_CONST(0.94849657698825252), + FRAC_CONST(0.94952818059303667), + FRAC_CONST(0.95054961551385087), + FRAC_CONST(0.95156087081194762), + FRAC_CONST(0.95256193565759528), + FRAC_CONST(0.95355279933019343), + FRAC_CONST(0.9545334512183884), + FRAC_CONST(0.95550388082018611), + FRAC_CONST(0.95646407774306541), + FRAC_CONST(0.95741403170408834), + FRAC_CONST(0.95835373253001133), + FRAC_CONST(0.95928317015739362), + FRAC_CONST(0.96020233463270466), + FRAC_CONST(0.96111121611243155), + FRAC_CONST(0.96200980486318388), + FRAC_CONST(0.96289809126179782), + FRAC_CONST(0.96377606579543984), + FRAC_CONST(0.96464371906170809), + FRAC_CONST(0.96550104176873297), + FRAC_CONST(0.96634802473527726), + FRAC_CONST(0.96718465889083372), + FRAC_CONST(0.96801093527572268), + FRAC_CONST(0.96882684504118799), + FRAC_CONST(0.96963237944949143), + FRAC_CONST(0.97042752987400682), + FRAC_CONST(0.97121228779931179), + FRAC_CONST(0.97198664482127939), + FRAC_CONST(0.97275059264716823), + FRAC_CONST(0.97350412309571066), + FRAC_CONST(0.97424722809720088), + FRAC_CONST(0.97497989969358168), + FRAC_CONST(0.97570213003852857), + FRAC_CONST(0.97641391139753486), + FRAC_CONST(0.97711523614799412), + FRAC_CONST(0.97780609677928154), + FRAC_CONST(0.97848648589283505), + FRAC_CONST(0.97915639620223371), + FRAC_CONST(0.9798158205332762), + FRAC_CONST(0.98046475182405801), + FRAC_CONST(0.98110318312504607), + FRAC_CONST(0.98173110759915416), + FRAC_CONST(0.98234851852181571), + FRAC_CONST(0.98295540928105563), + FRAC_CONST(0.9835517733775615), + FRAC_CONST(0.98413760442475307), + FRAC_CONST(0.98471289614885038), + FRAC_CONST(0.98527764238894122), + FRAC_CONST(0.98583183709704714), + FRAC_CONST(0.98637547433818806), + FRAC_CONST(0.98690854829044583), + FRAC_CONST(0.98743105324502667), + FRAC_CONST(0.98794298360632238), + FRAC_CONST(0.98844433389196995), + FRAC_CONST(0.98893509873291074), + FRAC_CONST(0.98941527287344755), + FRAC_CONST(0.98988485117130098), + FRAC_CONST(0.99034382859766479), + FRAC_CONST(0.99079220023725967), + FRAC_CONST(0.99122996128838525), + FRAC_CONST(0.9916571070629725), + FRAC_CONST(0.99207363298663342), + FRAC_CONST(0.99247953459870997), + FRAC_CONST(0.99287480755232194), + FRAC_CONST(0.99325944761441354), + FRAC_CONST(0.99363345066579889), + FRAC_CONST(0.99399681270120555), + FRAC_CONST(0.99434952982931812), + FRAC_CONST(0.9946915982728195), + FRAC_CONST(0.99502301436843166), + FRAC_CONST(0.99534377456695422), + FRAC_CONST(0.9956538754333033), + FRAC_CONST(0.99595331364654771), + FRAC_CONST(0.99624208599994479), + FRAC_CONST(0.99652018940097464), + FRAC_CONST(0.99678762087137318), + FRAC_CONST(0.99704437754716424), + FRAC_CONST(0.99729045667869021), + FRAC_CONST(0.99752585563064111), + FRAC_CONST(0.99775057188208349), + FRAC_CONST(0.9979646030264866), + FRAC_CONST(0.99816794677174903), + FRAC_CONST(0.9983606009402225), + FRAC_CONST(0.99854256346873571), + FRAC_CONST(0.99871383240861611), + FRAC_CONST(0.99887440592571108), + FRAC_CONST(0.99902428230040718), + FRAC_CONST(0.99916345992764877), + FRAC_CONST(0.99929193731695531), + FRAC_CONST(0.99940971309243731), + FRAC_CONST(0.99951678599281069), + FRAC_CONST(0.99961315487141078), + FRAC_CONST(0.99969881869620425), + FRAC_CONST(0.99977377654980037), + FRAC_CONST(0.99983802762946083), + FRAC_CONST(0.99989157124710804), + FRAC_CONST(0.9999344068293331), + FRAC_CONST(0.99996653391740109), + FRAC_CONST(0.99998795216725689), + FRAC_CONST(0.99999866134952808) }; +#endif -real_t ld_mid_512[] = +ALIGN static const real_t ld_mid_512[] = { - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1921F1, - 0x4B64DB, - 0x7DA4DD, - 0xAFE006, - 0xE21468, - 0x1144013, - 0x1466118, - 0x1787587, - 0x1AA7B73, - 0x1DC70ED, - 0x20E5409, - 0x24022DB, - 0x271DB77, - 0x2A37BF1, - 0x2D50261, - 0x3066CDE, - 0x337B97F, - 0x368E65F, - 0x399F198, - 0x3CAD945, - 0x3FB9B85, - 0x42C3675, - 0x45CA837, - 0x48CEEED, - 0x4BD08B8, - 0x4ECF3C0, - 0x51CAE2B, - 0x54C3622, - 0x57B89D0, - 0x5AAA761, - 0x5D98D06, - 0x60838EE, - 0x636A94E, - 0x664DC5B, - 0x692D04C, - 0x6C0835E, - 0x6EDF3CB, - 0x71B1FD5, - 0x74805BD, - 0x774A3C8, - 0x7A0F83E, - 0x7CD0168, - 0x7F8BD96, - 0x8242B16, - 0x84F483D, - 0x87A1361, - 0x8A48ADB, - 0x8CEAD08, - 0x8F87849, - 0x921EB01, - 0x94B0397, - 0x973C075, - 0x99C200A, - 0x9C420C6, - 0x9EBC120, - 0xA12FF8F, - 0xA39DA91, - 0xA6050A6, - 0xA866053, - 0xAAC0820, - 0xAD14699, - 0xAF61A4E, - 0xB1A81D5, - 0xB3E7BC6, - 0xB6206BE, - 0xB85215D, - 0xBA7CA4B, - 0xBCA002F, - 0xBEBC1BA, - 0xC0D0D9E, - 0xC2DE291, - 0xC4E3F51, - 0xC6E229D, - 0xC8D8B3C, - 0xCAC77F6, - 0xCCAE79B, - 0xCE8D8FF, - 0xD064AF9, - 0xD233C68, - 0xD3FAC2D, - 0xD5B9930, - 0xD77025E, - 0xD91E6A7, - 0xDAC4503, - 0xDC61C6D, - 0xDDF6BE6, - 0xDF83274, - 0xE106F23, - 0xE282104, - 0xE3F472C, - 0xE55E0B8, - 0xE6BECC8, - 0xE816A82, - 0xE965913, - 0xEAAB7AC, - 0xEBE8584, - 0xED1C1D8, - 0xEE46BE8, - 0xEF682FF, - 0xF080668, - 0xF18F577, - 0xF294F85, - 0xF3913F0, - 0xF48421D, - 0xF56D977, - 0xF64D96C, - 0xF724173, - 0xF7F1108, - 0xF8B47AC, - 0xF96E4E6, - 0xFA1E845, - 0xFAC515A, - 0xFB61FC0, - 0xFBF5316, - 0xFC7EB01, - 0xFCFE72C, - 0xFD74748, - 0xFDE0B0D, - 0xFE43237, - 0xFE9BC8B, - 0xFEEA9D0, - 0xFF2F9D8, - 0xFF6AC77, - 0xFF9C188, - 0xFFC38ED, - 0xFFE128F, - 0xFFF4E5A, - 0xFFFEC42, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000 + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0.0061358846491544753), + FRAC_CONST(0.01840672990580482), + FRAC_CONST(0.030674803176636626), + FRAC_CONST(0.04293825693494082), + FRAC_CONST(0.055195244349689934), + FRAC_CONST(0.067443919563664051), + FRAC_CONST(0.079682437971430126), + FRAC_CONST(0.091908956497132724), + FRAC_CONST(0.10412163387205459), + FRAC_CONST(0.11631863091190475), + FRAC_CONST(0.12849811079379317), + FRAC_CONST(0.14065823933284921), + FRAC_CONST(0.15279718525844344), + FRAC_CONST(0.16491312048996989), + FRAC_CONST(0.17700422041214875), + FRAC_CONST(0.18906866414980619), + FRAC_CONST(0.2011046348420919), + FRAC_CONST(0.21311031991609136), + FRAC_CONST(0.22508391135979283), + FRAC_CONST(0.2370236059943672), + FRAC_CONST(0.24892760574572015), + FRAC_CONST(0.26079411791527551), + FRAC_CONST(0.27262135544994898), + FRAC_CONST(0.28440753721127188), + FRAC_CONST(0.29615088824362379), + FRAC_CONST(0.30784964004153487), + FRAC_CONST(0.31950203081601569), + FRAC_CONST(0.33110630575987643), + FRAC_CONST(0.34266071731199438), + FRAC_CONST(0.35416352542049034), + FRAC_CONST(0.36561299780477385), + FRAC_CONST(0.37700741021641826), + FRAC_CONST(0.38834504669882625), + FRAC_CONST(0.39962419984564679), + FRAC_CONST(0.41084317105790391), + FRAC_CONST(0.42200027079979968), + FRAC_CONST(0.43309381885315196), + FRAC_CONST(0.4441221445704292), + FRAC_CONST(0.45508358712634384), + FRAC_CONST(0.46597649576796618), + FRAC_CONST(0.47679923006332209), + FRAC_CONST(0.487550160148436), + FRAC_CONST(0.49822766697278187), + FRAC_CONST(0.50883014254310699), + FRAC_CONST(0.51935599016558964), + FRAC_CONST(0.52980362468629461), + FRAC_CONST(0.54017147272989285), + FRAC_CONST(0.55045797293660481), + FRAC_CONST(0.56066157619733603), + FRAC_CONST(0.57078074588696726), + FRAC_CONST(0.58081395809576453), + FRAC_CONST(0.59075970185887416), + FRAC_CONST(0.60061647938386897), + FRAC_CONST(0.61038280627630948), + FRAC_CONST(0.6200572117632891), + FRAC_CONST(0.62963823891492698), + FRAC_CONST(0.63912444486377573), + FRAC_CONST(0.64851440102211244), + FRAC_CONST(0.65780669329707864), + FRAC_CONST(0.66699992230363747), + FRAC_CONST(0.67609270357531592), + FRAC_CONST(0.68508366777270036), + FRAC_CONST(0.693971460889654), + FRAC_CONST(0.7027547444572253), + FRAC_CONST(0.71143219574521643), + FRAC_CONST(0.72000250796138165), + FRAC_CONST(0.7284643904482252), + FRAC_CONST(0.73681656887736979), + FRAC_CONST(0.74505778544146595), + FRAC_CONST(0.75318679904361241), + FRAC_CONST(0.76120238548426178), + FRAC_CONST(0.76910333764557959), + FRAC_CONST(0.77688846567323244), + FRAC_CONST(0.78455659715557524), + FRAC_CONST(0.79210657730021239), + FRAC_CONST(0.79953726910790501), + FRAC_CONST(0.80684755354379922), + FRAC_CONST(0.8140363297059483), + FRAC_CONST(0.82110251499110465), + FRAC_CONST(0.8280450452577558), + FRAC_CONST(0.83486287498638001), + FRAC_CONST(0.84155497743689833), + FRAC_CONST(0.84812034480329712), + FRAC_CONST(0.85455798836540053), + FRAC_CONST(0.86086693863776731), + FRAC_CONST(0.86704624551569265), + FRAC_CONST(0.87309497841829009), + FRAC_CONST(0.87901222642863341), + FRAC_CONST(0.88479709843093779), + FRAC_CONST(0.89044872324475788), + FRAC_CONST(0.89596624975618511), + FRAC_CONST(0.90134884704602203), + FRAC_CONST(0.90659570451491533), + FRAC_CONST(0.91170603200542988), + FRAC_CONST(0.9166790599210427), + FRAC_CONST(0.9215140393420419), + FRAC_CONST(0.92621024213831127), + FRAC_CONST(0.93076696107898371), + FRAC_CONST(0.9351835099389475), + FRAC_CONST(0.93945922360218992), + FRAC_CONST(0.94359345816196039), + FRAC_CONST(0.94758559101774109), + FRAC_CONST(0.95143502096900834), + FRAC_CONST(0.95514116830577067), + FRAC_CONST(0.9587034748958716), + FRAC_CONST(0.96212140426904158), + FRAC_CONST(0.9653944416976894), + FRAC_CONST(0.96852209427441727), + FRAC_CONST(0.97150389098625178), + FRAC_CONST(0.97433938278557586), + FRAC_CONST(0.97702814265775439), + FRAC_CONST(0.97956976568544052), + FRAC_CONST(0.98196386910955524), + FRAC_CONST(0.98421009238692903), + FRAC_CONST(0.98630809724459867), + FRAC_CONST(0.98825756773074946), + FRAC_CONST(0.99005821026229712), + FRAC_CONST(0.99170975366909953), + FRAC_CONST(0.9932119492347945), + FRAC_CONST(0.99456457073425542), + FRAC_CONST(0.99576741446765982), + FRAC_CONST(0.99682029929116567), + FRAC_CONST(0.99772306664419164), + FRAC_CONST(0.99847558057329477), + FRAC_CONST(0.99907772775264536), + FRAC_CONST(0.99952941750109314), + FRAC_CONST(0.9998305817958234), + FRAC_CONST(0.99998117528260111), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1) }; -real_t ld_mid_480[] = +#ifdef ALLOW_SMALL_FRAMELENGTH +ALIGN static const real_t ld_mid_480[] = { - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1ACEDD, - 0x506B6B, - 0x860472, - 0xBB9798, - 0xF12283, - 0x126A2DB, - 0x15C1646, - 0x1917A6C, - 0x1C6CCF6, - 0x1FC0B8D, - 0x23133DB, - 0x266438B, - 0x29B3849, - 0x2D00FC3, - 0x304C7A8, - 0x3395DA6, - 0x36DCF70, - 0x3A21AB9, - 0x3D63D36, - 0x40A349D, - 0x43DFEA6, - 0x471990D, - 0x4A5018D, - 0x4D835E6, - 0x50B33D8, - 0x53DF927, - 0x5708398, - 0x5A2D0F4, - 0x5D4DF07, - 0x606AB9E, - 0x638348A, - 0x669779E, - 0x69A72B2, - 0x6CB23A0, - 0x6FB8844, - 0x72B9E80, - 0x75B6437, - 0x78AD751, - 0x7B9F5B9, - 0x7E8BD5E, - 0x8172C33, - 0x845402D, - 0x872F749, - 0x8A04F85, - 0x8CD46E2, - 0x8F9DB69, - 0x9260B25, - 0x951D425, - 0x97D347F, - 0x9A82A4A, - 0x9D2B3A4, - 0x9FCCEB1, - 0xA267996, - 0xA4FB280, - 0xA7877A1, - 0xAA0C72E, - 0xAC89F62, - 0xAEFFE7F, - 0xB16E2CA, - 0xB3D4A8E, - 0xB63341D, - 0xB889DCC, - 0xBAD85F7, - 0xBD1EB00, - 0xBF5CB4E, - 0xC19254F, - 0xC3BF775, - 0xC5E4039, - 0xC7FFE1B, - 0xCA12F9F, - 0xCC1D351, - 0xCE1E7C2, - 0xD016B8A, - 0xD205D47, - 0xD3EBB9E, - 0xD5C8539, - 0xD79B8CB, - 0xD96550A, - 0xDB258B7, - 0xDCDC296, - 0xDE89173, - 0xE02C422, - 0xE1C597C, - 0xE355062, - 0xE4DA7BC, - 0xE655E78, - 0xE7C738C, - 0xE92E5F5, - 0xEA8B4B7, - 0xEBDDEDD, - 0xED26379, - 0xEE641A4, - 0xEF97881, - 0xF0C0736, - 0xF1DECF4, - 0xF2F28F2, - 0xF3FBA6E, - 0xF4FA0AE, - 0xF5EDAFF, - 0xF6D68B7, - 0xF7B4932, - 0xF887BD4, - 0xF950009, - 0xFA0D544, - 0xFABFB02, - 0xFB670C3, - 0xFC03614, - 0xFC94A86, - 0xFD1ADB3, - 0xFD95F3E, - 0xFE05ECF, - 0xFE6AC18, - 0xFEC46D2, - 0xFF12EC0, - 0xFF563A8, - 0xFF8E55C, - 0xFFBB3B6, - 0xFFDCE94, - 0xFFF35E0, - 0xFFFE98A, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000, - 0x10000000 + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0), + FRAC_CONST(0.0065449379673518581), + FRAC_CONST(0.019633692460628301), + FRAC_CONST(0.032719082821776137), + FRAC_CONST(0.045798866936520771), + FRAC_CONST(0.058870803651189033), + FRAC_CONST(0.071932653156719387), + FRAC_CONST(0.084982177372441667), + FRAC_CONST(0.09801714032956059), + FRAC_CONST(0.11103530855427769), + FRAC_CONST(0.12403445145048532), + FRAC_CONST(0.13701234168196802), + FRAC_CONST(0.14996675555404498), + FRAC_CONST(0.16289547339458874), + FRAC_CONST(0.17579627993435451), + FRAC_CONST(0.18866696468655525), + FRAC_CONST(0.2015053223256171), + FRAC_CONST(0.21430915306505074), + FRAC_CONST(0.2270762630343732), + FRAC_CONST(0.23980446465501654), + FRAC_CONST(0.25249157701515795), + FRAC_CONST(0.26513542624340797), + FRAC_CONST(0.27773384588129219), + FRAC_CONST(0.29028467725446233), + FRAC_CONST(0.3027857698425746), + FRAC_CONST(0.31523498164776964), + FRAC_CONST(0.32763017956169349), + FRAC_CONST(0.33996923973099424), + FRAC_CONST(0.35225004792123354), + FRAC_CONST(0.36447049987914965), + FRAC_CONST(0.37662850169321077), + FRAC_CONST(0.38872197015239557), + FRAC_CONST(0.40074883310314097), + FRAC_CONST(0.41270702980439467), + FRAC_CONST(0.42459451128071307), + FRAC_CONST(0.43640924067334208), + FRAC_CONST(0.44814919358922256), + FRAC_CONST(0.45981235844785984), + FRAC_CONST(0.47139673682599764), + FRAC_CONST(0.48290034380003727), + FRAC_CONST(0.49432120828614462), + FRAC_CONST(0.50565737337798455), + FRAC_CONST(0.51690689668202761), + FRAC_CONST(0.52806785065036799), + FRAC_CONST(0.53913832291100017), + FRAC_CONST(0.55011641659549337), + FRAC_CONST(0.56100025066400983), + FRAC_CONST(0.57178796022761225), + FRAC_CONST(0.58247769686780215), + FRAC_CONST(0.59306762895323706), + FRAC_CONST(0.60355594195357143), + FRAC_CONST(0.61394083875036642), + FRAC_CONST(0.62422053994501758), + FRAC_CONST(0.63439328416364549), + FRAC_CONST(0.64445732835889735), + FRAC_CONST(0.65441094810861034), + FRAC_CONST(0.66425243791128175), + FRAC_CONST(0.67398011147829784), + FRAC_CONST(0.68359230202287125), + FRAC_CONST(0.69308736254563585), + FRAC_CONST(0.70246366611685174), + FRAC_CONST(0.71171960615517138), + FRAC_CONST(0.72085359670291882), + FRAC_CONST(0.7298640726978356), + FRAC_CONST(0.73874949024124625), + FRAC_CONST(0.74750832686259672), + FRAC_CONST(0.75613908178032285), + FRAC_CONST(0.76464027615900032), + FRAC_CONST(0.77301045336273699), + FRAC_CONST(0.78124817920475853), + FRAC_CONST(0.78935204219315003), + FRAC_CONST(0.79732065377270711), + FRAC_CONST(0.80515264856285829), + FRAC_CONST(0.81284668459161513), + FRAC_CONST(0.82040144352551359), + FRAC_CONST(0.82781563089550203), + FRAC_CONST(0.83508797631874299), + FRAC_CONST(0.84221723371628654), + FRAC_CONST(0.84920218152657889), + FRAC_CONST(0.85604162291477137), + FRAC_CONST(0.86273438597779184), + FRAC_CONST(0.86927932394514362), + FRAC_CONST(0.87567531537539967), + FRAC_CONST(0.88192126434835494), + FRAC_CONST(0.88801610065280734), + FRAC_CONST(0.89395877996993212), + FRAC_CONST(0.8997482840522214), + FRAC_CONST(0.90538362089795521), + FRAC_CONST(0.91086382492117568), + FRAC_CONST(0.91618795711713596), + FRAC_CONST(0.92135510522319242), + FRAC_CONST(0.9263643838751181), + FRAC_CONST(0.93121493475880346), + FRAC_CONST(0.93590592675732565), + FRAC_CONST(0.94043655609335486), + FRAC_CONST(0.94480604646687805), + FRAC_CONST(0.94901364918821385), + FRAC_CONST(0.95305864330629697), + FRAC_CONST(0.95694033573220882), + FRAC_CONST(0.9606580613579353), + FRAC_CONST(0.96421118317032928), + FRAC_CONST(0.96759909236025976), + FRAC_CONST(0.9708212084269281), + FRAC_CONST(0.97387697927733363), + FRAC_CONST(0.97676588132087239), + FRAC_CONST(0.97948741955905139), + FRAC_CONST(0.98204112767030394), + FRAC_CONST(0.98442656808989171), + FRAC_CONST(0.98664333208487898), + FRAC_CONST(0.98869103982416728), + FRAC_CONST(0.99056934044357725), + FRAC_CONST(0.99227791210596705), + FRAC_CONST(0.99381646205637808), + FRAC_CONST(0.99518472667219682), + FRAC_CONST(0.99638247150832537), + FRAC_CONST(0.99740949133735191), + FRAC_CONST(0.99826561018471593), + FRAC_CONST(0.99895068135886012), + FRAC_CONST(0.99946458747636568), + FRAC_CONST(0.99980724048206482), + FRAC_CONST(0.99997858166412923), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1), + FRAC_CONST(1) }; #endif - #endif #ifdef __cplusplus |