Mercurial > mplayer.hg
view libfaad2/sine_win.h @ 10835:f62edb96bc21
external faad support via --enable-externalfaad and fix my 1000l bug
author | alex |
---|---|
date | Sun, 07 Sep 2003 17:48:17 +0000 |
parents | e989150f8216 |
children | 3185f64f6350 |
line wrap: on
line source
/* ** 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 ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ** ** 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/07/29 08:20:13 menno Exp $ **/ #ifndef __SINE_WIN_H__ #define __SINE_WIN_H__ #ifdef __cplusplus 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[] = { 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 }; real_t sine_mid_480[] = { 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 }; #endif #else real_t sine_long_1024[] = { 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 }; 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[] = { 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 }; #ifdef LD_DEC 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 }; 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 }; 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 }; 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 }; #endif #endif #ifdef __cplusplus } #endif #endif