float tan_table[1921] = { 0.000327, 0.003600, 0.006872, 0.010145, 0.013418, 0.016691, 0.019965, 0.023239, 0.026513, 0.029788, 0.033064, 0.036341, 0.039618, 0.042896, 0.046175, 0.049455, 0.052736, 0.056018, 0.059301, 0.062586, 0.065872, 0.069159, 0.072448, 0.075739, 0.079031, 0.082325, 0.085620, 0.088918, 0.092217, 0.095518, 0.098822, 0.102127, 0.105435, 0.108745, 0.112057, 0.115372, 0.118690, 0.122009, 0.125332, 0.128657, 0.131985, 0.135316, 0.138650, 0.141987, 0.145327, 0.148670, 0.152017, 0.155367, 0.158720, 0.162077, 0.165437, 0.168801, 0.172168, 0.175540, 0.178915, 0.182294, 0.185677, 0.189065, 0.192456, 0.195852, 0.199253, 0.202657, 0.206066, 0.209480, 0.212899, 0.216322, 0.219750, 0.223183, 0.226621, 0.230064, 0.233512, 0.236966, 0.240425, 0.243889, 0.247359, 0.250835, 0.254316, 0.257803, 0.261296, 0.264795, 0.268300, 0.271811, 0.275328, 0.278852, 0.282382, 0.285919, 0.289463, 0.293013, 0.296569, 0.300133, 0.303704, 0.307282, 0.310867, 0.314459, 0.318059, 0.321667, 0.325281, 0.328904, 0.332535, 0.336173, 0.339819, 0.343474, 0.347136, 0.350807, 0.354487, 0.358175, 0.361872, 0.365577, 0.369291, 0.373015, 0.376747, 0.380489, 0.384239, 0.388000, 0.391770, 0.395549, 0.399339, 0.403138, 0.406948, 0.410767, 0.414597, 0.418437, 0.422288, 0.426149, 0.430022, 0.433905, 0.437799, 0.441704, 0.445621, 0.449549, 0.453489, 0.457440, 0.461403, 0.465378, 0.469366, 0.473365, 0.477377, 0.481402, 0.485439, 0.489489, 0.493552, 0.497629, 0.501718, 0.505821, 0.509938, 0.514068, 0.518212, 0.522371, 0.526543, 0.530730, 0.534932, 0.539148, 0.543379, 0.547626, 0.551887, 0.556164, 0.560457, 0.564765, 0.569089, 0.573430, 0.577787, 0.582160, 0.586550, 0.590957, 0.595381, 0.599822, 0.604280, 0.608757, 0.613251, 0.617763, 0.622294, 0.626843, 0.631411, 0.635997, 0.640603, 0.645228, 0.649873, 0.654537, 0.659222, 0.663927, 0.668652, 0.673398, 0.678165, 0.682953, 0.687763, 0.692594, 0.697447, 0.702323, 0.707221, 0.712142, 0.717085, 0.722052, 0.727043, 0.732057, 0.737095, 0.742158, 0.747245, 0.752357, 0.757495, 0.762658, 0.767847, 0.773062, 0.778304, 0.783572, 0.788867, 0.794190, 0.799540, 0.804919, 0.810326, 0.815762, 0.821227, 0.826721, 0.832245, 0.837799, 0.843384, 0.849000, 0.854647, 0.860325, 0.866036, 0.871779, 0.877555, 0.883365, 0.889208, 0.895085, 0.900997, 0.906943, 0.912925, 0.918943, 0.924997, 0.931088, 0.937217, 0.943383, 0.949587, 0.955829, 0.962111, 0.968433, 0.974795, 0.981197, 0.987641, 0.994127, 1.000655, 1.007225, 1.013840, 1.020498, 1.027201, 1.033949, 1.040743, 1.047583, 1.054471, 1.061406, 1.068390, 1.075422, 1.082504, 1.089637, 1.096820, 1.104056, 1.111344, 1.118685, 1.126080, 1.133529, 1.141034, 1.148596, 1.156214, 1.163891, 1.171626, 1.179420, 1.187275, 1.195191, 1.203170, 1.211211, 1.219317, 1.227487, 1.235724, 1.244027, 1.252398, 1.260838, 1.269348, 1.277929, 1.286582, 1.295308, 1.304109, 1.312985, 1.321937, 1.330967, 1.340077, 1.349266, 1.358537, 1.367891, 1.377329, 1.386853, 1.396463, 1.406162, 1.415950, 1.425829, 1.435801, 1.445868, 1.456029, 1.466289, 1.476647, 1.487105, 1.497666, 1.508331, 1.519102, 1.529981, 1.540969, 1.552068, 1.563280, 1.574608, 1.586054, 1.597618, 1.609305, 1.621115, 1.633051, 1.645115, 1.657310, 1.669638, 1.682101, 1.694703, 1.707444, 1.720329, 1.733360, 1.746540, 1.759871, 1.773357, 1.787000, 1.800803, 1.814770, 1.828905, 1.843209, 1.857687, 1.872342, 1.887177, 1.902198, 1.917406, 1.932806, 1.948403, 1.964199, 1.980200, 1.996410, 2.012832, 2.029473, 2.046336, 2.063427, 2.080750, 2.098310, 2.116113, 2.134165, 2.152471, 2.171036, 2.189867, 2.208969, 2.228350, 2.248016, 2.267973, 2.288229, 2.308790, 2.329664, 2.350860, 2.372383, 2.394244, 2.416450, 2.439009, 2.461932, 2.485227, 2.508905, 2.532974, 2.557446, 2.582330, 2.607639, 2.633384, 2.659575, 2.686228, 2.713352, 2.740963, 2.769074, 2.797698, 2.826852, 2.856550, 2.886809, 2.917645, 2.949075, 2.981118, 3.013792, 3.047117, 3.081114, 3.115803, 3.151206, 3.187348, 3.224251, 3.261942, 3.300445, 3.339790, 3.380004, 3.421118, 3.463163, 3.506171, 3.550179, 3.595220, 3.641334, 3.688561, 3.736941, 3.786520, 3.837342, 3.889457, 3.942916, 3.997773, 4.054084, 4.111909, 4.171312, 4.232359, 4.295121, 4.359672, 4.426092, 4.494463, 4.564877, 4.637426, 4.712211, 4.789339, 4.868922, 4.951083, 5.035951, 5.123662, 5.214365, 5.308217, 5.405387, 5.506057, 5.610422, 5.718690, 5.831088, 5.947859, 6.069266, 6.195594, 6.327150, 6.464269, 6.607315, 6.756683, 6.912807, 7.076158, 7.247253, 7.426661, 7.615007, 7.812980, 8.021342, 8.240938, 8.472708, 8.717695, 8.977072, 9.252150, 9.544404, 9.855505, 10.187341, 10.542067, 10.922141, 11.330393, 11.770086, 12.245008, 12.759580, 13.318997, 13.929403, 14.598117, 15.333927, 16.147486, 17.051823, 18.063053, 19.201345, 20.492279, 21.968803, 23.674076, 25.665766, 28.022703, 30.855566, 34.324783, 38.672005, 44.278969, 51.786228, 62.357216, 78.348648, 105.367844, 160.826920, 339.523926, -3056.232666, -277.800293, -145.511841, -98.570480, -74.526894, -59.911766, -50.088139, -43.031429, -37.716850, -33.570072, -30.244225, -27.517431, -25.241169, -23.312262, -21.656803, -20.220467, -18.962420, -17.851387, -16.862999, -15.977994, -15.180940, -14.459332, -13.802929, -13.203263, -12.653272, -12.147017, -11.679472, -11.246351, -10.843980, -10.469188, -10.119226, -9.791699, -9.484511, -9.195818, -8.923992, -8.667593, -8.425339, -8.196084, -7.978806, -7.772586, -7.576597, -7.390091, -7.212393, -7.042890, -6.881025, -6.726288, -6.578218, -6.436387, -6.300408, -6.169924, -6.044604, -5.924146, -5.808270, -5.696717, -5.589246, -5.485637, -5.385682, -5.289189, -5.195980, -5.105888, -5.018757, -4.934442, -4.852806, -4.773723, -4.697073, -4.622743, -4.550629, -4.480631, -4.412656, -4.346617, -4.282429, -4.220016, -4.159304, -4.100222, -4.042705, -3.986689, -3.932116, -3.878930, -3.827077, -3.776508, -3.727172, -3.679026, -3.632025, -3.586129, -3.541297, -3.497492, -3.454679, -3.412823, -3.371891, -3.331854, -3.292679, -3.254340, -3.216809, -3.180060, -3.144068, -3.108809, -3.074260, -3.040400, -3.007207, -2.974660, -2.942741, -2.911431, -2.880712, -2.850567, -2.820979, -2.791932, -2.763412, -2.735402, -2.707890, -2.680861, -2.654302, -2.628200, -2.602544, -2.577320, -2.552519, -2.528129, -2.504139, -2.480539, -2.457319, -2.434469, -2.411981, -2.389845, -2.368052, -2.346595, -2.325465, -2.304654, -2.284154, -2.263959, -2.244061, -2.224452, -2.205127, -2.186080, -2.167302, -2.148789, -2.130535, -2.112534, -2.094779, -2.077267, -2.059991, -2.042946, -2.026128, -2.009531, -1.993151, -1.976984, -1.961024, -1.945268, -1.929711, -1.914349, -1.899179, -1.884196, -1.869397, -1.854778, -1.840335, -1.826065, -1.811964, -1.798030, -1.784259, -1.770648, -1.757193, -1.743892, -1.730743, -1.717741, -1.704885, -1.692171, -1.679598, -1.667162, -1.654861, -1.642692, -1.630654, -1.618743, -1.606958, -1.595296, -1.583756, -1.572334, -1.561029, -1.549839, -1.538762, -1.527797, -1.516940, -1.506190, -1.495546, -1.485006, -1.474567, -1.464229, -1.453990, -1.443847, -1.433800, -1.423846, -1.413985, -1.404215, -1.394534, -1.384942, -1.375435, -1.366014, -1.356677, -1.347422, -1.338249, -1.329155, -1.320141, -1.311204, -1.302343, -1.293557, -1.284846, -1.276207, -1.267641, -1.259145, -1.250719, -1.242361, -1.234071, -1.225848, -1.217691, -1.209598, -1.201569, -1.193604, -1.185700, -1.177857, -1.170074, -1.162351, -1.154686, -1.147079, -1.139529, -1.132035, -1.124596, -1.117212, -1.109882, -1.102605, -1.095380, -1.088206, -1.081084, -1.074012, -1.066989, -1.060015, -1.053090, -1.046212, -1.039381, -1.032596, -1.025857, -1.019163, -1.012514, -1.005908, -0.999346, -0.992826, -0.986349, -0.979914, -0.973519, -0.967166, -0.960852, -0.954578, -0.948343, -0.942146, -0.935988, -0.929867, -0.923784, -0.917737, -0.911726, -0.905751, -0.899812, -0.893907, -0.888037, -0.882200, -0.876398, -0.870628, -0.864892, -0.859187, -0.853515, -0.847874, -0.842265, -0.836686, -0.831138, -0.825620, -0.820131, -0.814672, -0.809242, -0.803841, -0.798468, -0.793123, -0.787806, -0.782516, -0.777253, -0.772017, -0.766807, -0.761624, -0.756466, -0.751333, -0.746226, -0.741143, -0.736086, -0.731052, -0.726043, -0.721057, -0.716095, -0.711156, -0.706240, -0.701346, -0.696475, -0.691626, -0.686799, -0.681994, -0.677210, -0.672447, -0.667705, -0.662984, -0.658284, -0.653603, -0.648943, -0.644302, -0.639680, -0.635078, -0.630496, -0.625932, -0.621386, -0.616859, -0.612351, -0.607860, -0.603387, -0.598932, -0.594495, -0.590074, -0.585671, -0.581284, -0.576914, -0.572561, -0.568223, -0.563902, -0.559597, -0.555308, -0.551034, -0.546775, -0.542532, -0.538304, -0.534091, -0.529892, -0.525708, -0.521538, -0.517382, -0.513241, -0.509113, -0.505000, -0.500899, -0.496812, -0.492739, -0.488678, -0.484631, -0.480596, -0.476574, -0.472564, -0.468567, -0.464582, -0.460610, -0.456649, -0.452700, -0.448762, -0.444837, -0.440922, -0.437019, -0.433127, -0.429246, -0.425376, -0.421517, -0.417668, -0.413830, -0.410003, -0.406185, -0.402378, -0.398580, -0.394793, -0.391015, -0.387247, -0.383489, -0.379740, -0.376000, -0.372269, -0.368548, -0.364835, -0.361132, -0.357437, -0.353750, -0.350073, -0.346403, -0.342742, -0.339089, -0.335445, -0.331808, -0.328179, -0.324558, -0.320945, -0.317339, -0.313740, -0.310150, -0.306566, -0.302989, -0.299420, -0.295858, -0.292302, -0.288753, -0.285211, -0.281676, -0.278147, -0.274625, -0.271108, -0.267599, -0.264095, -0.260597, -0.257105, -0.253619, -0.250139, -0.246665, -0.243196, -0.239733, -0.236275, -0.232822, -0.229375, -0.225933, -0.222496, -0.219064, -0.215637, -0.212215, -0.208797, -0.205384, -0.201976, -0.198572, -0.195173, -0.191778, -0.188387, -0.185001, -0.181618, -0.178240, -0.174865, -0.171495, -0.168128, -0.164765, -0.161405, -0.158049, -0.154697, -0.151347, -0.148002, -0.144659, -0.141320, -0.137983, -0.134650, -0.131320, -0.127992, -0.124667, -0.121345, -0.118026, -0.114709, -0.111395, -0.108083, -0.104773, -0.101466, -0.098161, -0.094858, -0.091557, -0.088258, -0.084961, -0.081666, -0.078372, -0.075081, -0.071791, -0.068502, -0.065215, -0.061929, -0.058645, -0.055362, -0.052080, -0.048799, -0.045519, -0.042240, -0.038962, -0.035685, -0.032409, -0.029133, -0.025858, -0.022584, -0.019310, -0.016037, -0.012763, -0.009491, -0.006218, -0.002945, 0.000327, 0.003600, 0.006872, 0.010145, 0.013418, 0.016691, 0.019965, 0.023239, 0.026513, 0.029788, 0.033064, 0.036341, 0.039618, 0.042896, 0.046175, 0.049455, 0.052736, 0.056018, 0.059301, 0.062586, 0.065872, 0.069159, 0.072448, 0.075739, 0.079031, 0.082325, 0.085620, 0.088918, 0.092217, 0.095518, 0.098822, 0.102127, 0.105435, 0.108745, 0.112057, 0.115372, 0.118690, 0.122009, 0.125332, 0.128657, 0.131985, 0.135316, 0.138650, 0.141987, 0.145327, 0.148670, 0.152017, 0.155367, 0.158720, 0.162077, 0.165437, 0.168801, 0.172168, 0.175540, 0.178915, 0.182294, 0.185677, 0.189065, 0.192456, 0.195852, 0.199253, 0.202657, 0.206066, 0.209480, 0.212899, 0.216322, 0.219750, 0.223183, 0.226621, 0.230064, 0.233512, 0.236966, 0.240425, 0.243889, 0.247359, 0.250835, 0.254316, 0.257803, 0.261296, 0.264795, 0.268300, 0.271811, 0.275328, 0.278852, 0.282382, 0.285919, 0.289463, 0.293013, 0.296569, 0.300133, 0.303704, 0.307282, 0.310867, 0.314459, 0.318059, 0.321667, 0.325281, 0.328904, 0.332535, 0.336173, 0.339819, 0.343474, 0.347136, 0.350807, 0.354487, 0.358175, 0.361872, 0.365577, 0.369291, 0.373015, 0.376747, 0.380489, 0.384239, 0.388000, 0.391770, 0.395549, 0.399339, 0.403138, 0.406948, 0.410767, 0.414597, 0.418437, 0.422288, 0.426149, 0.430022, 0.433905, 0.437799, 0.441704, 0.445621, 0.449549, 0.453489, 0.457440, 0.461403, 0.465378, 0.469366, 0.473365, 0.477377, 0.481402, 0.485439, 0.489489, 0.493552, 0.497629, 0.501718, 0.505821, 0.509938, 0.514068, 0.518212, 0.522371, 0.526543, 0.530730, 0.534932, 0.539148, 0.543379, 0.547626, 0.551887, 0.556164, 0.560457, 0.564765, 0.569089, 0.573430, 0.577787, 0.582160, 0.586550, 0.590957, 0.595381, 0.599822, 0.604280, 0.608757, 0.613251, 0.617763, 0.622294, 0.626843, 0.631411, 0.635997, 0.640603, 0.645228, 0.649873, 0.654537, 0.659222, 0.663927, 0.668652, 0.673398, 0.678165, 0.682953, 0.687763, 0.692594, 0.697447, 0.702323, 0.707221, 0.712142, 0.717085, 0.722052, 0.727043, 0.732057, 0.737095, 0.742158, 0.747245, 0.752357, 0.757495, 0.762658, 0.767847, 0.773062, 0.778304, 0.783572, 0.788867, 0.794190, 0.799540, 0.804919, 0.810326, 0.815762, 0.821227, 0.826721, 0.832245, 0.837799, 0.843384, 0.849000, 0.854647, 0.860325, 0.866036, 0.871779, 0.877555, 0.883365, 0.889208, 0.895085, 0.900997, 0.906943, 0.912925, 0.918943, 0.924997, 0.931088, 0.937217, 0.943383, 0.949587, 0.955829, 0.962111, 0.968433, 0.974795, 0.981197, 0.987641, 0.994127, 1.000655, 1.007225, 1.013840, 1.020498, 1.027201, 1.033949, 1.040743, 1.047583, 1.054471, 1.061406, 1.068390, 1.075422, 1.082504, 1.089637, 1.096820, 1.104056, 1.111344, 1.118685, 1.126080, 1.133529, 1.141034, 1.148596, 1.156214, 1.163891, 1.171626, 1.179420, 1.187275, 1.195191, 1.203170, 1.211211, 1.219317, 1.227487, 1.235724, 1.244027, 1.252398, 1.260838, 1.269348, 1.277929, 1.286582, 1.295308, 1.304109, 1.312985, 1.321937, 1.330967, 1.340077, 1.349266, 1.358537, 1.367891, 1.377329, 1.386853, 1.396463, 1.406162, 1.415950, 1.425829, 1.435801, 1.445868, 1.456029, 1.466289, 1.476647, 1.487105, 1.497666, 1.508331, 1.519102, 1.529981, 1.540969, 1.552068, 1.563281, 1.574608, 1.586054, 1.597618, 1.609305, 1.621115, 1.633051, 1.645115, 1.657310, 1.669638, 1.682101, 1.694703, 1.707444, 1.720329, 1.733360, 1.746540, 1.759871, 1.773357, 1.787000, 1.800803, 1.814770, 1.828905, 1.843209, 1.857687, 1.872342, 1.887177, 1.902198, 1.917406, 1.932806, 1.948403, 1.964199, 1.980200, 1.996410, 2.012832, 2.029473, 2.046336, 2.063427, 2.080750, 2.098310, 2.116113, 2.134165, 2.152471, 2.171036, 2.189867, 2.208969, 2.228350, 2.248016, 2.267973, 2.288229, 2.308790, 2.329664, 2.350860, 2.372383, 2.394244, 2.416450, 2.439009, 2.461932, 2.485227, 2.508905, 2.532974, 2.557446, 2.582330, 2.607639, 2.633384, 2.659575, 2.686228, 2.713352, 2.740963, 2.769074, 2.797698, 2.826852, 2.856550, 2.886809, 2.917645, 2.949075, 2.981118, 3.013792, 3.047117, 3.081114, 3.115803, 3.151206, 3.187348, 3.224251, 3.261942, 3.300445, 3.339790, 3.380004, 3.421118, 3.463163, 3.506171, 3.550179, 3.595220, 3.641334, 3.688561, 3.736941, 3.786520, 3.837342, 3.889457, 3.942916, 3.997773, 4.054084, 4.111909, 4.171312, 4.232359, 4.295121, 4.359672, 4.426092, 4.494463, 4.564877, 4.637426, 4.712211, 4.789339, 4.868922, 4.951083, 5.035951, 5.123662, 5.214365, 5.308217, 5.405387, 5.506057, 5.610422, 5.718690, 5.831088, 5.947859, 6.069266, 6.195594, 6.327150, 6.464269, 6.607315, 6.756683, 6.912807, 7.076158, 7.247253, 7.426661, 7.615007, 7.812980, 8.021342, 8.240938, 8.472708, 8.717695, 8.977072, 9.252150, 9.544404, 9.855505, 10.187341, 10.542067, 10.922141, 11.330393, 11.770086, 12.245008, 12.759580, 13.318997, 13.929403, 14.598117, 15.333928, 16.147486, 17.051825, 18.063053, 19.201345, 20.492279, 21.968803, 23.674076, 25.665766, 28.022703, 30.855566, 34.324783, 38.672005, 44.278969, 51.786228, 62.357220, 78.348648, 105.367844, 160.826935, 339.523956, -3056.228760, -277.800262, -145.511826, -98.570473, -74.526894, -59.911766, -50.088139, -43.031429, -37.716850, -33.570072, -30.244223, -27.517431, -25.241169, -23.312262, -21.656803, -20.220465, -18.962420, -17.851387, -16.862999, -15.977994, -15.180940, -14.459332, -13.802929, -13.203263, -12.653272, -12.147017, -11.679472, -11.246351, -10.843980, -10.469188, -10.119226, -9.791699, -9.484511, -9.195818, -8.923992, -8.667593, -8.425338, -8.196084, -7.978806, -7.772586, -7.576597, -7.390091, -7.212393, -7.042890, -6.881024, -6.726288, -6.578218, -6.436387, -6.300408, -6.169924, -6.044604, -5.924146, -5.808270, -5.696717, -5.589246, -5.485637, -5.385682, -5.289189, -5.195980, -5.105888, -5.018757, -4.934442, -4.852806, -4.773723, -4.697073, -4.622743, -4.550629, -4.480631, -4.412656, -4.346617, -4.282429, -4.220016, -4.159304, -4.100222, -4.042705, -3.986689, -3.932116, -3.878930, -3.827077, -3.776508, -3.727172, -3.679026, -3.632025, -3.586129, -3.541297, -3.497492, -3.454679, -3.412823, -3.371891, -3.331854, -3.292679, -3.254340, -3.216809, -3.180060, -3.144068, -3.108809, -3.074260, -3.040400, -3.007207, -2.974660, -2.942741, -2.911431, -2.880712, -2.850567, -2.820979, -2.791932, -2.763412, -2.735402, -2.707890, -2.680861, -2.654302, -2.628200, -2.602544, -2.577320, -2.552519, -2.528129, -2.504139, -2.480539, -2.457319, -2.434469, -2.411981, -2.389845, -2.368052, -2.346595, -2.325465, -2.304654, -2.284154, -2.263959, -2.244061, -2.224452, -2.205127, -2.186080, -2.167302, -2.148789, -2.130535, -2.112534, -2.094779, -2.077267, -2.059991, -2.042946, -2.026128, -2.009531, -1.993151, -1.976984, -1.961024, -1.945268, -1.929711, -1.914349, -1.899179, -1.884196, -1.869397, -1.854778, -1.840335, -1.826065, -1.811964, -1.798030, -1.784259, -1.770648, -1.757193, -1.743892, -1.730743, -1.717741, -1.704885, -1.692171, -1.679598, -1.667162, -1.654861, -1.642692, -1.630654, -1.618743, -1.606958, -1.595296, -1.583756, -1.572334, -1.561029, -1.549839, -1.538762, -1.527797, -1.516940, -1.506190, -1.495546, -1.485006, -1.474567, -1.464229, -1.453990, -1.443847, -1.433800, -1.423846, -1.413985, -1.404215, -1.394534, -1.384942, -1.375435, -1.366014, -1.356677, -1.347422, -1.338249, -1.329155, -1.320141, -1.311204, -1.302343, -1.293557, -1.284846, -1.276207, -1.267641, -1.259145, -1.250719, -1.242361, -1.234071, -1.225848, -1.217691, -1.209598, -1.201569, -1.193604, -1.185700, -1.177857, -1.170074, -1.162351, -1.154686, -1.147079, -1.139529, -1.132035, -1.124596, -1.117212, -1.109882, -1.102605, -1.095380, -1.088206, -1.081084, -1.074012, -1.066989, -1.060015, -1.053090, -1.046212, -1.039381, -1.032596, -1.025857, -1.019163, -1.012514, -1.005908, -0.999346, -0.992826, -0.986349, -0.979914, -0.973519, -0.967166, -0.960852, -0.954578, -0.948343, -0.942146, -0.935988, -0.929867, -0.923784, -0.917737, -0.911726, -0.905751, -0.899812, -0.893907, -0.888037, -0.882200, -0.876398, -0.870628, -0.864892, -0.859187, -0.853515, -0.847874, -0.842265, -0.836686, -0.831138, -0.825620, -0.820131, -0.814672, -0.809242, -0.803841, -0.798468, -0.793123, -0.787806, -0.782516, -0.777253, -0.772017, -0.766807, -0.761624, -0.756466, -0.751333, -0.746226, -0.741143, -0.736086, -0.731052, -0.726043, -0.721057, -0.716095, -0.711156, -0.706240, -0.701346, -0.696475, -0.691626, -0.686799, -0.681994, -0.677210, -0.672447, -0.667705, -0.662984, -0.658284, -0.653603, -0.648943, -0.644302, -0.639680, -0.635078, -0.630496, -0.625932, -0.621386, -0.616859, -0.612351, -0.607860, -0.603387, -0.598932, -0.594495, -0.590074, -0.585671, -0.581284, -0.576914, -0.572561, -0.568223, -0.563902, -0.559597, -0.555308, -0.551034, -0.546775, -0.542532, -0.538304, -0.534091, -0.529892, -0.525708, -0.521538, -0.517382, -0.513241, -0.509113, -0.505000, -0.500899, -0.496812, -0.492739, -0.488678, -0.484631, -0.480596, -0.476574, -0.472564, -0.468567, -0.464582, -0.460610, -0.456649, -0.452700, -0.448762, -0.444837, -0.440922, -0.437019, -0.433127, -0.429246, -0.425376, -0.421517, -0.417668, -0.413830, -0.410003, -0.406185, -0.402378, -0.398580, -0.394793, -0.391015, -0.387247, -0.383489, -0.379740, -0.376000, -0.372269, -0.368548, -0.364835, -0.361132, -0.357437, -0.353750, -0.350073, -0.346403, -0.342742, -0.339089, -0.335445, -0.331808, -0.328179, -0.324558, -0.320945, -0.317339, -0.313740, -0.310150, -0.306566, -0.302989, -0.299420, -0.295858, -0.292302, -0.288753, -0.285211, -0.281676, -0.278147, -0.274625, -0.271108, -0.267599, -0.264095, -0.260597, -0.257105, -0.253619, -0.250139, -0.246665, -0.243196, -0.239733, -0.236275, -0.232822, -0.229375, -0.225933, -0.222496, -0.219064, -0.215637, -0.212215, -0.208797, -0.205384, -0.201976, -0.198572, -0.195173, -0.191778, -0.188387, -0.185001, -0.181618, -0.178240, -0.174865, -0.171495, -0.168128, -0.164765, -0.161405, -0.158049, -0.154697, -0.151347, -0.148002, -0.144659, -0.141320, -0.137983, -0.134650, -0.131320, -0.127992, -0.124667, -0.121345, -0.118026, -0.114709, -0.111395, -0.108083, -0.104773, -0.101466, -0.098161, -0.094858, -0.091557, -0.088258, -0.084961, -0.081666, -0.078372, -0.075081, -0.071791, -0.068502, -0.065215, -0.061929, -0.058645, -0.055362, -0.052080, -0.048799, -0.045519, -0.042240, -0.038962, -0.035685, -0.032409, -0.029133, -0.025858, -0.022584, -0.019310, -0.016037, -0.012763, -0.009491, -0.006218, -0.002945, 0.000327 }; float inv_tan_table[1921] = { 3056.234619, 277.800323, 145.511841, 98.570480, 74.526901, 59.911770, 50.088139, 43.031429, 37.716850, 33.570072, 30.244225, 27.517431, 25.241169, 23.312260, 21.656801, 20.220465, 18.962420, 17.851387, 16.863001, 15.977995, 15.180940, 14.459332, 13.802930, 13.203264, 12.653273, 12.147017, 11.679472, 11.246351, 10.843980, 10.469188, 10.119226, 9.791699, 9.484511, 9.195818, 8.923992, 8.667593, 8.425338, 8.196083, 7.978806, 7.772586, 7.576597, 7.390091, 7.212393, 7.042891, 6.881024, 6.726288, 6.578218, 6.436388, 6.300408, 6.169924, 6.044604, 5.924146, 5.808270, 5.696716, 5.589246, 5.485637, 5.385682, 5.289189, 5.195980, 5.105888, 5.018757, 4.934442, 4.852806, 4.773723, 4.697073, 4.622743, 4.550629, 4.480631, 4.412656, 4.346616, 4.282429, 4.220016, 4.159304, 4.100222, 4.042705, 3.986689, 3.932116, 3.878930, 3.827077, 3.776508, 3.727172, 3.679026, 3.632025, 3.586129, 3.541297, 3.497492, 3.454679, 3.412823, 3.371892, 3.331854, 3.292680, 3.254340, 3.216809, 3.180060, 3.144068, 3.108809, 3.074260, 3.040400, 3.007207, 2.974660, 2.942741, 2.911431, 2.880713, 2.850567, 2.820979, 2.791932, 2.763412, 2.735402, 2.707890, 2.680861, 2.654301, 2.628200, 2.602544, 2.577320, 2.552519, 2.528129, 2.504139, 2.480539, 2.457319, 2.434469, 2.411981, 2.389845, 2.368052, 2.346595, 2.325465, 2.304654, 2.284154, 2.263959, 2.244060, 2.224452, 2.205127, 2.186080, 2.167302, 2.148789, 2.130535, 2.112534, 2.094779, 2.077267, 2.059991, 2.042946, 2.026128, 2.009531, 1.993151, 1.976984, 1.961024, 1.945268, 1.929711, 1.914349, 1.899179, 1.884196, 1.869397, 1.854778, 1.840335, 1.826065, 1.811964, 1.798030, 1.784259, 1.770648, 1.757193, 1.743892, 1.730743, 1.717741, 1.704885, 1.692171, 1.679598, 1.667162, 1.654861, 1.642692, 1.630654, 1.618743, 1.606958, 1.595296, 1.583756, 1.572334, 1.561029, 1.549839, 1.538762, 1.527797, 1.516940, 1.506190, 1.495546, 1.485006, 1.474567, 1.464229, 1.453990, 1.443847, 1.433800, 1.423846, 1.413985, 1.404215, 1.394534, 1.384942, 1.375435, 1.366014, 1.356677, 1.347422, 1.338249, 1.329155, 1.320141, 1.311204, 1.302343, 1.293557, 1.284846, 1.276207, 1.267641, 1.259145, 1.250719, 1.242361, 1.234071, 1.225848, 1.217691, 1.209598, 1.201569, 1.193603, 1.185700, 1.177857, 1.170074, 1.162351, 1.154686, 1.147079, 1.139529, 1.132035, 1.124596, 1.117212, 1.109882, 1.102605, 1.095380, 1.088206, 1.081084, 1.074012, 1.066989, 1.060015, 1.053090, 1.046212, 1.039381, 1.032596, 1.025857, 1.019163, 1.012514, 1.005908, 0.999346, 0.992826, 0.986349, 0.979914, 0.973519, 0.967166, 0.960852, 0.954578, 0.948343, 0.942147, 0.935988, 0.929868, 0.923784, 0.917737, 0.911726, 0.905751, 0.899812, 0.893907, 0.888037, 0.882200, 0.876398, 0.870628, 0.864892, 0.859187, 0.853515, 0.847874, 0.842265, 0.836686, 0.831138, 0.825620, 0.820131, 0.814672, 0.809242, 0.803841, 0.798468, 0.793123, 0.787806, 0.782516, 0.777253, 0.772017, 0.766807, 0.761624, 0.756466, 0.751333, 0.746226, 0.741143, 0.736086, 0.731052, 0.726043, 0.721057, 0.716095, 0.711156, 0.706240, 0.701346, 0.696475, 0.691626, 0.686799, 0.681994, 0.677210, 0.672447, 0.667705, 0.662984, 0.658284, 0.653603, 0.648943, 0.644302, 0.639681, 0.635078, 0.630496, 0.625932, 0.621386, 0.616859, 0.612351, 0.607860, 0.603387, 0.598932, 0.594495, 0.590074, 0.585671, 0.581284, 0.576914, 0.572561, 0.568223, 0.563902, 0.559597, 0.555308, 0.551034, 0.546775, 0.542532, 0.538304, 0.534091, 0.529892, 0.525708, 0.521538, 0.517382, 0.513241, 0.509113, 0.505000, 0.500899, 0.496812, 0.492739, 0.488678, 0.484631, 0.480596, 0.476574, 0.472564, 0.468567, 0.464582, 0.460610, 0.456649, 0.452700, 0.448762, 0.444837, 0.440922, 0.437019, 0.433127, 0.429246, 0.425376, 0.421517, 0.417668, 0.413830, 0.410003, 0.406185, 0.402378, 0.398580, 0.394793, 0.391015, 0.387247, 0.383489, 0.379740, 0.376000, 0.372269, 0.368548, 0.364835, 0.361132, 0.357437, 0.353750, 0.350073, 0.346403, 0.342742, 0.339089, 0.335445, 0.331808, 0.328179, 0.324558, 0.320945, 0.317339, 0.313740, 0.310150, 0.306566, 0.302989, 0.299420, 0.295858, 0.292302, 0.288753, 0.285211, 0.281676, 0.278147, 0.274625, 0.271108, 0.267599, 0.264095, 0.260597, 0.257105, 0.253619, 0.250139, 0.246665, 0.243196, 0.239733, 0.236275, 0.232822, 0.229375, 0.225933, 0.222496, 0.219064, 0.215637, 0.212215, 0.208797, 0.205384, 0.201976, 0.198572, 0.195173, 0.191778, 0.188387, 0.185001, 0.181618, 0.178240, 0.174865, 0.171495, 0.168128, 0.164765, 0.161405, 0.158049, 0.154697, 0.151347, 0.148002, 0.144659, 0.141320, 0.137983, 0.134650, 0.131320, 0.127992, 0.124667, 0.121345, 0.118026, 0.114709, 0.111395, 0.108083, 0.104773, 0.101466, 0.098161, 0.094858, 0.091557, 0.088258, 0.084961, 0.081666, 0.078372, 0.075081, 0.071791, 0.068502, 0.065215, 0.061929, 0.058645, 0.055362, 0.052080, 0.048799, 0.045519, 0.042240, 0.038962, 0.035685, 0.032409, 0.029133, 0.025858, 0.022584, 0.019310, 0.016037, 0.012763, 0.009491, 0.006218, 0.002945, -0.000327, -0.003600, -0.006872, -0.010145, -0.013418, -0.016691, -0.019965, -0.023239, -0.026513, -0.029788, -0.033064, -0.036341, -0.039618, -0.042896, -0.046175, -0.049455, -0.052736, -0.056018, -0.059301, -0.062586, -0.065872, -0.069159, -0.072448, -0.075739, -0.079031, -0.082325, -0.085620, -0.088918, -0.092217, -0.095518, -0.098822, -0.102127, -0.105435, -0.108745, -0.112057, -0.115372, -0.118690, -0.122009, -0.125332, -0.128657, -0.131985, -0.135316, -0.138650, -0.141987, -0.145327, -0.148670, -0.152017, -0.155367, -0.158720, -0.162077, -0.165437, -0.168801, -0.172168, -0.175540, -0.178915, -0.182294, -0.185677, -0.189065, -0.192456, -0.195852, -0.199253, -0.202657, -0.206066, -0.209480, -0.212899, -0.216322, -0.219750, -0.223183, -0.226621, -0.230064, -0.233512, -0.236966, -0.240425, -0.243889, -0.247359, -0.250835, -0.254316, -0.257803, -0.261296, -0.264795, -0.268300, -0.271811, -0.275328, -0.278852, -0.282382, -0.285919, -0.289463, -0.293013, -0.296569, -0.300133, -0.303704, -0.307282, -0.310867, -0.314459, -0.318059, -0.321667, -0.325281, -0.328904, -0.332535, -0.336173, -0.339819, -0.343474, -0.347136, -0.350807, -0.354487, -0.358175, -0.361872, -0.365577, -0.369291, -0.373015, -0.376747, -0.380489, -0.384239, -0.388000, -0.391770, -0.395549, -0.399339, -0.403138, -0.406948, -0.410767, -0.414597, -0.418437, -0.422288, -0.426149, -0.430022, -0.433905, -0.437799, -0.441704, -0.445621, -0.449549, -0.453489, -0.457440, -0.461403, -0.465378, -0.469366, -0.473365, -0.477377, -0.481402, -0.485439, -0.489489, -0.493552, -0.497628, -0.501718, -0.505821, -0.509938, -0.514068, -0.518212, -0.522371, -0.526543, -0.530730, -0.534932, -0.539148, -0.543379, -0.547626, -0.551887, -0.556164, -0.560457, -0.564765, -0.569089, -0.573430, -0.577787, -0.582160, -0.586550, -0.590957, -0.595381, -0.599822, -0.604280, -0.608757, -0.613251, -0.617763, -0.622294, -0.626843, -0.631411, -0.635997, -0.640603, -0.645228, -0.649873, -0.654537, -0.659222, -0.663927, -0.668652, -0.673398, -0.678165, -0.682953, -0.687763, -0.692594, -0.697447, -0.702323, -0.707221, -0.712142, -0.717085, -0.722052, -0.727043, -0.732057, -0.737095, -0.742158, -0.747245, -0.752358, -0.757495, -0.762658, -0.767847, -0.773062, -0.778304, -0.783572, -0.788867, -0.794190, -0.799540, -0.804919, -0.810326, -0.815762, -0.821227, -0.826721, -0.832245, -0.837799, -0.843384, -0.849000, -0.854647, -0.860325, -0.866036, -0.871779, -0.877555, -0.883365, -0.889208, -0.895085, -0.900997, -0.906943, -0.912925, -0.918943, -0.924998, -0.931088, -0.937217, -0.943383, -0.949587, -0.955829, -0.962111, -0.968433, -0.974795, -0.981197, -0.987641, -0.994127, -1.000655, -1.007225, -1.013840, -1.020498, -1.027201, -1.033949, -1.040743, -1.047583, -1.054471, -1.061406, -1.068390, -1.075422, -1.082504, -1.089637, -1.096820, -1.104056, -1.111344, -1.118685, -1.126080, -1.133529, -1.141034, -1.148596, -1.156214, -1.163891, -1.171626, -1.179420, -1.187275, -1.195191, -1.203170, -1.211211, -1.219317, -1.227487, -1.235724, -1.244027, -1.252398, -1.260838, -1.269348, -1.277929, -1.286582, -1.295308, -1.304109, -1.312985, -1.321937, -1.330967, -1.340077, -1.349266, -1.358537, -1.367891, -1.377329, -1.386853, -1.396463, -1.406162, -1.415950, -1.425829, -1.435801, -1.445868, -1.456029, -1.466289, -1.476647, -1.487105, -1.497666, -1.508331, -1.519102, -1.529981, -1.540969, -1.552068, -1.563281, -1.574609, -1.586054, -1.597618, -1.609305, -1.621115, -1.633051, -1.645115, -1.657310, -1.669638, -1.682101, -1.694703, -1.707444, -1.720329, -1.733360, -1.746540, -1.759871, -1.773357, -1.787000, -1.800803, -1.814771, -1.828905, -1.843209, -1.857687, -1.872342, -1.887178, -1.902198, -1.917406, -1.932806, -1.948402, -1.964199, -1.980200, -1.996410, -2.012833, -2.029473, -2.046336, -2.063427, -2.080750, -2.098310, -2.116113, -2.134165, -2.152471, -2.171036, -2.189867, -2.208970, -2.228350, -2.248016, -2.267973, -2.288229, -2.308790, -2.329664, -2.350860, -2.372383, -2.394244, -2.416450, -2.439009, -2.461932, -2.485227, -2.508905, -2.532974, -2.557446, -2.582330, -2.607639, -2.633384, -2.659576, -2.686228, -2.713352, -2.740963, -2.769073, -2.797698, -2.826852, -2.856550, -2.886809, -2.917645, -2.949075, -2.981118, -3.013792, -3.047117, -3.081114, -3.115803, -3.151206, -3.187348, -3.224251, -3.261942, -3.300445, -3.339790, -3.380004, -3.421118, -3.463163, -3.506171, -3.550179, -3.595220, -3.641334, -3.688561, -3.736941, -3.786520, -3.837343, -3.889457, -3.942916, -3.997773, -4.054084, -4.111909, -4.171312, -4.232359, -4.295121, -4.359672, -4.426092, -4.494463, -4.564877, -4.637426, -4.712211, -4.789339, -4.868922, -4.951083, -5.035951, -5.123662, -5.214365, -5.308217, -5.405387, -5.506057, -5.610421, -5.718690, -5.831088, -5.947859, -6.069266, -6.195593, -6.327150, -6.464269, -6.607315, -6.756683, -6.912807, -7.076158, -7.247252, -7.426661, -7.615007, -7.812980, -8.021342, -8.240938, -8.472708, -8.717695, -8.977072, -9.252150, -9.544404, -9.855505, -10.187341, -10.542067, -10.922141, -11.330393, -11.770086, -12.245007, -12.759580, -13.318996, -13.929403, -14.598117, -15.333927, -16.147486, -17.051825, -18.063053, -19.201345, -20.492279, -21.968803, -23.674076, -25.665766, -28.022701, -30.855566, -34.324783, -38.672005, -44.278969, -51.786224, -62.357220, -78.348648, -105.367844, -160.826920, -339.523926, 3056.230713, 277.800293, 145.511841, 98.570480, 74.526894, 59.911770, 50.088139, 43.031429, 37.716850, 33.570072, 30.244225, 27.517431, 25.241169, 23.312260, 21.656801, 20.220465, 18.962420, 17.851387, 16.862999, 15.977993, 15.180940, 14.459332, 13.802930, 13.203264, 12.653272, 12.147017, 11.679472, 11.246351, 10.843980, 10.469188, 10.119226, 9.791699, 9.484511, 9.195818, 8.923992, 8.667593, 8.425338, 8.196083, 7.978806, 7.772586, 7.576597, 7.390091, 7.212393, 7.042891, 6.881024, 6.726288, 6.578218, 6.436388, 6.300408, 6.169924, 6.044604, 5.924146, 5.808270, 5.696716, 5.589246, 5.485637, 5.385682, 5.289189, 5.195980, 5.105888, 5.018757, 4.934442, 4.852806, 4.773723, 4.697073, 4.622743, 4.550629, 4.480631, 4.412656, 4.346616, 4.282429, 4.220016, 4.159304, 4.100222, 4.042705, 3.986689, 3.932116, 3.878930, 3.827077, 3.776508, 3.727172, 3.679026, 3.632025, 3.586129, 3.541297, 3.497492, 3.454679, 3.412823, 3.371892, 3.331854, 3.292680, 3.254340, 3.216809, 3.180060, 3.144068, 3.108809, 3.074260, 3.040400, 3.007207, 2.974660, 2.942741, 2.911431, 2.880713, 2.850567, 2.820979, 2.791932, 2.763412, 2.735402, 2.707890, 2.680861, 2.654301, 2.628200, 2.602544, 2.577320, 2.552519, 2.528129, 2.504139, 2.480539, 2.457319, 2.434469, 2.411981, 2.389845, 2.368052, 2.346595, 2.325465, 2.304654, 2.284154, 2.263959, 2.244060, 2.224452, 2.205127, 2.186080, 2.167302, 2.148789, 2.130535, 2.112534, 2.094779, 2.077267, 2.059991, 2.042946, 2.026128, 2.009531, 1.993151, 1.976984, 1.961024, 1.945268, 1.929711, 1.914349, 1.899179, 1.884196, 1.869397, 1.854778, 1.840335, 1.826065, 1.811964, 1.798030, 1.784259, 1.770648, 1.757193, 1.743892, 1.730743, 1.717741, 1.704885, 1.692171, 1.679598, 1.667162, 1.654861, 1.642692, 1.630654, 1.618743, 1.606958, 1.595296, 1.583756, 1.572334, 1.561029, 1.549839, 1.538762, 1.527797, 1.516940, 1.506190, 1.495546, 1.485006, 1.474567, 1.464229, 1.453990, 1.443847, 1.433800, 1.423846, 1.413985, 1.404215, 1.394534, 1.384942, 1.375435, 1.366014, 1.356677, 1.347422, 1.338249, 1.329155, 1.320141, 1.311204, 1.302343, 1.293557, 1.284846, 1.276207, 1.267641, 1.259145, 1.250719, 1.242361, 1.234071, 1.225848, 1.217691, 1.209598, 1.201569, 1.193603, 1.185700, 1.177857, 1.170074, 1.162351, 1.154686, 1.147079, 1.139529, 1.132035, 1.124596, 1.117212, 1.109882, 1.102605, 1.095380, 1.088206, 1.081084, 1.074012, 1.066989, 1.060015, 1.053090, 1.046212, 1.039381, 1.032596, 1.025857, 1.019163, 1.012514, 1.005908, 0.999346, 0.992826, 0.986349, 0.979914, 0.973519, 0.967166, 0.960852, 0.954578, 0.948343, 0.942147, 0.935988, 0.929868, 0.923784, 0.917737, 0.911726, 0.905751, 0.899812, 0.893907, 0.888037, 0.882200, 0.876398, 0.870628, 0.864892, 0.859187, 0.853515, 0.847874, 0.842265, 0.836686, 0.831138, 0.825620, 0.820131, 0.814672, 0.809242, 0.803841, 0.798468, 0.793123, 0.787806, 0.782516, 0.777253, 0.772017, 0.766807, 0.761624, 0.756466, 0.751333, 0.746226, 0.741143, 0.736086, 0.731052, 0.726043, 0.721057, 0.716095, 0.711156, 0.706240, 0.701346, 0.696475, 0.691626, 0.686799, 0.681994, 0.677210, 0.672447, 0.667705, 0.662984, 0.658284, 0.653603, 0.648943, 0.644302, 0.639680, 0.635078, 0.630496, 0.625932, 0.621386, 0.616859, 0.612351, 0.607860, 0.603387, 0.598932, 0.594495, 0.590074, 0.585671, 0.581284, 0.576914, 0.572561, 0.568223, 0.563902, 0.559597, 0.555308, 0.551034, 0.546775, 0.542532, 0.538304, 0.534091, 0.529892, 0.525708, 0.521538, 0.517382, 0.513241, 0.509113, 0.505000, 0.500899, 0.496812, 0.492739, 0.488678, 0.484631, 0.480596, 0.476574, 0.472564, 0.468567, 0.464582, 0.460610, 0.456649, 0.452700, 0.448762, 0.444837, 0.440922, 0.437019, 0.433127, 0.429246, 0.425376, 0.421517, 0.417668, 0.413830, 0.410003, 0.406185, 0.402378, 0.398580, 0.394793, 0.391015, 0.387247, 0.383489, 0.379740, 0.376000, 0.372269, 0.368548, 0.364835, 0.361132, 0.357437, 0.353750, 0.350073, 0.346403, 0.342742, 0.339089, 0.335445, 0.331808, 0.328179, 0.324558, 0.320945, 0.317339, 0.313740, 0.310150, 0.306566, 0.302989, 0.299420, 0.295858, 0.292302, 0.288753, 0.285211, 0.281676, 0.278147, 0.274625, 0.271108, 0.267599, 0.264095, 0.260597, 0.257105, 0.253619, 0.250139, 0.246665, 0.243196, 0.239733, 0.236275, 0.232822, 0.229375, 0.225933, 0.222496, 0.219064, 0.215637, 0.212215, 0.208797, 0.205384, 0.201976, 0.198572, 0.195173, 0.191778, 0.188387, 0.185001, 0.181618, 0.178240, 0.174865, 0.171495, 0.168128, 0.164765, 0.161405, 0.158049, 0.154697, 0.151347, 0.148002, 0.144659, 0.141320, 0.137983, 0.134650, 0.131320, 0.127992, 0.124667, 0.121345, 0.118026, 0.114709, 0.111395, 0.108083, 0.104773, 0.101466, 0.098161, 0.094858, 0.091557, 0.088258, 0.084961, 0.081666, 0.078372, 0.075081, 0.071791, 0.068502, 0.065215, 0.061929, 0.058645, 0.055362, 0.052080, 0.048799, 0.045519, 0.042240, 0.038962, 0.035685, 0.032409, 0.029133, 0.025858, 0.022584, 0.019310, 0.016037, 0.012763, 0.009491, 0.006218, 0.002945, -0.000327, -0.003600, -0.006872, -0.010145, -0.013418, -0.016691, -0.019965, -0.023239, -0.026513, -0.029788, -0.033064, -0.036341, -0.039618, -0.042896, -0.046175, -0.049455, -0.052736, -0.056018, -0.059301, -0.062586, -0.065872, -0.069159, -0.072448, -0.075739, -0.079031, -0.082325, -0.085620, -0.088918, -0.092217, -0.095518, -0.098822, -0.102127, -0.105435, -0.108745, -0.112057, -0.115372, -0.118690, -0.122009, -0.125332, -0.128657, -0.131985, -0.135316, -0.138650, -0.141987, -0.145327, -0.148670, -0.152017, -0.155367, -0.158720, -0.162077, -0.165437, -0.168801, -0.172168, -0.175540, -0.178915, -0.182294, -0.185677, -0.189065, -0.192456, -0.195852, -0.199253, -0.202657, -0.206066, -0.209480, -0.212899, -0.216322, -0.219750, -0.223183, -0.226621, -0.230064, -0.233512, -0.236966, -0.240425, -0.243889, -0.247359, -0.250835, -0.254316, -0.257803, -0.261296, -0.264795, -0.268300, -0.271811, -0.275328, -0.278852, -0.282382, -0.285919, -0.289463, -0.293013, -0.296569, -0.300133, -0.303704, -0.307282, -0.310867, -0.314459, -0.318059, -0.321667, -0.325281, -0.328904, -0.332535, -0.336173, -0.339819, -0.343474, -0.347136, -0.350807, -0.354487, -0.358175, -0.361872, -0.365577, -0.369291, -0.373015, -0.376747, -0.380489, -0.384239, -0.388000, -0.391770, -0.395549, -0.399339, -0.403138, -0.406948, -0.410767, -0.414597, -0.418437, -0.422288, -0.426149, -0.430022, -0.433905, -0.437799, -0.441704, -0.445621, -0.449549, -0.453489, -0.457440, -0.461403, -0.465378, -0.469366, -0.473365, -0.477377, -0.481402, -0.485439, -0.489489, -0.493552, -0.497628, -0.501718, -0.505821, -0.509938, -0.514068, -0.518212, -0.522371, -0.526543, -0.530730, -0.534932, -0.539148, -0.543379, -0.547626, -0.551887, -0.556164, -0.560457, -0.564765, -0.569089, -0.573430, -0.577787, -0.582160, -0.586550, -0.590957, -0.595381, -0.599822, -0.604280, -0.608757, -0.613251, -0.617763, -0.622294, -0.626843, -0.631411, -0.635997, -0.640603, -0.645228, -0.649873, -0.654537, -0.659222, -0.663927, -0.668652, -0.673398, -0.678165, -0.682953, -0.687763, -0.692594, -0.697447, -0.702323, -0.707221, -0.712142, -0.717085, -0.722052, -0.727043, -0.732057, -0.737095, -0.742158, -0.747245, -0.752358, -0.757495, -0.762658, -0.767847, -0.773062, -0.778304, -0.783572, -0.788867, -0.794190, -0.799540, -0.804919, -0.810326, -0.815762, -0.821227, -0.826721, -0.832245, -0.837799, -0.843384, -0.849000, -0.854647, -0.860325, -0.866036, -0.871779, -0.877555, -0.883365, -0.889208, -0.895085, -0.900997, -0.906943, -0.912925, -0.918943, -0.924998, -0.931088, -0.937217, -0.943383, -0.949587, -0.955829, -0.962111, -0.968433, -0.974795, -0.981197, -0.987641, -0.994127, -1.000655, -1.007225, -1.013840, -1.020498, -1.027201, -1.033949, -1.040743, -1.047583, -1.054471, -1.061406, -1.068390, -1.075422, -1.082504, -1.089637, -1.096820, -1.104056, -1.111344, -1.118685, -1.126080, -1.133529, -1.141034, -1.148596, -1.156214, -1.163891, -1.171626, -1.179420, -1.187275, -1.195191, -1.203170, -1.211211, -1.219317, -1.227487, -1.235724, -1.244027, -1.252398, -1.260838, -1.269348, -1.277929, -1.286582, -1.295308, -1.304109, -1.312985, -1.321937, -1.330967, -1.340077, -1.349266, -1.358537, -1.367891, -1.377329, -1.386853, -1.396463, -1.406162, -1.415950, -1.425829, -1.435801, -1.445868, -1.456029, -1.466289, -1.476647, -1.487105, -1.497666, -1.508331, -1.519102, -1.529981, -1.540969, -1.552068, -1.563281, -1.574609, -1.586054, -1.597618, -1.609305, -1.621115, -1.633051, -1.645115, -1.657310, -1.669638, -1.682101, -1.694703, -1.707444, -1.720329, -1.733360, -1.746540, -1.759871, -1.773357, -1.787000, -1.800803, -1.814771, -1.828905, -1.843209, -1.857687, -1.872342, -1.887178, -1.902198, -1.917406, -1.932806, -1.948402, -1.964199, -1.980200, -1.996410, -2.012833, -2.029473, -2.046336, -2.063427, -2.080750, -2.098310, -2.116114, -2.134165, -2.152471, -2.171036, -2.189867, -2.208970, -2.228350, -2.248016, -2.267973, -2.288229, -2.308790, -2.329664, -2.350860, -2.372383, -2.394244, -2.416450, -2.439009, -2.461932, -2.485227, -2.508905, -2.532974, -2.557446, -2.582330, -2.607639, -2.633384, -2.659576, -2.686228, -2.713352, -2.740963, -2.769073, -2.797698, -2.826852, -2.856550, -2.886809, -2.917645, -2.949075, -2.981118, -3.013792, -3.047117, -3.081114, -3.115803, -3.151206, -3.187348, -3.224251, -3.261942, -3.300445, -3.339790, -3.380004, -3.421118, -3.463163, -3.506171, -3.550179, -3.595220, -3.641335, -3.688561, -3.736941, -3.786520, -3.837343, -3.889457, -3.942916, -3.997773, -4.054084, -4.111909, -4.171312, -4.232359, -4.295121, -4.359672, -4.426092, -4.494463, -4.564877, -4.637426, -4.712211, -4.789339, -4.868922, -4.951083, -5.035951, -5.123662, -5.214365, -5.308217, -5.405387, -5.506057, -5.610421, -5.718690, -5.831088, -5.947859, -6.069266, -6.195594, -6.327150, -6.464269, -6.607315, -6.756684, -6.912807, -7.076158, -7.247253, -7.426661, -7.615007, -7.812980, -8.021342, -8.240938, -8.472708, -8.717695, -8.977072, -9.252150, -9.544404, -9.855505, -10.187341, -10.542067, -10.922141, -11.330393, -11.770086, -12.245007, -12.759580, -13.318996, -13.929403, -14.598117, -15.333927, -16.147486, -17.051825, -18.063053, -19.201345, -20.492281, -21.968803, -23.674076, -25.665766, -28.022701, -30.855568, -34.324783, -38.672005, -44.278969, -51.786232, -62.357220, -78.348648, -105.367851, -160.826935, -339.523987, 3056.227051 }; int cos_table[1921] = { 983552 , 981696 , 979840 , 978048 , 976256 , 974464 , 972736 , 970944 , 969216 , 967552 , 965824 , 964160 , 962496 , 960832 , 959232 , 957568 , 955968 , 954432 , 952832 , 951296 , 949760 , 948224 , 946688 , 945216 , 943744 , 942272 , 940800 , 939392 , 937984 , 936576 , 935168 , 933760 , 932416 , 931072 , 929728 , 928448 , 927104 , 925824 , 924544 , 923264 , 921984 , 920768 , 919552 , 918336 , 917120 , 915904 , 914752 , 913600 , 912448 , 911296 , 910144 , 909056 , 907968 , 906880 , 905792 , 904704 , 903680 , 902656 , 901632 , 900608 , 899584 , 898560 , 897600 , 896640 , 895680 , 894720 , 893824 , 892864 , 891968 , 891072 , 890176 , 889280 , 888448 , 887616 , 886720 , 885888 , 885120 , 884288 , 883456 , 882688 , 881920 , 881152 , 880384 , 879616 , 878912 , 878208 , 877440 , 876800 , 876096 , 875392 , 874752 , 874048 , 873408 , 872768 , 872128 , 871488 , 870912 , 870336 , 869696 , 869120 , 868544 , 868032 , 867456 , 866944 , 866368 , 865856 , 865344 , 864832 , 864384 , 863872 , 863424 , 862976 , 862528 , 862080 , 861632 , 861248 , 860800 , 860416 , 860032 , 859648 , 859264 , 858880 , 858560 , 858176 , 857856 , 857536 , 857216 , 856896 , 856576 , 856320 , 856000 , 855744 , 855488 , 855232 , 854976 , 854784 , 854528 , 854336 , 854144 , 853952 , 853760 , 853568 , 853376 , 853248 , 853120 , 852928 , 852800 , 852672 , 852608 , 852480 , 852352 , 852288 , 852224 , 852160 , 852096 , 852032 , 852032 , 851968 , 851968 , 851968 , 851968 , 851968 , 851968 , 851968 , 852032 , 852032 , 852096 , 852160 , 852224 , 852288 , 852416 , 852480 , 852608 , 852736 , 852864 , 852992 , 853120 , 853248 , 853440 , 853632 , 853760 , 853952 , 854144 , 854400 , 854592 , 854848 , 855040 , 855296 , 855552 , 855808 , 856064 , 856384 , 856640 , 856960 , 857280 , 857600 , 857920 , 858240 , 858624 , 858944 , 859328 , 859712 , 860096 , 860480 , 860864 , 861312 , 861696 , 862144 , 862592 , 863040 , 863488 , 864000 , 864448 , 864960 , 865472 , 865984 , 866496 , 867008 , 867584 , 868096 , 868672 , 869248 , 869824 , 870400 , 871040 , 871616 , 872256 , 872896 , 873536 , 874176 , 874880 , 875520 , 876224 , 876928 , 877632 , 878336 , 879040 , 879808 , 880512 , 881280 , 882048 , 882816 , 883648 , 884416 , 885248 , 886080 , 886912 , 887744 , 888640 , 889472 , 890368 , 891264 , 892160 , 893056 , 894016 , 894912 , 895872 , 896832 , 897792 , 898816 , 899776 , 900800 , 901824 , 902848 , 903872 , 904960 , 905984 , 907072 , 908160 , 909248 , 910400 , 911552 , 912640 , 913792 , 915008 , 916160 , 917376 , 918592 , 919808 , 921024 , 922240 , 923520 , 924800 , 926080 , 927360 , 928704 , 929984 , 931328 , 932672 , 934080 , 935424 , 936832 , 938240 , 939648 , 941120 , 942592 , 944064 , 945536 , 947008 , 948544 , 950080 , 951616 , 953152 , 954752 , 956288 , 957888 , 959552 , 961152 , 962816 , 964480 , 966144 , 967872 , 969600 , 971328 , 973056 , 974848 , 976640 , 978432 , 980224 , 982080 , 983936 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }; int inv_cos_table[1921] = { 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 133 , 133 , 133 , 133 , 133 , 133 , 133 , 133 , 134 , 134 , 134 , 134 , 134 , 134 , 134 , 135 , 135 , 135 , 135 , 135 , 135 , 135 , 136 , 136 , 136 , 136 , 136 , 136 , 137 , 137 , 137 , 137 , 137 , 138 , 138 , 138 , 138 , 138 , 138 , 139 , 139 , 139 , 139 , 139 , 140 , 140 , 140 , 140 , 140 , 141 , 141 , 141 , 141 , 142 , 142 , 142 , 142 , 142 , 143 , 143 , 143 , 143 , 144 , 144 , 144 , 144 , 145 , 145 , 145 , 145 , 146 , 146 , 146 , 147 , 147 , 147 , 147 , 148 , 148 , 148 , 148 , 149 , 149 , 149 , 150 , 150 , 150 , 151 , 151 , 151 , 152 , 152 , 152 , 152 , 153 , 153 , 153 , 154 , 154 , 155 , 155 , 155 , 156 , 156 , 156 , 157 , 157 , 157 , 158 , 158 , 159 , 159 , 159 , 160 , 160 , 160 , 161 , 161 , 162 , 162 , 163 , 163 , 163 , 164 , 164 , 165 , 165 , 166 , 166 , 166 , 167 , 167 , 168 , 168 , 169 , 169 , 170 , 170 , 171 , 171 , 172 , 172 , 173 , 173 , 174 , 174 , 175 , 175 , 176 , 177 , 177 , 178 , 178 , 179 , 179 , 180 , 181 , 181 , 182 , 182 , 183 , 184 , 184 , 185 , 186 , 186 , 187 , 187 , 188 , 189 , 189 , 190 , 191 , 192 , 192 , 193 , 194 , 194 , 195 , 196 , 197 , 197 , 198 , 199 , 200 , 201 , 201 , 202 , 203 , 204 , 205 , 205 , 206 , 207 , 208 , 209 , 210 , 211 , 212 , 213 , 214 , 214 , 215 , 216 , 217 , 218 , 219 , 220 , 221 , 222 , 223 , 225 , 226 , 227 , 228 , 229 , 230 , 231 , 232 , 233 , 235 , 236 , 237 , 238 , 239 , 241 , 242 , 243 , 245 , 246 , 247 , 249 , 250 , 251 , 253 , 254 , 256 , 257 , 259 , 260 , 262 , 263 , 265 , 266 , 268 , 270 , 271 , 273 , 275 , 276 , 278 , 280 , 282 , 283 , 285 , 287 , 289 , 291 , 293 , 295 , 297 , 299 , 301 , 303 , 305 , 308 , 310 , 312 , 314 , 317 , 319 , 322 , 324 , 327 , 329 , 332 , 334 , 337 , 340 , 342 , 345 , 348 , 351 , 354 , 357 , 360 , 363 , 366 , 370 , 373 , 376 , 380 , 383 , 387 , 391 , 394 , 398 , 402 , 406 , 410 , 414 , 418 , 423 , 427 , 432 , 436 , 441 , 446 , 451 , 456 , 461 , 466 , 472 , 477 , 483 , 489 , 495 , 501 , 507 , 514 , 520 , 527 , 534 , 541 , 549 , 556 , 564 , 572 , 580 , 589 , 598 , 607 , 616 , 626 , 636 , 646 , 657 , 668 , 679 , 691 , 703 , 716 , 729 , 743 , 757 , 772 , 787 , 803 , 819 , 837 , 855 , 874 , 894 , 914 , 936 , 959 , 983 , 1008 , 1034 , 1062 , 1092 , 1123 , 1156 , 1191 , 1228 , 1267 , 1310 , 1355 , 1403 , 1455 , 1511 , 1572 , 1638 , 1709 , 1787 , 1872 , 1966 , 2070 , 2186 , 2315 , 2461 , 2626 , 2814 , 3032 , 3287 , 3589 , 3951 , 4395 , 4951 , 5669 , 6629 , 7982 , 10029 , 13487 , 20586 , 43459 , -391253 , -35558 , -18625 , -12617 , -9540 , -7669 , -6412 , -5509 , -4829 , -4298 , -3873 , -3524 , -3233 , -2986 , -2775 , -2591 , -2430 , -2288 , -2162 , -2049 , -1947 , -1855 , -1771 , -1694 , -1624 , -1560 , -1500 , -1445 , -1393 , -1346 , -1301 , -1259 , -1220 , -1184 , -1149 , -1116 , -1086 , -1056 , -1029 , -1003 , -978 , -954 , -932 , -910 , -890 , -870 , -851 , -833 , -816 , -800 , -784 , -769 , -754 , -740 , -726 , -713 , -701 , -689 , -677 , -665 , -655 , -644 , -634 , -624 , -614 , -605 , -596 , -587 , -579 , -570 , -562 , -555 , -547 , -540 , -533 , -526 , -519 , -512 , -506 , -500 , -493 , -488 , -482 , -476 , -471 , -465 , -460 , -455 , -450 , -445 , -440 , -435 , -431 , -426 , -422 , -418 , -413 , -409 , -405 , -401 , -397 , -394 , -390 , -386 , -383 , -379 , -376 , -372 , -369 , -366 , -363 , -359 , -356 , -353 , -350 , -347 , -345 , -342 , -339 , -336 , -334 , -331 , -329 , -326 , -324 , -321 , -319 , -316 , -314 , -312 , -309 , -307 , -305 , -303 , -301 , -299 , -297 , -295 , -293 , -291 , -289 , -287 , -285 , -283 , -281 , -279 , -278 , -276 , -274 , -273 , -271 , -269 , -268 , -266 , -264 , -263 , -261 , -260 , -258 , -257 , -255 , -254 , -252 , -251 , -250 , -248 , -247 , -246 , -244 , -243 , -242 , -240 , -239 , -238 , -237 , -236 , -234 , -233 , -232 , -231 , -230 , -229 , -228 , -226 , -225 , -224 , -223 , -222 , -221 , -220 , -219 , -218 , -217 , -216 , -215 , -214 , -213 , -212 , -211 , -211 , -210 , -209 , -208 , -207 , -206 , -205 , -204 , -204 , -203 , -202 , -201 , -200 , -200 , -199 , -198 , -197 , -197 , -196 , -195 , -194 , -194 , -193 , -192 , -191 , -191 , -190 , -189 , -189 , -188 , -187 , -187 , -186 , -185 , -185 , -184 , -183 , -183 , -182 , -182 , -181 , -180 , -180 , -179 , -179 , -178 , -178 , -177 , -176 , -176 , -175 , -175 , -174 , -174 , -173 , -173 , -172 , -172 , -171 , -171 , -170 , -170 , -169 , -169 , -168 , -168 , -167 , -167 , -166 , -166 , -165 , -165 , -165 , -164 , -164 , -163 , -163 , -162 , -162 , -162 , -161 , -161 , -160 , -160 , -160 , -159 , -159 , -158 , -158 , -158 , -157 , -157 , -157 , -156 , -156 , -155 , -155 , -155 , -154 , -154 , -154 , -153 , -153 , -153 , -152 , -152 , -152 , -151 , -151 , -151 , -151 , -150 , -150 , -150 , -149 , -149 , -149 , -148 , -148 , -148 , -148 , -147 , -147 , -147 , -146 , -146 , -146 , -146 , -145 , -145 , -145 , -145 , -144 , -144 , -144 , -144 , -143 , -143 , -143 , -143 , -142 , -142 , -142 , -142 , -142 , -141 , -141 , -141 , -141 , -140 , -140 , -140 , -140 , -140 , -139 , -139 , -139 , -139 , -139 , -138 , -138 , -138 , -138 , -138 , -137 , -137 , -137 , -137 , -137 , -137 , -136 , -136 , -136 , -136 , -136 , -136 , -135 , -135 , -135 , -135 , -135 , -135 , -135 , -134 , -134 , -134 , -134 , -134 , -134 , -134 , -133 , -133 , -133 , -133 , -133 , -133 , -133 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -133 , -133 , -133 , -133 , -133 , -133 , -133 , -133 , -134 , -134 , -134 , -134 , -134 , -134 , -134 , -135 , -135 , -135 , -135 , -135 , -135 , -135 , -136 , -136 , -136 , -136 , -136 , -136 , -137 , -137 , -137 , -137 , -137 , -138 , -138 , -138 , -138 , -138 , -138 , -139 , -139 , -139 , -139 , -139 , -140 , -140 , -140 , -140 , -140 , -141 , -141 , -141 , -141 , -142 , -142 , -142 , -142 , -142 , -143 , -143 , -143 , -143 , -144 , -144 , -144 , -144 , -145 , -145 , -145 , -145 , -146 , -146 , -146 , -147 , -147 , -147 , -147 , -148 , -148 , -148 , -148 , -149 , -149 , -149 , -150 , -150 , -150 , -151 , -151 , -151 , -152 , -152 , -152 , -152 , -153 , -153 , -153 , -154 , -154 , -155 , -155 , -155 , -156 , -156 , -156 , -157 , -157 , -157 , -158 , -158 , -159 , -159 , -159 , -160 , -160 , -160 , -161 , -161 , -162 , -162 , -163 , -163 , -163 , -164 , -164 , -165 , -165 , -166 , -166 , -166 , -167 , -167 , -168 , -168 , -169 , -169 , -170 , -170 , -171 , -171 , -172 , -172 , -173 , -173 , -174 , -174 , -175 , -175 , -176 , -177 , -177 , -178 , -178 , -179 , -179 , -180 , -181 , -181 , -182 , -182 , -183 , -184 , -184 , -185 , -186 , -186 , -187 , -187 , -188 , -189 , -189 , -190 , -191 , -192 , -192 , -193 , -194 , -194 , -195 , -196 , -197 , -197 , -198 , -199 , -200 , -201 , -201 , -202 , -203 , -204 , -205 , -205 , -206 , -207 , -208 , -209 , -210 , -211 , -212 , -213 , -214 , -214 , -215 , -216 , -217 , -218 , -219 , -220 , -221 , -222 , -223 , -225 , -226 , -227 , -228 , -229 , -230 , -231 , -232 , -233 , -235 , -236 , -237 , -238 , -239 , -241 , -242 , -243 , -245 , -246 , -247 , -249 , -250 , -251 , -253 , -254 , -256 , -257 , -259 , -260 , -262 , -263 , -265 , -266 , -268 , -270 , -271 , -273 , -275 , -276 , -278 , -280 , -282 , -283 , -285 , -287 , -289 , -291 , -293 , -295 , -297 , -299 , -301 , -303 , -305 , -308 , -310 , -312 , -314 , -317 , -319 , -322 , -324 , -327 , -329 , -332 , -334 , -337 , -340 , -342 , -345 , -348 , -351 , -354 , -357 , -360 , -363 , -366 , -370 , -373 , -376 , -380 , -383 , -387 , -391 , -394 , -398 , -402 , -406 , -410 , -414 , -418 , -423 , -427 , -432 , -436 , -441 , -446 , -451 , -456 , -461 , -466 , -472 , -477 , -483 , -489 , -495 , -501 , -507 , -514 , -520 , -527 , -534 , -541 , -549 , -556 , -564 , -572 , -580 , -589 , -598 , -607 , -616 , -626 , -636 , -646 , -657 , -668 , -679 , -691 , -703 , -716 , -729 , -743 , -757 , -772 , -787 , -803 , -819 , -837 , -855 , -874 , -894 , -914 , -936 , -959 , -983 , -1008 , -1034 , -1062 , -1092 , -1123 , -1156 , -1191 , -1228 , -1267 , -1310 , -1355 , -1403 , -1455 , -1511 , -1572 , -1638 , -1709 , -1787 , -1872 , -1966 , -2070 , -2186 , -2315 , -2461 , -2626 , -2814 , -3032 , -3287 , -3589 , -3951 , -4395 , -4951 , -5669 , -6629 , -7982 , -10029 , -13487 , -20585 , -43457 , 391291 , 35559 , 18625 , 12617 , 9540 , 7669 , 6412 , 5509 , 4829 , 4298 , 3873 , 3524 , 3233 , 2986 , 2775 , 2591 , 2430 , 2288 , 2162 , 2049 , 1947 , 1855 , 1771 , 1694 , 1624 , 1560 , 1500 , 1445 , 1393 , 1346 , 1301 , 1259 , 1220 , 1184 , 1149 , 1116 , 1086 , 1056 , 1029 , 1003 , 978 , 954 , 932 , 910 , 890 , 870 , 851 , 833 , 816 , 800 , 784 , 769 , 754 , 740 , 726 , 713 , 701 , 689 , 677 , 665 , 655 , 644 , 634 , 624 , 614 , 605 , 596 , 587 , 579 , 570 , 562 , 555 , 547 , 540 , 533 , 526 , 519 , 512 , 506 , 500 , 493 , 488 , 482 , 476 , 471 , 465 , 460 , 455 , 450 , 445 , 440 , 435 , 431 , 426 , 422 , 418 , 413 , 409 , 405 , 401 , 397 , 394 , 390 , 386 , 383 , 379 , 376 , 372 , 369 , 366 , 363 , 359 , 356 , 353 , 350 , 347 , 345 , 342 , 339 , 336 , 334 , 331 , 329 , 326 , 324 , 321 , 319 , 316 , 314 , 312 , 309 , 307 , 305 , 303 , 301 , 299 , 297 , 295 , 293 , 291 , 289 , 287 , 285 , 283 , 281 , 279 , 278 , 276 , 274 , 273 , 271 , 269 , 268 , 266 , 264 , 263 , 261 , 260 , 258 , 257 , 255 , 254 , 252 , 251 , 250 , 248 , 247 , 246 , 244 , 243 , 242 , 240 , 239 , 238 , 237 , 236 , 234 , 233 , 232 , 231 , 230 , 229 , 228 , 226 , 225 , 224 , 223 , 222 , 221 , 220 , 219 , 218 , 217 , 216 , 215 , 214 , 213 , 212 , 211 , 211 , 210 , 209 , 208 , 207 , 206 , 205 , 204 , 204 , 203 , 202 , 201 , 200 , 200 , 199 , 198 , 197 , 197 , 196 , 195 , 194 , 194 , 193 , 192 , 191 , 191 , 190 , 189 , 189 , 188 , 187 , 187 , 186 , 185 , 185 , 184 , 183 , 183 , 182 , 182 , 181 , 180 , 180 , 179 , 179 , 178 , 178 , 177 , 176 , 176 , 175 , 175 , 174 , 174 , 173 , 173 , 172 , 172 , 171 , 171 , 170 , 170 , 169 , 169 , 168 , 168 , 167 , 167 , 166 , 166 , 165 , 165 , 165 , 164 , 164 , 163 , 163 , 162 , 162 , 162 , 161 , 161 , 160 , 160 , 160 , 159 , 159 , 158 , 158 , 158 , 157 , 157 , 157 , 156 , 156 , 155 , 155 , 155 , 154 , 154 , 154 , 153 , 153 , 153 , 152 , 152 , 152 , 151 , 151 , 151 , 151 , 150 , 150 , 150 , 149 , 149 , 149 , 148 , 148 , 148 , 148 , 147 , 147 , 147 , 146 , 146 , 146 , 146 , 145 , 145 , 145 , 145 , 144 , 144 , 144 , 144 , 143 , 143 , 143 , 143 , 142 , 142 , 142 , 142 , 142 , 141 , 141 , 141 , 141 , 140 , 140 , 140 , 140 , 140 , 139 , 139 , 139 , 139 , 139 , 138 , 138 , 138 , 138 , 138 , 137 , 137 , 137 , 137 , 137 , 137 , 136 , 136 , 136 , 136 , 136 , 136 , 135 , 135 , 135 , 135 , 135 , 135 , 135 , 134 , 134 , 134 , 134 , 134 , 134 , 134 , 133 , 133 , 133 , 133 , 133 , 133 , 133 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 }; int inv_sin_table[1921] = { 391198 , 35558 , 18625 , 12617 , 9540 , 7669 , 6412 , 5509 , 4829 , 4298 , 3873 , 3524 , 3233 , 2986 , 2775 , 2591 , 2430 , 2288 , 2162 , 2049 , 1947 , 1855 , 1771 , 1694 , 1624 , 1560 , 1500 , 1445 , 1393 , 1346 , 1301 , 1259 , 1220 , 1184 , 1149 , 1116 , 1086 , 1056 , 1029 , 1003 , 978 , 954 , 932 , 910 , 890 , 870 , 851 , 833 , 816 , 800 , 784 , 769 , 754 , 740 , 726 , 713 , 701 , 689 , 677 , 665 , 655 , 644 , 634 , 624 , 614 , 605 , 596 , 587 , 579 , 570 , 562 , 555 , 547 , 540 , 533 , 526 , 519 , 512 , 506 , 500 , 493 , 488 , 482 , 476 , 471 , 465 , 460 , 455 , 450 , 445 , 440 , 435 , 431 , 426 , 422 , 418 , 413 , 409 , 405 , 401 , 397 , 394 , 390 , 386 , 383 , 379 , 376 , 372 , 369 , 366 , 363 , 359 , 356 , 353 , 350 , 347 , 345 , 342 , 339 , 336 , 334 , 331 , 329 , 326 , 324 , 321 , 319 , 316 , 314 , 312 , 309 , 307 , 305 , 303 , 301 , 299 , 297 , 295 , 293 , 291 , 289 , 287 , 285 , 283 , 281 , 279 , 278 , 276 , 274 , 273 , 271 , 269 , 268 , 266 , 264 , 263 , 261 , 260 , 258 , 257 , 255 , 254 , 252 , 251 , 250 , 248 , 247 , 246 , 244 , 243 , 242 , 240 , 239 , 238 , 237 , 236 , 234 , 233 , 232 , 231 , 230 , 229 , 228 , 226 , 225 , 224 , 223 , 222 , 221 , 220 , 219 , 218 , 217 , 216 , 215 , 214 , 213 , 212 , 211 , 211 , 210 , 209 , 208 , 207 , 206 , 205 , 204 , 204 , 203 , 202 , 201 , 200 , 200 , 199 , 198 , 197 , 197 , 196 , 195 , 194 , 194 , 193 , 192 , 191 , 191 , 190 , 189 , 189 , 188 , 187 , 187 , 186 , 185 , 185 , 184 , 183 , 183 , 182 , 182 , 181 , 180 , 180 , 179 , 179 , 178 , 178 , 177 , 176 , 176 , 175 , 175 , 174 , 174 , 173 , 173 , 172 , 172 , 171 , 171 , 170 , 170 , 169 , 169 , 168 , 168 , 167 , 167 , 166 , 166 , 165 , 165 , 165 , 164 , 164 , 163 , 163 , 162 , 162 , 162 , 161 , 161 , 160 , 160 , 160 , 159 , 159 , 158 , 158 , 158 , 157 , 157 , 157 , 156 , 156 , 155 , 155 , 155 , 154 , 154 , 154 , 153 , 153 , 153 , 152 , 152 , 152 , 151 , 151 , 151 , 151 , 150 , 150 , 150 , 149 , 149 , 149 , 148 , 148 , 148 , 148 , 147 , 147 , 147 , 146 , 146 , 146 , 146 , 145 , 145 , 145 , 145 , 144 , 144 , 144 , 144 , 143 , 143 , 143 , 143 , 142 , 142 , 142 , 142 , 142 , 141 , 141 , 141 , 141 , 140 , 140 , 140 , 140 , 140 , 139 , 139 , 139 , 139 , 139 , 138 , 138 , 138 , 138 , 138 , 137 , 137 , 137 , 137 , 137 , 137 , 136 , 136 , 136 , 136 , 136 , 136 , 135 , 135 , 135 , 135 , 135 , 135 , 135 , 134 , 134 , 134 , 134 , 134 , 134 , 134 , 133 , 133 , 133 , 133 , 133 , 133 , 133 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 128 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 129 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 130 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 131 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 132 , 133 , 133 , 133 , 133 , 133 , 133 , 133 , 133 , 134 , 134 , 134 , 134 , 134 , 134 , 134 , 135 , 135 , 135 , 135 , 135 , 135 , 135 , 136 , 136 , 136 , 136 , 136 , 136 , 137 , 137 , 137 , 137 , 137 , 138 , 138 , 138 , 138 , 138 , 138 , 139 , 139 , 139 , 139 , 139 , 140 , 140 , 140 , 140 , 140 , 141 , 141 , 141 , 141 , 142 , 142 , 142 , 142 , 142 , 143 , 143 , 143 , 143 , 144 , 144 , 144 , 144 , 145 , 145 , 145 , 145 , 146 , 146 , 146 , 147 , 147 , 147 , 147 , 148 , 148 , 148 , 148 , 149 , 149 , 149 , 150 , 150 , 150 , 151 , 151 , 151 , 152 , 152 , 152 , 152 , 153 , 153 , 153 , 154 , 154 , 155 , 155 , 155 , 156 , 156 , 156 , 157 , 157 , 157 , 158 , 158 , 159 , 159 , 159 , 160 , 160 , 160 , 161 , 161 , 162 , 162 , 163 , 163 , 163 , 164 , 164 , 165 , 165 , 166 , 166 , 166 , 167 , 167 , 168 , 168 , 169 , 169 , 170 , 170 , 171 , 171 , 172 , 172 , 173 , 173 , 174 , 174 , 175 , 175 , 176 , 177 , 177 , 178 , 178 , 179 , 179 , 180 , 181 , 181 , 182 , 182 , 183 , 184 , 184 , 185 , 186 , 186 , 187 , 187 , 188 , 189 , 189 , 190 , 191 , 192 , 192 , 193 , 194 , 194 , 195 , 196 , 197 , 197 , 198 , 199 , 200 , 201 , 201 , 202 , 203 , 204 , 205 , 205 , 206 , 207 , 208 , 209 , 210 , 211 , 212 , 213 , 214 , 214 , 215 , 216 , 217 , 218 , 219 , 220 , 221 , 222 , 223 , 225 , 226 , 227 , 228 , 229 , 230 , 231 , 232 , 233 , 235 , 236 , 237 , 238 , 239 , 241 , 242 , 243 , 245 , 246 , 247 , 249 , 250 , 251 , 253 , 254 , 256 , 257 , 259 , 260 , 262 , 263 , 265 , 266 , 268 , 270 , 271 , 273 , 275 , 276 , 278 , 280 , 282 , 283 , 285 , 287 , 289 , 291 , 293 , 295 , 297 , 299 , 301 , 303 , 305 , 308 , 310 , 312 , 314 , 317 , 319 , 322 , 324 , 327 , 329 , 332 , 334 , 337 , 340 , 342 , 345 , 348 , 351 , 354 , 357 , 360 , 363 , 366 , 370 , 373 , 376 , 380 , 383 , 387 , 391 , 394 , 398 , 402 , 406 , 410 , 414 , 418 , 423 , 427 , 432 , 436 , 441 , 446 , 451 , 456 , 461 , 466 , 472 , 477 , 483 , 489 , 495 , 501 , 507 , 514 , 520 , 527 , 534 , 541 , 549 , 556 , 564 , 572 , 580 , 589 , 598 , 607 , 616 , 626 , 636 , 646 , 657 , 668 , 679 , 691 , 703 , 716 , 729 , 743 , 757 , 772 , 787 , 803 , 819 , 837 , 855 , 874 , 894 , 914 , 936 , 959 , 983 , 1008 , 1034 , 1062 , 1092 , 1123 , 1156 , 1191 , 1228 , 1267 , 1310 , 1355 , 1403 , 1455 , 1511 , 1572 , 1638 , 1709 , 1787 , 1872 , 1966 , 2070 , 2186 , 2315 , 2461 , 2626 , 2814 , 3032 , 3287 , 3589 , 3951 , 4395 , 4951 , 5669 , 6629 , 7982 , 10029 , 13487 , 20585 , 43458 , -391200 , -35558 , -18625 , -12617 , -9540 , -7669 , -6412 , -5509 , -4829 , -4298 , -3873 , -3524 , -3233 , -2986 , -2775 , -2591 , -2430 , -2288 , -2162 , -2049 , -1947 , -1855 , -1771 , -1694 , -1624 , -1560 , -1500 , -1445 , -1393 , -1346 , -1301 , -1259 , -1220 , -1184 , -1149 , -1116 , -1086 , -1056 , -1029 , -1003 , -978 , -954 , -932 , -910 , -890 , -870 , -851 , -833 , -816 , -800 , -784 , -769 , -754 , -740 , -726 , -713 , -701 , -689 , -677 , -665 , -655 , -644 , -634 , -624 , -614 , -605 , -596 , -587 , -579 , -570 , -562 , -555 , -547 , -540 , -533 , -526 , -519 , -512 , -506 , -500 , -493 , -488 , -482 , -476 , -471 , -465 , -460 , -455 , -450 , -445 , -440 , -435 , -431 , -426 , -422 , -418 , -413 , -409 , -405 , -401 , -397 , -394 , -390 , -386 , -383 , -379 , -376 , -372 , -369 , -366 , -363 , -359 , -356 , -353 , -350 , -347 , -345 , -342 , -339 , -336 , -334 , -331 , -329 , -326 , -324 , -321 , -319 , -316 , -314 , -312 , -309 , -307 , -305 , -303 , -301 , -299 , -297 , -295 , -293 , -291 , -289 , -287 , -285 , -283 , -281 , -279 , -278 , -276 , -274 , -273 , -271 , -269 , -268 , -266 , -264 , -263 , -261 , -260 , -258 , -257 , -255 , -254 , -252 , -251 , -250 , -248 , -247 , -246 , -244 , -243 , -242 , -240 , -239 , -238 , -237 , -236 , -234 , -233 , -232 , -231 , -230 , -229 , -228 , -226 , -225 , -224 , -223 , -222 , -221 , -220 , -219 , -218 , -217 , -216 , -215 , -214 , -213 , -212 , -211 , -211 , -210 , -209 , -208 , -207 , -206 , -205 , -204 , -204 , -203 , -202 , -201 , -200 , -200 , -199 , -198 , -197 , -197 , -196 , -195 , -194 , -194 , -193 , -192 , -191 , -191 , -190 , -189 , -189 , -188 , -187 , -187 , -186 , -185 , -185 , -184 , -183 , -183 , -182 , -182 , -181 , -180 , -180 , -179 , -179 , -178 , -178 , -177 , -176 , -176 , -175 , -175 , -174 , -174 , -173 , -173 , -172 , -172 , -171 , -171 , -170 , -170 , -169 , -169 , -168 , -168 , -167 , -167 , -166 , -166 , -165 , -165 , -165 , -164 , -164 , -163 , -163 , -162 , -162 , -162 , -161 , -161 , -160 , -160 , -160 , -159 , -159 , -158 , -158 , -158 , -157 , -157 , -157 , -156 , -156 , -155 , -155 , -155 , -154 , -154 , -154 , -153 , -153 , -153 , -152 , -152 , -152 , -151 , -151 , -151 , -151 , -150 , -150 , -150 , -149 , -149 , -149 , -148 , -148 , -148 , -148 , -147 , -147 , -147 , -146 , -146 , -146 , -146 , -145 , -145 , -145 , -145 , -144 , -144 , -144 , -144 , -143 , -143 , -143 , -143 , -142 , -142 , -142 , -142 , -142 , -141 , -141 , -141 , -141 , -140 , -140 , -140 , -140 , -140 , -139 , -139 , -139 , -139 , -139 , -138 , -138 , -138 , -138 , -138 , -137 , -137 , -137 , -137 , -137 , -137 , -136 , -136 , -136 , -136 , -136 , -136 , -135 , -135 , -135 , -135 , -135 , -135 , -135 , -134 , -134 , -134 , -134 , -134 , -134 , -134 , -133 , -133 , -133 , -133 , -133 , -133 , -133 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -129 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -130 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -131 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -132 , -133 , -133 , -133 , -133 , -133 , -133 , -133 , -133 , -134 , -134 , -134 , -134 , -134 , -134 , -134 , -135 , -135 , -135 , -135 , -135 , -135 , -135 , -136 , -136 , -136 , -136 , -136 , -136 , -137 , -137 , -137 , -137 , -137 , -138 , -138 , -138 , -138 , -138 , -138 , -139 , -139 , -139 , -139 , -139 , -140 , -140 , -140 , -140 , -140 , -141 , -141 , -141 , -141 , -142 , -142 , -142 , -142 , -142 , -143 , -143 , -143 , -143 , -144 , -144 , -144 , -144 , -145 , -145 , -145 , -145 , -146 , -146 , -146 , -147 , -147 , -147 , -147 , -148 , -148 , -148 , -148 , -149 , -149 , -149 , -150 , -150 , -150 , -151 , -151 , -151 , -152 , -152 , -152 , -152 , -153 , -153 , -153 , -154 , -154 , -155 , -155 , -155 , -156 , -156 , -156 , -157 , -157 , -157 , -158 , -158 , -159 , -159 , -159 , -160 , -160 , -160 , -161 , -161 , -162 , -162 , -163 , -163 , -163 , -164 , -164 , -165 , -165 , -166 , -166 , -166 , -167 , -167 , -168 , -168 , -169 , -169 , -170 , -170 , -171 , -171 , -172 , -172 , -173 , -173 , -174 , -174 , -175 , -175 , -176 , -177 , -177 , -178 , -178 , -179 , -179 , -180 , -181 , -181 , -182 , -182 , -183 , -184 , -184 , -185 , -186 , -186 , -187 , -187 , -188 , -189 , -189 , -190 , -191 , -192 , -192 , -193 , -194 , -194 , -195 , -196 , -197 , -197 , -198 , -199 , -200 , -201 , -201 , -202 , -203 , -204 , -205 , -205 , -206 , -207 , -208 , -209 , -210 , -211 , -212 , -213 , -214 , -214 , -215 , -216 , -217 , -218 , -219 , -220 , -221 , -222 , -223 , -225 , -226 , -227 , -228 , -229 , -230 , -231 , -232 , -233 , -235 , -236 , -237 , -238 , -239 , -241 , -242 , -243 , -245 , -246 , -247 , -249 , -250 , -251 , -253 , -254 , -256 , -257 , -259 , -260 , -262 , -263 , -265 , -266 , -268 , -270 , -271 , -273 , -275 , -276 , -278 , -280 , -282 , -283 , -285 , -287 , -289 , -291 , -293 , -295 , -297 , -299 , -301 , -303 , -305 , -308 , -310 , -312 , -314 , -317 , -319 , -322 , -324 , -327 , -329 , -332 , -334 , -337 , -340 , -342 , -345 , -348 , -351 , -354 , -357 , -360 , -363 , -366 , -370 , -373 , -376 , -380 , -383 , -387 , -391 , -394 , -398 , -402 , -406 , -410 , -414 , -418 , -423 , -427 , -432 , -436 , -441 , -446 , -451 , -456 , -461 , -466 , -472 , -477 , -483 , -489 , -495 , -501 , -507 , -514 , -520 , -527 , -534 , -541 , -549 , -556 , -564 , -572 , -580 , -589 , -598 , -607 , -616 , -626 , -636 , -646 , -657 , -668 , -679 , -691 , -703 , -716 , -729 , -743 , -757 , -772 , -787 , -803 , -819 , -837 , -855 , -874 , -894 , -914 , -936 , -959 , -983 , -1008 , -1034 , -1062 , -1092 , -1123 , -1156 , -1191 , -1228 , -1267 , -1310 , -1355 , -1403 , -1455 , -1511 , -1572 , -1638 , -1709 , -1787 , -1872 , -1966 , -2070 , -2186 , -2315 , -2461 , -2626 , -2814 , -3032 , -3287 , -3589 , -3951 , -4395 , -4951 , -5669 , -6629 , -7982 , -10029 , -13487 , -20586 , -43459 , 391096 }; float y_step[1921] = { 0.020941, 0.230381, 0.439827, 0.649282, 0.858750, 1.068238, 1.277748, 1.487285, 1.696854, 1.906460, 2.116107, 2.325799, 2.535540, 2.745337, 2.955192, 3.165110, 3.375097, 3.585155, 3.795291, 4.005509, 4.215813, 4.426207, 4.636697, 4.847286, 5.057980, 5.268783, 5.479700, 5.690734, 5.901892, 6.113177, 6.324594, 6.536149, 6.747844, 6.959685, 7.171678, 7.383826, 7.596134, 7.808608, 8.021251, 8.234068, 8.447064, 8.660245, 8.873615, 9.087178, 9.300941, 9.514906, 9.729079, 9.943466, 10.158072, 10.372899, 10.587955, 10.803245, 11.018771, 11.234542, 11.450560, 11.666831, 11.883360, 12.100153, 12.317214, 12.534549, 12.752162, 12.970059, 13.188247, 13.406728, 13.625508, 13.844594, 14.063991, 14.283703, 14.503736, 14.724096, 14.944788, 15.165817, 15.387190, 15.608912, 15.830987, 16.053423, 16.276222, 16.499395, 16.722944, 16.946875, 17.171194, 17.395908, 17.621023, 17.846542, 18.072475, 18.298826, 18.525600, 18.752804, 18.980444, 19.208527, 19.437057, 19.666044, 19.895491, 20.125404, 20.355793, 20.586660, 20.818014, 21.049862, 21.282209, 21.515062, 21.748428, 21.982315, 22.216726, 22.451674, 22.687159, 22.923191, 23.159777, 23.396925, 23.634640, 23.872931, 24.111805, 24.351267, 24.591328, 24.831993, 25.073269, 25.315165, 25.557688, 25.800846, 26.044645, 26.289097, 26.534204, 26.779980, 27.026428, 27.273560, 27.521379, 27.769899, 28.019125, 28.269066, 28.519732, 28.771128, 29.023266, 29.276154, 29.529799, 29.784212, 30.039400, 30.295374, 30.552143, 30.809715, 31.068100, 31.327307, 31.587345, 31.848225, 32.109955, 32.372547, 32.636009, 32.900352, 33.165588, 33.431725, 33.698772, 33.966740, 34.235641, 34.505486, 34.776283, 35.048046, 35.320786, 35.594513, 35.869236, 36.144970, 36.421722, 36.699512, 36.978344, 37.258232, 37.539188, 37.821228, 38.104359, 38.388592, 38.673946, 38.960434, 39.248062, 39.536846, 39.826801, 40.117939, 40.410275, 40.703823, 40.998592, 41.294601, 41.591866, 41.890392, 42.190205, 42.491310, 42.793728, 43.097473, 43.402561, 43.709003, 44.016819, 44.326027, 44.636635, 44.948666, 45.262135, 45.577057, 45.893452, 46.211334, 46.530724, 46.851635, 47.174088, 47.498100, 47.823692, 48.150879, 48.479679, 48.810116, 49.142204, 49.475967, 49.811424, 50.148594, 50.487495, 50.828152, 51.170586, 51.514812, 51.860859, 52.208748, 52.558498, 52.910130, 53.263672, 53.619148, 53.976574, 54.335979, 54.697392, 55.060825, 55.426315, 55.793880, 56.163551, 56.535351, 56.909302, 57.285442, 57.663788, 58.044373, 58.427223, 58.812370, 59.199837, 59.589661, 59.981865, 60.376480, 60.773544, 61.173080, 61.575127, 61.979710, 62.386868, 62.796627, 63.209030, 63.624107, 64.041893, 64.462425, 64.885742, 65.311874, 65.740860, 66.172737, 66.607552, 67.045341, 67.486137, 67.929985, 68.376930, 68.827011, 69.280273, 69.736755, 70.196503, 70.659569, 71.125992, 71.595818, 72.069092, 72.545868, 73.026199, 73.510132, 73.997711, 74.488998, 74.984039, 75.482895, 75.985611, 76.492249, 77.002869, 77.517525, 78.036278, 78.559189, 79.086311, 79.617722, 80.153473, 80.693634, 81.238274, 81.787453, 82.341248, 82.899727, 83.462952, 84.031013, 84.603973, 85.181915, 85.764915, 86.353050, 86.946396, 87.545052, 88.149078, 88.758583, 89.373650, 89.994354, 90.620804, 91.253082, 91.891289, 92.535522, 93.185883, 93.842468, 94.505386, 95.174744, 95.850647, 96.533211, 97.222542, 97.918762, 98.621986, 99.332344, 100.049950, 100.774940, 101.507439, 102.247581, 102.995506, 103.751350, 104.515251, 105.287369, 106.067841, 106.856827, 107.654480, 108.460960, 109.276436, 110.101082, 110.935066, 111.778557, 112.631752, 113.494827, 114.367981, 115.251411, 116.145309, 117.049889, 117.965370, 118.891953, 119.829872, 120.779358, 121.740646, 122.713974, 123.699593, 124.697762, 125.708740, 126.732796, 127.770218, 128.821274, 129.886276, 130.965530, 132.059311, 133.167984, 134.291855, 135.431259, 136.586563, 137.758118, 138.946289, 140.151474, 141.374039, 142.614426, 143.873032, 145.150284, 146.446640, 147.762573, 149.098526, 150.455017, 151.832535, 153.231598, 154.652771, 156.096603, 157.563660, 159.054550, 160.569901, 162.110321, 163.676514, 165.269135, 166.888901, 168.536545, 170.212830, 171.918564, 173.654541, 175.421631, 177.220718, 179.052689, 180.918533, 182.819214, 184.755768, 186.729248, 188.740784, 190.791534, 192.882675, 195.015488, 197.191269, 199.411362, 201.677200, 203.990250, 206.352066, 208.764267, 211.228500, 213.746567, 216.320267, 218.951553, 221.642410, 224.394974, 227.211426, 230.094101, 233.045395, 236.067886, 239.164246, 242.337265, 245.589905, 248.925278, 252.346649, 255.857483, 259.461395, 263.162201, 266.963959, 270.870972, 274.887726, 279.018982, 283.269867, 287.645660, 292.152130, 296.795258, 301.581512, 306.517670, 311.611023, 316.869324, 322.300842, 327.914368, 333.719330, 339.725861, 345.944763, 352.387665, 359.066986, 365.996155, 373.189636, 380.662964, 388.433044, 396.518005, 404.937592, 413.713226, 422.868164, 432.427734, 442.419647, 452.874084, 463.824188, 475.306305, 487.360443, 500.030731, 513.365906, 527.420044, 542.253296, 557.932495, 574.532593, 592.137573, 610.841858, 630.752319, 651.989807, 674.692261, 699.017029, 725.145142, 753.285522, 783.680481, 816.613098, 852.415833, 891.481812, 934.279480, 981.371338, 1033.439087, 1091.316650, 1156.035400, 1228.886108, 1311.505859, 1406.003418, 1515.140869, 1642.609009, 1793.453003, 1974.756226, 2196.786133, 2475.008301, 2833.854004, 3314.318604, 3990.861816, 5014.313477, 6743.541992, 10292.922852, 21729.531250, 195598.890625, 17779.218750, 9312.757813, 6308.510742, 4769.721191, 3834.353027, 3205.640869, 2754.011475, 2413.878418, 2148.484619, 1935.630371, 1761.115601, 1615.434814, 1491.984741, 1386.035400, 1294.109863, 1213.594849, 1142.488770, 1079.231934, 1022.591614, 971.580139, 925.397217, 883.387451, 845.008850, 809.809387, 777.409119, 747.486206, 719.766479, 694.014709, 670.028015, 647.630432, 626.668762, 607.008728, 588.532349, 571.135498, 554.725952, 539.221680, 524.549377, 510.643585, 497.445496, 484.902191, 472.965820, 461.593170, 450.744965, 440.385590, 430.482452, 421.005920, 411.928772, 403.226135, 394.875122, 386.854675, 379.145355, 371.729279, 364.589874, 357.711761, 351.080780, 344.683655, 338.508118, 332.542725, 326.776825, 321.200439, 315.804260, 310.579590, 305.518250, 300.612640, 295.855530, 291.240234, 286.760376, 282.410004, 278.183472, 274.075470, 270.081055, 266.195465, 262.414215, 258.733093, 255.148087, 251.655441, 248.251526, 244.932953, 241.696487, 238.539017, 235.457657, 232.449615, 229.512238, 226.643005, 223.839508, 221.099457, 218.420670, 215.801056, 213.238632, 210.731476, 208.277786, 205.875793, 203.523865, 201.220367, 198.963791, 196.752670, 194.585602, 192.461227, 190.378250, 188.335449, 186.331604, 184.365585, 182.436295, 180.542664, 178.683670, 176.858353, 175.065750, 173.304947, 171.575073, 169.875305, 168.204803, 166.562790, 164.948502, 163.361221, 161.800247, 160.264893, 158.754486, 157.268402, 155.806046, 154.366791, 152.950073, 151.555359, 150.182083, 148.829742, 147.497833, 146.185867, 144.893356, 143.619873, 142.364944, 141.128159, 139.909088, 138.707336, 137.522522, 136.354248, 135.202164, 134.065887, 132.945084, 131.839417, 130.748550, 129.672180, 128.610001, 127.561684, 126.526955, 125.505539, 124.497139, 123.501503, 122.518364, 121.547462, 120.588554, 119.641396, 118.705765, 117.781418, 116.868141, 115.965714, 115.073921, 114.192566, 113.321442, 112.460358, 111.609116, 110.767532, 109.935440, 109.112640, 108.298973, 107.494270, 106.698364, 105.911095, 105.132301, 104.361847, 103.599564, 102.845314, 102.098961, 101.360359, 100.629372, 99.905869, 99.189720, 98.480797, 97.778984, 97.084145, 96.396179, 95.714958, 95.040375, 94.372314, 93.710670, 93.055336, 92.406212, 91.763191, 91.126175, 90.495064, 89.869774, 89.250206, 88.636261, 88.027855, 87.424911, 86.827324, 86.235023, 85.647926, 85.065941, 84.489006, 83.917030, 83.349945, 82.787666, 82.230133, 81.677269, 81.128998, 80.585266, 80.045990, 79.511108, 78.980568, 78.454285, 77.932213, 77.414284, 76.900444, 76.390625, 75.884773, 75.382828, 74.884743, 74.390457, 73.899918, 73.413071, 72.929863, 72.450249, 71.974174, 71.501587, 71.032448, 70.566704, 70.104309, 69.645210, 69.189377, 68.736755, 68.287308, 67.840988, 67.397751, 66.957558, 66.520370, 66.086143, 65.654846, 65.226433, 64.800865, 64.378113, 63.958134, 63.540890, 63.126350, 62.714478, 62.305241, 61.898602, 61.494526, 61.092987, 60.693947, 60.297375, 59.903244, 59.511517, 59.122169, 58.735168, 58.350483, 57.968086, 57.587952, 57.210049, 56.834351, 56.460831, 56.089458, 55.720211, 55.353062, 54.987988, 54.624958, 54.263950, 53.904942, 53.547909, 53.192822, 52.839664, 52.488407, 52.139030, 51.791515, 51.445831, 51.101967, 50.759892, 50.419586, 50.081032, 49.744205, 49.409092, 49.075665, 48.743908, 48.413799, 48.085323, 47.758457, 47.433182, 47.109486, 46.787342, 46.466736, 46.147648, 45.830067, 45.513966, 45.199337, 44.886154, 44.574409, 44.264084, 43.955154, 43.647614, 43.341446, 43.036629, 42.733150, 42.430996, 42.130146, 41.830593, 41.532322, 41.235310, 40.939548, 40.645023, 40.351723, 40.059628, 39.768726, 39.479004, 39.190453, 38.903053, 38.616795, 38.331665, 38.047653, 37.764740, 37.482922, 37.202179, 36.922501, 36.643879, 36.366299, 36.089748, 35.814220, 35.539696, 35.266167, 34.993626, 34.722054, 34.451450, 34.181793, 33.913078, 33.645294, 33.378433, 33.112476, 32.847424, 32.583256, 32.319969, 32.057549, 31.795988, 31.535278, 31.275406, 31.016365, 30.758144, 30.500732, 30.244125, 29.988308, 29.733274, 29.479017, 29.225523, 28.972786, 28.720798, 28.469547, 28.219028, 27.969231, 27.720146, 27.471767, 27.224085, 26.977091, 26.730778, 26.485138, 26.240162, 25.995842, 25.752171, 25.509140, 25.266743, 25.024971, 24.783817, 24.543274, 24.303335, 24.063990, 23.825233, 23.587059, 23.349457, 23.112423, 22.875948, 22.640024, 22.404648, 22.169809, 21.935503, 21.701721, 21.468458, 21.235706, 21.003460, 20.771711, 20.540455, 20.309683, 20.079391, 19.849571, 19.620216, 19.391323, 19.162882, 18.934887, 18.707335, 18.480217, 18.253529, 18.027262, 17.801413, 17.575975, 17.350941, 17.126307, 16.902063, 16.678209, 16.454737, 16.231640, 16.008913, 15.786550, 15.564546, 15.342895, 15.121591, 14.900629, 14.680004, 14.459710, 14.239741, 14.020093, 13.800759, 13.581735, 13.363014, 13.144592, 12.926464, 12.708624, 12.491066, 12.273787, 12.056780, 11.840040, 11.623563, 11.407343, 11.191375, 10.975654, 10.760175, 10.544932, 10.329923, 10.115139, 9.900578, 9.686234, 9.472103, 9.258179, 9.044456, 8.830933, 8.617600, 8.404457, 8.191497, 7.978714, 7.766106, 7.553666, 7.341390, 7.129273, 6.917312, 6.705500, 6.493833, 6.282307, 6.070916, 5.859657, 5.648524, 5.437513, 5.226620, 5.015839, 4.805167, 4.594597, 4.384127, 4.173751, 3.963465, 3.753264, 3.543144, 3.333100, 3.123127, 2.913222, 2.703379, 2.493594, 2.283863, 2.074180, 1.864542, 1.654944, 1.445381, 1.235850, 1.026345, 0.816862, 0.607396, 0.397943, 0.188499, -0.020941, -0.230381, -0.439827, -0.649282, -0.858750, -1.068238, -1.277748, -1.487285, -1.696854, -1.906460, -2.116107, -2.325799, -2.535540, -2.745337, -2.955192, -3.165110, -3.375097, -3.585155, -3.795292, -4.005509, -4.215813, -4.426207, -4.636697, -4.847286, -5.057981, -5.268783, -5.479700, -5.690734, -5.901892, -6.113177, -6.324594, -6.536149, -6.747844, -6.959685, -7.171678, -7.383826, -7.596134, -7.808608, -8.021251, -8.234068, -8.447064, -8.660245, -8.873615, -9.087178, -9.300941, -9.514906, -9.729079, -9.943466, -10.158072, -10.372899, -10.587955, -10.803245, -11.018772, -11.234542, -11.450560, -11.666831, -11.883360, -12.100153, -12.317214, -12.534549, -12.752162, -12.970059, -13.188247, -13.406728, -13.625508, -13.844594, -14.063991, -14.283703, -14.503736, -14.724096, -14.944788, -15.165817, -15.387190, -15.608912, -15.830987, -16.053423, -16.276222, -16.499395, -16.722944, -16.946875, -17.171194, -17.395908, -17.621023, -17.846542, -18.072475, -18.298826, -18.525600, -18.752804, -18.980444, -19.208527, -19.437057, -19.666044, -19.895491, -20.125404, -20.355793, -20.586660, -20.818014, -21.049862, -21.282209, -21.515062, -21.748428, -21.982315, -22.216726, -22.451674, -22.687159, -22.923191, -23.159777, -23.396925, -23.634640, -23.872931, -24.111805, -24.351267, -24.591328, -24.831993, -25.073269, -25.315165, -25.557688, -25.800846, -26.044645, -26.289097, -26.534204, -26.779980, -27.026428, -27.273560, -27.521379, -27.769899, -28.019125, -28.269066, -28.519732, -28.771128, -29.023266, -29.276154, -29.529799, -29.784212, -30.039400, -30.295374, -30.552143, -30.809715, -31.068100, -31.327307, -31.587345, -31.848225, -32.109955, -32.372547, -32.636009, -32.900352, -33.165588, -33.431725, -33.698772, -33.966740, -34.235641, -34.505486, -34.776283, -35.048046, -35.320786, -35.594513, -35.869236, -36.144970, -36.421722, -36.699512, -36.978344, -37.258232, -37.539188, -37.821228, -38.104359, -38.388592, -38.673946, -38.960434, -39.248062, -39.536846, -39.826801, -40.117939, -40.410275, -40.703823, -40.998592, -41.294601, -41.591866, -41.890392, -42.190205, -42.491310, -42.793728, -43.097473, -43.402561, -43.709003, -44.016819, -44.326027, -44.636635, -44.948666, -45.262135, -45.577057, -45.893452, -46.211334, -46.530724, -46.851635, -47.174088, -47.498100, -47.823692, -48.150879, -48.479679, -48.810116, -49.142204, -49.475967, -49.811424, -50.148594, -50.487495, -50.828152, -51.170586, -51.514812, -51.860859, -52.208748, -52.558498, -52.910130, -53.263672, -53.619148, -53.976574, -54.335979, -54.697392, -55.060825, -55.426315, -55.793880, -56.163551, -56.535351, -56.909302, -57.285442, -57.663788, -58.044373, -58.427223, -58.812370, -59.199837, -59.589661, -59.981865, -60.376480, -60.773544, -61.173080, -61.575127, -61.979710, -62.386868, -62.796627, -63.209030, -63.624107, -64.041893, -64.462425, -64.885742, -65.311874, -65.740860, -66.172737, -66.607552, -67.045341, -67.486137, -67.929985, -68.376930, -68.827011, -69.280273, -69.736755, -70.196503, -70.659569, -71.125992, -71.595818, -72.069092, -72.545868, -73.026199, -73.510132, -73.997711, -74.488998, -74.984039, -75.482895, -75.985611, -76.492249, -77.002869, -77.517525, -78.036278, -78.559189, -79.086311, -79.617722, -80.153473, -80.693634, -81.238274, -81.787453, -82.341248, -82.899727, -83.462952, -84.031013, -84.603973, -85.181915, -85.764915, -86.353050, -86.946396, -87.545052, -88.149078, -88.758583, -89.373650, -89.994354, -90.620804, -91.253082, -91.891289, -92.535522, -93.185883, -93.842468, -94.505386, -95.174744, -95.850647, -96.533211, -97.222542, -97.918762, -98.621986, -99.332344, -100.049957, -100.774940, -101.507439, -102.247581, -102.995506, -103.751350, -104.515251, -105.287369, -106.067841, -106.856827, -107.654480, -108.460960, -109.276436, -110.101082, -110.935066, -111.778557, -112.631752, -113.494827, -114.367981, -115.251411, -116.145309, -117.049889, -117.965370, -118.891953, -119.829872, -120.779358, -121.740646, -122.713974, -123.699593, -124.697762, -125.708740, -126.732796, -127.770218, -128.821274, -129.886276, -130.965530, -132.059326, -133.167984, -134.291855, -135.431259, -136.586563, -137.758118, -138.946289, -140.151474, -141.374039, -142.614426, -143.873032, -145.150284, -146.446640, -147.762573, -149.098526, -150.455017, -151.832535, -153.231598, -154.652771, -156.096603, -157.563660, -159.054550, -160.569901, -162.110321, -163.676514, -165.269135, -166.888901, -168.536545, -170.212830, -171.918564, -173.654556, -175.421631, -177.220718, -179.052689, -180.918533, -182.819214, -184.755768, -186.729248, -188.740784, -190.791534, -192.882675, -195.015488, -197.191269, -199.411362, -201.677200, -203.990250, -206.352066, -208.764267, -211.228500, -213.746567, -216.320267, -218.951553, -221.642410, -224.394974, -227.211426, -230.094101, -233.045395, -236.067886, -239.164246, -242.337265, -245.589905, -248.925278, -252.346649, -255.857483, -259.461395, -263.162201, -266.963959, -270.870972, -274.887726, -279.018982, -283.269867, -287.645660, -292.152130, -296.795258, -301.581512, -306.517670, -311.611023, -316.869324, -322.300842, -327.914368, -333.719330, -339.725861, -345.944763, -352.387665, -359.066986, -365.996155, -373.189636, -380.662964, -388.433044, -396.518005, -404.937592, -413.713226, -422.868164, -432.427734, -442.419647, -452.874084, -463.824188, -475.306305, -487.360443, -500.030731, -513.365906, -527.420044, -542.253296, -557.932495, -574.532593, -592.137573, -610.841858, -630.752319, -651.989807, -674.692261, -699.017029, -725.145142, -753.285522, -783.680481, -816.613098, -852.415833, -891.481812, -934.279480, -981.371399, -1033.439087, -1091.316772, -1156.035400, -1228.886108, -1311.505859, -1406.003418, -1515.140869, -1642.609009, -1793.453003, -1974.756226, -2196.786133, -2475.008301, -2833.854004, -3314.318604, -3990.862061, -5014.313477, -6743.541992, -10292.923828, -21729.533203, -195598.640625, -17779.216797, -9312.756836, -6308.510254, -4769.721191, -3834.353027, -3205.640869, -2754.011475, -2413.878418, -2148.484619, -1935.630249, -1761.115601, -1615.434814, -1491.984741, -1386.035400, -1294.109741, -1213.594849, -1142.488770, -1079.231934, -1022.591614, -971.580139, -925.397217, -883.387451, -845.008850, -809.809387, -777.409119, -747.486206, -719.766479, -694.014709, -670.028015, -647.630432, -626.668762, -607.008728, -588.532349, -571.135498, -554.725952, -539.221619, -524.549377, -510.643585, -497.445496, -484.902191, -472.965820, -461.593170, -450.744965, -440.385559, -430.482452, -421.005920, -411.928772, -403.226135, -394.875122, -386.854675, -379.145355, -371.729279, -364.589874, -357.711761, -351.080780, -344.683655, -338.508118, -332.542725, -326.776825, -321.200439, -315.804260, -310.579590, -305.518250, -300.612640, -295.855530, -291.240234, -286.760376, -282.410004, -278.183472, -274.075470, -270.081055, -266.195435, -262.414215, -258.733093, -255.148087, -251.655441, -248.251526, -244.932953, -241.696487, -238.539017, -235.457657, -232.449615, -229.512238, -226.643005, -223.839508, -221.099457, -218.420670, -215.801056, -213.238632, -210.731476, -208.277786, -205.875793, -203.523865, -201.220367, -198.963791, -196.752670, -194.585602, -192.461227, -190.378250, -188.335449, -186.331604, -184.365585, -182.436295, -180.542664, -178.683670, -176.858353, -175.065750, -173.304947, -171.575073, -169.875305, -168.204803, -166.562790, -164.948502, -163.361221, -161.800247, -160.264893, -158.754486, -157.268402, -155.806046, -154.366791, -152.950073, -151.555359, -150.182083, -148.829742, -147.497833, -146.185867, -144.893356, -143.619873, -142.364944, -141.128159, -139.909088, -138.707336, -137.522522, -136.354248, -135.202164, -134.065887, -132.945084, -131.839417, -130.748550, -129.672180, -128.610001, -127.561684, -126.526955, -125.505539, -124.497139, -123.501503, -122.518364, -121.547462, -120.588554, -119.641396, -118.705765, -117.781418, -116.868141, -115.965714, -115.073921, -114.192566, -113.321442, -112.460358, -111.609116, -110.767532, -109.935440, -109.112640, -108.298973, -107.494270, -106.698364, -105.911095, -105.132301, -104.361847, -103.599564, -102.845314, -102.098961, -101.360359, -100.629372, -99.905869, -99.189720, -98.480797, -97.778984, -97.084145, -96.396179, -95.714958, -95.040375, -94.372314, -93.710670, -93.055336, -92.406212, -91.763191, -91.126175, -90.495064, -89.869774, -89.250206, -88.636261, -88.027855, -87.424911, -86.827324, -86.235023, -85.647926, -85.065941, -84.489006, -83.917030, -83.349937, -82.787666, -82.230133, -81.677269, -81.128998, -80.585266, -80.045990, -79.511108, -78.980568, -78.454285, -77.932213, -77.414284, -76.900444, -76.390625, -75.884773, -75.382828, -74.884743, -74.390457, -73.899918, -73.413071, -72.929863, -72.450249, -71.974174, -71.501587, -71.032448, -70.566704, -70.104309, -69.645210, -69.189377, -68.736755, -68.287308, -67.840988, -67.397751, -66.957558, -66.520370, -66.086143, -65.654846, -65.226433, -64.800865, -64.378113, -63.958134, -63.540890, -63.126350, -62.714478, -62.305241, -61.898602, -61.494526, -61.092987, -60.693947, -60.297375, -59.903244, -59.511517, -59.122169, -58.735168, -58.350483, -57.968086, -57.587952, -57.210049, -56.834351, -56.460831, -56.089458, -55.720211, -55.353062, -54.987988, -54.624958, -54.263950, -53.904942, -53.547909, -53.192822, -52.839664, -52.488407, -52.139030, -51.791515, -51.445831, -51.101967, -50.759892, -50.419586, -50.081032, -49.744205, -49.409092, -49.075665, -48.743908, -48.413799, -48.085323, -47.758457, -47.433182, -47.109486, -46.787342, -46.466736, -46.147648, -45.830067, -45.513966, -45.199337, -44.886154, -44.574409, -44.264084, -43.955154, -43.647614, -43.341446, -43.036629, -42.733150, -42.430996, -42.130146, -41.830593, -41.532322, -41.235310, -40.939548, -40.645023, -40.351723, -40.059628, -39.768726, -39.479004, -39.190453, -38.903053, -38.616795, -38.331665, -38.047653, -37.764740, -37.482922, -37.202179, -36.922501, -36.643879, -36.366299, -36.089748, -35.814220, -35.539696, -35.266167, -34.993626, -34.722054, -34.451450, -34.181793, -33.913078, -33.645294, -33.378433, -33.112476, -32.847424, -32.583256, -32.319969, -32.057549, -31.795988, -31.535278, -31.275406, -31.016365, -30.758144, -30.500732, -30.244123, -29.988308, -29.733274, -29.479017, -29.225523, -28.972786, -28.720798, -28.469547, -28.219028, -27.969231, -27.720146, -27.471767, -27.224085, -26.977091, -26.730778, -26.485138, -26.240162, -25.995842, -25.752171, -25.509140, -25.266743, -25.024971, -24.783817, -24.543274, -24.303335, -24.063990, -23.825233, -23.587059, -23.349457, -23.112423, -22.875948, -22.640024, -22.404648, -22.169809, -21.935503, -21.701721, -21.468458, -21.235706, -21.003460, -20.771711, -20.540455, -20.309683, -20.079391, -19.849571, -19.620216, -19.391323, -19.162882, -18.934887, -18.707335, -18.480217, -18.253529, -18.027262, -17.801413, -17.575974, -17.350941, -17.126307, -16.902063, -16.678209, -16.454737, -16.231640, -16.008913, -15.786550, -15.564546, -15.342895, -15.121591, -14.900629, -14.680004, -14.459710, -14.239741, -14.020093, -13.800759, -13.581735, -13.363014, -13.144592, -12.926464, -12.708624, -12.491066, -12.273787, -12.056780, -11.840040, -11.623563, -11.407343, -11.191375, -10.975654, -10.760175, -10.544932, -10.329922, -10.115139, -9.900578, -9.686234, -9.472102, -9.258179, -9.044456, -8.830932, -8.617600, -8.404457, -8.191497, -7.978714, -7.766106, -7.553666, -7.341390, -7.129273, -6.917312, -6.705500, -6.493833, -6.282307, -6.070916, -5.859657, -5.648524, -5.437513, -5.226620, -5.015839, -4.805167, -4.594597, -4.384127, -4.173751, -3.963465, -3.753264, -3.543144, -3.333100, -3.123127, -2.913222, -2.703379, -2.493594, -2.283863, -2.074180, -1.864542, -1.654944, -1.445381, -1.235850, -1.026345, -0.816862, -0.607396, -0.397943, -0.188499, -0.020941 }; float x_step[1921] = { 195599.015625, 17779.220703, 9312.757813, 6308.510742, 4769.721680, 3834.353271, 3205.640869, 2754.011475, 2413.878418, 2148.484619, 1935.630371, 1761.115601, 1615.434814, 1491.984619, 1386.035278, 1294.109741, 1213.594849, 1142.488770, 1079.232056, 1022.591675, 971.580139, 925.397278, 883.387512, 845.008911, 809.809448, 777.409119, 747.486206, 719.766479, 694.014709, 670.028015, 647.630432, 626.668762, 607.008728, 588.532349, 571.135498, 554.725952, 539.221619, 524.549316, 510.643555, 497.445496, 484.902191, 472.965851, 461.593140, 450.744995, 440.385559, 430.482452, 421.005920, 411.928802, 403.226135, 394.875153, 386.854675, 379.145355, 371.729279, 364.589844, 357.711761, 351.080780, 344.683655, 338.508118, 332.542725, 326.776825, 321.200439, 315.804260, 310.579559, 305.518250, 300.612640, 295.855560, 291.240234, 286.760376, 282.409973, 278.183441, 274.075470, 270.081055, 266.195465, 262.414185, 258.733093, 255.148071, 251.655441, 248.251526, 244.932953, 241.696487, 238.539032, 235.457672, 232.449615, 229.512238, 226.642990, 223.839493, 221.099442, 218.420670, 215.801071, 213.238632, 210.731491, 208.277771, 205.875793, 203.523865, 201.220367, 198.963791, 196.752670, 194.585602, 192.461227, 190.378250, 188.335449, 186.331604, 184.365601, 182.436295, 180.542664, 178.683670, 176.858353, 175.065735, 173.304947, 171.575089, 169.875290, 168.204803, 166.562790, 164.948502, 163.361221, 161.800247, 160.264893, 158.754486, 157.268417, 155.806030, 154.366791, 152.950073, 151.555359, 150.182083, 148.829742, 147.497833, 146.185867, 144.893356, 143.619858, 142.364944, 141.128159, 139.909088, 138.707352, 137.522522, 136.354248, 135.202164, 134.065887, 132.945084, 131.839417, 130.748550, 129.672180, 128.610001, 127.561684, 126.526962, 125.505539, 124.497147, 123.501503, 122.518356, 121.547455, 120.588554, 119.641396, 118.705765, 117.781418, 116.868141, 115.965714, 115.073914, 114.192566, 113.321442, 112.460358, 111.609116, 110.767532, 109.935432, 109.112640, 108.298965, 107.494263, 106.698364, 105.911095, 105.132301, 104.361839, 103.599564, 102.845314, 102.098961, 101.360359, 100.629372, 99.905869, 99.189720, 98.480797, 97.778984, 97.084145, 96.396179, 95.714958, 95.040375, 94.372314, 93.710670, 93.055336, 92.406204, 91.763191, 91.126175, 90.495071, 89.869781, 89.250206, 88.636261, 88.027863, 87.424911, 86.827332, 86.235031, 85.647926, 85.065941, 84.489006, 83.917030, 83.349945, 82.787666, 82.230133, 81.677261, 81.128998, 80.585266, 80.045990, 79.511108, 78.980568, 78.454285, 77.932213, 77.414291, 76.900444, 76.390617, 75.884773, 75.382835, 74.884743, 74.390457, 73.899918, 73.413071, 72.929863, 72.450241, 71.974174, 71.501587, 71.032448, 70.566704, 70.104309, 69.645210, 69.189377, 68.736755, 68.287308, 67.840988, 67.397751, 66.957558, 66.520363, 66.086143, 65.654846, 65.226433, 64.800865, 64.378113, 63.958134, 63.540894, 63.126350, 62.714478, 62.305241, 61.898602, 61.494530, 61.092983, 60.693947, 60.297379, 59.903244, 59.511520, 59.122169, 58.735168, 58.350487, 57.968086, 57.587948, 57.210045, 56.834351, 56.460831, 56.089458, 55.720211, 55.353062, 54.987988, 54.624958, 54.263950, 53.904942, 53.547909, 53.192825, 52.839664, 52.488407, 52.139030, 51.791515, 51.445831, 51.101967, 50.759892, 50.419586, 50.081032, 49.744205, 49.409088, 49.075668, 48.743908, 48.413803, 48.085323, 47.758457, 47.433182, 47.109486, 46.787338, 46.466736, 46.147648, 45.830063, 45.513966, 45.199333, 44.886154, 44.574409, 44.264084, 43.955154, 43.647617, 43.341446, 43.036629, 42.733150, 42.430992, 42.130146, 41.830593, 41.532322, 41.235310, 40.939552, 40.645023, 40.351723, 40.059628, 39.768726, 39.479004, 39.190453, 38.903053, 38.616795, 38.331665, 38.047649, 37.764740, 37.482922, 37.202179, 36.922501, 36.643879, 36.366299, 36.089752, 35.814220, 35.539696, 35.266167, 34.993626, 34.722054, 34.451450, 34.181793, 33.913078, 33.645294, 33.378433, 33.112476, 32.847424, 32.583256, 32.319969, 32.057549, 31.795990, 31.535280, 31.275406, 31.016367, 30.758144, 30.500732, 30.244125, 29.988308, 29.733274, 29.479017, 29.225523, 28.972788, 28.720797, 28.469547, 28.219028, 27.969233, 27.720146, 27.471767, 27.224083, 26.977091, 26.730780, 26.485138, 26.240162, 25.995842, 25.752171, 25.509140, 25.266745, 25.024971, 24.783817, 24.543274, 24.303335, 24.063992, 23.825233, 23.587059, 23.349459, 23.112421, 22.875948, 22.640024, 22.404648, 22.169809, 21.935503, 21.701721, 21.468458, 21.235706, 21.003460, 20.771711, 20.540455, 20.309683, 20.079391, 19.849571, 19.620216, 19.391323, 19.162880, 18.934889, 18.707335, 18.480217, 18.253529, 18.027262, 17.801413, 17.575975, 17.350941, 17.126307, 16.902063, 16.678209, 16.454737, 16.231640, 16.008913, 15.786549, 15.564546, 15.342896, 15.121591, 14.900629, 14.680005, 14.459709, 14.239742, 14.020093, 13.800759, 13.581735, 13.363014, 13.144593, 12.926464, 12.708623, 12.491066, 12.273787, 12.056780, 11.840040, 11.623563, 11.407342, 11.191375, 10.975653, 10.760175, 10.544932, 10.329922, 10.115139, 9.900578, 9.686234, 9.472103, 9.258179, 9.044456, 8.830933, 8.617600, 8.404457, 8.191497, 7.978714, 7.766106, 7.553666, 7.341390, 7.129273, 6.917311, 6.705500, 6.493833, 6.282307, 6.070916, 5.859657, 5.648524, 5.437513, 5.226620, 5.015839, 4.805167, 4.594597, 4.384127, 4.173751, 3.963465, 3.753264, 3.543144, 3.333100, 3.123127, 2.913222, 2.703379, 2.493594, 2.283862, 2.074180, 1.864542, 1.654944, 1.445381, 1.235850, 1.026345, 0.816862, 0.607396, 0.397943, 0.188499, -0.020941, -0.230381, -0.439827, -0.649282, -0.858750, -1.068238, -1.277748, -1.487285, -1.696854, -1.906460, -2.116107, -2.325799, -2.535540, -2.745336, -2.955191, -3.165110, -3.375097, -3.585155, -3.795292, -4.005509, -4.215813, -4.426208, -4.636697, -4.847287, -5.057981, -5.268783, -5.479700, -5.690734, -5.901892, -6.113177, -6.324594, -6.536149, -6.747844, -6.959685, -7.171678, -7.383826, -7.596134, -7.808607, -8.021251, -8.234068, -8.447064, -8.660245, -8.873615, -9.087178, -9.300941, -9.514906, -9.729079, -9.943466, -10.158072, -10.372900, -10.587955, -10.803245, -11.018771, -11.234541, -11.450560, -11.666831, -11.883360, -12.100153, -12.317214, -12.534549, -12.752162, -12.970059, -13.188246, -13.406728, -13.625508, -13.844595, -14.063991, -14.283703, -14.503736, -14.724095, -14.944789, -15.165817, -15.387189, -15.608911, -15.830986, -16.053423, -16.276222, -16.499395, -16.722944, -16.946875, -17.171196, -17.395908, -17.621023, -17.846542, -18.072475, -18.298824, -18.525600, -18.752804, -18.980444, -19.208527, -19.437057, -19.666044, -19.895491, -20.125404, -20.355793, -20.586660, -20.818014, -21.049862, -21.282209, -21.515062, -21.748428, -21.982315, -22.216728, -22.451674, -22.687159, -22.923191, -23.159777, -23.396923, -23.634640, -23.872932, -24.111803, -24.351267, -24.591328, -24.831993, -25.073271, -25.315165, -25.557688, -25.800846, -26.044647, -26.289095, -26.534204, -26.779980, -27.026428, -27.273560, -27.521381, -27.769899, -28.019125, -28.269068, -28.519730, -28.771128, -29.023266, -29.276154, -29.529800, -29.784212, -30.039402, -30.295374, -30.552141, -30.809713, -31.068098, -31.327307, -31.587345, -31.848223, -32.109955, -32.372547, -32.636009, -32.900356, -33.165588, -33.431725, -33.698769, -33.966740, -34.235641, -34.505486, -34.776283, -35.048046, -35.320786, -35.594513, -35.869236, -36.144970, -36.421722, -36.699512, -36.978344, -37.258232, -37.539188, -37.821228, -38.104355, -38.388592, -38.673946, -38.960434, -39.248058, -39.536846, -39.826801, -40.117939, -40.410275, -40.703823, -40.998592, -41.294601, -41.591866, -41.890392, -42.190205, -42.491310, -42.793728, -43.097473, -43.402561, -43.709003, -44.016819, -44.326023, -44.636635, -44.948666, -45.262138, -45.577061, -45.893452, -46.211334, -46.530727, -46.851635, -47.174091, -47.498104, -47.823692, -48.150883, -48.479679, -48.810116, -49.142204, -49.475967, -49.811424, -50.148590, -50.487495, -50.828152, -51.170582, -51.514816, -51.860859, -52.208748, -52.558498, -52.910133, -53.263672, -53.619144, -53.976574, -54.335983, -54.697392, -55.060825, -55.426315, -55.793880, -56.163551, -56.535347, -56.909302, -57.285442, -57.663788, -58.044373, -58.427223, -58.812370, -59.199841, -59.589661, -59.981865, -60.376480, -60.773540, -61.173080, -61.575123, -61.979710, -62.386864, -62.796627, -63.209034, -63.624107, -64.041893, -64.462425, -64.885742, -65.311874, -65.740860, -66.172737, -66.607552, -67.045341, -67.486137, -67.929993, -68.376930, -68.827011, -69.280273, -69.736755, -70.196503, -70.659569, -71.125992, -71.595818, -72.069092, -72.545868, -73.026199, -73.510132, -73.997711, -74.488998, -74.984039, -75.482895, -75.985611, -76.492249, -77.002869, -77.517525, -78.036278, -78.559189, -79.086311, -79.617722, -80.153473, -80.693634, -81.238274, -81.787453, -82.341248, -82.899719, -83.462952, -84.031013, -84.603981, -85.181915, -85.764915, -86.353050, -86.946396, -87.545044, -88.149078, -88.758583, -89.373642, -89.994354, -90.620796, -91.253082, -91.891289, -92.535522, -93.185883, -93.842476, -94.505386, -95.174744, -95.850647, -96.533203, -97.222542, -97.918762, -98.621986, -99.332344, -100.049957, -100.774948, -101.507439, -102.247581, -102.995506, -103.751350, -104.515251, -105.287369, -106.067841, -106.856827, -107.654472, -108.460960, -109.276436, -110.101074, -110.935066, -111.778557, -112.631752, -113.494835, -114.367981, -115.251411, -116.145317, -117.049889, -117.965370, -118.891945, -119.829872, -120.779366, -121.740654, -122.713966, -123.699600, -124.697754, -125.708740, -126.732796, -127.770218, -128.821289, -129.886276, -130.965530, -132.059311, -133.167984, -134.291855, -135.431259, -136.586563, -137.758118, -138.946289, -140.151474, -141.374054, -142.614426, -143.873032, -145.150284, -146.446640, -147.762573, -149.098526, -150.455017, -151.832535, -153.231613, -154.652771, -156.096603, -157.563660, -159.054550, -160.569901, -162.110336, -163.676514, -165.269135, -166.888901, -168.536545, -170.212845, -171.918564, -173.654541, -175.421646, -177.220703, -179.052689, -180.918533, -182.819214, -184.755768, -186.729248, -188.740784, -190.791534, -192.882675, -195.015488, -197.191269, -199.411362, -201.677200, -203.990250, -206.352066, -208.764267, -211.228500, -213.746552, -216.320282, -218.951553, -221.642426, -224.394974, -227.211441, -230.094101, -233.045395, -236.067886, -239.164230, -242.337280, -245.589920, -248.925278, -252.346649, -255.857468, -259.461395, -263.162201, -266.963959, -270.870972, -274.887726, -279.018982, -283.269867, -287.645660, -292.152130, -296.795258, -301.581512, -306.517670, -311.611023, -316.869324, -322.300842, -327.914368, -333.719330, -339.725861, -345.944763, -352.387665, -359.066956, -365.996155, -373.189606, -380.662964, -388.433014, -396.517975, -404.937592, -413.713196, -422.868134, -432.427734, -442.419617, -452.874084, -463.824158, -475.306335, -487.360443, -500.030701, -513.365906, -527.420044, -542.253296, -557.932495, -574.532593, -592.137573, -610.841858, -630.752319, -651.989807, -674.692261, -699.017029, -725.145142, -753.285522, -783.680420, -816.613098, -852.415771, -891.481812, -934.279480, -981.371338, -1033.439087, -1091.316772, -1156.035400, -1228.886108, -1311.505859, -1406.003418, -1515.140869, -1642.609009, -1793.452881, -1974.756226, -2196.786133, -2475.008301, -2833.854004, -3314.318359, -3990.862061, -5014.313477, -6743.541992, -10292.922852, -21729.531250, -195598.765625, -17779.218750, -9312.757813, -6308.510742, -4769.721191, -3834.353271, -3205.640869, -2754.011475, -2413.878418, -2148.484619, -1935.630371, -1761.115601, -1615.434814, -1491.984619, -1386.035278, -1294.109741, -1213.594849, -1142.488770, -1079.231934, -1022.591553, -971.580139, -925.397278, -883.387512, -845.008911, -809.809387, -777.409119, -747.486206, -719.766479, -694.014709, -670.028015, -647.630432, -626.668762, -607.008728, -588.532349, -571.135498, -554.725952, -539.221619, -524.549316, -510.643555, -497.445496, -484.902191, -472.965851, -461.593140, -450.744995, -440.385559, -430.482452, -421.005920, -411.928802, -403.226135, -394.875153, -386.854675, -379.145355, -371.729248, -364.589844, -357.711761, -351.080780, -344.683655, -338.508118, -332.542725, -326.776825, -321.200439, -315.804260, -310.579559, -305.518250, -300.612640, -295.855560, -291.240234, -286.760376, -282.409973, -278.183441, -274.075470, -270.081055, -266.195465, -262.414185, -258.733093, -255.148071, -251.655441, -248.251526, -244.932953, -241.696487, -238.539032, -235.457672, -232.449615, -229.512238, -226.642990, -223.839493, -221.099442, -218.420670, -215.801071, -213.238632, -210.731491, -208.277771, -205.875793, -203.523865, -201.220367, -198.963791, -196.752670, -194.585602, -192.461227, -190.378250, -188.335449, -186.331604, -184.365601, -182.436295, -180.542664, -178.683670, -176.858353, -175.065735, -173.304947, -171.575089, -169.875290, -168.204803, -166.562790, -164.948502, -163.361221, -161.800247, -160.264893, -158.754486, -157.268417, -155.806030, -154.366791, -152.950073, -151.555359, -150.182083, -148.829742, -147.497833, -146.185867, -144.893356, -143.619858, -142.364944, -141.128159, -139.909088, -138.707352, -137.522522, -136.354248, -135.202164, -134.065887, -132.945084, -131.839417, -130.748550, -129.672180, -128.610001, -127.561684, -126.526962, -125.505539, -124.497147, -123.501503, -122.518356, -121.547455, -120.588554, -119.641396, -118.705765, -117.781418, -116.868141, -115.965714, -115.073914, -114.192566, -113.321442, -112.460358, -111.609116, -110.767532, -109.935432, -109.112640, -108.298965, -107.494263, -106.698364, -105.911095, -105.132301, -104.361839, -103.599564, -102.845314, -102.098961, -101.360359, -100.629372, -99.905869, -99.189720, -98.480797, -97.778984, -97.084145, -96.396179, -95.714958, -95.040375, -94.372314, -93.710670, -93.055336, -92.406204, -91.763191, -91.126175, -90.495071, -89.869781, -89.250206, -88.636261, -88.027863, -87.424911, -86.827332, -86.235031, -85.647926, -85.065941, -84.489006, -83.917030, -83.349945, -82.787666, -82.230133, -81.677261, -81.128998, -80.585266, -80.045990, -79.511108, -78.980568, -78.454285, -77.932213, -77.414291, -76.900444, -76.390617, -75.884773, -75.382835, -74.884743, -74.390457, -73.899918, -73.413071, -72.929863, -72.450241, -71.974174, -71.501587, -71.032448, -70.566704, -70.104309, -69.645210, -69.189377, -68.736755, -68.287308, -67.840988, -67.397751, -66.957558, -66.520363, -66.086143, -65.654846, -65.226433, -64.800865, -64.378113, -63.958134, -63.540894, -63.126350, -62.714478, -62.305241, -61.898602, -61.494530, -61.092983, -60.693947, -60.297379, -59.903244, -59.511520, -59.122169, -58.735168, -58.350487, -57.968086, -57.587948, -57.210045, -56.834351, -56.460831, -56.089458, -55.720211, -55.353062, -54.987988, -54.624958, -54.263950, -53.904942, -53.547909, -53.192825, -52.839664, -52.488407, -52.139030, -51.791515, -51.445831, -51.101967, -50.759892, -50.419586, -50.081032, -49.744205, -49.409088, -49.075668, -48.743908, -48.413803, -48.085323, -47.758457, -47.433182, -47.109486, -46.787338, -46.466736, -46.147648, -45.830063, -45.513966, -45.199333, -44.886154, -44.574409, -44.264084, -43.955154, -43.647617, -43.341446, -43.036629, -42.733150, -42.430992, -42.130146, -41.830593, -41.532322, -41.235310, -40.939548, -40.645023, -40.351723, -40.059628, -39.768726, -39.479004, -39.190453, -38.903053, -38.616795, -38.331665, -38.047649, -37.764740, -37.482922, -37.202179, -36.922501, -36.643879, -36.366299, -36.089752, -35.814220, -35.539696, -35.266167, -34.993626, -34.722054, -34.451450, -34.181793, -33.913078, -33.645294, -33.378433, -33.112476, -32.847424, -32.583256, -32.319969, -32.057549, -31.795990, -31.535280, -31.275406, -31.016363, -30.758144, -30.500732, -30.244125, -29.988308, -29.733274, -29.479017, -29.225523, -28.972788, -28.720797, -28.469547, -28.219028, -27.969233, -27.720146, -27.471767, -27.224083, -26.977091, -26.730780, -26.485138, -26.240162, -25.995842, -25.752171, -25.509140, -25.266745, -25.024971, -24.783817, -24.543274, -24.303335, -24.063992, -23.825233, -23.587057, -23.349459, -23.112421, -22.875948, -22.640024, -22.404648, -22.169809, -21.935503, -21.701721, -21.468458, -21.235706, -21.003460, -20.771711, -20.540455, -20.309683, -20.079391, -19.849571, -19.620216, -19.391323, -19.162880, -18.934889, -18.707335, -18.480217, -18.253529, -18.027262, -17.801413, -17.575975, -17.350941, -17.126307, -16.902063, -16.678209, -16.454737, -16.231640, -16.008913, -15.786549, -15.564546, -15.342896, -15.121591, -14.900629, -14.680005, -14.459709, -14.239742, -14.020093, -13.800759, -13.581735, -13.363014, -13.144593, -12.926464, -12.708623, -12.491066, -12.273787, -12.056780, -11.840040, -11.623563, -11.407342, -11.191375, -10.975653, -10.760175, -10.544932, -10.329922, -10.115139, -9.900578, -9.686234, -9.472103, -9.258179, -9.044456, -8.830933, -8.617600, -8.404457, -8.191497, -7.978714, -7.766106, -7.553666, -7.341390, -7.129273, -6.917311, -6.705500, -6.493833, -6.282307, -6.070916, -5.859657, -5.648524, -5.437513, -5.226620, -5.015839, -4.805167, -4.594597, -4.384127, -4.173751, -3.963465, -3.753264, -3.543144, -3.333100, -3.123127, -2.913222, -2.703379, -2.493594, -2.283862, -2.074180, -1.864542, -1.654944, -1.445381, -1.235850, -1.026345, -0.816862, -0.607396, -0.397943, -0.188499, 0.020941, 0.230381, 0.439827, 0.649282, 0.858750, 1.068238, 1.277748, 1.487285, 1.696854, 1.906460, 2.116107, 2.325799, 2.535540, 2.745336, 2.955191, 3.165110, 3.375097, 3.585155, 3.795292, 4.005509, 4.215813, 4.426208, 4.636697, 4.847287, 5.057981, 5.268783, 5.479700, 5.690734, 5.901892, 6.113177, 6.324594, 6.536149, 6.747844, 6.959685, 7.171678, 7.383826, 7.596135, 7.808607, 8.021251, 8.234068, 8.447064, 8.660245, 8.873615, 9.087178, 9.300941, 9.514906, 9.729079, 9.943466, 10.158072, 10.372900, 10.587955, 10.803245, 11.018771, 11.234541, 11.450560, 11.666831, 11.883360, 12.100153, 12.317214, 12.534549, 12.752162, 12.970059, 13.188246, 13.406728, 13.625508, 13.844595, 14.063991, 14.283703, 14.503736, 14.724095, 14.944789, 15.165817, 15.387191, 15.608911, 15.830986, 16.053423, 16.276222, 16.499395, 16.722944, 16.946875, 17.171196, 17.395908, 17.621023, 17.846542, 18.072475, 18.298824, 18.525600, 18.752804, 18.980444, 19.208527, 19.437057, 19.666044, 19.895491, 20.125404, 20.355793, 20.586660, 20.818014, 21.049862, 21.282209, 21.515062, 21.748428, 21.982315, 22.216728, 22.451674, 22.687159, 22.923191, 23.159777, 23.396923, 23.634640, 23.872932, 24.111803, 24.351267, 24.591328, 24.831993, 25.073271, 25.315165, 25.557688, 25.800846, 26.044647, 26.289095, 26.534204, 26.779980, 27.026428, 27.273560, 27.521381, 27.769899, 28.019125, 28.269068, 28.519730, 28.771128, 29.023266, 29.276154, 29.529800, 29.784212, 30.039402, 30.295374, 30.552141, 30.809713, 31.068098, 31.327307, 31.587345, 31.848223, 32.109955, 32.372547, 32.636009, 32.900356, 33.165588, 33.431725, 33.698769, 33.966740, 34.235641, 34.505486, 34.776283, 35.048046, 35.320786, 35.594513, 35.869236, 36.144970, 36.421722, 36.699512, 36.978344, 37.258232, 37.539188, 37.821228, 38.104355, 38.388592, 38.673946, 38.960434, 39.248058, 39.536846, 39.826801, 40.117939, 40.410275, 40.703823, 40.998592, 41.294601, 41.591866, 41.890392, 42.190205, 42.491310, 42.793728, 43.097473, 43.402561, 43.709003, 44.016819, 44.326023, 44.636635, 44.948666, 45.262138, 45.577061, 45.893452, 46.211334, 46.530727, 46.851635, 47.174091, 47.498104, 47.823692, 48.150883, 48.479679, 48.810116, 49.142208, 49.475967, 49.811424, 50.148590, 50.487495, 50.828152, 51.170582, 51.514816, 51.860859, 52.208748, 52.558498, 52.910133, 53.263672, 53.619144, 53.976574, 54.335983, 54.697392, 55.060825, 55.426315, 55.793880, 56.163551, 56.535347, 56.909302, 57.285442, 57.663788, 58.044373, 58.427223, 58.812370, 59.199841, 59.589661, 59.981865, 60.376480, 60.773540, 61.173080, 61.575123, 61.979710, 62.386864, 62.796627, 63.209034, 63.624107, 64.041893, 64.462425, 64.885742, 65.311874, 65.740860, 66.172737, 66.607552, 67.045341, 67.486137, 67.929993, 68.376930, 68.827011, 69.280273, 69.736755, 70.196503, 70.659569, 71.125992, 71.595818, 72.069092, 72.545868, 73.026199, 73.510132, 73.997711, 74.488998, 74.984039, 75.482895, 75.985611, 76.492249, 77.002869, 77.517525, 78.036278, 78.559189, 79.086311, 79.617722, 80.153473, 80.693634, 81.238274, 81.787453, 82.341248, 82.899719, 83.462952, 84.031013, 84.603981, 85.181915, 85.764915, 86.353050, 86.946396, 87.545044, 88.149078, 88.758583, 89.373642, 89.994354, 90.620796, 91.253082, 91.891289, 92.535522, 93.185883, 93.842476, 94.505386, 95.174744, 95.850647, 96.533203, 97.222542, 97.918762, 98.621986, 99.332344, 100.049957, 100.774948, 101.507439, 102.247581, 102.995506, 103.751350, 104.515251, 105.287369, 106.067841, 106.856827, 107.654472, 108.460960, 109.276436, 110.101074, 110.935066, 111.778557, 112.631752, 113.494835, 114.367981, 115.251411, 116.145317, 117.049889, 117.965370, 118.891945, 119.829872, 120.779366, 121.740654, 122.713966, 123.699600, 124.697754, 125.708740, 126.732796, 127.770218, 128.821289, 129.886276, 130.965530, 132.059311, 133.167984, 134.291855, 135.431274, 136.586563, 137.758118, 138.946289, 140.151474, 141.374054, 142.614426, 143.873032, 145.150284, 146.446640, 147.762573, 149.098526, 150.455017, 151.832535, 153.231613, 154.652771, 156.096603, 157.563660, 159.054550, 160.569901, 162.110336, 163.676514, 165.269135, 166.888901, 168.536545, 170.212845, 171.918564, 173.654541, 175.421646, 177.220703, 179.052689, 180.918533, 182.819214, 184.755768, 186.729248, 188.740784, 190.791534, 192.882675, 195.015488, 197.191269, 199.411362, 201.677200, 203.990250, 206.352066, 208.764267, 211.228500, 213.746552, 216.320282, 218.951553, 221.642426, 224.394974, 227.211441, 230.094101, 233.045410, 236.067886, 239.164230, 242.337280, 245.589920, 248.925278, 252.346649, 255.857468, 259.461395, 263.162201, 266.963959, 270.870972, 274.887726, 279.018982, 283.269867, 287.645660, 292.152130, 296.795258, 301.581512, 306.517670, 311.611023, 316.869324, 322.300842, 327.914368, 333.719330, 339.725861, 345.944763, 352.387665, 359.066956, 365.996155, 373.189606, 380.662964, 388.433014, 396.518005, 404.937592, 413.713196, 422.868134, 432.427765, 442.419617, 452.874084, 463.824219, 475.306335, 487.360443, 500.030701, 513.365906, 527.420044, 542.253296, 557.932495, 574.532593, 592.137573, 610.841858, 630.752319, 651.989807, 674.692261, 699.017029, 725.145142, 753.285522, 783.680420, 816.613098, 852.415771, 891.481812, 934.279480, 981.371338, 1033.439087, 1091.316772, 1156.035400, 1228.886108, 1311.505981, 1406.003418, 1515.140869, 1642.609009, 1793.452881, 1974.756348, 2196.786133, 2475.008301, 2833.854004, 3314.318848, 3990.862061, 5014.313477, 6743.542480, 10292.923828, 21729.535156, 195598.531250 }; float cos_lut[1921] = { 10 , 9.999947, 9.999786, 9.999518, 9.999145, 9.998663, 9.998075, 9.997379, 9.996576, 9.995667, 9.994651, 9.993528, 9.992298, 9.990961, 9.989517, 9.987967, 9.986309, 9.984545, 9.982674, 9.980696, 9.978611, 9.976419, 9.974121, 9.971716, 9.969205, 9.966586, 9.963861, 9.961030, 9.958092, 9.955048, 9.951896, 9.948639, 9.945274, 9.941804, 9.938228, 9.934545, 9.930755, 9.926859, 9.922857, 9.918749, 9.914536, 9.910215, 9.905788, 9.901257, 9.896619, 9.891874, 9.887025, 9.882070, 9.877007, 9.871841, 9.866569, 9.861190, 9.855706, 9.850118, 9.844423, 9.838623, 9.832718, 9.826708, 9.820593, 9.814372, 9.808047, 9.801617, 9.795081, 9.788442, 9.781696, 9.774847, 9.767894, 9.760835, 9.753672, 9.746405, 9.739034, 9.731558, 9.723978, 9.716294, 9.708507, 9.700615, 9.692619, 9.684521, 9.676317, 9.668012, 9.659601, 9.651089, 9.642472, 9.633753, 9.624930, 9.616005, 9.606977, 9.597846, 9.588612, 9.579275, 9.569837, 9.560295, 9.550652, 9.540906, 9.531058, 9.521109, 9.511057, 9.500904, 9.490649, 9.480292, 9.469834, 9.459275, 9.448615, 9.437853, 9.426991, 9.416027, 9.404963, 9.393799, 9.382533, 9.371168, 9.359702, 9.348136, 9.336470, 9.324704, 9.312839, 9.300873, 9.288809, 9.276645, 9.264381, 9.252019, 9.239557, 9.226996, 9.214337, 9.201580, 9.188724, 9.175770, 9.162717, 9.149567, 9.136318, 9.122972, 9.109529, 9.095987, 9.082348, 9.068613, 9.054780, 9.040851, 9.026824, 9.012701, 8.998482, 8.984166, 8.969754, 8.955247, 8.940643, 8.925944, 8.911150, 8.896259, 8.881274, 8.866195, 8.851019, 8.835750, 8.820385, 8.804927, 8.789374, 8.773727, 8.757987, 8.742152, 8.726224, 8.710203, 8.694089, 8.677881, 8.661581, 8.645188, 8.628702, 8.612124, 8.595455, 8.578693, 8.561839, 8.544894, 8.527858, 8.510730, 8.493511, 8.476201, 8.458800, 8.441310, 8.423728, 8.406057, 8.388295, 8.370444, 8.352504, 8.334474, 8.316355, 8.298146, 8.279850, 8.261464, 8.242990, 8.224428, 8.205778, 8.187040, 8.168215, 8.149302, 8.130302, 8.111216, 8.092042, 8.072782, 8.053435, 8.034002, 8.014483, 7.994879, 7.975189, 7.955413, 7.935553, 7.915607, 7.895577, 7.875463, 7.855264, 7.834981, 7.814615, 7.794164, 7.773631, 7.753014, 7.732314, 7.711532, 7.690667, 7.669720, 7.648690, 7.627579, 7.606387, 7.585113, 7.563757, 7.542321, 7.520804, 7.499207, 7.477529, 7.455771, 7.433934, 7.412017, 7.390021, 7.367946, 7.345792, 7.323560, 7.301249, 7.278860, 7.256392, 7.233848, 7.211226, 7.188527, 7.165751, 7.142898, 7.119969, 7.096964, 7.073883, 7.050726, 7.027493, 7.004186, 6.980803, 6.957346, 6.933815, 6.910209, 6.886529, 6.862776, 6.838950, 6.815050, 6.791077, 6.767031, 6.742914, 6.718723, 6.694462, 6.670128, 6.645723, 6.621247, 6.596701, 6.572083, 6.547396, 6.522638, 6.497810, 6.472913, 6.447947, 6.422912, 6.397808, 6.372635, 6.347395, 6.322086, 6.296710, 6.271266, 6.245756, 6.220179, 6.194535, 6.168825, 6.143048, 6.117206, 6.091299, 6.065326, 6.039289, 6.013187, 5.987020, 5.960790, 5.934496, 5.908138, 5.881717, 5.855234, 5.828687, 5.802078, 5.775407, 5.748674, 5.721880, 5.695025, 5.668109, 5.641132, 5.614094, 5.586997, 5.559840, 5.532623, 5.505347, 5.478013, 5.450619, 5.423168, 5.395658, 5.368091, 5.340466, 5.312784, 5.285045, 5.257250, 5.229398, 5.201491, 5.173528, 5.145509, 5.117435, 5.089307, 5.061124, 5.032887, 5.004597, 4.976253, 4.947855, 4.919405, 4.890902, 4.862346, 4.833739, 4.805079, 4.776369, 4.747607, 4.718795, 4.689932, 4.661019, 4.632056, 4.603044, 4.573982, 4.544871, 4.515712, 4.486504, 4.457249, 4.427945, 4.398594, 4.369197, 4.339752, 4.310261, 4.280725, 4.251142, 4.221513, 4.191840, 4.162121, 4.132359, 4.102551, 4.072701, 4.042806, 4.012868, 3.982888, 3.952864, 3.922799, 3.892691, 3.862542, 3.832351, 3.802120, 3.771848, 3.741535, 3.711183, 3.680790, 3.650359, 3.619888, 3.589379, 3.558831, 3.528245, 3.497621, 3.466960, 3.436262, 3.405527, 3.374756, 3.343948, 3.313105, 3.282226, 3.251312, 3.220364, 3.189381, 3.158364, 3.127313, 3.096228, 3.065111, 3.033960, 3.002778, 2.971563, 2.940316, 2.909038, 2.877728, 2.846388, 2.815018, 2.783617, 2.752187, 2.720727, 2.689238, 2.657720, 2.626174, 2.594600, 2.562998, 2.531368, 2.499712, 2.468029, 2.436319, 2.404583, 2.372822, 2.341035, 2.309223, 2.277386, 2.245525, 2.213640, 2.181732, 2.149800, 2.117845, 2.085867, 2.053867, 2.021845, 1.989802, 1.957737, 1.925651, 1.893544, 1.861418, 1.829271, 1.797105, 1.764920, 1.732715, 1.700493, 1.668252, 1.635993, 1.603716, 1.571423, 1.539113, 1.506786, 1.474443, 1.442084, 1.409710, 1.377321, 1.344917, 1.312499, 1.280066, 1.247620, 1.215161, 1.182689, 1.150204, 1.117706, 1.085197, 1.052676, 1.020144, 0.987601, 0.955047, 0.922483, 0.889909, 0.857326, 0.824734, 0.792132, 0.759523, 0.726905, 0.694279, 0.661646, 0.629006, 0.596359, 0.563706, 0.531047, 0.498382, 0.465711, 0.433036, 0.400356, 0.367672, 0.334984, 0.302292, 0.269597, 0.236899, 0.204199, 0.171497, 0.138792, 0.106086, 0.073379, 0.040671, 0.007963, -0.024745, -0.057453, -0.090161, -0.122867, -0.155572, -0.188276, -0.220977, -0.253676, -0.286373, -0.319066, -0.351756, -0.384442, -0.417124, -0.449802, -0.482474, -0.515142, -0.547804, -0.580460, -0.613110, -0.645754, -0.678390, -0.711020, -0.743641, -0.776255, -0.808860, -0.841457, -0.874045, -0.906623, -0.939192, -0.971751, -1.004299, -1.036837, -1.069363, -1.101878, -1.134381, -1.166872, -1.199351, -1.231817, -1.264269, -1.296708, -1.329134, -1.361544, -1.393941, -1.426322, -1.458689, -1.491039, -1.523374, -1.555692, -1.587994, -1.620279, -1.652546, -1.684796, -1.717028, -1.749241, -1.781436, -1.813611, -1.845767, -1.877904, -1.910020, -1.942116, -1.974191, -2.006245, -2.038278, -2.070288, -2.102277, -2.134243, -2.166186, -2.198106, -2.230003, -2.261875, -2.293724, -2.325548, -2.357347, -2.389121, -2.420869, -2.452592, -2.484288, -2.515957, -2.547600, -2.579216, -2.610803, -2.642363, -2.673895, -2.705398, -2.736872, -2.768317, -2.799732, -2.831117, -2.862472, -2.893796, -2.925090, -2.956352, -2.987582, -3.018781, -3.049947, -3.081080, -3.112181, -3.143248, -3.174282, -3.205281, -3.236247, -3.267178, -3.298074, -3.328934, -3.359759, -3.390548, -3.421301, -3.452017, -3.482696, -3.513338, -3.543942, -3.574509, -3.605037, -3.635526, -3.665977, -3.696389, -3.726761, -3.757093, -3.787385, -3.817636, -3.847847, -3.878016, -3.908144, -3.938230, -3.968274, -3.998275, -4.028234, -4.058150, -4.088022, -4.117850, -4.147635, -4.177375, -4.207070, -4.236721, -4.266325, -4.295885, -4.325398, -4.354865, -4.384286, -4.413660, -4.442986, -4.472265, -4.501496, -4.530679, -4.559813, -4.588899, -4.617935, -4.646922, -4.675860, -4.704747, -4.733584, -4.762371, -4.791106, -4.819790, -4.848423, -4.877004, -4.905532, -4.934009, -4.962432, -4.990802, -5.019119, -5.047382, -5.075591, -5.103746, -5.131846, -5.159892, -5.187882, -5.215816, -5.243695, -5.271518, -5.299284, -5.326994, -5.354647, -5.382242, -5.409780, -5.437260, -5.464682, -5.492045, -5.519350, -5.546595, -5.573781, -5.600907, -5.627974, -5.654981, -5.681926, -5.708811, -5.735635, -5.762398, -5.789099, -5.815738, -5.842315, -5.868829, -5.895281, -5.921669, -5.947995, -5.974256, -6.000454, -6.026587, -6.052656, -6.078660, -6.104599, -6.130473, -6.156281, -6.182024, -6.207700, -6.233310, -6.258853, -6.284329, -6.309739, -6.335080, -6.360353, -6.385559, -6.410697, -6.435765, -6.460765, -6.485696, -6.510557, -6.535349, -6.560071, -6.584723, -6.609303, -6.633814, -6.658254, -6.682622, -6.706919, -6.731144, -6.755297, -6.779377, -6.803386, -6.827321, -6.851183, -6.874973, -6.898688, -6.922330, -6.945898, -6.969391, -6.992810, -7.016154, -7.039423, -7.062616, -7.085734, -7.108777, -7.131743, -7.154633, -7.177446, -7.200183, -7.222842, -7.245425, -7.267930, -7.290357, -7.312706, -7.334976, -7.357169, -7.379282, -7.401317, -7.423273, -7.445148, -7.466945, -7.488661, -7.510298, -7.531854, -7.553329, -7.574724, -7.596038, -7.617270, -7.638421, -7.659490, -7.680477, -7.701382, -7.722205, -7.742945, -7.763602, -7.784176, -7.804667, -7.825075, -7.845398, -7.865638, -7.885794, -7.905865, -7.925851, -7.945754, -7.965570, -7.985302, -8.004948, -8.024508, -8.043983, -8.063372, -8.082674, -8.101891, -8.121019, -8.140061, -8.159017, -8.177885, -8.196666, -8.215359, -8.233963, -8.252480, -8.270908, -8.289248, -8.307500, -8.325663, -8.343736, -8.361720, -8.379615, -8.397420, -8.415134, -8.432760, -8.450295, -8.467740, -8.485093, -8.502357, -8.519529, -8.536610, -8.553599, -8.570498, -8.587305, -8.604019, -8.620642, -8.637173, -8.653610, -8.669956, -8.686209, -8.702368, -8.718435, -8.734408, -8.750288, -8.766074, -8.781767, -8.797365, -8.812870, -8.828280, -8.843596, -8.858817, -8.873943, -8.888975, -8.903912, -8.918753, -8.933497, -8.948148, -8.962702, -8.977160, -8.991523, -9.005790, -9.019959, -9.034033, -9.048009, -9.061890, -9.075672, -9.089358, -9.102946, -9.116438, -9.129831, -9.143127, -9.156326, -9.169426, -9.182428, -9.195333, -9.208138, -9.220845, -9.233454, -9.245963, -9.258373, -9.270685, -9.282898, -9.295011, -9.307025, -9.318939, -9.330753, -9.342468, -9.354083, -9.365598, -9.377011, -9.388326, -9.399539, -9.410652, -9.421665, -9.432576, -9.443387, -9.454097, -9.464705, -9.475213, -9.485619, -9.495923, -9.506126, -9.516227, -9.526226, -9.536124, -9.545919, -9.555613, -9.565204, -9.574693, -9.584079, -9.593362, -9.602544, -9.611622, -9.620598, -9.629470, -9.638240, -9.646906, -9.655469, -9.663929, -9.672286, -9.680539, -9.688688, -9.696734, -9.704677, -9.712515, -9.720249, -9.727880, -9.735406, -9.742828, -9.750147, -9.757360, -9.764469, -9.771474, -9.778375, -9.785171, -9.791862, -9.798448, -9.804929, -9.811305, -9.817577, -9.823744, -9.829805, -9.835761, -9.841612, -9.847358, -9.852999, -9.858533, -9.863963, -9.869287, -9.874505, -9.879618, -9.884625, -9.889526, -9.894321, -9.899012, -9.903595, -9.908073, -9.912445, -9.916711, -9.920870, -9.924924, -9.928871, -9.932713, -9.936447, -9.940076, -9.943598, -9.947014, -9.950323, -9.953526, -9.956622, -9.959613, -9.962496, -9.965273, -9.967943, -9.970507, -9.972963, -9.975314, -9.977557, -9.979694, -9.981724, -9.983647, -9.985463, -9.987173, -9.988776, -9.990272, -9.991660, -9.992943, -9.994118, -9.995186, -9.996147, -9.997002, -9.997749, -9.998389, -9.998923, -9.999350, -9.999669, -9.999882, -9.999988, -9.999986, -9.999878, -9.999662, -9.999340, -9.998911, -9.998374, -9.997731, -9.996981, -9.996123, -9.995159, -9.994088, -9.992910, -9.991626, -9.990233, -9.988735, -9.987129, -9.985417, -9.983598, -9.981672, -9.979639, -9.977500, -9.975253, -9.972900, -9.970441, -9.967875, -9.965201, -9.962422, -9.959536, -9.956543, -9.953444, -9.950238, -9.946926, -9.943507, -9.939982, -9.936351, -9.932613, -9.928769, -9.924819, -9.920763, -9.916600, -9.912332, -9.907957, -9.903477, -9.898890, -9.894197, -9.889400, -9.884496, -9.879486, -9.874371, -9.869149, -9.863822, -9.858390, -9.852852, -9.847209, -9.841460, -9.835607, -9.829648, -9.823584, -9.817414, -9.811140, -9.804761, -9.798277, -9.791688, -9.784994, -9.778195, -9.771293, -9.764285, -9.757173, -9.749956, -9.742636, -9.735210, -9.727682, -9.720049, -9.712312, -9.704471, -9.696526, -9.688477, -9.680325, -9.672069, -9.663710, -9.655247, -9.646681, -9.638012, -9.629239, -9.620364, -9.611385, -9.602304, -9.593121, -9.583835, -9.574446, -9.564954, -9.555361, -9.545665, -9.535867, -9.525967, -9.515965, -9.505860, -9.495655, -9.485348, -9.474939, -9.464430, -9.453818, -9.443106, -9.432293, -9.421378, -9.410363, -9.399247, -9.388031, -9.376715, -9.365297, -9.353780, -9.342163, -9.330445, -9.318628, -9.306712, -9.294696, -9.282579, -9.270365, -9.258051, -9.245637, -9.233125, -9.220514, -9.207805, -9.194996, -9.182090, -9.169085, -9.155982, -9.142781, -9.129482, -9.116086, -9.102592, -9.089002, -9.075313, -9.061527, -9.047645, -9.033666, -9.019590, -9.005418, -8.991149, -8.976784, -8.962323, -8.947766, -8.933113, -8.918365, -8.903522, -8.888583, -8.873549, -8.858420, -8.843197, -8.827879, -8.812466, -8.796959, -8.781358, -8.765663, -8.749874, -8.733992, -8.718016, -8.701947, -8.685784, -8.669530, -8.653182, -8.636742, -8.620209, -8.603583, -8.586866, -8.570057, -8.553157, -8.536164, -8.519081, -8.501906, -8.484641, -8.467284, -8.449838, -8.432301, -8.414673, -8.396955, -8.379148, -8.361251, -8.343265, -8.325189, -8.307024, -8.288770, -8.270428, -8.251997, -8.233478, -8.214870, -8.196176, -8.177393, -8.158523, -8.139565, -8.120521, -8.101389, -8.082170, -8.062866, -8.043475, -8.023998, -8.004436, -7.984787, -7.965053, -7.945234, -7.925330, -7.905341, -7.885268, -7.865110, -7.844868, -7.824542, -7.804132, -7.783639, -7.763063, -7.742404, -7.721662, -7.700837, -7.679930, -7.658940, -7.637869, -7.616716, -7.595481, -7.574166, -7.552769, -7.531291, -7.509733, -7.488095, -7.466376, -7.444578, -7.422699, -7.400742, -7.378705, -7.356589, -7.334395, -7.312122, -7.289771, -7.267342, -7.244835, -7.222251, -7.199589, -7.176851, -7.154036, -7.131144, -7.108175, -7.085131, -7.062011, -7.038815, -7.015544, -6.992198, -6.968778, -6.945282, -6.921713, -6.898069, -6.874352, -6.850561, -6.826696, -6.802759, -6.778749, -6.754666, -6.730511, -6.706285, -6.681986, -6.657616, -6.633174, -6.608662, -6.584079, -6.559425, -6.534702, -6.509908, -6.485045, -6.460113, -6.435111, -6.410040, -6.384901, -6.359694, -6.334418, -6.309075, -6.283664, -6.258186, -6.232641, -6.207030, -6.181352, -6.155608, -6.129797, -6.103922, -6.077981, -6.051975, -6.025905, -5.999770, -5.973570, -5.947307, -5.920980, -5.894590, -5.868137, -5.841621, -5.815042, -5.788402, -5.761699, -5.734935, -5.708109, -5.681222, -5.654275, -5.627267, -5.600199, -5.573071, -5.545883, -5.518636, -5.491330, -5.463965, -5.436542, -5.409060, -5.381521, -5.353924, -5.326270, -5.298559, -5.270791, -5.242967, -5.215086, -5.187150, -5.159159, -5.131112, -5.103011, -5.074854, -5.046644, -5.018379, -4.990061, -4.961689, -4.933264, -4.904787, -4.876257, -4.847675, -4.819041, -4.790355, -4.761619, -4.732831, -4.703992, -4.675104, -4.646165, -4.617177, -4.588139, -4.559052, -4.529916, -4.500732, -4.471500, -4.442220, -4.412892, -4.383517, -4.354095, -4.324627, -4.295113, -4.265552, -4.235946, -4.206294, -4.176598, -4.146856, -4.117071, -4.087241, -4.057368, -4.027451, -3.997491, -3.967489, -3.937444, -3.907357, -3.877228, -3.847057, -3.816846, -3.786593, -3.756300, -3.725967, -3.695594, -3.665182, -3.634730, -3.604239, -3.573710, -3.543143, -3.512537, -3.481894, -3.451214, -3.420497, -3.389743, -3.358953, -3.328128, -3.297266, -3.266369, -3.235438, -3.204471, -3.173471, -3.142436, -3.111368, -3.080267, -3.049132, -3.017965, -2.986766, -2.955535, -2.924272, -2.892978, -2.861652, -2.830297, -2.798911, -2.767495, -2.736049, -2.704574, -2.673071, -2.641538, -2.609978, -2.578389, -2.546773, -2.515130, -2.483459, -2.451762, -2.420039, -2.388290, -2.356516, -2.324716, -2.292892, -2.261042, -2.229169, -2.197272, -2.165351, -2.133407, -2.101441, -2.069452, -2.037440, -2.005407, -1.973353, -1.941277, -1.909181, -1.877064, -1.844927, -1.812770, -1.780594, -1.748399, -1.716185, -1.683953, -1.651703, -1.619435, -1.587150, -1.554847, -1.522529, -1.490194, -1.457842, -1.425476, -1.393094, -1.360697, -1.328286, -1.295860, -1.263421, -1.230968, -1.198502, -1.166023, -1.133532, -1.101028, -1.068513, -1.035986, -1.003448, -0.970900, -0.938341, -0.905772, -0.873193, -0.840605, -0.808008, -0.775402, -0.742788, -0.710167, -0.677537, -0.644900, -0.612257, -0.579606, -0.546950, -0.514288, -0.481620, -0.448947, -0.416269, -0.383587, -0.350901, -0.318211, -0.285518, -0.252821, -0.220122, -0.187421, -0.154717, -0.122012, -0.089305, -0.056598, -0.023890, 0.008819, 0.041527, 0.074235, 0.106941, 0.139647, 0.172352, 0.205054, 0.237754, 0.270452, 0.303147, 0.335839, 0.368527, 0.401211, 0.433891, 0.466566, 0.499236, 0.531901, 0.564560, 0.597213, 0.629860, 0.662500, 0.695132, 0.727758, 0.760376, 0.792985, 0.825586, 0.858178, 0.890761, 0.923335, 0.955898, 0.988452, 1.020995, 1.053527, 1.086047, 1.118556, 1.151053, 1.183538, 1.216010, 1.248469, 1.280915, 1.313347, 1.345765, 1.378168, 1.410557, 1.442931, 1.475289, 1.507631, 1.539958, 1.572268, 1.604561, 1.636837, 1.669095, 1.701335, 1.733558, 1.765761, 1.797946, 1.830112, 1.862258, 1.894384, 1.926490, 1.958575, 1.990640, 2.022683, 2.054704, 2.086704, 2.118681, 2.150635, 2.182566, 2.214474, 2.246359, 2.278219, 2.310055, 2.341866, 2.373652, 2.405413, 2.437148, 2.468857, 2.500540, 2.532196, 2.563824, 2.595426, 2.626999, 2.658545, 2.690062, 2.721550, 2.753009, 2.784439, 2.815839, 2.847208, 2.878547, 2.909856, 2.941133, 2.972379, 3.003593, 3.034775, 3.065925, 3.097041, 3.128125, 3.159175, 3.190191, 3.221173, 3.252121, 3.283034, 3.313912, 3.344754, 3.375561, 3.406331, 3.437065, 3.467762, 3.498422, 3.529045, 3.559630, 3.590177, 3.620685, 3.651155, 3.681586, 3.711977, 3.742328, 3.772640, 3.802911, 3.833141, 3.863331, 3.893479, 3.923585, 3.953650, 3.983672, 4.013652, 4.043588, 4.073482, 4.103332, 4.133137, 4.162899, 4.192616, 4.222289, 4.251915, 4.281497, 4.311033, 4.340523, 4.369966, 4.399363, 4.428712, 4.458014, 4.487268, 4.516475, 4.545633, 4.574742, 4.603803, 4.632814, 4.661776, 4.690687, 4.719549, 4.748360, 4.777121, 4.805830, 4.834487, 4.863093, 4.891647, 4.920149, 4.948598, 4.976995, 5.005337, 5.033627, 5.061862, 5.090044, 5.118170, 5.146243, 5.174260, 5.202221, 5.230127, 5.257977, 5.285771, 5.313509, 5.341189, 5.368812, 5.396378, 5.423886, 5.451336, 5.478728, 5.506062, 5.533336, 5.560551, 5.587707, 5.614802, 5.641838, 5.668813, 5.695728, 5.722582, 5.749374, 5.776105, 5.802775, 5.829382, 5.855927, 5.882409, 5.908828, 5.935184, 5.961477, 5.987706, 6.013870, 6.039970, 6.066006, 6.091977, 6.117883, 6.143723, 6.169497, 6.195206, 6.220848, 6.246424, 6.271933, 6.297375, 6.322749, 6.348056, 6.373294, 6.398465, 6.423567, 6.448601, 6.473565, 6.498460, 6.523286, 6.548042, 6.572728, 6.597343, 6.621888, 6.646362, 6.670765, 6.695097, 6.719357, 6.743545, 6.767661, 6.791705, 6.815676, 6.839573, 6.863399, 6.887150, 6.910828, 6.934431, 6.957961, 6.981416, 7.004797, 7.028102, 7.051332, 7.074487, 7.097567, 7.120570, 7.143497, 7.166348, 7.189121, 7.211819, 7.234438, 7.256981, 7.279446, 7.301833, 7.324142, 7.346373, 7.368525, 7.390597, 7.412591, 7.434506, 7.456342, 7.478097, 7.499773, 7.521368, 7.542882, 7.564317, 7.585670, 7.606942, 7.628132, 7.649241, 7.670269, 7.691214, 7.712076, 7.732857, 7.753554, 7.774169, 7.794700, 7.815148, 7.835513, 7.855793, 7.875990, 7.896102, 7.916130, 7.936073, 7.955932, 7.975705, 7.995392, 8.014995, 8.034512, 8.053942, 8.073286, 8.092545, 8.111715, 8.130800, 8.149798, 8.168709, 8.187531, 8.206267, 8.224915, 8.243475, 8.261947, 8.280330, 8.298624, 8.316830, 8.334947, 8.352974, 8.370913, 8.388762, 8.406520, 8.424190, 8.441768, 8.459257, 8.476655, 8.493962, 8.511179, 8.528304, 8.545339, 8.562282, 8.579132, 8.595892, 8.612559, 8.629135, 8.645617, 8.662008, 8.678307, 8.694511, 8.710623, 8.726642, 8.742567, 8.758399, 8.774137, 8.789782, 8.805332, 8.820788, 8.836150, 8.851418, 8.866590, 8.881667, 8.896650, 8.911537, 8.926330, 8.941027, 8.955627, 8.970133, 8.984542, 8.998855, 9.013072, 9.027192, 9.041216, 9.055142, 9.068973, 9.082706, 9.096342, 9.109880, 9.123322, 9.136665, 9.149912, 9.163059, 9.176109, 9.189061, 9.201915, 9.214670, 9.227326, 9.239884, 9.252343, 9.264703, 9.276963, 9.289125, 9.301188, 9.313150, 9.325013, 9.336777, 9.348439, 9.360003, 9.371467, 9.382830, 9.394092, 9.405253, 9.416315, 9.427276, 9.438136, 9.448895, 9.459553, 9.470109, 9.480564, 9.490918, 9.501171, 9.511321, 9.521370, 9.531318, 9.541162, 9.550905, 9.560546, 9.570085, 9.579521, 9.588855, 9.598085, 9.607214, 9.616240, 9.625162, 9.633983, 9.642699, 9.651313, 9.659822, 9.668230, 9.676534, 9.684733, 9.692830, 9.700823, 9.708712, 9.716496, 9.724177, 9.731754, 9.739227, 9.746596, 9.753860, 9.761021, 9.768077, 9.775028, 9.781875, 9.788616, 9.795254, 9.801786, 9.808213, 9.814536, 9.820754, 9.826866, 9.832874, 9.838777, 9.844573, 9.850266, 9.855851, 9.861332, 9.866708, 9.871978, 9.877142, 9.882200, 9.887153, 9.892000, 9.896741, 9.901377, 9.905906, 9.910330, 9.914647, 9.918859, 9.922963, 9.926962, 9.930855, 9.934642, 9.938322, 9.941896, 9.945364, 9.948725, 9.951980, 9.955128, 9.958170, 9.961105, 9.963934, 9.966656, 9.969272, 9.971781, 9.974183, 9.976478, 9.978667, 9.980749, 9.982724, 9.984592, 9.986354, 9.988008, 9.989556, 9.990997, 9.992332, 9.993559, 9.994679, 9.995692, 9.996599, 9.997398, 9.998091, 9.998676, 9.999155, 9.999527, 9.999791, 9.999949 }; float sin_lut[1921] = { 0.000000 , 0.032708, 0.065416, 0.098123, 0.130830, 0.163534, 0.196237, 0.228938, 0.261637, 0.294332, 0.327025, 0.359714, 0.392399, 0.425080, 0.457757, 0.490428, 0.523094, 0.555755, 0.588410, 0.621058, 0.653700, 0.686335, 0.718962, 0.751582, 0.784194, 0.816797, 0.849392, 0.881977, 0.914554, 0.947120, 0.979676, 1.012222, 1.044757, 1.077280, 1.109792, 1.142293, 1.174781, 1.207256, 1.239719, 1.272168, 1.304604, 1.337026, 1.369433, 1.401826, 1.434204, 1.466566, 1.498913, 1.531244, 1.563558, 1.595856, 1.628136, 1.660399, 1.692645, 1.724872, 1.757081, 1.789271, 1.821442, 1.853593, 1.885725, 1.917836, 1.949927, 1.981997, 2.014046, 2.046073, 2.078078, 2.110061, 2.142022, 2.173960, 2.205874, 2.237765, 2.269632, 2.301474, 2.333292, 2.365085, 2.396853, 2.428595, 2.460311, 2.492001, 2.523664, 2.555300, 2.586908, 2.618490, 2.650043, 2.681567, 2.713063, 2.744530, 2.775968, 2.807376, 2.838754, 2.870101, 2.901418, 2.932704, 2.963958, 2.995181, 3.026371, 3.057530, 3.088655, 3.119748, 3.150807, 3.181832, 3.212824, 3.243781, 3.274703, 3.305590, 3.336442, 3.367258, 3.398039, 3.428782, 3.459490, 3.490160, 3.520792, 3.551388, 3.581945, 3.612463, 3.642944, 3.673385, 3.703787, 3.734149, 3.764472, 3.794754, 3.824995, 3.855196, 3.885355, 3.915473, 3.945548, 3.975582, 4.005573, 4.035522, 4.065426, 4.095288, 4.125106, 4.154880, 4.184608, 4.214293, 4.243932, 4.273526, 4.303074, 4.332577, 4.362032, 4.391441, 4.420804, 4.450119, 4.479386, 4.508605, 4.537776, 4.566899, 4.595973, 4.624997, 4.653972, 4.682898, 4.711772, 4.740597, 4.769372, 4.798094, 4.826766, 4.855386, 4.883954, 4.912470, 4.940933, 4.969344, 4.997701, 5.026005, 5.054255, 5.082451, 5.110592, 5.138680, 5.166711, 5.194688, 5.222609, 5.250474, 5.278283, 5.306036, 5.333732, 5.361371, 5.388952, 5.416475, 5.443941, 5.471349, 5.498698, 5.525988, 5.553219, 5.580391, 5.607503, 5.634555, 5.661546, 5.688478, 5.715348, 5.742157, 5.768905, 5.795590, 5.822215, 5.848776, 5.875275, 5.901711, 5.928084, 5.954394, 5.980640, 6.006822, 6.032940, 6.058993, 6.084981, 6.110905, 6.136763, 6.162555, 6.188282, 6.213942, 6.239535, 6.265062, 6.290522, 6.315914, 6.341239, 6.366497, 6.391685, 6.416806, 6.441858, 6.466841, 6.491755, 6.516600, 6.541374, 6.566079, 6.590714, 6.615278, 6.639771, 6.664193, 6.688544, 6.712823, 6.737031, 6.761166, 6.785229, 6.809220, 6.833138, 6.856982, 6.880754, 6.904451, 6.928075, 6.951624, 6.975100, 6.998500, 7.021826, 7.045076, 7.068252, 7.091352, 7.114375, 7.137323, 7.160194, 7.182989, 7.205707, 7.228347, 7.250911, 7.273397, 7.295805, 7.318135, 7.340386, 7.362560, 7.384654, 7.406670, 7.428606, 7.450462, 7.472239, 7.493937, 7.515553, 7.537090, 7.558546, 7.579921, 7.601214, 7.622427, 7.643558, 7.664607, 7.685575, 7.706460, 7.727262, 7.747982, 7.768619, 7.789173, 7.809643, 7.830030, 7.850334, 7.870553, 7.890688, 7.910738, 7.930705, 7.950586, 7.970382, 7.990093, 8.009718, 8.029258, 8.048712, 8.068079, 8.087360, 8.106555, 8.125664, 8.144685, 8.163619, 8.182466, 8.201224, 8.219896, 8.238480, 8.256975, 8.275382, 8.293700, 8.311930, 8.330070, 8.348123, 8.366085, 8.383958, 8.401741, 8.419435, 8.437037, 8.454551, 8.471973, 8.489305, 8.506546, 8.523696, 8.540755, 8.557722, 8.574598, 8.591382, 8.608075, 8.624675, 8.641183, 8.657598, 8.673922, 8.690151, 8.706288, 8.722332, 8.738283, 8.754140, 8.769903, 8.785573, 8.801149, 8.816630, 8.832018, 8.847310, 8.862509, 8.877612, 8.892620, 8.907534, 8.922351, 8.937074, 8.951700, 8.966231, 8.980666, 8.995006, 9.009248, 9.023395, 9.037444, 9.051397, 9.065254, 9.079013, 9.092675, 9.106240, 9.119708, 9.133078, 9.146350, 9.159524, 9.172601, 9.185579, 9.198459, 9.211241, 9.223924, 9.236508, 9.248994, 9.261380, 9.273667, 9.285856, 9.297945, 9.309935, 9.321824, 9.333614, 9.345304, 9.356895, 9.368385, 9.379775, 9.391066, 9.402254, 9.413342, 9.424331, 9.435218, 9.446004, 9.456689, 9.467273, 9.477756, 9.488137, 9.498417, 9.508595, 9.518671, 9.528646, 9.538518, 9.548288, 9.557957, 9.567523, 9.576987, 9.586349, 9.595607, 9.604763, 9.613816, 9.622767, 9.631615, 9.640359, 9.649000, 9.657538, 9.665974, 9.674305, 9.682532, 9.690657, 9.698678, 9.706594, 9.714408, 9.722116, 9.729722, 9.737223, 9.744619, 9.751912, 9.759101, 9.766185, 9.773164, 9.780039, 9.786809, 9.793474, 9.800035, 9.806491, 9.812842, 9.819088, 9.825229, 9.831264, 9.837195, 9.843020, 9.848741, 9.854356, 9.859865, 9.865269, 9.870567, 9.875760, 9.880847, 9.885828, 9.890703, 9.895473, 9.900137, 9.904696, 9.909147, 9.913493, 9.917733, 9.921867, 9.925895, 9.929816, 9.933631, 9.937341, 9.940943, 9.944439, 9.947829, 9.951113, 9.954289, 9.957360, 9.960324, 9.963181, 9.965933, 9.968577, 9.971114, 9.973545, 9.975870, 9.978087, 9.980198, 9.982202, 9.984099, 9.985889, 9.987573, 9.989150, 9.990620, 9.991982, 9.993238, 9.994388, 9.995430, 9.996366, 9.997193, 9.997915, 9.998529, 9.999037, 9.999437, 9.999731, 9.999917, 9.999997, 9.999969, 9.999835, 9.999594, 9.999245, 9.998790, 9.998227, 9.997559, 9.996782, 9.995898, 9.994908, 9.993812, 9.992607, 9.991297, 9.989879, 9.988354, 9.986723, 9.984984, 9.983139, 9.981187, 9.979128, 9.976963, 9.974690, 9.972312, 9.969826, 9.967234, 9.964535, 9.961729, 9.958817, 9.955798, 9.952673, 9.949441, 9.946103, 9.942658, 9.939108, 9.935451, 9.931687, 9.927817, 9.923841, 9.919759, 9.915571, 9.911277, 9.906877, 9.902369, 9.897758, 9.893040, 9.888215, 9.883286, 9.878250, 9.873109, 9.867862, 9.862510, 9.857052, 9.851488, 9.845819, 9.840045, 9.834166, 9.828181, 9.822091, 9.815896, 9.809597, 9.803192, 9.796682, 9.790068, 9.783348, 9.776525, 9.769596, 9.762563, 9.755425, 9.748184, 9.740838, 9.733387, 9.725833, 9.718175, 9.710412, 9.702546, 9.694575, 9.686502, 9.678324, 9.670043, 9.661658, 9.653171, 9.644580, 9.635885, 9.627088, 9.618188, 9.609184, 9.600079, 9.590869, 9.581558, 9.572145, 9.562628, 9.553009, 9.543288, 9.533465, 9.523540, 9.513514, 9.503386, 9.493155, 9.482823, 9.472390, 9.461855, 9.451220, 9.440482, 9.429645, 9.418706, 9.407666, 9.396526, 9.385285, 9.373944, 9.362503, 9.350961, 9.339319, 9.327578, 9.315737, 9.303796, 9.291755, 9.279615, 9.267376, 9.255037, 9.242600, 9.230063, 9.217429, 9.204695, 9.191863, 9.178932, 9.165904, 9.152778, 9.139553, 9.126230, 9.112810, 9.099293, 9.085678, 9.071966, 9.058157, 9.044250, 9.030248, 9.016149, 9.001952, 8.987660, 8.973272, 8.958788, 8.944207, 8.929532, 8.914761, 8.899894, 8.884932, 8.869875, 8.854723, 8.839476, 8.824135, 8.808700, 8.793169, 8.777545, 8.761827, 8.746016, 8.730111, 8.714112, 8.698021, 8.681836, 8.665558, 8.649188, 8.632725, 8.616169, 8.599522, 8.582783, 8.565951, 8.549028, 8.532014, 8.514908, 8.497711, 8.480424, 8.463045, 8.445577, 8.428017, 8.410368, 8.392628, 8.374799, 8.356880, 8.338872, 8.320774, 8.302588, 8.284312, 8.265948, 8.247497, 8.228956, 8.210327, 8.191610, 8.172807, 8.153915, 8.134936, 8.115870, 8.096718, 8.077478, 8.058153, 8.038741, 8.019243, 7.999660, 7.979990, 7.960236, 7.940396, 7.920471, 7.900462, 7.880368, 7.860189, 7.839927, 7.819581, 7.799151, 7.778637, 7.758041, 7.737361, 7.716599, 7.695754, 7.674827, 7.653818, 7.632727, 7.611554, 7.590299, 7.568964, 7.547547, 7.526050, 7.504472, 7.482814, 7.461076, 7.439258, 7.417361, 7.395384, 7.373328, 7.351193, 7.328979, 7.306688, 7.284317, 7.261869, 7.239344, 7.216741, 7.194060, 7.171303, 7.148469, 7.125558, 7.102572, 7.079509, 7.056371, 7.033157, 7.009868, 6.986503, 6.963064, 6.939551, 6.915963, 6.892302, 6.868566, 6.844757, 6.820875, 6.796920, 6.772892, 6.748792, 6.724619, 6.700375, 6.676059, 6.651671, 6.627213, 6.602683, 6.578083, 6.553412, 6.528672, 6.503861, 6.478981, 6.454032, 6.429013, 6.403926, 6.378770, 6.353546, 6.328254, 6.302895, 6.277467, 6.251973, 6.226412, 6.200784, 6.175090, 6.149330, 6.123504, 6.097612, 6.071656, 6.045634, 6.019548, 5.993397, 5.967182, 5.940903, 5.914561, 5.888155, 5.861687, 5.835156, 5.808562, 5.781907, 5.755189, 5.728409, 5.701569, 5.674667, 5.647705, 5.620683, 5.593600, 5.566457, 5.539255, 5.511993, 5.484673, 5.457294, 5.429857, 5.402361, 5.374808, 5.347197, 5.319529, 5.291804, 5.264022, 5.236184, 5.208291, 5.180341, 5.152336, 5.124276, 5.096160, 5.067991, 5.039767, 5.011489, 4.983158, 4.954774, 4.926336, 4.897846, 4.869303, 4.840708, 4.812062, 4.783364, 4.754614, 4.725814, 4.696964, 4.668063, 4.639112, 4.610112, 4.581062, 4.551963, 4.522815, 4.493619, 4.464375, 4.435084, 4.405745, 4.376359, 4.346925, 4.317446, 4.287920, 4.258348, 4.228731, 4.199068, 4.169361, 4.139609, 4.109813, 4.079972, 4.050088, 4.020161, 3.990191, 3.960178, 3.930122, 3.900025, 3.869886, 3.839705, 3.809484, 3.779222, 3.748919, 3.718576, 3.688193, 3.657771, 3.627310, 3.596810, 3.566272, 3.535695, 3.505080, 3.474428, 3.443739, 3.413013, 3.382251, 3.351452, 3.320617, 3.289747, 3.258842, 3.227902, 3.196927, 3.165918, 3.134875, 3.103799, 3.072690, 3.041547, 3.010372, 2.979165, 2.947926, 2.916656, 2.885354, 2.854021, 2.822658, 2.791265, 2.759842, 2.728389, 2.696907, 2.665396, 2.633857, 2.602289, 2.570694, 2.539072, 2.507421, 2.475745, 2.444041, 2.412312, 2.380557, 2.348776, 2.316970, 2.285140, 2.253285, 2.221406, 2.189502, 2.157576, 2.125627, 2.093655, 2.061660, 2.029643, 1.997605, 1.965545, 1.933465, 1.901363, 1.869241, 1.837100, 1.804938, 1.772757, 1.740558, 1.708339, 1.676103, 1.643848, 1.611576, 1.579287, 1.546981, 1.514658, 1.482319, 1.449964, 1.417593, 1.385208, 1.352808, 1.320393, 1.287964, 1.255521, 1.223065, 1.190596, 1.158114, 1.125619, 1.093113, 1.060595, 1.028065, 0.995525, 0.962974, 0.930412, 0.897841, 0.865260, 0.832670, 0.800071, 0.767463, 0.734847, 0.702223, 0.669592, 0.636953, 0.604308, 0.571656, 0.538999, 0.506335, 0.473666, 0.440992, 0.408313, 0.375630, 0.342943, 0.310252, 0.277558, 0.244860, 0.212161, 0.179459, 0.146755, 0.114049, 0.081342, 0.048635, 0.015927, -0.016782, -0.049490, -0.082198, -0.114904, -0.147610, -0.180314, -0.213016, -0.245715, -0.278412, -0.311107, -0.343797, -0.376484, -0.409168, -0.441846, -0.474520, -0.507189, -0.539853, -0.572510, -0.605162, -0.637807, -0.670445, -0.703076, -0.735700, -0.768316, -0.800923, -0.833522, -0.866112, -0.898693, -0.931264, -0.963825, -0.996376, -1.028916, -1.061445, -1.093963, -1.126469, -1.158963, -1.191445, -1.223914, -1.256370, -1.288812, -1.321241, -1.353655, -1.386055, -1.418440, -1.450810, -1.483165, -1.515503, -1.547825, -1.580131, -1.612420, -1.644692, -1.676946, -1.709182, -1.741400, -1.773599, -1.805779, -1.837940, -1.870082, -1.902203, -1.934304, -1.966384, -1.998443, -2.030481, -2.062497, -2.094491, -2.126462, -2.158411, -2.190337, -2.222239, -2.254118, -2.285972, -2.317802, -2.349607, -2.381387, -2.413142, -2.444871, -2.476573, -2.508250, -2.539899, -2.571521, -2.603115, -2.634682, -2.666221, -2.697731, -2.729212, -2.760664, -2.792086, -2.823479, -2.854841, -2.886173, -2.917474, -2.948743, -2.979982, -3.011188, -3.042362, -3.073503, -3.104612, -3.135688, -3.166729, -3.197737, -3.228711, -3.259650, -3.290555, -3.321424, -3.352258, -3.383055, -3.413817, -3.444542, -3.475230, -3.505881, -3.536495, -3.567070, -3.597608, -3.628107, -3.658567, -3.688988, -3.719370, -3.749712, -3.780014, -3.810275, -3.840495, -3.870675, -3.900813, -3.930909, -3.960963, -3.990975, -4.020944, -4.050870, -4.080753, -4.110592, -4.140388, -4.170138, -4.199844, -4.229506, -4.259122, -4.288692, -4.318217, -4.347695, -4.377127, -4.406512, -4.435850, -4.465141, -4.494383, -4.523578, -4.552724, -4.581822, -4.610870, -4.639870, -4.668819, -4.697719, -4.726568, -4.755367, -4.784115, -4.812811, -4.841457, -4.870050, -4.898592, -4.927080, -4.955517, -4.983900, -5.012229, -5.040506, -5.068728, -5.096896, -5.125010, -5.153069, -5.181072, -5.209021, -5.236913, -5.264750, -5.292530, -5.320253, -5.347919, -5.375529, -5.403081, -5.430575, -5.458011, -5.485388, -5.512707, -5.539967, -5.567168, -5.594309, -5.621390, -5.648411, -5.675372, -5.702271, -5.729111, -5.755888, -5.782604, -5.809258, -5.835850, -5.862380, -5.888847, -5.915251, -5.941591, -5.967868, -5.994081, -6.020231, -6.046315, -6.072335, -6.098290, -6.124180, -6.150004, -6.175763, -6.201455, -6.227081, -6.252641, -6.278133, -6.303558, -6.328917, -6.354207, -6.379429, -6.404583, -6.429668, -6.454685, -6.479632, -6.504511, -6.529320, -6.554059, -6.578727, -6.603325, -6.627853, -6.652310, -6.676696, -6.701010, -6.725253, -6.749423, -6.773521, -6.797547, -6.821500, -6.845381, -6.869188, -6.892921, -6.916581, -6.940166, -6.963678, -6.987115, -7.010478, -7.033765, -7.056977, -7.080113, -7.103174, -7.126159, -7.149067, -7.171899, -7.194654, -7.217333, -7.239934, -7.262457, -7.284904, -7.307271, -7.329561, -7.351773, -7.373906, -7.395959, -7.417934, -7.439830, -7.461646, -7.483382, -7.505037, -7.526613, -7.548108, -7.569523, -7.590856, -7.612108, -7.633279, -7.654368, -7.675375, -7.696301, -7.717143, -7.737903, -7.758581, -7.779175, -7.799686, -7.820114, -7.840458, -7.860718, -7.880894, -7.900986, -7.920993, -7.940916, -7.960753, -7.980506, -8.000173, -8.019754, -8.039249, -8.058660, -8.077983, -8.097219, -8.116370, -8.135433, -8.154410, -8.173300, -8.192101, -8.210815, -8.229442, -8.247980, -8.266430, -8.284792, -8.303064, -8.321249, -8.339344, -8.357349, -8.375266, -8.393093, -8.410830, -8.428477, -8.446034, -8.463501, -8.480877, -8.498162, -8.515357, -8.532460, -8.549472, -8.566392, -8.583221, -8.599958, -8.616604, -8.633157, -8.649617, -8.665985, -8.682261, -8.698442, -8.714532, -8.730528, -8.746430, -8.762239, -8.777955, -8.793576, -8.809104, -8.824537, -8.839876, -8.855120, -8.870270, -8.885324, -8.900284, -8.915148, -8.929916, -8.944590, -8.959167, -8.973649, -8.988035, -9.002325, -9.016519, -9.030615, -9.044616, -9.058519, -9.072326, -9.086035, -9.099648, -9.113162, -9.126580, -9.139899, -9.153122, -9.166245, -9.179272, -9.192200, -9.205029, -9.217760, -9.230392, -9.242927, -9.255362, -9.267697, -9.279934, -9.292071, -9.304109, -9.316048, -9.327887, -9.339625, -9.351264, -9.362803, -9.374242, -9.385580, -9.396818, -9.407956, -9.418993, -9.429930, -9.440764, -9.451499, -9.462132, -9.472664, -9.483094, -9.493423, -9.503652, -9.513777, -9.523802, -9.533724, -9.543544, -9.553262, -9.562878, -9.572392, -9.581802, -9.591111, -9.600318, -9.609421, -9.618422, -9.627319, -9.636114, -9.644806, -9.653394, -9.661880, -9.670261, -9.678539, -9.686714, -9.694785, -9.702753, -9.710616, -9.718376, -9.726032, -9.733583, -9.741031, -9.748375, -9.755613, -9.762749, -9.769778, -9.776704, -9.783525, -9.790242, -9.796854, -9.803361, -9.809763, -9.816060, -9.822252, -9.828339, -9.834321, -9.840198, -9.845969, -9.851635, -9.857196, -9.862651, -9.868000, -9.873244, -9.878383, -9.883416, -9.888343, -9.893164, -9.897880, -9.902489, -9.906993, -9.911390, -9.915682, -9.919868, -9.923946, -9.927920, -9.931787, -9.935548, -9.939202, -9.942750, -9.946192, -9.949527, -9.952756, -9.955878, -9.958895, -9.961803, -9.964606, -9.967302, -9.969893, -9.972375, -9.974751, -9.977021, -9.979183, -9.981239, -9.983189, -9.985031, -9.986767, -9.988396, -9.989917, -9.991332, -9.992640, -9.993841, -9.994936, -9.995923, -9.996803, -9.997577, -9.998243, -9.998803, -9.999255, -9.999601, -9.999840, -9.999971, -9.999996, -9.999914, -9.999724, -9.999428, -9.999025, -9.998514, -9.997897, -9.997173, -9.996342, -9.995404, -9.994359, -9.993207, -9.991948, -9.990582, -9.989110, -9.987531, -9.985844, -9.984051, -9.982151, -9.980145, -9.978030, -9.975810, -9.973483, -9.971049, -9.968509, -9.965862, -9.963108, -9.960248, -9.957281, -9.954208, -9.951028, -9.947742, -9.944349, -9.940850, -9.937244, -9.933533, -9.929715, -9.925791, -9.921761, -9.917624, -9.913381, -9.909032, -9.904577, -9.900017, -9.895350, -9.890577, -9.885699, -9.880715, -9.875626, -9.870430, -9.865129, -9.859722, -9.854210, -9.848593, -9.842870, -9.837042, -9.831108, -9.825069, -9.818926, -9.812677, -9.806324, -9.799865, -9.793302, -9.786633, -9.779860, -9.772983, -9.766001, -9.758914, -9.751723, -9.744428, -9.737028, -9.729525, -9.721916, -9.714205, -9.706389, -9.698469, -9.690446, -9.682319, -9.674088, -9.665754, -9.657316, -9.648776, -9.640132, -9.631385, -9.622535, -9.613581, -9.604525, -9.595366, -9.586104, -9.576741, -9.567274, -9.557706, -9.548035, -9.538261, -9.528386, -9.518409, -9.508329, -9.498149, -9.487866, -9.477483, -9.466997, -9.456411, -9.445724, -9.434935, -9.424045, -9.413054, -9.401963, -9.390771, -9.379479, -9.368086, -9.356593, -9.345000, -9.333307, -9.321515, -9.309623, -9.297630, -9.285539, -9.273348, -9.261058, -9.248669, -9.236180, -9.223594, -9.210908, -9.198124, -9.185241, -9.172260, -9.159182, -9.146005, -9.132730, -9.119357, -9.105886, -9.092319, -9.078654, -9.064893, -9.051034, -9.037078, -9.023026, -9.008877, -8.994632, -8.980290, -8.965853, -8.951319, -8.936689, -8.921965, -8.907145, -8.892229, -8.877218, -8.862112, -8.846911, -8.831616, -8.816227, -8.800743, -8.785165, -8.769493, -8.753727, -8.737867, -8.721914, -8.705868, -8.689728, -8.673495, -8.657170, -8.640753, -8.624242, -8.607639, -8.590945, -8.574158, -8.557280, -8.540310, -8.523249, -8.506096, -8.488853, -8.471519, -8.454094, -8.436579, -8.418973, -8.401278, -8.383492, -8.365617, -8.347651, -8.329597, -8.311455, -8.293222, -8.274901, -8.256493, -8.237994, -8.219409, -8.200735, -8.181973, -8.163125, -8.144189, -8.125165, -8.106054, -8.086858, -8.067574, -8.048204, -8.028748, -8.009206, -7.989579, -7.969865, -7.950067, -7.930184, -7.910215, -7.890162, -7.870025, -7.849804, -7.829498, -7.809109, -7.788637, -7.768080, -7.747441, -7.726719, -7.705914, -7.685027, -7.664058, -7.643006, -7.621873, -7.600659, -7.579363, -7.557986, -7.536528, -7.514989, -7.493370, -7.471671, -7.449892, -7.428033, -7.406095, -7.384078, -7.361981, -7.339806, -7.317552, -7.295220, -7.272810, -7.250322, -7.227757, -7.205114, -7.182394, -7.159597, -7.136724, -7.113774, -7.090748, -7.067647, -7.044469, -7.021217, -6.997889, -6.974487, -6.951009, -6.927458, -6.903832, -6.880133, -6.856359, -6.832513, -6.808593, -6.784601, -6.760536, -6.736399, -6.712189, -6.687908, -6.663555, -6.639131, -6.614636, -6.590070, -6.565434, -6.540728, -6.515951, -6.491105, -6.466189, -6.441204, -6.416150, -6.391028, -6.365837, -6.340578, -6.315251, -6.289857, -6.264395, -6.238867, -6.213271, -6.187610, -6.161881, -6.136087, -6.110228, -6.084303, -6.058313, -6.032258, -6.006138, -5.979955, -5.953707, -5.927396, -5.901021, -5.874583, -5.848083, -5.821519, -5.794894, -5.768206, -5.741457, -5.714646, -5.687774, -5.660841, -5.633848, -5.606794, -5.579681, -5.552508, -5.525275, -5.497983, -5.470633, -5.443224, -5.415757, -5.388231, -5.360649, -5.333008, -5.305311, -5.277557, -5.249746, -5.221879, -5.193957, -5.165979, -5.137946, -5.109857, -5.081714, -5.053517, -5.025265, -4.996960, -4.968602, -4.940190, -4.911725, -4.883208, -4.854639, -4.826017, -4.797344, -4.768620, -4.739844, -4.711018, -4.682142, -4.653215, -4.624239, -4.595213, -4.566138, -4.537014, -4.507842, -4.478621, -4.449353, -4.420036, -4.390673, -4.361263, -4.331806, -4.302302, -4.272753, -4.243158, -4.213517, -4.183832, -4.154101, -4.124327, -4.094508, -4.064645, -4.034739, -4.004789, -3.974797, -3.944762, -3.914685, -3.884567, -3.854406, -3.824205, -3.793962, -3.763679, -3.733356, -3.702992, -3.672590, -3.642147, -3.611666, -3.581146, -3.550588, -3.519992, -3.489358, -3.458687, -3.427979, -3.397234, -3.366453, -3.335636, -3.304783, -3.273895, -3.242972, -3.212014, -3.181021, -3.149995, -3.118935, -3.087842, -3.056715, -3.025556, -2.994365, -2.963141, -2.931886, -2.900599, -2.869282, -2.837934, -2.806555, -2.775146, -2.743708, -2.712240, -2.680743, -2.649218, -2.617664, -2.586082, -2.554473, -2.522836, -2.491172, -2.459482, -2.427765, -2.396023, -2.364254, -2.332460, -2.300642, -2.268799, -2.236931, -2.205040, -2.173125, -2.141186, -2.109226, -2.077242, -2.045236, -2.013208, -1.981159, -1.949088, -1.916997, -1.884885, -1.852753, -1.820601, -1.788429, -1.756239, -1.724030, -1.691802, -1.659556, -1.627292, -1.595011, -1.562713, -1.530399, -1.498067, -1.465720, -1.433357, -1.400979, -1.368586, -1.336178, -1.303756, -1.271320, -1.238870, -1.206407, -1.173931, -1.141443, -1.108943, -1.076430, -1.043906, -1.011371, -0.978825, -0.946268, -0.913702, -0.881126, -0.848540, -0.815945, -0.783341, -0.750729, -0.718109, -0.685482, -0.652847, -0.620205, -0.587556, -0.554901, -0.522240, -0.489574, -0.456902, -0.424226, -0.391545, -0.358859, -0.326170, -0.293478, -0.260782, -0.228083, -0.195382, -0.162679, -0.129974, -0.097268, -0.064561, -0.031853 };