├── .gitignore ├── LICENSE ├── README.md ├── cwt.py ├── cwt_demo.ipynb └── demo_signal.csv /.gitignore: -------------------------------------------------------------------------------- 1 | .ipynb_checkpoints 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Nicolás Tapia 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # cmorlet-tensorflow 2 | 3 | A TensorFlow implementation of the Continuous Wavelet Transform obtained via the complex Morlet wavelet. Please see the demo Jupyter Notebook for usage demonstration and more implementation details. 4 | 5 | This implementation is aimed to leverage GPU acceleration for the computation of the CWT in TensorFlow models. The morlet's wavelet width can be set as a trainable parameter if you want to adjust it via backprop. Please note that this implementation was made before TensorFlow 2, so you need TensorFlow 1 (i.e. tf 1.x). 6 | 7 | This module was used to obtain the CWT of EEG signals for the RED-CWT model, described in: 8 | 9 | N. I. Tapia and P. A. Estévez, "RED: Deep Recurrent Neural Networks for Sleep EEG Event Detection," *2020 International Joint Conference on Neural Networks (IJCNN)*, Glasgow, United Kingdom, 2020, pp. 1-8, doi: 10.1109/IJCNN48605.2020.9207719. 10 | 11 | Full text available at: https://arxiv.org/abs/2005.07795 12 | 13 | If you find this software useful, please consider citing our work. 14 | -------------------------------------------------------------------------------- /cwt.py: -------------------------------------------------------------------------------- 1 | """Module that implements the CWT using a trainable complex morlet wavelet. By Nicolas I. Tapia""" 2 | 3 | from __future__ import absolute_import 4 | from __future__ import division 5 | from __future__ import print_function 6 | 7 | import numpy as np 8 | import tensorflow as tf 9 | 10 | 11 | class ContinuousWaveletTransform(object): 12 | """CWT layer implementation in Tensorflow for GPU acceleration.""" 13 | def __init__(self, n_scales, border_crop=0, stride=1, name="cwt"): 14 | """ 15 | Args: 16 | n_scales: (int) Number of scales for the scalogram. 17 | border_crop: (int) Non-negative integer that specifies the number 18 | of samples to be removed at each border after computing the cwt. 19 | This parameter allows to input a longer signal than the final 20 | desired size to remove border effects of the CWT. Default 0. 21 | stride: (int) The stride of the sliding window across the input. 22 | Default is 1. 23 | name: (string) A name for the op. Default "cwt". 24 | """ 25 | self.n_scales = n_scales 26 | self.border_crop = border_crop 27 | self.stride = stride 28 | self.name = name 29 | with tf.variable_scope(self.name): 30 | self.real_part, self.imaginary_part = self._build_wavelet_bank() 31 | 32 | def _build_wavelet_bank(self): 33 | """Needs implementation to compute the real and imaginary parts 34 | of the wavelet bank. Each part is expected to have shape 35 | [1, kernel_size, 1, n_scales].""" 36 | real_part = None 37 | imaginary_part = None 38 | return real_part, imaginary_part 39 | 40 | def __call__(self, inputs): 41 | """ 42 | Computes the CWT with the specified wavelet bank. 43 | If the signal has more than one channel, the CWT is computed for 44 | each channel independently and stacked at the end along the 45 | channel axis. 46 | 47 | Args: 48 | inputs: (tensor) A batch of 1D tensors of shape 49 | [batch_size, time_len, n_channels]. 50 | Returns: 51 | Scalogram tensor with real and imaginary parts for each input 52 | channels. The shape of this tensor is 53 | [batch_size, time_len, n_scales, 2 * n_channels] 54 | """ 55 | 56 | # Generate the scalogram 57 | border_crop = int(self.border_crop / self.stride) 58 | start = border_crop 59 | end = (-border_crop) if (border_crop > 0) else None 60 | with tf.variable_scope(self.name): 61 | # Input has expected shape of [batch_size, time_len, n_channels] 62 | # We first unstack the input channels 63 | inputs_unstacked = tf.unstack(inputs, axis=2) 64 | multi_channel_cwt = [] 65 | for j, single_channel in enumerate(inputs_unstacked): 66 | # Reshape input [batch, time_len] -> [batch, 1, time_len, 1] 67 | inputs_expand = tf.expand_dims(single_channel, axis=1) 68 | inputs_expand = tf.expand_dims(inputs_expand, axis=3) 69 | with tf.name_scope('%s_%d' % (self.name, j)): 70 | bank_real = self.real_part 71 | bank_imag = -self.imaginary_part # Conjugation 72 | out_real = tf.nn.conv2d( 73 | input=inputs_expand, filter=bank_real, 74 | strides=[1, 1, self.stride, 1], padding="SAME") 75 | out_imag = tf.nn.conv2d( 76 | input=inputs_expand, filter=bank_imag, 77 | strides=[1, 1, self.stride, 1], padding="SAME") 78 | out_real_crop = out_real[:, :, start:end, :] 79 | out_imag_crop = out_imag[:, :, start:end, :] 80 | out_concat = tf.concat( 81 | [out_real_crop, out_imag_crop], axis=1) 82 | # [batch, 2, time, n_scales]->[batch, time, n_scales, 2] 83 | single_scalogram = tf.transpose( 84 | out_concat, perm=[0, 2, 3, 1]) 85 | multi_channel_cwt.append(single_scalogram) 86 | # Get all in shape [batch, time_len, n_scales, 2*n_channels] 87 | scalograms = tf.concat(multi_channel_cwt, -1) 88 | return scalograms 89 | 90 | 91 | class ComplexMorletCWT(ContinuousWaveletTransform): 92 | """CWT with the complex Morlet wavelet filter bank.""" 93 | def __init__( 94 | self, 95 | wavelet_width, 96 | fs, 97 | lower_freq, 98 | upper_freq, 99 | n_scales, 100 | size_factor=1.0, 101 | trainable=False, 102 | border_crop=0, 103 | stride=1, 104 | name="cwt"): 105 | """ 106 | Computes the complex morlet wavelets 107 | 108 | The mother wavelet is defined as: 109 | 110 | PSI(t) = (1 / Z) * exp(j * 2 * pi * t) * exp(-(t^2) / beta) 111 | 112 | Where: 113 | beta: wavelet width 114 | t: k / fs the time axis 115 | Z: A normalization constant that depends on beta. We want to 116 | have unit gain at each scale, so we use: 117 | Z: fs * sqrt(pi * beta) / 2 118 | And the scaled wavelets are computed as: 119 | PSI_s(t) = PSI(t / scale) / scale 120 | 121 | Greater wavelet widths lead to more duration of the wavelet in time, 122 | leading to better frequency resolution but worse time resolution. 123 | Scales will be automatically computed from the given frequency range and 124 | the number of desired scales. The scales increase exponentially 125 | as commonly recommended. 126 | 127 | A gaussian window is commonly truncated at 3 standard deviations from 128 | the mean. Therefore, we truncate the wavelets at the interval 129 | |t| <= size_factor * scale * sqrt(4.5 * wavelet_width) 130 | where size_factor >= 1 can be optionally set to relax this truncation. 131 | This might be useful when allowing the wavelet width to be trainable. 132 | Given this heuristic, the wavelet width can be thought in terms of the 133 | number of effective cycles that the wavelet completes. 134 | If you want N effective cycles, then you should set 135 | beta = N^2 / 18 136 | For example, 4 effective cycles are observed when beta approx 0.9. 137 | 138 | Args: 139 | wavelet_width: (float o tensor) wavelet width. 140 | fs: (float) Sampling frequency of the application. 141 | lower_freq: (float) Lower frequency of the scalogram. 142 | upper_freq: (float) Upper frequency of the scalogram. 143 | n_scales: (int) Number of scales for the scalogram. 144 | size_factor: (float) Factor by which the size of the kernels will 145 | be increased with respect to the original size. Default 1.0. 146 | trainable: (boolean) If True, the wavelet width is trainable. 147 | Default to False. 148 | border_crop: (int) Non-negative integer that specifies the number 149 | of samples to be removed at each border after computing the cwt. 150 | This parameter allows to input a longer signal than the final 151 | desired size to remove border effects of the CWT. Default 0. 152 | stride: (int) The stride of the sliding window across the input. 153 | Default is 1. 154 | name: (string) A name for the op. Default "cwt". 155 | """ 156 | 157 | # Checking 158 | if lower_freq > upper_freq: 159 | raise ValueError("lower_freq should be lower than upper_freq") 160 | if lower_freq < 0: 161 | raise ValueError("Expected positive lower_freq.") 162 | 163 | self.initial_wavelet_width = wavelet_width 164 | self.fs = fs 165 | self.lower_freq = lower_freq 166 | self.upper_freq = upper_freq 167 | self.size_factor = size_factor 168 | self.trainable = trainable 169 | # Generate initial and last scale 170 | s_0 = 1 / self.upper_freq 171 | s_n = 1 / self.lower_freq 172 | # Generate the array of scales 173 | base = np.power(s_n / s_0, 1 / (n_scales - 1)) 174 | self.scales = s_0 * np.power(base, np.arange(n_scales)) 175 | # Generate the frequency range 176 | self.frequencies = 1 / self.scales 177 | # Trainable wavelet width value 178 | self.wavelet_width = tf.Variable( 179 | initial_value=self.initial_wavelet_width, 180 | trainable=self.trainable, 181 | name='wavelet_width', 182 | dtype=tf.float32) 183 | super().__init__(n_scales, border_crop, stride, name) 184 | 185 | def _build_wavelet_bank(self): 186 | with tf.variable_scope("cmorlet_bank"): 187 | # Generate the wavelets 188 | # We will make a bigger wavelet in case the width grows 189 | # For the size of the wavelet we use the initial width value. 190 | # |t| < truncation_size => |k| < truncation_size * fs 191 | truncation_size = self.scales.max() * np.sqrt(4.5 * self.initial_wavelet_width) * self.fs 192 | one_side = int(self.size_factor * truncation_size) 193 | kernel_size = 2 * one_side + 1 194 | k_array = np.arange(kernel_size, dtype=np.float32) - one_side 195 | t_array = k_array / self.fs # Time units 196 | # Wavelet bank shape: 1, kernel_size, 1, n_scales 197 | wavelet_bank_real = [] 198 | wavelet_bank_imag = [] 199 | for scale in self.scales: 200 | norm_constant = tf.sqrt(np.pi * self.wavelet_width) * scale * self.fs / 2.0 201 | scaled_t = t_array / scale 202 | exp_term = tf.exp(-(scaled_t ** 2) / self.wavelet_width) 203 | kernel_base = exp_term / norm_constant 204 | kernel_real = kernel_base * np.cos(2 * np.pi * scaled_t) 205 | kernel_imag = kernel_base * np.sin(2 * np.pi * scaled_t) 206 | wavelet_bank_real.append(kernel_real) 207 | wavelet_bank_imag.append(kernel_imag) 208 | # Stack wavelets (shape = kernel_size, n_scales) 209 | wavelet_bank_real = tf.stack(wavelet_bank_real, axis=-1) 210 | wavelet_bank_imag = tf.stack(wavelet_bank_imag, axis=-1) 211 | # Give it proper shape for convolutions 212 | # -> shape: 1, kernel_size, n_scales 213 | wavelet_bank_real = tf.expand_dims(wavelet_bank_real, axis=0) 214 | wavelet_bank_imag = tf.expand_dims(wavelet_bank_imag, axis=0) 215 | # -> shape: 1, kernel_size, 1, n_scales 216 | wavelet_bank_real = tf.expand_dims(wavelet_bank_real, axis=2) 217 | wavelet_bank_imag = tf.expand_dims(wavelet_bank_imag, axis=2) 218 | return wavelet_bank_real, wavelet_bank_imag 219 | -------------------------------------------------------------------------------- /demo_signal.csv: -------------------------------------------------------------------------------- 1 | 1.997963190078735352e-01 2 | 3.239489197731018066e-01 3 | 3.345396220684051514e-01 4 | 3.428620994091033936e-01 5 | 3.134098351001739502e-01 6 | 2.757640779018402100e-01 7 | 3.770114779472351074e-01 8 | 4.022894501686096191e-01 9 | 5.027606487274169922e-01 10 | 6.926879286766052246e-01 11 | 6.750125288963317871e-01 12 | 5.615474581718444824e-01 13 | 7.397102117538452148e-01 14 | 8.178824186325073242e-01 15 | 7.906545996665954590e-01 16 | 8.163407444953918457e-01 17 | 8.771000504493713379e-01 18 | 9.201170206069946289e-01 19 | 8.900622725486755371e-01 20 | 9.195855259895324707e-01 21 | 9.881243705749511719e-01 22 | 8.804796934127807617e-01 23 | 8.979364037513732910e-01 24 | 9.378427863121032715e-01 25 | 9.252410531044006348e-01 26 | 8.411225676536560059e-01 27 | 7.829639911651611328e-01 28 | 6.430653929710388184e-01 29 | 5.325661897659301758e-01 30 | 6.533693671226501465e-01 31 | 6.166948080062866211e-01 32 | 6.022693514823913574e-01 33 | 6.064817905426025391e-01 34 | 5.042536258697509766e-01 35 | 4.369516074657440186e-01 36 | 2.899652421474456787e-01 37 | 2.055435925722122192e-01 38 | 4.765342175960540771e-02 39 | -2.481569349765777588e-01 40 | -5.065940618515014648e-01 41 | -6.731247305870056152e-01 42 | -7.834442853927612305e-01 43 | -7.816378474235534668e-01 44 | -7.160503268241882324e-01 45 | -6.871319413185119629e-01 46 | -6.146886348724365234e-01 47 | -5.367978215217590332e-01 48 | -5.761976838111877441e-01 49 | -5.467120409011840820e-01 50 | -4.684779047966003418e-01 51 | -3.458591103553771973e-01 52 | -3.496543467044830322e-01 53 | -4.703936278820037842e-01 54 | -3.001312315464019775e-01 55 | -3.479532599449157715e-01 56 | -4.304777979850769043e-01 57 | -5.218309164047241211e-01 58 | -5.726246237754821777e-01 59 | -5.490558147430419922e-01 60 | -3.078141212463378906e-01 61 | -5.711503699421882629e-02 62 | 6.616170704364776611e-02 63 | 1.900271028280258179e-01 64 | 4.467028975486755371e-01 65 | 5.148912668228149414e-01 66 | 5.775329470634460449e-01 67 | 6.870225071907043457e-01 68 | 6.435520052909851074e-01 69 | 4.798973202705383301e-01 70 | 4.967058002948760986e-01 71 | 5.500136613845825195e-01 72 | 4.197373092174530029e-01 73 | 3.570061922073364258e-01 74 | 2.704499065876007080e-01 75 | 2.059552520513534546e-01 76 | 3.056233562529087067e-02 77 | -4.236388579010963440e-02 78 | 2.463269978761672974e-02 79 | 1.065149679780006409e-01 80 | 2.854337692260742188e-01 81 | 4.910290241241455078e-01 82 | 4.755392074584960938e-01 83 | 5.037363171577453613e-01 84 | 6.281980276107788086e-01 85 | 7.362864017486572266e-01 86 | 6.544504165649414062e-01 87 | 5.916901826858520508e-01 88 | 6.206278800964355469e-01 89 | 6.270417571067810059e-01 90 | 6.628564000129699707e-01 91 | 6.900692582130432129e-01 92 | 5.577726960182189941e-01 93 | 4.023612141609191895e-01 94 | 4.269362390041351318e-01 95 | 5.533826947212219238e-01 96 | 6.887485384941101074e-01 97 | 6.879097223281860352e-01 98 | 6.030128598213195801e-01 99 | 5.409727692604064941e-01 100 | 5.061278939247131348e-01 101 | 5.883346199989318848e-01 102 | 5.558022856712341309e-01 103 | 4.561999142169952393e-01 104 | 4.628932476043701172e-01 105 | 3.953329324722290039e-01 106 | 3.712564110755920410e-01 107 | 3.086340427398681641e-01 108 | 1.493952125310897827e-01 109 | -3.605197370052337646e-02 110 | 3.480833023786544800e-02 111 | 3.090481646358966827e-02 112 | -1.379741728305816650e-01 113 | -4.392186105251312256e-01 114 | -5.833760499954223633e-01 115 | -5.776216983795166016e-01 116 | -4.704662561416625977e-01 117 | -4.537346661090850830e-01 118 | -4.944516718387603760e-01 119 | -6.885236501693725586e-01 120 | -8.296554684638977051e-01 121 | -1.002402782440185547e+00 122 | -1.174638867378234863e+00 123 | -1.401039361953735352e+00 124 | -1.650101304054260254e+00 125 | -1.815042972564697266e+00 126 | -1.891297817230224609e+00 127 | -1.924165129661560059e+00 128 | -1.886645317077636719e+00 129 | -1.812723994255065918e+00 130 | -1.572262287139892578e+00 131 | -1.293342947959899902e+00 132 | -1.115248799324035645e+00 133 | -9.180799722671508789e-01 134 | -8.433597087860107422e-01 135 | -8.189769387245178223e-01 136 | -7.451336979866027832e-01 137 | -5.962746143341064453e-01 138 | -4.553665816783905029e-01 139 | -5.053290724754333496e-01 140 | -5.746380686759948730e-01 141 | -6.255040168762207031e-01 142 | -5.221647024154663086e-01 143 | -4.815185070037841797e-01 144 | -3.732038438320159912e-01 145 | -3.997763395309448242e-01 146 | -3.551260232925415039e-01 147 | -2.877290546894073486e-01 148 | -3.009467124938964844e-01 149 | -2.526722848415374756e-01 150 | -2.963512539863586426e-01 151 | -2.739431560039520264e-01 152 | -2.941990196704864502e-01 153 | -4.056720137596130371e-01 154 | -3.669465184211730957e-01 155 | -3.498125374317169189e-01 156 | -4.916848838329315186e-01 157 | -6.298503279685974121e-01 158 | -8.639718294143676758e-01 159 | -9.707775712013244629e-01 160 | -9.776131510734558105e-01 161 | -8.875970244407653809e-01 162 | -9.813086986541748047e-01 163 | -9.774634242057800293e-01 164 | -8.983571529388427734e-01 165 | -8.257196545600891113e-01 166 | -7.285198569297790527e-01 167 | -6.148033738136291504e-01 168 | -4.124082922935485840e-01 169 | -3.533130288124084473e-01 170 | -1.847355961799621582e-01 171 | -1.791912615299224854e-01 172 | -6.944780796766281128e-02 173 | -5.736494809389114380e-02 174 | -4.093114286661148071e-02 175 | 5.480295047163963318e-02 176 | 5.768113583326339722e-02 177 | 7.969009876251220703e-02 178 | 2.218446135520935059e-01 179 | 3.290673792362213135e-01 180 | 3.922193348407745361e-01 181 | 4.590076804161071777e-01 182 | 4.236952662467956543e-01 183 | 3.680871427059173584e-01 184 | 3.891427814960479736e-01 185 | 3.675338029861450195e-01 186 | 2.226245552301406860e-01 187 | 3.045190274715423584e-01 188 | 3.181573748588562012e-01 189 | 3.911258578300476074e-01 190 | 5.656890869140625000e-01 191 | 6.158989071846008301e-01 192 | 3.965289294719696045e-01 193 | 2.925642728805541992e-01 194 | 2.901636064052581787e-01 195 | 1.723186820745468140e-01 196 | 1.848234981298446655e-01 197 | 6.277805566787719727e-02 198 | -4.150053486227989197e-02 199 | -8.250254392623901367e-02 200 | -3.124796785414218903e-02 201 | -1.167948022484779358e-01 202 | -1.451669335365295410e-01 203 | -8.286391198635101318e-02 204 | -4.897782951593399048e-02 205 | -9.408682584762573242e-02 206 | -1.151601448655128479e-01 207 | -3.232713788747787476e-02 208 | 8.512202650308609009e-02 209 | 1.894954293966293335e-01 210 | 1.676343381404876709e-01 211 | 2.424433678388595581e-01 212 | 2.294090688228607178e-01 213 | 3.281617462635040283e-01 214 | 5.117506384849548340e-01 215 | 5.479725003242492676e-01 216 | 6.228367090225219727e-01 217 | 7.455384135246276855e-01 218 | 6.373075246810913086e-01 219 | 6.052015423774719238e-01 220 | 5.803839564323425293e-01 221 | 6.250107884407043457e-01 222 | 6.376699209213256836e-01 223 | 6.768301725387573242e-01 224 | 6.130731701850891113e-01 225 | 4.975268542766571045e-01 226 | 4.648900628089904785e-01 227 | 4.420591592788696289e-01 228 | 4.532412588596343994e-01 229 | 4.509451687335968018e-01 230 | 4.948711693286895752e-01 231 | 4.624414145946502686e-01 232 | 5.973143577575683594e-01 233 | 5.765174031257629395e-01 234 | 6.327007412910461426e-01 235 | 5.409358739852905273e-01 236 | 4.355123639106750488e-01 237 | 3.354611098766326904e-01 238 | 2.162837833166122437e-01 239 | 1.660839170217514038e-01 240 | 1.285956148058176041e-02 241 | -1.848271787166595459e-01 242 | -4.479400217533111572e-01 243 | -5.896255373954772949e-01 244 | -6.164882779121398926e-01 245 | -6.696487069129943848e-01 246 | -6.154475808143615723e-01 247 | -5.963179469108581543e-01 248 | -7.172709107398986816e-01 249 | -8.318692445755004883e-01 250 | -9.536954164505004883e-01 251 | -1.115082263946533203e+00 252 | -1.184223651885986328e+00 253 | -1.150512099266052246e+00 254 | -1.111357808113098145e+00 255 | -1.061280012130737305e+00 256 | -1.039530396461486816e+00 257 | -9.084135890007019043e-01 258 | -9.008823037147521973e-01 259 | -7.644721269607543945e-01 260 | -4.683450460433959961e-01 261 | -3.245130479335784912e-01 262 | -2.499374747276306152e-01 263 | -2.863940298557281494e-01 264 | -4.413543641567230225e-02 265 | 4.305468872189521790e-02 266 | 1.644742190837860107e-01 267 | 3.128680884838104248e-01 268 | 2.795644700527191162e-01 269 | 1.845104843378067017e-01 270 | 1.473364830017089844e-01 271 | 1.048676595091819763e-01 272 | 3.775896877050399780e-02 273 | 3.380749374628067017e-02 274 | 1.593361645936965942e-01 275 | 1.178329288959503174e-01 276 | 5.245542153716087341e-02 277 | 1.223447993397712708e-01 278 | 2.239266484975814819e-01 279 | 2.121468037366867065e-01 280 | 3.493300378322601318e-01 281 | 4.359744489192962646e-01 282 | 4.531450569629669189e-01 283 | 5.303156375885009766e-01 284 | 4.798966944217681885e-01 285 | 5.579608678817749023e-01 286 | 5.168730020523071289e-01 287 | 4.462946057319641113e-01 288 | 5.579448938369750977e-01 289 | 5.148178935050964355e-01 290 | 4.178865551948547363e-01 291 | 2.507589757442474365e-01 292 | 8.820552378892898560e-02 293 | -2.540855295956134796e-02 294 | 1.867085322737693787e-02 295 | -8.000170812010765076e-03 296 | 4.851785674691200256e-02 297 | -1.396076381206512451e-01 298 | -3.995601534843444824e-01 299 | -5.203514099121093750e-01 300 | -6.027507781982421875e-01 301 | -4.786740243434906006e-01 302 | -3.113250434398651123e-01 303 | -3.007312715053558350e-01 304 | -3.630630671977996826e-01 305 | -4.464641809463500977e-01 306 | -5.257806777954101562e-01 307 | -5.018501877784729004e-01 308 | -5.621758699417114258e-01 309 | -7.020412087440490723e-01 310 | -6.643230915069580078e-01 311 | -6.740896105766296387e-01 312 | -7.489955425262451172e-01 313 | -7.016065120697021484e-01 314 | -5.727472305297851562e-01 315 | -4.732234776020050049e-01 316 | -4.837198853492736816e-01 317 | -3.631960749626159668e-01 318 | -3.461005091667175293e-01 319 | -2.936934530735015869e-01 320 | -2.217232435941696167e-01 321 | -1.920548975467681885e-01 322 | -2.424378991127014160e-01 323 | -2.653481960296630859e-01 324 | -3.250287771224975586e-01 325 | -3.258830904960632324e-01 326 | -1.693048179149627686e-01 327 | -1.065838336944580078e-01 328 | -1.542778164148330688e-01 329 | -1.785720288753509521e-01 330 | -2.243310362100601196e-01 331 | -1.105513945221900940e-01 332 | -1.467870026826858521e-01 333 | -9.137938916683197021e-02 334 | 6.617407314479351044e-03 335 | 2.044071629643440247e-02 336 | -7.600011676549911499e-02 337 | -1.316697895526885986e-01 338 | -8.601401001214981079e-02 339 | 6.772238761186599731e-02 340 | 1.814831197261810303e-01 341 | 9.958967566490173340e-02 342 | -4.325019195675849915e-02 343 | -6.444153189659118652e-02 344 | 1.273168325424194336e-01 345 | 2.478347122669219971e-01 346 | 2.452550530433654785e-01 347 | 1.626336723566055298e-01 348 | 1.354689300060272217e-01 349 | 1.150215119123458862e-01 350 | 8.406346291303634644e-02 351 | 3.357775136828422546e-02 352 | 9.037686511874198914e-03 353 | -6.198441982269287109e-02 354 | 2.593674324452877045e-02 355 | 1.706520617008209229e-01 356 | 1.323387175798416138e-01 357 | 2.830583155155181885e-01 358 | 2.326185256242752075e-01 359 | 2.799681425094604492e-01 360 | 3.730368018150329590e-01 361 | 4.543845057487487793e-01 362 | 4.449340403079986572e-01 363 | 4.255805313587188721e-01 364 | 4.326717257499694824e-01 365 | 3.394464850425720215e-01 366 | 1.828790009021759033e-01 367 | 1.447007358074188232e-01 368 | 6.873317062854766846e-02 369 | 3.036083653569221497e-02 370 | 7.217807322740554810e-02 371 | 2.033403962850570679e-01 372 | 2.825704514980316162e-01 373 | 3.419471085071563721e-01 374 | 4.409853219985961914e-01 375 | 4.641807079315185547e-01 376 | 5.130540728569030762e-01 377 | 4.981412589550018311e-01 378 | 3.651552796363830566e-01 379 | 3.373845517635345459e-01 380 | 3.751115798950195312e-01 381 | 3.064463734626770020e-01 382 | 2.371185719966888428e-01 383 | 2.682874202728271484e-01 384 | 3.092194199562072754e-01 385 | 2.432515025138854980e-01 386 | 2.231087386608123779e-01 387 | 2.844291925430297852e-01 388 | 2.629508972167968750e-01 389 | 3.943421319127082825e-02 390 | 1.641000360250473022e-01 391 | 1.194179356098175049e-01 392 | 6.725893169641494751e-02 393 | 5.999266356229782104e-02 394 | 1.785524487495422363e-01 395 | 2.367576509714126587e-01 396 | 2.096112519502639771e-01 397 | 1.708185374736785889e-01 398 | -3.613030770793557167e-03 399 | -1.475441604852676392e-01 400 | -2.824502810835838318e-02 401 | 2.251334339380264282e-01 402 | 3.832994401454925537e-01 403 | 4.440128207206726074e-01 404 | 3.473058044910430908e-01 405 | 3.525910079479217529e-01 406 | 3.433138132095336914e-01 407 | 2.520073354244232178e-01 408 | 1.686450988054275513e-01 409 | 4.773781076073646545e-02 410 | -8.484754711389541626e-02 411 | -1.888315230607986450e-01 412 | -3.266065120697021484e-01 413 | -4.888927638530731201e-01 414 | -5.603475570678710938e-01 415 | -6.938165426254272461e-01 416 | -7.977839112281799316e-01 417 | -7.971737384796142578e-01 418 | -9.820477962493896484e-01 419 | -1.092720746994018555e+00 420 | -1.059461593627929688e+00 421 | -1.012637257575988770e+00 422 | -1.089307785034179688e+00 423 | -1.109299182891845703e+00 424 | -1.012444615364074707e+00 425 | -1.070591330528259277e+00 426 | -1.063466906547546387e+00 427 | -9.545648097991943359e-01 428 | -7.737305164337158203e-01 429 | -6.127080321311950684e-01 430 | -4.432205557823181152e-01 431 | -4.543410241603851318e-01 432 | -5.123567581176757812e-01 433 | -5.000326037406921387e-01 434 | -5.454146265983581543e-01 435 | -4.830993413925170898e-01 436 | -5.113614797592163086e-01 437 | -5.787891745567321777e-01 438 | -6.047250628471374512e-01 439 | -6.571175456047058105e-01 440 | -7.536284327507019043e-01 441 | -7.424528002738952637e-01 442 | -6.938951015472412109e-01 443 | -6.882839798927307129e-01 444 | -6.525279879570007324e-01 445 | -7.386552691459655762e-01 446 | -7.453559637069702148e-01 447 | -7.614331841468811035e-01 448 | -7.199634909629821777e-01 449 | -6.286649107933044434e-01 450 | -5.987087488174438477e-01 451 | -7.142819166183471680e-01 452 | -6.616175770759582520e-01 453 | -5.643453001976013184e-01 454 | -4.728436172008514404e-01 455 | -3.417006731033325195e-01 456 | -2.894308269023895264e-01 457 | -1.527798771858215332e-01 458 | -1.306535154581069946e-01 459 | -2.326356768608093262e-01 460 | -2.580995261669158936e-01 461 | -2.341081500053405762e-01 462 | -2.290454208850860596e-01 463 | -4.609822109341621399e-02 464 | 9.728837758302688599e-02 465 | 1.122293993830680847e-01 466 | 5.025712773203849792e-02 467 | -8.994429558515548706e-02 468 | -5.869276449084281921e-02 469 | 1.562753506004810333e-02 470 | 7.621497660875320435e-02 471 | 2.534781396389007568e-01 472 | 2.753083705902099609e-01 473 | 3.116809427738189697e-01 474 | 3.163175880908966064e-01 475 | 1.752436757087707520e-01 476 | 9.974751621484756470e-02 477 | 2.094288617372512817e-01 478 | 4.022691547870635986e-01 479 | 4.328578710556030273e-01 480 | 5.284003615379333496e-01 481 | 6.211522817611694336e-01 482 | 5.811105370521545410e-01 483 | 5.238426923751831055e-01 484 | 5.336739420890808105e-01 485 | 6.986770629882812500e-01 486 | 5.886068344116210938e-01 487 | 5.061860084533691406e-01 488 | 4.871793687343597412e-01 489 | 5.354036688804626465e-01 490 | 7.035427093505859375e-01 491 | 6.727142930030822754e-01 492 | 6.092004776000976562e-01 493 | 6.417050361633300781e-01 494 | 7.419301271438598633e-01 495 | 9.133265018463134766e-01 496 | 9.319623708724975586e-01 497 | 9.006379246711730957e-01 498 | 7.199170589447021484e-01 499 | 5.983706712722778320e-01 500 | 5.184184312820434570e-01 501 | 4.856773018836975098e-01 502 | 4.769471585750579834e-01 503 | 4.021467864513397217e-01 504 | 2.864952683448791504e-01 505 | 2.095390409231185913e-01 506 | 1.764177978038787842e-01 507 | 1.914045959711074829e-01 508 | 3.999010846018791199e-02 509 | -7.630687952041625977e-02 510 | -9.547167271375656128e-02 511 | -7.552617043256759644e-02 512 | -1.939654201269149780e-01 513 | -2.800098061561584473e-01 514 | -2.422159165143966675e-01 515 | -9.676000475883483887e-02 516 | -4.159095138311386108e-02 517 | -8.983840793371200562e-02 518 | 6.685508880764245987e-03 519 | -3.307692334055900574e-02 520 | 1.119245123118162155e-02 521 | 8.216604590415954590e-02 522 | 1.460860222578048706e-01 523 | 1.987877637147903442e-01 524 | 3.440840542316436768e-01 525 | 2.882973849773406982e-01 526 | 3.091838061809539795e-01 527 | 3.256273567676544189e-01 528 | 3.226490914821624756e-01 529 | 3.118707835674285889e-01 530 | 3.579682111740112305e-01 531 | 4.072606861591339111e-01 532 | 4.231574833393096924e-01 533 | 4.814869761466979980e-01 534 | 5.266147851943969727e-01 535 | 5.204872488975524902e-01 536 | 5.076219439506530762e-01 537 | 4.696759581565856934e-01 538 | 4.091210365295410156e-01 539 | 3.977480530738830566e-01 540 | 4.262767434120178223e-01 541 | 3.234027624130249023e-01 542 | 2.838946282863616943e-01 543 | 2.587412297725677490e-01 544 | 3.406645953655242920e-01 545 | 2.377053946256637573e-01 546 | 2.150068730115890503e-01 547 | 1.758401542901992798e-01 548 | 1.181525811553001404e-01 549 | 6.041051447391510010e-02 550 | 1.482935249805450439e-01 551 | 1.795045733451843262e-01 552 | 1.425226330757141113e-01 553 | 2.328804284334182739e-01 554 | 4.086540937423706055e-01 555 | 3.937052190303802490e-01 556 | 4.985204935073852539e-01 557 | 5.301261544227600098e-01 558 | 6.477359533309936523e-01 559 | 6.769830584526062012e-01 560 | 7.110279798507690430e-01 561 | 7.488604187965393066e-01 562 | 6.887651085853576660e-01 563 | 6.663815975189208984e-01 564 | 5.939390659332275391e-01 565 | 4.272713661193847656e-01 566 | 3.894379138946533203e-01 567 | 4.332865178585052490e-01 568 | 4.658417105674743652e-01 569 | 6.398790478706359863e-01 570 | 7.271470427513122559e-01 571 | 7.904836535453796387e-01 572 | 8.078005313873291016e-01 573 | 8.710886240005493164e-01 574 | 7.792989015579223633e-01 575 | 5.512239336967468262e-01 576 | 5.565691590309143066e-01 577 | 6.767725944519042969e-01 578 | 6.870149374008178711e-01 579 | 6.955476999282836914e-01 580 | 6.689613461494445801e-01 581 | 5.274927020072937012e-01 582 | 3.516574501991271973e-01 583 | 3.371937572956085205e-01 584 | 4.589066505432128906e-01 585 | 4.827469289302825928e-01 586 | 4.810956418514251709e-01 587 | 4.576973915100097656e-01 588 | 3.502488732337951660e-01 589 | 1.230027601122856140e-01 590 | 1.623062044382095337e-01 591 | 2.533383071422576904e-01 592 | 2.733663618564605713e-01 593 | 3.171555399894714355e-01 594 | 3.584598004817962646e-01 595 | 2.649603486061096191e-01 596 | 1.769349873065948486e-01 597 | 2.165910005569458008e-01 598 | 2.844026386737823486e-01 599 | 1.086709722876548767e-01 600 | -7.317414134740829468e-02 601 | -1.036918312311172485e-01 602 | -1.671534776687622070e-01 603 | -2.914375066757202148e-01 604 | -3.687892556190490723e-01 605 | -5.052036643028259277e-01 606 | -5.610001683235168457e-01 607 | -3.866619169712066650e-01 608 | -2.820930182933807373e-01 609 | -2.336722910404205322e-01 610 | -2.145168781280517578e-01 611 | -2.337218672037124634e-01 612 | -2.376832664012908936e-01 613 | -2.990063726902008057e-01 614 | -2.370950877666473389e-01 615 | -1.323871314525604248e-01 616 | -9.955824166536331177e-02 617 | -1.948379725217819214e-01 618 | -2.396133244037628174e-01 619 | -2.990780770778656006e-01 620 | -2.698538005352020264e-01 621 | -1.267009973526000977e-01 622 | -3.021694123744964600e-01 623 | -3.780713379383087158e-01 624 | -2.195369601249694824e-01 625 | -2.066228091716766357e-01 626 | -2.797023355960845947e-01 627 | -3.304851651191711426e-01 628 | -3.837533295154571533e-01 629 | -3.850753009319305420e-01 630 | -2.507085502147674561e-01 631 | -2.434372901916503906e-01 632 | -2.449569106101989746e-01 633 | -1.700127422809600830e-01 634 | -1.994196474552154541e-01 635 | -2.183834761381149292e-01 636 | -2.538239955902099609e-01 637 | -2.060803622007369995e-01 638 | -1.653775572776794434e-01 639 | -2.229329794645309448e-01 640 | -2.837857604026794434e-01 641 | -4.148125052452087402e-01 642 | -5.266041755676269531e-01 643 | -4.696186780929565430e-01 644 | -4.107214212417602539e-01 645 | -3.285494446754455566e-01 646 | -2.461094856262207031e-01 647 | -2.789699733257293701e-01 648 | -1.901453435420989990e-01 649 | -1.511369198560714722e-01 650 | -1.396496295928955078e-01 651 | -5.148160085082054138e-02 652 | -1.475003212690353394e-01 653 | -1.458166241645812988e-01 654 | -7.787304371595382690e-02 655 | 3.604028141126036644e-03 656 | -7.508700340986251831e-02 657 | -1.148380190134048462e-01 658 | -8.857588469982147217e-02 659 | -2.010855972766876221e-01 660 | -2.719751894474029541e-01 661 | -3.460150659084320068e-01 662 | -3.254331648349761963e-01 663 | -3.984588682651519775e-01 664 | -3.076675534248352051e-01 665 | -2.062150537967681885e-01 666 | -1.176630184054374695e-01 667 | 6.168526411056518555e-02 668 | 8.813495188951492310e-02 669 | 2.287670671939849854e-01 670 | 4.657078087329864502e-01 671 | 5.837658047676086426e-01 672 | 4.995054602622985840e-01 673 | 3.936544358730316162e-01 674 | 3.697150349617004395e-01 675 | 3.053506314754486084e-01 676 | 1.669201701879501343e-01 677 | 1.792761683464050293e-01 678 | 1.975836902856826782e-01 679 | 1.095946654677391052e-01 680 | 1.307249516248703003e-01 681 | 1.680491305887699127e-02 682 | -6.254073977470397949e-02 683 | 4.910127818584442139e-02 684 | 1.392693258821964264e-02 685 | -1.675283610820770264e-01 686 | -3.205953836441040039e-01 687 | -3.208424150943756104e-01 688 | -1.719805300235748291e-01 689 | -8.428791910409927368e-02 690 | -5.479151383042335510e-02 691 | 2.150389552116394043e-02 692 | 5.917223542928695679e-02 693 | 1.983670294284820557e-01 694 | 2.591418921947479248e-01 695 | 1.833855360746383667e-01 696 | 3.125106543302536011e-02 697 | -9.664124995470046997e-02 698 | -4.251246526837348938e-02 699 | -5.461832880973815918e-02 700 | -1.268553137779235840e-01 701 | -8.255515992641448975e-02 702 | -3.475310206413269043e-01 703 | -4.067299365997314453e-01 704 | -3.401911258697509766e-01 705 | -4.273217022418975830e-01 706 | -5.346052050590515137e-01 707 | -5.607778429985046387e-01 708 | -5.946522355079650879e-01 709 | -5.104521512985229492e-01 710 | -3.431757688522338867e-01 711 | -3.354016244411468506e-01 712 | -4.118761122226715088e-01 713 | -2.936550676822662354e-01 714 | -2.487622648477554321e-01 715 | -2.724214196205139160e-01 716 | -2.287758886814117432e-01 717 | -1.406792253255844116e-01 718 | -1.226719394326210022e-01 719 | -2.340290993452072144e-01 720 | -1.503852009773254395e-01 721 | -1.130603179335594177e-01 722 | -1.257730871438980103e-01 723 | -1.428465545177459717e-01 724 | -1.197824552655220032e-01 725 | -2.192853093147277832e-01 726 | -1.802104711532592773e-01 727 | -1.172081287950277328e-02 728 | -4.018898308277130127e-02 729 | -7.320265471935272217e-02 730 | -1.232297942042350769e-01 731 | -2.051965892314910889e-01 732 | -2.040008604526519775e-01 733 | -2.513034045696258545e-01 734 | -4.567822217941284180e-01 735 | -5.775110721588134766e-01 736 | -5.927663445472717285e-01 737 | -5.669795274734497070e-01 738 | -5.530847907066345215e-01 739 | -6.805016994476318359e-01 740 | -6.353026628494262695e-01 741 | -4.944751858711242676e-01 742 | -5.686380863189697266e-01 743 | -5.169706344604492188e-01 744 | -5.098277926445007324e-01 745 | -5.072349905967712402e-01 746 | -4.820294380187988281e-01 747 | -4.399057626724243164e-01 748 | -4.247794449329376221e-01 749 | -4.124135375022888184e-01 750 | -4.256405830383300781e-01 751 | -4.547277987003326416e-01 752 | -4.785731732845306396e-01 753 | -2.812990248203277588e-01 754 | -4.758834466338157654e-02 755 | 2.605853229761123657e-02 756 | 7.281624525785446167e-02 757 | 1.194309219717979431e-01 758 | 1.063415780663490295e-01 759 | 9.298338741064071655e-02 760 | 6.391212344169616699e-02 761 | 1.586077809333801270e-01 762 | 2.542447745800018311e-01 763 | 2.965167462825775146e-01 764 | 2.701359391212463379e-01 765 | 1.278065145015716553e-01 766 | 1.423818767070770264e-01 767 | 1.659872233867645264e-01 768 | 7.220857590436935425e-02 769 | 3.208662569522857666e-02 770 | 5.906191840767860413e-02 771 | -9.740645065903663635e-03 772 | -1.409830600023269653e-01 773 | -1.052411347627639771e-01 774 | -9.159713238477706909e-02 775 | -1.747181713581085205e-01 776 | -1.932563781738281250e-01 777 | -8.050693571567535400e-02 778 | -6.733129173517227173e-02 779 | -2.732429206371307373e-01 780 | -3.267609477043151855e-01 781 | -4.284239411354064941e-01 782 | -5.101335644721984863e-01 783 | -4.997037947177886963e-01 784 | -4.059608280658721924e-01 785 | -4.209852814674377441e-01 786 | -3.729208111763000488e-01 787 | -3.026400506496429443e-01 788 | -1.507739126682281494e-01 789 | -3.029580786824226379e-02 790 | 5.669441074132919312e-03 791 | 6.234740093350410461e-02 792 | 1.422839821316301823e-03 793 | -9.560827910900115967e-02 794 | -1.343704909086227417e-01 795 | -2.131791114807128906e-01 796 | -2.386949658393859863e-01 797 | -1.901827305555343628e-01 798 | -1.343587785959243774e-01 799 | -1.552756875753402710e-01 800 | -1.920726746320724487e-01 801 | -2.942065596580505371e-01 802 | -3.882504105567932129e-01 803 | -3.493068516254425049e-01 804 | -2.440451383590698242e-01 805 | -1.825579404830932617e-01 806 | -1.272491514682769775e-01 807 | -8.971959352493286133e-02 808 | -3.986479341983795166e-02 809 | -1.571819931268692017e-01 810 | -2.078738510608673096e-01 811 | -1.606201082468032837e-01 812 | -1.219844445586204529e-01 813 | -3.310570493340492249e-02 814 | -4.987182840704917908e-02 815 | -9.928967058658599854e-02 816 | -1.534631997346878052e-01 817 | -1.041703149676322937e-01 818 | 1.184657588601112366e-01 819 | 1.066053733229637146e-01 820 | 1.576499491930007935e-01 821 | 2.320095598697662354e-01 822 | 1.588387489318847656e-01 823 | 2.885322570800781250e-01 824 | 3.559845685958862305e-01 825 | 4.502497911453247070e-01 826 | 5.410928726196289062e-01 827 | 5.604039430618286133e-01 828 | 6.037807464599609375e-01 829 | 5.833190679550170898e-01 830 | 6.030820608139038086e-01 831 | 4.432276189327239990e-01 832 | 3.492298126220703125e-01 833 | 1.907656788825988770e-01 834 | 2.199336588382720947e-01 835 | 2.216070294380187988e-01 836 | 1.329692453145980835e-01 837 | 2.113970965147018433e-01 838 | 1.229871958494186401e-01 839 | -5.313691124320030212e-02 840 | -7.988349348306655884e-02 841 | -4.191916063427925110e-02 842 | -7.920251041650772095e-02 843 | 2.367112599313259125e-02 844 | 1.024655252695083618e-01 845 | 7.341136783361434937e-02 846 | 8.869645744562149048e-02 847 | 6.971072405576705933e-02 848 | 4.992824420332908630e-02 849 | 1.205081194639205933e-01 850 | 2.782934010028839111e-01 851 | 4.484218955039978027e-01 852 | 4.563020765781402588e-01 853 | 4.625651836395263672e-01 854 | 5.990936160087585449e-01 855 | 5.898861885070800781e-01 856 | 6.065338850021362305e-01 857 | 5.369602441787719727e-01 858 | 4.866105020046234131e-01 859 | 3.867430090904235840e-01 860 | 2.594709992408752441e-01 861 | 1.432349234819412231e-01 862 | -2.877229452133178711e-02 863 | -1.280520409345626831e-01 864 | -2.491133511066436768e-01 865 | -3.370450735092163086e-01 866 | -3.755671083927154541e-01 867 | -3.060591220855712891e-01 868 | -1.749722063541412354e-01 869 | -2.346170842647552490e-01 870 | -3.201714456081390381e-01 871 | -3.645652830600738525e-01 872 | -4.104982614517211914e-01 873 | -4.142705202102661133e-01 874 | -3.895160853862762451e-01 875 | -5.093204379081726074e-01 876 | -5.658777356147766113e-01 877 | -4.268166720867156982e-01 878 | -3.334440886974334717e-01 879 | -2.614991366863250732e-01 880 | -2.860031723976135254e-01 881 | -3.982724249362945557e-01 882 | -4.385287165641784668e-01 883 | -3.890672326087951660e-01 884 | -2.791749835014343262e-01 885 | -2.192350775003433228e-01 886 | -1.323747187852859497e-01 887 | -6.792149692773818970e-02 888 | -7.133702188730239868e-02 889 | -5.131598934531211853e-02 890 | -7.027443498373031616e-02 891 | -7.224953174591064453e-02 892 | -1.464211195707321167e-01 893 | -2.525351643562316895e-01 894 | -3.384593129158020020e-01 895 | -4.972184300422668457e-01 896 | -5.080041885375976562e-01 897 | -4.799958467483520508e-01 898 | -4.299240708351135254e-01 899 | -3.521432578563690186e-01 900 | -3.125517070293426514e-01 901 | -1.749790310859680176e-01 902 | -1.575035788118839264e-02 903 | -7.744433730840682983e-02 904 | -5.552629008889198303e-03 905 | -6.797225773334503174e-02 906 | 2.585791749879717827e-03 907 | 3.447233736515045166e-01 908 | 1.003341451287269592e-01 909 | -7.587689906358718872e-03 910 | -6.990488618612289429e-03 911 | 1.114993449300527573e-02 912 | -1.096715182065963745e-01 913 | -2.792177200317382812e-01 914 | -3.330944776535034180e-01 915 | -2.257805168628692627e-01 916 | -2.019926905632019043e-01 917 | -9.867811203002929688e-02 918 | -6.377921253442764282e-02 919 | -1.309031900018453598e-02 920 | 1.537479311227798462e-01 921 | 1.100335642695426941e-01 922 | 6.347849220037460327e-02 923 | 8.791296184062957764e-02 924 | 1.122741103172302246e-01 925 | 3.409717679023742676e-01 926 | 7.298015356063842773e-01 927 | 1.006990432739257812e+00 928 | 1.091124296188354492e+00 929 | 1.075715065002441406e+00 930 | 9.644923210144042969e-01 931 | 8.492937684059143066e-01 932 | 6.691366434097290039e-01 933 | 6.729945540428161621e-01 934 | 7.629178166389465332e-01 935 | 7.166697978973388672e-01 936 | 7.842254042625427246e-01 937 | 8.602945208549499512e-01 938 | 8.495880365371704102e-01 939 | 7.329202890396118164e-01 940 | 6.239770054817199707e-01 941 | 5.637481808662414551e-01 942 | 5.125908851623535156e-01 943 | 6.006295680999755859e-01 944 | 5.589106678962707520e-01 945 | 5.063057541847229004e-01 946 | 3.939870893955230713e-01 947 | 4.330764114856719971e-01 948 | 3.821877837181091309e-01 949 | 3.496860265731811523e-01 950 | 2.513556778430938721e-01 951 | 1.839949339628219604e-01 952 | 1.089074164628982544e-01 953 | 4.555003345012664795e-02 954 | 2.294546514749526978e-01 955 | 2.494919896125793457e-01 956 | 1.140165627002716064e-01 957 | 9.746935218572616577e-02 958 | 1.558300852775573730e-01 959 | 1.124729439616203308e-01 960 | 5.546673014760017395e-02 961 | 2.557668089866638184e-01 962 | 4.016968607902526855e-01 963 | 5.532203316688537598e-01 964 | 7.301598191261291504e-01 965 | 7.652239203453063965e-01 966 | 9.140303730964660645e-01 967 | 9.613077044486999512e-01 968 | 8.713510036468505859e-01 969 | 8.915261626243591309e-01 970 | 8.366718888282775879e-01 971 | 8.399400115013122559e-01 972 | 8.337975144386291504e-01 973 | 7.608141899108886719e-01 974 | 6.363500952720642090e-01 975 | 4.484740793704986572e-01 976 | 2.744368612766265869e-01 977 | 1.171135827898979187e-01 978 | 3.688784688711166382e-02 979 | -1.010898798704147339e-01 980 | -1.625014990568161011e-01 981 | -2.023067772388458252e-01 982 | -2.812044024467468262e-01 983 | -2.414168268442153931e-01 984 | -2.875958085060119629e-01 985 | -3.602985739707946777e-01 986 | -3.827158510684967041e-01 987 | -5.056176781654357910e-01 988 | -5.873593688011169434e-01 989 | -6.556456089019775391e-01 990 | -6.414126157760620117e-01 991 | -5.313113927841186523e-01 992 | -5.610747933387756348e-01 993 | -5.436236858367919922e-01 994 | -5.690095424652099609e-01 995 | -7.108933925628662109e-01 996 | -5.919141769409179688e-01 997 | -4.380324482917785645e-01 998 | -2.579610347747802734e-01 999 | -1.256650537252426147e-01 1000 | -3.675823658704757690e-02 1001 | --------------------------------------------------------------------------------