├── plots ├── QRS_offline_detector_plot_2017_04_07_12_02_15.png └── QRS_offline_detector_plot_2017_04_07_12_02_16.png ├── arduino_ecg_sketch ├── arduinoECGLibrary │ └── eHealth_arduino_v2.4.zip └── arduinoECGCode │ └── arduinoECGCode.ino ├── requirements.txt ├── LICENSE ├── .gitignore ├── QRSDetectorOnline.py ├── README.md ├── QRSDetectorOffline.py ├── ecg_data ├── ecg_data_2.csv └── ecg_data_1.csv └── logs └── QRS_online_detector_log_2017_04_07_12_10_14.csv /plots/QRS_offline_detector_plot_2017_04_07_12_02_15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/c-labpl/qrs_detector/HEAD/plots/QRS_offline_detector_plot_2017_04_07_12_02_15.png -------------------------------------------------------------------------------- /plots/QRS_offline_detector_plot_2017_04_07_12_02_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/c-labpl/qrs_detector/HEAD/plots/QRS_offline_detector_plot_2017_04_07_12_02_16.png -------------------------------------------------------------------------------- /arduino_ecg_sketch/arduinoECGLibrary/eHealth_arduino_v2.4.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/c-labpl/qrs_detector/HEAD/arduino_ecg_sketch/arduinoECGLibrary/eHealth_arduino_v2.4.zip -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | jupyter==1.0.0 2 | jupyter-client==4.4.0 3 | jupyter-console==5.0.0 4 | jupyter-core==4.2.1 5 | matplotlib==2.0.0 6 | numpy==1.11.3 7 | pyserial==2.7 8 | scipy==0.18.1 9 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Michał Sznajder, Marta Łukowska 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. -------------------------------------------------------------------------------- /arduino_ecg_sketch/arduinoECGCode/arduinoECGCode.ino: -------------------------------------------------------------------------------- 1 | /* 2 | * eHealth sensor platform for Arduino and Raspberry from Cooking-hacks. 3 | * 4 | * Copyright (C) Libelium Comunicaciones Distribuidas S.L. 5 | * http://www.libelium.com 6 | * 7 | * This program is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * a 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program. If not, see http://www.gnu.org/licenses/. 19 | * 20 | * Version: 2.0 21 | * Design: David Gascón 22 | * Implementation: Luis Martin & Ahmad Saad 23 | */ 24 | 25 | #include 26 | 27 | extern volatile unsigned long timer0_overflow_count; 28 | 29 | unsigned long time; 30 | 31 | // The setup routine runs once when you press reset: 32 | void setup() { 33 | Serial.begin(115200); 34 | } 35 | 36 | // The loop routine runs over and over again forever: 37 | void loop() { 38 | 39 | float ECG = eHealth.getECG(); 40 | 41 | time=(timer0_overflow_count << 8) + TCNT0; 42 | 43 | // Microseconds conversion. 44 | time=(time*4); 45 | 46 | //Print in a file for simulation 47 | Serial.print(time); 48 | Serial.print(","); 49 | Serial.print(ECG, DEC); 50 | Serial.println(""); 51 | delay(2); 52 | } 53 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | env/ 12 | build/ 13 | develop-eggs/ 14 | dist/ 15 | downloads/ 16 | eggs/ 17 | .eggs/ 18 | lib/ 19 | lib64/ 20 | parts/ 21 | sdist/ 22 | var/ 23 | *.egg-info/ 24 | .installed.cfg 25 | *.egg 26 | 27 | # PyInstaller 28 | # Usually these files are written by a python script from a template 29 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 30 | *.manifest 31 | *.spec 32 | 33 | # Installer logs 34 | pip-log.txt 35 | pip-delete-this-directory.txt 36 | 37 | # Unit test / coverage reports 38 | htmlcov/ 39 | .tox/ 40 | .coverage 41 | .coverage.* 42 | .cache 43 | nosetests.xml 44 | coverage.xml 45 | *,cover 46 | .hypothesis/ 47 | 48 | # Translations 49 | *.mo 50 | *.pot 51 | 52 | # Django stuff: 53 | *.log 54 | 55 | # Sphinx documentation 56 | docs/_build/ 57 | 58 | # PyBuilder 59 | target/ 60 | 61 | #Ipython Notebook 62 | .ipynb_checkpoints 63 | 64 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm 65 | # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 66 | 67 | # User-specific stuff: 68 | .idea/**/workspace.xml 69 | .idea/**/tasks.xml 70 | .idea/dictionaries 71 | 72 | # Sensitive or high-churn files: 73 | .idea/**/dataSources/ 74 | .idea/**/dataSources.ids 75 | .idea/**/dataSources.xml 76 | .idea/**/dataSources.local.xml 77 | .idea/**/sqlDataSources.xml 78 | .idea/**/dynamic.xml 79 | .idea/**/uiDesigner.xml 80 | 81 | # Gradle: 82 | .idea/**/gradle.xml 83 | .idea/**/libraries 84 | 85 | # Mongo Explorer plugin: 86 | .idea/**/mongoSettings.xml 87 | 88 | ## File-based project format: 89 | *.iws 90 | 91 | ## Plugin-specific files: 92 | 93 | # IntelliJ 94 | /out/ 95 | 96 | # mpeltonen/sbt-idea plugin 97 | .idea_modules/ 98 | 99 | # JIRA plugin 100 | atlassian-ide-plugin.xml 101 | 102 | # Crashlytics plugin (for Android Studio and IntelliJ) 103 | com_crashlytics_export_strings.xml 104 | crashlytics.properties 105 | crashlytics-build.properties 106 | fabric.properties 107 | 108 | # Jupyter 109 | MANIFEST 110 | build 111 | dist 112 | _build 113 | docs/man/*.gz 114 | docs/source/api/generated 115 | docs/source/config.rst 116 | docs/gh-pages 117 | notebook/static/components 118 | notebook/static/style/*.min.css* 119 | notebook/static/*/js/built/ 120 | notebook/static/*/built/ 121 | notebook/static/built/ 122 | notebook/static/*/js/main.min.js* 123 | notebook/static/lab/*bundle.js 124 | node_modules 125 | *.py[co] 126 | __pycache__ 127 | *.egg-info 128 | *~ 129 | *.bak 130 | .ipynb_checkpoints 131 | .tox 132 | .DS_Store 133 | \#*# 134 | .#* 135 | .coverage 136 | src 137 | 138 | *.swp 139 | *.map 140 | .idea/ 141 | Read the Docs 142 | config.rst -------------------------------------------------------------------------------- /QRSDetectorOnline.py: -------------------------------------------------------------------------------- 1 | import serial 2 | import numpy as np 3 | from collections import deque 4 | from time import gmtime, strftime 5 | from scipy.signal import butter, lfilter 6 | 7 | LOG_DIR = "logs/" 8 | 9 | 10 | class QRSDetectorOnline(object): 11 | """ 12 | Python Online ECG QRS Detector based on the Pan-Tomkins algorithm. 13 | 14 | Michał Sznajder (Jagiellonian University) - technical contact (msznajder@gmail.com) 15 | Marta Łukowska (Jagiellonian University) 16 | 17 | 18 | The module is online Python implementation of QRS complex detection in the ECG signal based 19 | on the Pan-Tomkins algorithm: Pan J, Tompkins W.J., A real-time QRS detection algorithm, 20 | IEEE Transactions on Biomedical Engineering, Vol. BME-32, No. 3, March 1985, pp. 230-236. 21 | 22 | The QRS complex corresponds to the depolarization of the right and left ventricles of the human heart. It is the most visually obvious part of the ECG signal. QRS complex detection is essential for time-domain ECG signal analyses, namely heart rate variability. It makes it possible to compute inter-beat interval (RR interval) values that correspond to the time between two consecutive R peaks. Thus, a QRS complex detector is an ECG-based heart contraction detector. 23 | 24 | Online version detects QRS complexes in a real-time acquired ECG signal. Therefore, it requires an ECG device to be plugged in and receiving a signal in real-time. 25 | 26 | This implementation of a QRS Complex Detector is by no means a certified medical tool and should not be used in health monitoring. It was created and used for experimental purposes in psychophysiology and psychology. 27 | 28 | You can find more information in module documentation: 29 | https://github.com/c-labpl/qrs_detector 30 | 31 | If you use these modules in a research project, please consider citing it: 32 | https://zenodo.org/record/583770 33 | 34 | If you use these modules in any other project, please refer to MIT open-source license. 35 | 36 | 37 | MIT License 38 | 39 | Copyright (c) 2017 Michał Sznajder, Marta Łukowska 40 | 41 | Permission is hereby granted, free of charge, to any person obtaining a copy 42 | of this software and associated documentation files (the "Software"), to deal 43 | in the Software without restriction, including without limitation the rights 44 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 45 | copies of the Software, and to permit persons to whom the Software is 46 | furnished to do so, subject to the following conditions: 47 | 48 | The above copyright notice and this permission notice shall be included in all 49 | copies or substantial portions of the Software. 50 | 51 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 52 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 53 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 54 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 55 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 56 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 57 | SOFTWARE. 58 | """ 59 | 60 | def __init__(self, port, baud_rate): 61 | """ 62 | QRSDetector class initialisation method. 63 | :param str port: port to which ECG device is connected 64 | :param str baud_rate: baud rate of data received from ECG device 65 | """ 66 | # Configuration parameters. 67 | self.signal_frequency = 250 # Set ECG device frequency in samples per second here. 68 | 69 | self.number_of_samples_stored = 200 # Change proportionally when adjusting frequency (in samples). 70 | self.possible_measurement_upper_limit = 10 # ECG device physiologically upper measurement limit. 71 | 72 | self.filter_lowcut = 0.1 73 | self.filter_highcut = 15.0 74 | self.filter_order = 1 75 | 76 | self.integration_window = 15 # Change proportionally when adjusting frequency (in samples). 77 | 78 | self.findpeaks_limit = 0.35 79 | self.findpeaks_spacing = 50 # Change proportionally when adjusting frequency (in samples). 80 | self.detection_window = 40 # Change proportionally when adjusting frequency (in samples). 81 | 82 | self.refractory_period = 120 # Change proportionally when adjusting frequency (in samples). 83 | self.qrs_peak_filtering_factor = 0.125 84 | self.noise_peak_filtering_factor = 0.125 85 | self.qrs_noise_diff_weight = 0.25 86 | 87 | # Measurements and calculated values. 88 | self.timestamp = 0 89 | self.measurement = 0 90 | self.detected_qrs = 0 91 | self.most_recent_measurements = deque([0], self.number_of_samples_stored) 92 | self.samples_since_last_detected_qrs = 0 93 | self.qrs_peak_value = 0.0 94 | self.noise_peak_value = 0.0 95 | self.threshold_value = 0.0 96 | 97 | # Data logging. 98 | self.log_path = "{:s}QRS_online_detector_log_{:s}.csv".format(LOG_DIR, strftime("%Y_%m_%d_%H_%M_%S", gmtime())) 99 | 100 | # Connect to ECG device and start the detector. 101 | self.connect_to_ecg(port=port, baud_rate=baud_rate) 102 | 103 | """Setting connection to ECG device methods.""" 104 | 105 | def connect_to_ecg(self, port, baud_rate): 106 | """ 107 | Method responsible for connecting to ECG device and starting reading ECG measurements. 108 | :param str port: port to which ECG device is connected 109 | :param str baud_rate: baud rate of data received from ECG device 110 | """ 111 | try: 112 | serial_port = serial.Serial(port, baud_rate) 113 | self.log_data(self.log_path, "timestamp,ecg_measurement,qrs_detected\n") 114 | print("Connected! Starting reading ECG measurements.") 115 | except serial.SerialException: 116 | print("Cannot connect to provided port!") 117 | return 118 | 119 | while True: 120 | raw_measurement = serial_port.readline() 121 | self.process_measurement(raw_measurement=raw_measurement) 122 | 123 | if self.timestamp != 0: 124 | self.log_data(self.log_path, "{:d},{:.10f},{:d}\n".format(int(self.timestamp), 125 | self.measurement, 126 | self.detected_qrs)) 127 | 128 | """ECG measurements data processing methods.""" 129 | 130 | def process_measurement(self, raw_measurement): 131 | """ 132 | Method responsible for parsing and initial processing of ECG measured data sample. 133 | :param str raw_measurement: ECG most recent raw measurement in "timestamp,measurement" format 134 | """ 135 | raw_measurement_split = raw_measurement.decode().rstrip().split(',') 136 | 137 | # Parsing raw ECG data - modify this part in accordance to your device data format. 138 | if len(raw_measurement_split) != 2: 139 | return 140 | try: 141 | self.detected_qrs = 0 142 | self.timestamp = float(raw_measurement_split[0]) 143 | self.measurement = float(raw_measurement_split[1]) 144 | except ValueError: 145 | return 146 | 147 | # Not physiologically possible ECG measurements rejection - filtering out device measurements errors. 148 | if self.measurement > self.possible_measurement_upper_limit: 149 | return 150 | 151 | # Appending measurements to deque used for rotating most recent samples for further analysis and detection. 152 | self.most_recent_measurements.append(self.measurement) 153 | 154 | self.detect_peaks(self.most_recent_measurements) 155 | 156 | def detect_peaks(self, most_recent_measurements): 157 | """ 158 | Method responsible for extracting peaks from recently received ECG measurements through processing. 159 | :param deque most_recent_measurements: most recent ECG measurements array 160 | """ 161 | # Measurements filtering - 0-15 Hz band pass filter. 162 | filtered_ecg_measurements = self.bandpass_filter(most_recent_measurements, lowcut=self.filter_lowcut, 163 | highcut=self.filter_highcut, signal_freq=self.signal_frequency, 164 | filter_order=self.filter_order) 165 | 166 | # Derivative - provides QRS slope information. 167 | differentiated_ecg_measurements = np.ediff1d(filtered_ecg_measurements) 168 | 169 | # Squaring - intensifies values received in derivative. 170 | squared_ecg_measurements = differentiated_ecg_measurements ** 2 171 | 172 | # Moving-window integration. 173 | integrated_ecg_measurements = np.convolve(squared_ecg_measurements, np.ones(self.integration_window)) 174 | 175 | # Fiducial mark - peak detection on integrated measurements. 176 | detected_peaks_indices = self.findpeaks(data=integrated_ecg_measurements, 177 | limit=self.findpeaks_limit, 178 | spacing=self.findpeaks_spacing) 179 | detected_peaks_indices = detected_peaks_indices[ 180 | detected_peaks_indices > self.number_of_samples_stored - self.detection_window] 181 | detected_peaks_values = integrated_ecg_measurements[detected_peaks_indices] 182 | 183 | self.detect_qrs(detected_peaks_values=detected_peaks_values) 184 | 185 | """QRS detection methods.""" 186 | 187 | def detect_qrs(self, detected_peaks_values): 188 | """ 189 | Method responsible for classifying detected ECG measurements peaks either as noise or as QRS complex (heart beat). 190 | :param array detected_peaks_values: detected peaks values array 191 | """ 192 | self.samples_since_last_detected_qrs += 1 193 | 194 | # After a valid QRS complex detection, there is a 200 ms refractory period before next one can be detected. 195 | if self.samples_since_last_detected_qrs > self.refractory_period: 196 | 197 | # Check whether any peak was detected in analysed samples window. 198 | if len(detected_peaks_values) > 0: 199 | 200 | # Take the last one detected in analysed samples window as the most recent. 201 | most_recent_peak_value = detected_peaks_values[-1] 202 | 203 | # Peak must be classified either as a noise peak or a QRS peak. 204 | # To be classified as a QRS peak it must exceed dynamically set threshold value. 205 | if most_recent_peak_value > self.threshold_value: 206 | self.handle_detection() 207 | self.samples_since_last_detected_qrs = 0 208 | 209 | # We mark QRS detection with '1' flag in 'qrs_detected' log column ('0' otherwise). 210 | self.detected_qrs = 1 211 | 212 | # Adjust QRS peak value used later for setting QRS-noise threshold. 213 | self.qrs_peak_value = self.qrs_peak_filtering_factor * most_recent_peak_value + \ 214 | (1 - self.qrs_peak_filtering_factor) * self.qrs_peak_value 215 | else: 216 | # Adjust noise peak value used later for setting QRS-noise threshold. 217 | self.noise_peak_value = self.noise_peak_filtering_factor * most_recent_peak_value + \ 218 | (1 - self.noise_peak_filtering_factor) * self.noise_peak_value 219 | 220 | # Adjust QRS-noise threshold value based on previously detected QRS or noise peaks value. 221 | self.threshold_value = self.noise_peak_value + \ 222 | self.qrs_noise_diff_weight * (self.qrs_peak_value - self.noise_peak_value) 223 | 224 | def handle_detection(self): 225 | """ 226 | Method responsible for generating any kind of response for detected QRS complex. 227 | """ 228 | print("Pulse") 229 | 230 | """Tools methods.""" 231 | 232 | def log_data(self, path, data): 233 | """ 234 | Method responsible for logging measured ECG and detection results to a log file. 235 | :param str path: path to a log file 236 | :param str data: data line to log 237 | """ 238 | with open(path, "a") as fin: 239 | fin.write(data) 240 | 241 | def bandpass_filter(self, data, lowcut, highcut, signal_freq, filter_order): 242 | """ 243 | Method responsible for creating and applying Butterworth filter. 244 | :param deque data: raw data 245 | :param float lowcut: filter lowcut frequency value 246 | :param float highcut: filter highcut frequency value 247 | :param int signal_freq: signal frequency in samples per second (Hz) 248 | :param int filter_order: filter order 249 | :return array: filtered data 250 | """ 251 | """Constructs signal filter and uses it to given data set.""" 252 | nyquist_freq = 0.5 * signal_freq 253 | low = lowcut / nyquist_freq 254 | high = highcut / nyquist_freq 255 | b, a = butter(filter_order, [low, high], btype="band") 256 | y = lfilter(b, a, data) 257 | return y 258 | 259 | def findpeaks(self, data, spacing=1, limit=None): 260 | """ 261 | Janko Slavic peak detection algorithm and implementation. 262 | https://github.com/jankoslavic/py-tools/tree/master/findpeaks 263 | Finds peaks in `data` which are of `spacing` width and >=`limit`. 264 | :param ndarray data: data 265 | :param float spacing: minimum spacing to the next peak (should be 1 or more) 266 | :param float limit: peaks should have value greater or equal 267 | :return array: detected peaks indexes array 268 | """ 269 | len = data.size 270 | x = np.zeros(len + 2 * spacing) 271 | x[:spacing] = data[0] - 1.e-6 272 | x[-spacing:] = data[-1] - 1.e-6 273 | x[spacing:spacing + len] = data 274 | peak_candidate = np.zeros(len) 275 | peak_candidate[:] = True 276 | for s in range(spacing): 277 | start = spacing - s - 1 278 | h_b = x[start: start + len] # before 279 | start = spacing 280 | h_c = x[start: start + len] # central 281 | start = spacing + s + 1 282 | h_a = x[start: start + len] # after 283 | peak_candidate = np.logical_and(peak_candidate, np.logical_and(h_c > h_b, h_c > h_a)) 284 | 285 | ind = np.argwhere(peak_candidate) 286 | ind = ind.reshape(ind.size) 287 | if limit is not None: 288 | ind = ind[data[ind] > limit] 289 | return ind 290 | 291 | 292 | if __name__ == "__main__": 293 | qrs_detector = QRSDetectorOnline(port="/dev/cu.usbmodem14311", baud_rate="115200") 294 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Python Online and Offline ECG QRS Detector based on the Pan-Tomkins algorithm 2 | 3 | ## Authors 4 | * Michał Sznajder (Jagiellonian University) - technical contact (msznajder@gmail.com) 5 | * Marta Łukowska (Jagiellonian University) 6 | 7 | ## Intro 8 | 9 | The modules published in this repository are Python implementations of online and offline QRS complex detectors in ECG signal, based on the Pan-Tomkins algorithm (Pan J., Tompkins W. J., _A real-time QRS detection algorithm,_ IEEE Transactions on Biomedical Engineering, Vol. BME-32, No. 3, March 1985, pp. 230-236). 10 | 11 | The QRS complex corresponds to the depolarization of the right and left ventricles of the human heart. It is the most visually obvious part of the ECG signal. QRS complex detection is essential for time-domain ECG signal analyses, namely heart rate variability. It makes it possible to compute inter-beat interval (RR interval) values that correspond to the time between two consecutive R peaks. Thus, a QRS complex detector is an ECG-based heart contraction detector. 12 | 13 | You can find out more about cardiac cycle and QRS complex [here](https://en.wikipedia.org/wiki/Cardiac_cycle) and [here](https://en.wikipedia.org/wiki/QRS_complex). 14 | 15 | This repository contains two versions of the Pan-Tomkins QRS detection algorithm implementation: 16 | * __QRSDetectorOnline__ - Online version detects QRS complexes in a real-time acquired ECG signal. Therefore, it requires an ECG device to be plugged in and receiving a signal in real-time. 17 | * __QRSDetectorOffline__ - Offline version detects QRS complexes in a pre-recorded ECG signal dataset (e.g. stored in _.csv_ format). 18 | 19 | __This implementation of a QRS Complex Detector is by no means a certified medical tool and should not be used in health monitoring. It was created and used for experimental purposes in psychophysiology and psychology.__ 20 | 21 | ## Algorithm 22 | 23 | The published QRS Detector module is an implementation of the QRS detection algorithm known as the Pan-Tomkins QRS detection algorithm, first described in a paper by Jiapu Pan and Willis J. Tomkins titled _"A Real-Time QRS Detection Algorithm"_ (1985). The full version of the paper is accessible [here](http://www.robots.ox.ac.uk/~gari/teaching/cdt/A3/readings/ECG/Pan+Tompkins.pdf). 24 | 25 | The direct input to the algorithm is a raw ECG signal. The detector processes the signal in two stages: filtering and thresholding. 26 | 27 | First, in the filtering stage each raw ECG measurement is filtered using a cascade of low-pass and high-pass filters that together form a band-pass filter. This filtering mechanism ensures that only parts of the signal related to heart activity can pass through. The filters eliminate most of the measurement noise that could cause false positive detection. The band-pass filtered signal is then differentiated to identify signal segments with high signal change values. These changes are then squared and integrated to make them more distinct. In the last step of the processing stage, the integrated signal is screened by a peak detection algorithm to identify potential QRS complexes within the integrated signal. 28 | 29 | In the next stage, the identified QRS complex candidates are classified by means of dynamically set thresholds, either as QRS complexes or as noise peaks. The thresholds are real-time adjusted: a threshold in a given moment is based on the signal value of the previously detected QRS and noise peaks. The dynamic thresholding accounts for changes in the noise level. The dynamic thresholding and complex filtering ensure sufficient detection sensitivity with relatively few false positive QRS complex detections. 30 | 31 | Importantly, not all of the features presented in the original Pan and Tomkins paper were implemented in this module. Specifically, we decided not to implement supplementary mechanisms proposed in the paper that are not core elements of QRS detection. Therefore, we did not implement the following features: fiducial mark on filtered data, use of another set of thresholds based on the filtered ECG, irregular heart rate detection, and missing QRS complex detection search-back mechanism. Despite the lack of these supplementary features, implementation of the core features proposed by Pan and Tompkins allowed us to achieve a sufficient level of QRS detection. 32 | 33 | ## Dependencies 34 | 35 | Modules published here consist of the following dependencies: 36 | * jupyter 37 | * matplotlib 38 | * numpy 39 | * pyserial 40 | * scipy 41 | 42 | All the dependencies are in the _requirements.py_ file. 43 | 44 | The modules are implemented for use with Python 3.x. However, they are relatively easy to convert to work with Python 2.x: 45 | - import division module with 46 | ``` 47 | from __future__ import division 48 | ``` 49 | - import print function with 50 | ``` 51 | from __future__ import print_function 52 | ``` 53 | - remove the _decode()_ function call when reading data from an ECG device in the online version of the QRS Detector, i.e. use 54 | ``` 55 | raw_measurement.rstrip().split(',') 56 | ``` 57 | instead of 58 | ``` 59 | raw_measurement.decode().rstrip().split(',') 60 | ``` 61 | 62 | ## Repository directory structure 63 | ``` 64 | ├── LICENSE 65 | │ 66 | ├── README.md <- The top-level README for developers using this project. 67 | │ 68 | ├── arduino_ecg_sketch <- E-health ECG device Arduino sketch source code and library. 69 | │ 70 | ├── ecg_data <- Pre-recorded ECG datasets in .csv format. 71 | │ 72 | ├── logs <- Data logged by Online and Offline QRS Detector in .csv format. 73 | │ 74 | ├── plots <- Plots generated by Offline QRS Detector. 75 | │ 76 | ├── qrs_detector_offline_example.ipynb <- Jupyter notebook with Offline QRS Detector usage. 77 | │ 78 | ├── QRSDetectorOffline.py <- Offline QRS Detector module. 79 | │ 80 | ├── QRSDetectorOnline.py <- Online QRS Detector module. 81 | │ 82 | └── requirements.txt <- The requirements file containing module dependencies. 83 | ``` 84 | 85 | ## Installation and usage 86 | 87 | The QRS Detector module was implemented in two separate versions: Online and Offline. Each has a different application and method of use. 88 | 89 | ### Online QRS Detector 90 | 91 | The Online version is designed to work with a directly connected ECG device. As an input it uses an ECG signal received in real-time, detects QRS complexes, and outputs them to be used by other scripts in order to trigger external events. For example, the Online QRS Detector can be used to trigger visual, auditory, or tactile stimuli. It has already been successfully implemented in PsychoPy (Peirce, J. W. (2009). Generating stimuli for neuroscience using PsychoPy (Peirce, J. (2009). _Generating stimuli for neuroscience using PsychoPy._ Frontiers in Neuroinformatics, 2 (January), 1–8. [http://doi.org/10.3389/neuro.11.010.2008](http://doi.org/10.3389/neuro.11.010.2008)) and tested to study cardioceptive (interoceptive) abilities, namely, in Schandry’s heartbeat tracking task (Schandry, R. (1981). _Heart beat perception and emotional experience._ Psychophysiology, 18(4), 483–488. 92 | [http://doi.org/10.1111/j.1469-8986.1981.tb02486.x](http://doi.org/10.1111/j.1469-8986.1981.tb02486.x)) and heartbeat detection training based on that proposed by Schandry and Weitkunat (Schandry, R., & Weitkunat, R. (1990). _Enhancement of heartbeat-related brain potentials through cardiac awareness training._ The International Journal of Neuroscience, 53(2-4), 243–53. [http://dx.doi.org/10.3109/00207459008986611](http://dx.doi.org/10.3109/00207459008986611)). 93 | 94 | The Online version of the QRS Detector module has been implemented to work with the Arduino-based e-Health Sensor Platform V2.0 ECG device. You will find more about this device [here](https://www.cooking-hacks.com/documentation/tutorials/ehealth-biometric-sensor-platform-arduino-raspberry-pi-medical#step4_2).

 95 | 96 | An Arduino e-Health ECG device sketch is also provided in this repository. The sampling rate of the ECG signal acquisition is set to 250 (Hz) samples per second. Measurements are sent in a real-time in a string format, _"timestamp,measurement"_, and have to be parsed by the QRS Detector module. 97 | 98 | To use the Online QRS Detector module, the ECG device with the loaded Arduino sketch has to be connected to a USB port. Then QRS Complex Detector object is initialized with the port name where the ECG device is connected and the measurement baud rate is set. No further calibration or configuration is needed. The Online QRS Detector starts detection immediately after initialization. 99 | 100 | Below is example code of how to run the Online QRS Detector: 101 | 102 | ``` 103 | from QRSDetectorOnline import QRSDetectorOnline 104 | 105 | qrs_detector = QRSDetectorOnline(port="/dev/cu.usbmodem14311", baud_rate="115200") 106 | ``` 107 | 108 | If you want to use the Online QRS Detector in the background with other processes running on the layer above it (e.g. display a visual stimulus or play a tone triggered by the detected QRS complexes), we suggest using a Python multiprocessing mechanism. Multiprocessing offers both local and remote concurrency, effectively side-stepping the Global Interpreter Lock by using sub-processes instead of threads. Here is example code of the many ways to achieve this: 109 | 110 | ``` 111 | from QRSDetectorOnline import QRSDetectorOnline 112 | 113 | qrs_detector_process = subprocess.Popen(["python", "QRSDetectorOnline.py", "/dev/cu.usbmodem14311"], shell=False) 114 | ``` 115 | 116 | Even though the Online QRS Detector was implemented to be used with an Arduino-based e-Health Sensor Platform ECG device with 250 Hz sampling rate and a specified data format, it can be easily modified to be used with any other ECG device, sampling rate or data format. For more information, check the "Customization" section. 117 | 118 | 119 | ### Offline QRS Detector 120 | 121 | The Offline version of the detector works with ECG measurement datasets stored in _.csv_ format. These can be loaded into the detector to perform QRS detection. 122 | 123 | The Offline QRS Detector loads the data, analyses it, and detects QRS complexes in the same way as the online version, but it uses an entire existing dataset instead of real-time measurements directly from an ECG device. 124 | 125 | This module is intended for offline QRS detection in ECG measurements when real-time QRS-based event triggering is not crucial, but when more complex data analysis, visualisation and detection information are needed. It can also be used simply as a debugging tool to verify whether the online version works as intended, or to check the behaviour of QRS Detector intermediate data processing stages. 126 | 127 | The offline version of the QRS Detector module was implemented to work with any kind of ECG measurements data that can be loaded from a file. Unlike the online version, it was not designed to work with some specific device. The Offline QRS Detector expects _"timestamp,measurement"_ data format stored in _.csv_ format and is tuned for measurement data acquired with 250 Hz sampling rate. Both the format of the data and the sampling rate can be easily modified. For more information, check the "Customization" section. 128 | 129 | The Offline QRS Detector requires initialization with a path to the ECG measurements file. The QRS Detector will load the dataset, analyse measurements, and detect QRS complexes. It outputs a detection log file with marked detected QRS complexes. In the file, the detected QRS complexes are marked with a '1' flag in the 'qrs_detected' log data column. Additionally, the Offline QRS Detector stores detection results internally as an ecg_data_detected attribute of an Offline QRS Detector object. Optionally, it produces plots with all intermediate signal-processing steps and saves it to a *.csv* file. 130 | 131 | Below is example code showing how to run the offline version of the QRS Detector module: 132 | 133 | ``` 134 | from QRSDetectorOnline import QRSDetectorOnline 135 | 136 | qrs_detector = QRSDetectorOffline(ecg_data_path="ecg_data/ecg_data_1.csv", verbose=True, log_data=True, plot_data=True, show_plot=False) 137 | ``` 138 | 139 | Check _qrs_detector_offline_example.ipynb_ Jupyter notebook for an example usage of the Offline QRS Detector with generated plots and logs. 140 | 141 | ## Customization 142 | 143 | ### QRSDetectorOnline 144 | The Online QRS Detector module can be easily modified to work with other ECG devices, different sampling rates, and different data formats: 145 | 146 | - QRSDetectorOnline works on a real-time received signal from an ECG device. Data is sent to the module in a _"timestamp,measurement"_ format string. If a different ECG data format is expected, the *process_measurement()* function requires some changes in order to enable correct data parsing. The Online QRS Detector works even if only measurement values without corresponding timestamps are available. 147 | 148 | - QRSDetectorOnline is tuned for 250 Hz sampling rate by default; however, this can be customized by changing seven configuration attributes (marked in the code) according to the desired signal_frequency. 
For example, to change the signal sampling rate from 250 to 125 samples per second, simply divide all the parameters by 2: set *signal_frequency* to 125, *number_of_samples_stored
* to 100 samples, *integration_window* to 8 samples, *findpeaks_spacing* to 25 samples, *detection_window* to 20 samples and *
refractory_period* to 60 samples. 149 | 150 | ### QRSDetectorOffline 151 | The Offline QRS Detector is hardware independent because it uses an ECG measurements dataset instead of real-time acquired ECG signal. Therefore, the only parameters that need to be adjusted are sampling rate and data format: 152 | 153 | - QRSDetectorOffline is by default tuned for a sampling rate of 250 samples per second. It can be customized by changing 4 configuration attributes (marked in the code) according to the desired *signal_frequency*. For example, to change signal sampling rate from 250 to 125 samples per second, divide all parameters by 2: set *signal_frequency* value to 125, *integration_window* to 8 samples, *findpeaks_spacing* to 25 samples and *refractory_period* to 60 samples.

 154 | 155 | - QRSDetectorOffline uses a loaded ECG measurements dataset. Data is expected to be in csv format with each line in *"timestamp,measurement"* format. If a different ECG data format is expected, changes needs to be made in the *load_ecg_data()* function, which loads the dataset, or in the *detect_peaks()* function, which processes measurement values in: 156 | ``` 157 | ecg_measurements = ecg_data[:, 1] 158 | ``` 159 | The algorithm will work fine even if only measurement values without timestamps are available. 160 | 161 | ## Citation information 162 | If you use these modules in a research project, please consider citing it: 163 | 164 | [![DOI](https://zenodo.org/badge/55516257.svg)](https://zenodo.org/badge/latestdoi/55516257) 165 | 166 | If you use these modules in any other project, please refer to MIT open-source license. 167 | 168 | ## Acknowledgements 169 | The following modules and repository were created as a part of the project “Relationship between interoceptive awareness and metacognitive abilities in near-threshold visual perception” supported by the National Science Centre Poland, PRELUDIUM 7, grant no. 2014/13/N/HS6/02963. Special thanks for Michael Timberlake for proofreading. 170 | 171 | -------------------------------------------------------------------------------- /QRSDetectorOffline.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import matplotlib.pyplot as plt 3 | from time import gmtime, strftime 4 | from scipy.signal import butter, lfilter 5 | 6 | 7 | LOG_DIR = "logs/" 8 | PLOT_DIR = "plots/" 9 | 10 | 11 | class QRSDetectorOffline(object): 12 | """ 13 | Python Offline ECG QRS Detector based on the Pan-Tomkins algorithm. 14 | 15 | Michał Sznajder (Jagiellonian University) - technical contact (msznajder@gmail.com) 16 | Marta Łukowska (Jagiellonian University) 17 | 18 | 19 | The module is offline Python implementation of QRS complex detection in the ECG signal based 20 | on the Pan-Tomkins algorithm: Pan J, Tompkins W.J., A real-time QRS detection algorithm, 21 | IEEE Transactions on Biomedical Engineering, Vol. BME-32, No. 3, March 1985, pp. 230-236. 22 | 23 | The QRS complex corresponds to the depolarization of the right and left ventricles of the human heart. It is the most visually obvious part of the ECG signal. QRS complex detection is essential for time-domain ECG signal analyses, namely heart rate variability. It makes it possible to compute inter-beat interval (RR interval) values that correspond to the time between two consecutive R peaks. Thus, a QRS complex detector is an ECG-based heart contraction detector. 24 | 25 | Offline version detects QRS complexes in a pre-recorded ECG signal dataset (e.g. stored in .csv format). 26 | 27 | This implementation of a QRS Complex Detector is by no means a certified medical tool and should not be used in health monitoring. It was created and used for experimental purposes in psychophysiology and psychology. 28 | 29 | You can find more information in module documentation: 30 | https://github.com/c-labpl/qrs_detector 31 | 32 | If you use these modules in a research project, please consider citing it: 33 | https://zenodo.org/record/583770 34 | 35 | If you use these modules in any other project, please refer to MIT open-source license. 36 | 37 | 38 | MIT License 39 | 40 | Copyright (c) 2017 Michał Sznajder, Marta Łukowska 41 | 42 | Permission is hereby granted, free of charge, to any person obtaining a copy 43 | of this software and associated documentation files (the "Software"), to deal 44 | in the Software without restriction, including without limitation the rights 45 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 46 | copies of the Software, and to permit persons to whom the Software is 47 | furnished to do so, subject to the following conditions: 48 | 49 | The above copyright notice and this permission notice shall be included in all 50 | copies or substantial portions of the Software. 51 | 52 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 53 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 54 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 55 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 56 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 57 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 58 | SOFTWARE. 59 | """ 60 | 61 | def __init__(self, ecg_data_path, verbose=True, log_data=False, plot_data=False, show_plot=False): 62 | """ 63 | QRSDetectorOffline class initialisation method. 64 | :param string ecg_data_path: path to the ECG dataset 65 | :param bool verbose: flag for printing the results 66 | :param bool log_data: flag for logging the results 67 | :param bool plot_data: flag for plotting the results to a file 68 | :param bool show_plot: flag for showing generated results plot - will not show anything if plot is not generated 69 | """ 70 | # Configuration parameters. 71 | self.ecg_data_path = ecg_data_path 72 | 73 | self.signal_frequency = 250 # Set ECG device frequency in samples per second here. 74 | 75 | self.filter_lowcut = 0.0 76 | self.filter_highcut = 15.0 77 | self.filter_order = 1 78 | 79 | self.integration_window = 15 # Change proportionally when adjusting frequency (in samples). 80 | 81 | self.findpeaks_limit = 0.35 82 | self.findpeaks_spacing = 50 # Change proportionally when adjusting frequency (in samples). 83 | 84 | self.refractory_period = 120 # Change proportionally when adjusting frequency (in samples). 85 | self.qrs_peak_filtering_factor = 0.125 86 | self.noise_peak_filtering_factor = 0.125 87 | self.qrs_noise_diff_weight = 0.25 88 | 89 | # Loaded ECG data. 90 | self.ecg_data_raw = None 91 | 92 | # Measured and calculated values. 93 | self.filtered_ecg_measurements = None 94 | self.differentiated_ecg_measurements = None 95 | self.squared_ecg_measurements = None 96 | self.integrated_ecg_measurements = None 97 | self.detected_peaks_indices = None 98 | self.detected_peaks_values = None 99 | 100 | self.qrs_peak_value = 0.0 101 | self.noise_peak_value = 0.0 102 | self.threshold_value = 0.0 103 | 104 | # Detection results. 105 | self.qrs_peaks_indices = np.array([], dtype=int) 106 | self.noise_peaks_indices = np.array([], dtype=int) 107 | 108 | # Final ECG data and QRS detection results array - samples with detected QRS are marked with 1 value. 109 | self.ecg_data_detected = None 110 | 111 | # Run whole detector flow. 112 | self.load_ecg_data() 113 | self.detect_peaks() 114 | self.detect_qrs() 115 | 116 | if verbose: 117 | self.print_detection_data() 118 | 119 | if log_data: 120 | self.log_path = "{:s}QRS_offline_detector_log_{:s}.csv".format(LOG_DIR, 121 | strftime("%Y_%m_%d_%H_%M_%S", gmtime())) 122 | self.log_detection_data() 123 | 124 | if plot_data: 125 | self.plot_path = "{:s}QRS_offline_detector_plot_{:s}.png".format(PLOT_DIR, 126 | strftime("%Y_%m_%d_%H_%M_%S", gmtime())) 127 | self.plot_detection_data(show_plot=show_plot) 128 | 129 | """Loading ECG measurements data methods.""" 130 | 131 | def load_ecg_data(self): 132 | """ 133 | Method loading ECG data set from a file. 134 | """ 135 | self.ecg_data_raw = np.loadtxt(self.ecg_data_path, skiprows=1, delimiter=',') 136 | 137 | """ECG measurements data processing methods.""" 138 | 139 | def detect_peaks(self): 140 | """ 141 | Method responsible for extracting peaks from loaded ECG measurements data through measurements processing. 142 | """ 143 | # Extract measurements from loaded ECG data. 144 | ecg_measurements = self.ecg_data_raw[:, 1] 145 | 146 | # Measurements filtering - 0-15 Hz band pass filter. 147 | self.filtered_ecg_measurements = self.bandpass_filter(ecg_measurements, lowcut=self.filter_lowcut, 148 | highcut=self.filter_highcut, signal_freq=self.signal_frequency, 149 | filter_order=self.filter_order) 150 | self.filtered_ecg_measurements[:5] = self.filtered_ecg_measurements[5] 151 | 152 | # Derivative - provides QRS slope information. 153 | self.differentiated_ecg_measurements = np.ediff1d(self.filtered_ecg_measurements) 154 | 155 | # Squaring - intensifies values received in derivative. 156 | self.squared_ecg_measurements = self.differentiated_ecg_measurements ** 2 157 | 158 | # Moving-window integration. 159 | self.integrated_ecg_measurements = np.convolve(self.squared_ecg_measurements, np.ones(self.integration_window)) 160 | 161 | # Fiducial mark - peak detection on integrated measurements. 162 | self.detected_peaks_indices = self.findpeaks(data=self.integrated_ecg_measurements, 163 | limit=self.findpeaks_limit, 164 | spacing=self.findpeaks_spacing) 165 | 166 | self.detected_peaks_values = self.integrated_ecg_measurements[self.detected_peaks_indices] 167 | 168 | """QRS detection methods.""" 169 | 170 | def detect_qrs(self): 171 | """ 172 | Method responsible for classifying detected ECG measurements peaks either as noise or as QRS complex (heart beat). 173 | """ 174 | for detected_peak_index, detected_peaks_value in zip(self.detected_peaks_indices, self.detected_peaks_values): 175 | 176 | try: 177 | last_qrs_index = self.qrs_peaks_indices[-1] 178 | except IndexError: 179 | last_qrs_index = 0 180 | 181 | # After a valid QRS complex detection, there is a 200 ms refractory period before next one can be detected. 182 | if detected_peak_index - last_qrs_index > self.refractory_period or not self.qrs_peaks_indices.size: 183 | # Peak must be classified either as a noise peak or a QRS peak. 184 | # To be classified as a QRS peak it must exceed dynamically set threshold value. 185 | if detected_peaks_value > self.threshold_value: 186 | self.qrs_peaks_indices = np.append(self.qrs_peaks_indices, detected_peak_index) 187 | 188 | # Adjust QRS peak value used later for setting QRS-noise threshold. 189 | self.qrs_peak_value = self.qrs_peak_filtering_factor * detected_peaks_value + \ 190 | (1 - self.qrs_peak_filtering_factor) * self.qrs_peak_value 191 | else: 192 | self.noise_peaks_indices = np.append(self.noise_peaks_indices, detected_peak_index) 193 | 194 | # Adjust noise peak value used later for setting QRS-noise threshold. 195 | self.noise_peak_value = self.noise_peak_filtering_factor * detected_peaks_value + \ 196 | (1 - self.noise_peak_filtering_factor) * self.noise_peak_value 197 | 198 | # Adjust QRS-noise threshold value based on previously detected QRS or noise peaks value. 199 | self.threshold_value = self.noise_peak_value + \ 200 | self.qrs_noise_diff_weight * (self.qrs_peak_value - self.noise_peak_value) 201 | 202 | # Create array containing both input ECG measurements data and QRS detection indication column. 203 | # We mark QRS detection with '1' flag in 'qrs_detected' log column ('0' otherwise). 204 | measurement_qrs_detection_flag = np.zeros([len(self.ecg_data_raw[:, 1]), 1]) 205 | measurement_qrs_detection_flag[self.qrs_peaks_indices] = 1 206 | self.ecg_data_detected = np.append(self.ecg_data_raw, measurement_qrs_detection_flag, 1) 207 | 208 | """Results reporting methods.""" 209 | 210 | def print_detection_data(self): 211 | """ 212 | Method responsible for printing the results. 213 | """ 214 | print("qrs peaks indices") 215 | print(self.qrs_peaks_indices) 216 | print("noise peaks indices") 217 | print(self.noise_peaks_indices) 218 | 219 | def log_detection_data(self): 220 | """ 221 | Method responsible for logging measured ECG and detection results to a file. 222 | """ 223 | with open(self.log_path, "wb") as fin: 224 | fin.write(b"timestamp,ecg_measurement,qrs_detected\n") 225 | np.savetxt(fin, self.ecg_data_detected, delimiter=",") 226 | 227 | def plot_detection_data(self, show_plot=False): 228 | """ 229 | Method responsible for plotting detection results. 230 | :param bool show_plot: flag for plotting the results and showing plot 231 | """ 232 | def plot_data(axis, data, title='', fontsize=10): 233 | axis.set_title(title, fontsize=fontsize) 234 | axis.grid(which='both', axis='both', linestyle='--') 235 | axis.plot(data, color="salmon", zorder=1) 236 | 237 | def plot_points(axis, values, indices): 238 | axis.scatter(x=indices, y=values[indices], c="black", s=50, zorder=2) 239 | 240 | plt.close('all') 241 | fig, axarr = plt.subplots(6, sharex=True, figsize=(15, 18)) 242 | 243 | plot_data(axis=axarr[0], data=self.ecg_data_raw[:, 1], title='Raw ECG measurements') 244 | plot_data(axis=axarr[1], data=self.filtered_ecg_measurements, title='Filtered ECG measurements') 245 | plot_data(axis=axarr[2], data=self.differentiated_ecg_measurements, title='Differentiated ECG measurements') 246 | plot_data(axis=axarr[3], data=self.squared_ecg_measurements, title='Squared ECG measurements') 247 | plot_data(axis=axarr[4], data=self.integrated_ecg_measurements, title='Integrated ECG measurements with QRS peaks marked (black)') 248 | plot_points(axis=axarr[4], values=self.integrated_ecg_measurements, indices=self.qrs_peaks_indices) 249 | plot_data(axis=axarr[5], data=self.ecg_data_detected[:, 1], title='Raw ECG measurements with QRS peaks marked (black)') 250 | plot_points(axis=axarr[5], values=self.ecg_data_detected[:, 1], indices=self.qrs_peaks_indices) 251 | 252 | plt.tight_layout() 253 | fig.savefig(self.plot_path) 254 | 255 | if show_plot: 256 | plt.show() 257 | 258 | plt.close() 259 | 260 | """Tools methods.""" 261 | 262 | def bandpass_filter(self, data, lowcut, highcut, signal_freq, filter_order): 263 | """ 264 | Method responsible for creating and applying Butterworth filter. 265 | :param deque data: raw data 266 | :param float lowcut: filter lowcut frequency value 267 | :param float highcut: filter highcut frequency value 268 | :param int signal_freq: signal frequency in samples per second (Hz) 269 | :param int filter_order: filter order 270 | :return array: filtered data 271 | """ 272 | nyquist_freq = 0.5 * signal_freq 273 | low = lowcut / nyquist_freq 274 | high = highcut / nyquist_freq 275 | b, a = butter(filter_order, [low, high], btype="band") 276 | y = lfilter(b, a, data) 277 | return y 278 | 279 | def findpeaks(self, data, spacing=1, limit=None): 280 | """ 281 | Janko Slavic peak detection algorithm and implementation. 282 | https://github.com/jankoslavic/py-tools/tree/master/findpeaks 283 | Finds peaks in `data` which are of `spacing` width and >=`limit`. 284 | :param ndarray data: data 285 | :param float spacing: minimum spacing to the next peak (should be 1 or more) 286 | :param float limit: peaks should have value greater or equal 287 | :return array: detected peaks indexes array 288 | """ 289 | len = data.size 290 | x = np.zeros(len + 2 * spacing) 291 | x[:spacing] = data[0] - 1.e-6 292 | x[-spacing:] = data[-1] - 1.e-6 293 | x[spacing:spacing + len] = data 294 | peak_candidate = np.zeros(len) 295 | peak_candidate[:] = True 296 | for s in range(spacing): 297 | start = spacing - s - 1 298 | h_b = x[start: start + len] # before 299 | start = spacing 300 | h_c = x[start: start + len] # central 301 | start = spacing + s + 1 302 | h_a = x[start: start + len] # after 303 | peak_candidate = np.logical_and(peak_candidate, np.logical_and(h_c > h_b, h_c > h_a)) 304 | 305 | ind = np.argwhere(peak_candidate) 306 | ind = ind.reshape(ind.size) 307 | if limit is not None: 308 | ind = ind[data[ind] > limit] 309 | return ind 310 | 311 | 312 | if __name__ == "__main__": 313 | qrs_detector = QRSDetectorOffline(ecg_data_path="ecg_data/ecg_data_1.csv", verbose=True, 314 | log_data=True, plot_data=True, show_plot=False) 315 | -------------------------------------------------------------------------------- /ecg_data/ecg_data_2.csv: -------------------------------------------------------------------------------- 1 | timestamp,ecg_measurement 2 | 96813044,2.2336266040 3 | 96816964,2.1798632144 4 | 96820892,2.1505377292 5 | 96824812,2.1603128910 6 | 96828732,2.1554253101 7 | 96832660,2.1163244247 8 | 96836580,2.0576734542 9 | 96840500,2.0381231307 10 | 96844420,2.0527858734 11 | 96848340,2.0674486160 12 | 96852252,2.0283479690 13 | 96856152,1.9648094177 14 | 96860056,1.9208210945 15 | 96863976,1.9159335136 16 | 96867912,1.9208210945 17 | 96871828,1.8768328666 18 | 96875756,1.7986314296 19 | 96879680,1.7448680400 20 | 96883584,1.7155425548 21 | 96887508,1.7057673931 22 | 96891436,1.6520038604 23 | 96895348,1.5591397285 24 | 96899280,1.4809384346 25 | 96903196,1.4467253684 26 | 96907112,1.4369501113 27 | 96911032,1.3978494453 28 | 96914956,1.3440860509 29 | 96918860,1.2952101230 30 | 96922788,1.3000977039 31 | 96926684,1.3343108892 32 | 96930604,1.3440860509 33 | 96934516,1.3489736318 34 | 96938444,1.3294233083 35 | 96942364,1.3782991170 36 | 96946284,1.4222873687 37 | 96950200,1.4516129493 38 | 96954120,1.4369501113 39 | 96958036,1.4320625305 40 | 96961960,1.4565005302 41 | 96965872,1.4907135963 42 | 96969780,1.5053763389 43 | 96973696,1.4613881111 44 | 96977628,1.4125122070 45 | 96981548,1.4076246261 46 | 96985476,1.4467253684 47 | 96989408,1.4809384346 48 | 96993324,1.4760508537 49 | 96997236,1.4711632728 50 | 97001160,1.4907135963 51 | 97005084,1.5444769859 52 | 97008996,1.5982404708 53 | 97012908,1.5835777282 54 | 97016828,1.5591397285 55 | 97020756,1.5786901473 56 | 97024676,1.6324535369 57 | 97028604,1.6911046504 58 | 97032516,1.6959922313 59 | 97036444,1.6764417648 60 | 97040364,1.6813293457 61 | 97044296,1.7155425548 62 | 97048216,1.7448680400 63 | 97052120,1.7253177165 64 | 97056048,1.6911046504 65 | 97059968,1.6911046504 66 | 97063880,1.7302052974 67 | 97067796,1.7741935253 68 | 97071724,1.7693059444 69 | 97075644,1.7350928783 70 | 97079564,1.7595307826 71 | 97083480,1.8719452857 72 | 97087396,2.0381231307 73 | 97091316,2.2482893466 74 | 97095244,2.4828934669 75 | 97099156,2.7468230724 76 | 97103088,2.9960899353 77 | 97106996,3.0987291336 78 | 97110912,2.9178886413 79 | 97114836,2.5171065330 80 | 97118756,2.0185728073 81 | 97122668,1.5053763389 82 | 97126584,1.1094819307 83 | 97130492,0.8015640258 84 | 97134396,0.5767350673 85 | 97138308,0.4545454502 86 | 97142212,0.4349951267 87 | 97146124,0.4692081928 88 | 97150020,0.4887585639 89 | 97153924,0.4594330310 90 | 97157828,0.4105571746 91 | 97161740,0.3861192512 92 | 97165660,0.3763440847 93 | 97169580,0.3714565038 94 | 97173492,0.3225806236 95 | 97177404,0.2639296054 96 | 97181316,0.2394916772 97 | 97185236,0.2297165155 98 | 97189148,0.2443792819 99 | 97193060,0.2248289346 100 | 97196972,0.1857282543 101 | 97200900,0.1808406734 102 | 97204812,0.2199413537 103 | 97208732,0.2492668628 104 | 97212652,0.2443792819 105 | 97216572,0.2199413537 106 | 97220484,0.2248289346 107 | 97224404,0.2834799575 108 | 97228316,0.3274682044 109 | 97232228,0.3665689229 110 | 97236132,0.3861192512 111 | 97240036,0.4398827075 112 | 97243936,0.5083088874 113 | 97247836,0.6109481811 114 | 97251748,0.7086998939 115 | 97255660,0.7771260738 116 | 97259568,0.8553275108 117 | 97263476,0.9775171279 118 | 97267392,1.1094819307 119 | 97271308,1.1974585056 120 | 97275228,1.2512218952 121 | 97279148,1.2952101230 122 | 97283056,1.3734115362 123 | 97286992,1.4760508537 124 | 97290900,1.5493645668 125 | 97294820,1.5738025665 126 | 97298740,1.5982404708 127 | 97302652,1.6471162796 128 | 97306584,1.7106549739 129 | 97310500,1.7546432018 130 | 97314420,1.7546432018 131 | 97318340,1.7644183635 132 | 97322272,1.8084066390 133 | 97326168,1.8621701240 134 | 97330072,1.8963831901 135 | 97333988,1.8817204475 136 | 97337912,1.8572825431 137 | 97341840,1.8670577049 138 | 97345748,1.8866080284 139 | 97349668,1.8768328666 140 | 97353580,1.8230694770 141 | 97357500,1.7595307826 142 | 97361424,1.7302052974 143 | 97365332,1.7350928783 144 | 97369252,1.6959922313 145 | 97373168,1.6226783752 146 | 97377092,1.5298142433 147 | 97381012,1.4613881111 148 | 97384940,1.4320625305 149 | 97388860,1.4076246261 150 | 97392780,1.3440860509 151 | 97396676,1.2658846378 152 | 97400604,1.2121212482 153 | 97404532,1.1974585056 154 | 97408444,1.1779080629 155 | 97412356,1.1192570924 156 | 97416264,1.0361680984 157 | 97420164,0.9628542900 158 | 97424068,0.9286412239 159 | 97427988,0.9042033195 160 | 97431892,0.8406646728 161 | 97435804,0.7575757503 162 | 97439708,0.6940371513 163 | 97443628,0.6793744087 164 | 97447540,0.6793744087 165 | 97451452,0.6549364089 166 | 97455356,0.6060606002 167 | 97459240,0.5767350673 168 | 97463140,0.6011730194 169 | 97467044,0.6451612472 170 | 97470964,0.6842619895 171 | 97474884,0.6891495704 172 | 97478796,0.7184750556 173 | 97482700,0.8064516067 174 | 97486612,0.8846529960 175 | 97490516,0.9335288047 176 | 97494428,0.9530791282 177 | 97498340,0.9481915473 178 | 97502256,0.9726295471 179 | 97506156,0.9921798706 180 | 97510060,0.9726295471 181 | 97513980,0.8846529960 182 | 97517884,0.7869012832 183 | 97521796,0.7086998939 184 | 97525692,0.6549364089 185 | 97529604,0.5913978099 186 | 97533516,0.4887585639 187 | 97537428,0.3567937374 188 | 97541348,0.2639296054 189 | 97545260,0.2003910064 190 | 97549148,0.1417399787 191 | 97553060,0.0928641223 192 | 97556980,0.0537634420 193 | 97560892,0.0342130994 194 | 97564804,0.0146627559 195 | 97568708,0.0244379281 196 | 97572628,0.0048875851 197 | 97576500,0.0000000000 198 | 97580324,0.0000000000 199 | 97584172,0.0097751703 200 | 97588060,0.0244379281 201 | 97591980,0.0195503416 202 | 97595900,0.0146627559 203 | 97599812,0.0488758563 204 | 97603724,0.1319648027 205 | 97607628,0.2248289346 206 | 97611548,0.3030303001 207 | 97615444,0.3665689229 208 | 97619364,0.4496578693 209 | 97623276,0.5718474864 210 | 97627176,0.7038123130 211 | 97631076,0.8064516067 212 | 97634988,0.8699902534 213 | 97638900,0.9384163856 214 | 97642816,1.0361680984 215 | 97646720,1.1485825777 216 | 97650644,1.2365591526 217 | 97654572,1.2658846378 218 | 97658492,1.2805473804 219 | 97662404,1.3294233083 220 | 97666324,1.3782991170 221 | 97670244,1.3831867027 222 | 97674148,1.3489736318 223 | 97678068,1.3049852848 224 | 97681988,1.2903225421 225 | 97685908,1.3000977039 226 | 97689812,1.3098728656 227 | 97693728,1.2463343143 228 | 97697648,1.1876833438 229 | 97701568,1.1681329011 230 | 97705488,1.1876833438 231 | 97709412,1.1827956390 232 | 97713328,1.1339198350 233 | 97717244,1.0752688646 234 | 97721144,1.0557184219 235 | 97725056,1.0703812837 236 | 97728972,1.0850440216 237 | 97732872,1.0752688646 238 | 97736788,1.0459432601 239 | 97740696,1.0508308410 240 | 97744600,1.0948191833 241 | 97748520,1.1290322542 242 | 97752444,1.1192570924 243 | 97756364,1.0850440216 244 | 97760272,1.0801564407 245 | 97764168,1.1094819307 246 | 97768072,1.1339198350 247 | 97771996,1.1143695116 248 | 97775920,1.0557184219 249 | 97779840,1.0166177749 250 | 97783756,0.9970674514 251 | 97787668,0.9921798706 252 | 97791580,0.9530791282 253 | 97795500,0.8846529960 254 | 97799412,0.8504399299 255 | 97803316,0.8455523490 256 | 97807212,0.8699902534 257 | 97811124,0.8699902534 258 | 97815028,0.8308895111 259 | 97818940,0.8064516067 260 | 97822844,0.8211143493 261 | 97826756,0.8651026725 262 | 97830668,0.9042033195 263 | 97834572,0.8895405769 264 | 97838476,0.8993157386 265 | 97842396,0.9530791282 266 | 97846304,1.0410556793 267 | 97850204,1.0850440216 268 | 97854112,1.0899316024 269 | 97858020,1.1192570924 270 | 97861940,1.2267839908 271 | 97865860,1.4320625305 272 | 97869772,1.6911046504 273 | 97873688,1.9892473220 274 | 97877604,2.3020527362 275 | 97881524,2.6197457313 276 | 97885452,2.8299119949 277 | 97889372,2.7761485576 278 | 97893292,2.4535679817 279 | 97897216,1.9745845794 280 | 97901136,1.4956011772 281 | 97905052,1.0899316024 282 | 97908964,0.8260019302 283 | 97912864,0.6695992469 284 | 97916772,0.6353860855 285 | 97920684,0.7038123130 286 | 97924588,0.8553275108 287 | 97928496,1.0215053558 288 | 97932408,1.1388074159 289 | 97936324,1.2023460865 290 | 97940228,1.2463343143 291 | 97944148,1.3098728656 292 | 97948064,1.3734115362 293 | 97951988,1.3929618644 294 | 97955912,1.3734115362 295 | 97959836,1.3636363744 296 | 97963764,1.3782991170 297 | 97967684,1.4173997879 298 | 97971612,1.4173997879 299 | 97975540,1.3880742835 300 | 97979460,1.3831867027 301 | 97983372,1.4027370452 302 | 97987292,1.4467253684 303 | 97991216,1.4565005302 304 | 97995124,1.4320625305 305 | 97999036,1.4173997879 306 | 98002964,1.4662756919 307 | 98006884,1.5249266624 308 | 98010812,1.5689149856 309 | 98014740,1.5689149856 310 | 98018668,1.5689149856 311 | 98022592,1.6129032135 312 | 98026516,1.6715541839 313 | 98030436,1.6911046504 314 | 98034348,1.6617790222 315 | 98038268,1.6422286987 316 | 98042192,1.6715541839 317 | 98046124,1.7204301357 318 | 98050032,1.7399804592 319 | 98053952,1.7155425548 320 | 98057880,1.6911046504 321 | 98061800,1.7106549739 322 | 98065716,1.7595307826 323 | 98069636,1.7937438488 324 | 98073556,1.7888562679 325 | 98077476,1.7741935253 326 | 98081408,1.8084066390 327 | 98085312,1.8719452857 328 | 98089228,1.9305962562 329 | 98093144,1.9257086753 330 | 98097048,1.9257086753 331 | 98100968,1.9599218368 332 | 98104884,2.0332355499 333 | 98108804,2.0967741012 334 | 98112724,2.1016616821 335 | 98116652,2.0869989395 336 | 98120564,2.0967741012 337 | 98124484,2.1456501483 338 | 98128404,2.1847507953 339 | 98132324,2.1749756336 340 | 98136252,2.1212120056 341 | 98140156,2.0967741012 342 | 98144068,2.1114368438 343 | 98147996,2.0967741012 344 | 98151908,2.0430107116 345 | 98155824,1.9501466751 346 | 98159748,1.8817204475 347 | 98163664,1.8475073814 348 | 98167584,1.8377322196 349 | 98171508,1.7937438488 350 | 98175440,1.7253177165 351 | 98179364,1.7057673931 352 | 98183296,1.7106549739 353 | 98187200,1.7448680400 354 | 98191108,1.7546432018 355 | 98195032,1.7302052974 356 | 98198952,1.7302052974 357 | 98202868,1.7741935253 358 | 98206800,1.8426198005 359 | 98210712,1.8866080284 360 | 98214628,1.8914956092 361 | 98218548,1.8914956092 362 | 98222472,1.9403715133 363 | 98226396,2.0087976455 364 | 98230308,2.0527858734 365 | 98234212,2.0527858734 366 | 98238132,2.0527858734 367 | 98242044,2.0869989395 368 | 98245964,2.1407625675 369 | 98249892,2.1798632144 370 | 98253812,2.1749756336 371 | 98257740,2.1652004718 372 | 98261660,2.1896383762 373 | 98265588,2.2385141849 374 | 98269516,2.2678396701 375 | 98273444,2.2385141849 376 | 98277364,2.1896383762 377 | 98281292,2.1798632144 378 | 98285212,2.1994135379 379 | 98289140,2.2091886997 380 | 98293052,2.1798632144 381 | 98296980,2.1212120056 382 | 98300892,2.0918865203 383 | 98304804,2.1114368438 384 | 98308732,2.1163244247 385 | 98312660,2.0674486160 386 | 98316572,2.0087976455 387 | 98320480,1.9892473220 388 | 98324392,1.9892473220 389 | 98328308,2.0087976455 390 | 98332216,1.9892473220 391 | 98336132,1.9501466751 392 | 98340048,1.9354838371 393 | 98343972,1.9696969985 394 | 98347888,1.9843597412 395 | 98351812,1.9696969985 396 | 98355736,1.9159335136 397 | 98359664,1.8866080284 398 | 98363576,1.9012707710 399 | 98367484,1.9305962562 400 | 98371408,1.9208210945 401 | 98375324,1.8817204475 402 | 98379240,1.8719452857 403 | 98383156,1.8817204475 404 | 98387072,1.9305962562 405 | 98390984,1.9403715133 406 | 98394904,1.9159335136 407 | 98398832,1.9012707710 408 | 98402744,1.9354838371 409 | 98406672,1.9794721603 410 | 98410584,1.9941349029 411 | 98414492,1.9696969985 412 | 98418416,1.9550342559 413 | 98422336,1.9843597412 414 | 98426260,2.0430107116 415 | 98430164,2.0723361968 416 | 98434076,2.0527858734 417 | 98437988,2.0381231307 418 | 98441900,2.0625610351 419 | 98445820,2.1065492630 420 | 98449740,2.1309874057 421 | 98453660,2.1065492630 422 | 98457572,2.0869989395 423 | 98461492,2.0918865203 424 | 98465404,2.1456501483 425 | 98469324,2.1847507953 426 | 98473236,2.1749756336 427 | 98477148,2.1505377292 428 | 98481052,2.1652004718 429 | 98484972,2.1945259571 430 | 98488900,2.2287390232 431 | 98492820,2.2091886997 432 | 98496732,2.1700880527 433 | 98500644,2.1652004718 434 | 98504556,2.2091886997 435 | 98508476,2.2531769275 436 | 98512404,2.2336266040 437 | 98516324,2.1994135379 438 | 98520244,2.2043011188 439 | 98524152,2.2531769275 440 | 98528068,2.2873899936 441 | 98531988,2.2727272510 442 | 98535908,2.2238514423 443 | 98539836,2.1994135379 444 | 98543764,2.2336266040 445 | 98547676,2.2580645084 446 | 98551588,2.2482893466 447 | 98555508,2.1994135379 448 | 98559436,2.1652004718 449 | 98563356,2.1603128910 450 | 98567268,2.1700880527 451 | 98571164,2.1309874057 452 | 98575068,2.0527858734 453 | 98578992,1.9843597412 454 | 98582920,1.9648094177 455 | 98586840,1.9696969985 456 | 98590756,1.9501466751 457 | 98594680,1.8963831901 458 | 98598596,1.8523949623 459 | 98602528,1.8572825431 460 | 98606456,1.8621701240 461 | 98610376,1.8670577049 462 | 98614292,1.8328446388 463 | 98618204,1.8132943153 464 | 98622132,1.8426198005 465 | 98626048,1.8963831901 466 | 98629968,1.9257086753 467 | 98633892,1.8914956092 468 | 98637808,1.8670577049 469 | 98641716,1.8914956092 470 | 98645640,1.9941349029 471 | 98649556,2.1456501483 472 | 98653476,2.3313782215 473 | 98657404,2.5708699226 474 | 98661316,2.8885631561 475 | 98665236,3.2306940555 476 | 98669148,3.4799609184 477 | 98673064,3.4604105949 478 | 98676972,3.1769306659 479 | 98680884,2.7614858150 480 | 98684796,2.2678396701 481 | 98688720,1.8230694770 482 | 98692628,1.4418377876 483 | 98696556,1.2023460865 484 | 98700476,1.1241446733 485 | 98704400,1.1876833438 486 | 98708316,1.3098728656 487 | 98712228,1.4125122070 488 | 98716148,1.4858260154 489 | 98720060,1.5493645668 490 | 98723988,1.6275659561 491 | 98727908,1.6764417648 492 | 98731836,1.6911046504 493 | 98735748,1.6617790222 494 | 98739676,1.6471162796 495 | 98743608,1.6715541839 496 | 98747532,1.7057673931 497 | 98751452,1.7057673931 498 | 98755372,1.6568914413 499 | 98759300,1.6275659561 500 | 98763220,1.6422286987 501 | 98767140,1.6862169265 502 | 98771056,1.6911046504 503 | 98774964,1.6617790222 504 | 98778884,1.6568914413 505 | 98782812,1.6911046504 506 | 98786728,1.7448680400 507 | 98790632,1.7790811061 508 | 98794544,1.7693059444 509 | 98798452,1.7644183635 510 | 98802384,1.7888562679 511 | 98806312,1.8279570579 512 | 98810224,1.8426198005 513 | 98814132,1.8181818962 514 | 98818044,1.7986314296 515 | 98821972,1.8181818962 516 | 98825900,1.8523949623 517 | 98829832,1.8719452857 518 | 98833760,1.8377322196 519 | 98837684,1.8035190582 520 | 98841596,1.7986314296 521 | 98845528,1.8377322196 522 | 98849456,1.8670577049 523 | 98853368,1.8523949623 524 | 98857292,1.8181818962 525 | 98861220,1.8328446388 526 | 98865140,1.8866080284 527 | 98869048,1.9305962562 528 | 98872968,1.9305962562 529 | 98876888,1.9012707710 530 | 98880800,1.9208210945 531 | 98884704,1.9599218368 532 | 98888624,1.9892473220 533 | 98892544,1.9599218368 534 | 98896464,1.8866080284 535 | 98900376,1.8426198005 536 | 98904296,1.8377322196 537 | 98908216,1.8328446388 538 | 98912132,1.7839686870 539 | 98916040,1.7008798122 540 | 98919956,1.6471162796 541 | 98923884,1.6373411178 542 | 98927812,1.6324535369 543 | 98931740,1.5982404708 544 | 98935644,1.5151515007 545 | 98939564,1.4613881111 546 | 98943492,1.4418377876 547 | 98947424,1.4271749496 548 | 98951348,1.3685239553 549 | 98955260,1.2707722187 550 | 98959180,1.1925709247 551 | 98963092,1.1534701585 552 | 98967008,1.1339198350 553 | 98970932,1.1045943498 554 | 98974840,1.0215053558 555 | 98978748,0.9677418708 556 | 98982660,0.9579667091 557 | 98986572,0.9775171279 558 | 98990492,0.9824047088 559 | 98994396,0.9237536430 560 | 98998308,0.8748778343 561 | 99002212,0.8797654151 562 | 99006132,0.9188660621 563 | 99010036,0.9286412239 564 | 99013956,0.9090909004 565 | 99017836,0.8895405769 566 | 99021740,0.9042033195 567 | 99025644,0.9530791282 568 | 99029556,0.9921798706 569 | 99033468,0.9970674514 570 | 99037380,0.9872922897 571 | 99041296,1.0166177749 572 | 99045196,1.0752688646 573 | 99049100,1.1192570924 574 | 99053016,1.1290322542 575 | 99056940,1.0997067642 576 | 99060840,1.1094819307 577 | 99064744,1.1485825777 578 | 99068668,1.1925709247 579 | 99072588,1.2023460865 580 | 99076508,1.1925709247 581 | 99080428,1.2023460865 582 | 99084340,1.2658846378 583 | 99088252,1.3343108892 584 | 99092168,1.3587487936 585 | 99096084,1.3343108892 586 | 99100004,1.3294233083 587 | 99103924,1.3636363744 588 | 99107860,1.4027370452 589 | 99111772,1.3831867027 590 | 99115700,1.3343108892 591 | 99119628,1.3147605657 592 | 99123556,1.3343108892 593 | 99127480,1.3587487936 594 | 99131404,1.3538612127 595 | 99135324,1.3049852848 596 | 99139236,1.2756597995 597 | 99143156,1.2903225421 598 | 99147076,1.3196481466 599 | 99151012,1.3147605657 600 | 99154924,1.2707722187 601 | 99158844,1.2072336673 602 | 99162764,1.2023460865 603 | 99166676,1.2267839908 604 | 99170588,1.2365591526 605 | 99174508,1.1974585056 606 | 99178420,1.1632453203 607 | 99182340,1.1534701585 608 | 99186248,1.1876833438 609 | 99190164,1.1974585056 610 | 99194072,1.1583577394 611 | 99197996,1.1192570924 612 | 99201916,1.1192570924 613 | 99205832,1.1730204820 614 | 99209748,1.2072336673 615 | 99213668,1.2023460865 616 | 99217588,1.1779080629 617 | 99221488,1.1876833438 618 | 99225412,1.2267839908 619 | 99229332,1.2707722187 620 | 99233244,1.2609970569 621 | 99237152,1.2365591526 622 | 99241068,1.2463343143 623 | 99244988,1.2805473804 624 | 99248900,1.2952101230 625 | 99252820,1.2805473804 626 | 99256732,1.2316715717 627 | 99260660,1.2316715717 628 | 99264588,1.2854349613 629 | 99268512,1.3391984701 630 | 99272436,1.3538612127 631 | 99276364,1.3343108892 632 | 99280292,1.3391984701 633 | 99284212,1.3782991170 634 | 99288116,1.4271749496 635 | 99292040,1.4369501113 636 | 99295964,1.4076246261 637 | 99299892,1.4076246261 638 | 99303816,1.4662756919 639 | 99307740,1.5395894050 640 | 99311652,1.5640274047 641 | 99315564,1.5444769859 642 | 99319484,1.5444769859 643 | 99323412,1.5786901473 644 | 99327332,1.6275659561 645 | 99331252,1.6520038604 646 | 99335156,1.6422286987 647 | 99339076,1.6275659561 648 | 99343004,1.6422286987 649 | 99346924,1.6666666030 650 | 99350844,1.6568914413 651 | 99354764,1.6031280517 652 | 99358676,1.5542521476 653 | 99362604,1.5542521476 654 | 99366532,1.5835777282 655 | 99370460,1.5982404708 656 | 99374372,1.5835777282 657 | 99378300,1.5640274047 658 | 99382204,1.5835777282 659 | 99386132,1.6373411178 660 | 99390056,1.6715541839 661 | 99393980,1.6520038604 662 | 99397892,1.6275659561 663 | 99401812,1.6422286987 664 | 99405736,1.6862169265 665 | 99409664,1.7106549739 666 | 99413580,1.6911046504 667 | 99417500,1.6568914413 668 | 99421432,1.6715541839 669 | 99425348,1.7204301357 670 | 99429256,1.8084066390 671 | 99433164,1.9208210945 672 | 99437068,2.0918865203 673 | 99440980,2.3655912876 674 | 99444912,2.7321603298 675 | 99448828,3.0596284866 676 | 99452752,3.2453567981 677 | 99456680,3.1867058277 678 | 99460600,2.9374389648 679 | 99464516,2.5610947608 680 | 99468428,2.1163244247 681 | 99472356,1.6813293457 682 | 99476284,1.3343108892 683 | 99480200,1.1436949968 684 | 99484112,1.1339198350 685 | 99488036,1.2365591526 686 | 99491956,1.3440860509 687 | 99495864,1.4320625305 688 | 99499780,1.5298142433 689 | 99503708,1.6422286987 690 | 99507636,1.7350928783 691 | 99511556,1.7644183635 692 | 99515480,1.7399804592 693 | 99519396,1.7350928783 694 | 99523320,1.7448680400 695 | 99527220,1.7350928783 696 | 99531140,1.6862169265 697 | 99535064,1.5933528900 698 | 99538980,1.5102639198 699 | 99542892,1.4711632728 700 | 99546820,1.4467253684 701 | 99550748,1.3978494453 702 | 99554668,1.3049852848 703 | 99558588,1.2072336673 704 | 99562504,1.1485825777 705 | 99566428,1.1192570924 706 | 99570348,1.0752688646 707 | 99574256,1.0068426132 708 | 99578176,0.9384163856 709 | 99582084,0.9188660621 710 | 99585988,0.9188660621 711 | 99589900,0.9188660621 712 | 99593812,0.8895405769 713 | 99597716,0.8748778343 714 | 99601636,0.8651026725 715 | 99605552,0.9090909004 716 | 99609436,0.9481915473 717 | 99613356,0.9530791282 718 | 99617268,0.9237536430 719 | 99621180,0.9335288047 720 | 99625080,1.0019550323 721 | 99628980,1.0752688646 722 | 99632888,1.0801564407 723 | 99636792,1.0703812837 724 | 99640704,1.0899316024 725 | 99644616,1.1436949968 726 | 99648536,1.2170088291 727 | 99652444,1.2170088291 728 | 99656356,1.2023460865 729 | 99660268,1.2072336673 730 | 99664180,1.2561094760 731 | 99668084,1.3000977039 732 | 99671980,1.3147605657 733 | 99675900,1.2952101230 734 | 99679820,1.3000977039 735 | 99683728,1.3587487936 736 | 99687652,1.4027370452 737 | 99691568,1.4222873687 738 | 99695484,1.3978494453 739 | 99699404,1.3880742835 740 | 99703328,1.4173997879 741 | 99707248,1.4565005302 742 | 99711156,1.4760508537 743 | 99715064,1.4271749496 744 | 99718988,1.3929618644 745 | 99722908,1.3929618644 746 | 99726828,1.4076246261 747 | 99730748,1.3831867027 748 | 99734668,1.3147605657 749 | 99738580,1.2561094760 750 | 99742492,1.2414467334 751 | 99746420,1.2658846378 752 | 99750340,1.2658846378 753 | 99754252,1.2365591526 754 | 99758168,1.2121212482 755 | 99762084,1.2365591526 756 | 99766012,1.3000977039 757 | 99769916,1.3538612127 758 | 99773856,1.3685239553 759 | 99777780,1.3929618644 760 | 99781704,1.4662756919 761 | 99785620,1.5640274047 762 | 99789532,1.6568914413 763 | 99793460,1.6959922313 764 | 99797392,1.7057673931 765 | 99801312,1.7399804592 766 | 99805228,1.7937438488 767 | 99809148,1.8377322196 768 | 99813072,1.8377322196 769 | 99816996,1.8230694770 770 | 99820920,1.8475073814 771 | 99824840,1.9061583518 772 | 99828756,1.9501466751 773 | 99832680,1.9599218368 774 | 99836608,1.9501466751 775 | 99840536,1.9599218368 776 | 99844452,2.0087976455 777 | 99848364,2.0527858734 778 | 99852268,2.0527858734 779 | 99856184,2.0283479690 780 | 99860092,2.0185728073 781 | 99864012,2.0576734542 782 | 99867932,2.0967741012 783 | 99871836,2.0869989395 784 | 99875740,2.0478982925 785 | 99879652,2.0234603881 786 | 99883564,2.0527858734 787 | 99887484,2.1065492630 788 | 99891404,2.1163244247 789 | 99895332,2.0772237777 790 | 99899236,2.0527858734 791 | 99903156,2.0821113586 792 | 99907076,2.1065492630 793 | 99910996,2.1016616821 794 | 99914916,2.0576734542 795 | 99918828,2.0283479690 796 | 99922740,2.0430107116 797 | 99926652,2.0821113586 798 | 99930572,2.1016616821 799 | 99934492,2.0576734542 800 | 99938404,2.0332355499 801 | 99942316,2.0674486160 802 | 99946220,2.1309874057 803 | 99950124,2.1749756336 804 | 99954052,2.1652004718 805 | 99957972,2.1260998249 806 | 99961892,2.1456501483 807 | 99965804,2.1945259571 808 | 99969732,2.2336266040 809 | 99973644,2.2189638614 810 | 99977564,2.1945259571 811 | 99981492,2.2043011188 812 | 99985404,2.2482893466 813 | 99989332,2.2922775745 814 | 99993252,2.2580645084 815 | 99997164,2.2238514423 816 | 100001084,2.2189638614 817 | 100005044,2.2678396701 818 | 100009004,2.2776148319 819 | 100012956,2.2385141849 820 | 100016924,2.1798632144 821 | 100020892,2.1603128910 822 | 100024844,2.1798632144 823 | 100028804,2.2140762805 824 | 100032756,2.1798632144 825 | 100036716,2.1358749866 826 | 100040676,2.1163244247 827 | 100044644,2.1358749866 828 | 100048604,2.1603128910 829 | 100052556,2.1407625675 830 | 100056516,2.0967741012 831 | 100060468,2.0918865203 832 | 100064420,2.1163244247 833 | 100068384,2.1407625675 834 | 100072340,2.1065492630 835 | 100076292,2.0478982925 836 | 100080244,2.0332355499 837 | 100084196,2.0478982925 838 | 100088156,2.0674486160 839 | 100092100,2.0332355499 840 | 100096056,1.9696969985 841 | 100100004,1.9110459327 842 | 100103968,1.9061583518 843 | 100107928,1.9208210945 844 | 100111884,1.8768328666 845 | 100115844,1.8181818962 846 | 100119812,1.7888562679 847 | 100123776,1.8084066390 848 | 100127712,1.8475073814 849 | 100131672,1.8523949623 850 | 100135636,1.8181818962 851 | 100139604,1.8035190582 852 | 100143560,1.8377322196 853 | 100147524,1.8768328666 854 | 100151488,1.8719452857 855 | 100155448,1.8523949623 856 | 100159404,1.8132943153 857 | 100163376,1.8426198005 858 | 100167328,1.8963831901 859 | 100171276,1.9110459327 860 | 100175232,1.9061583518 861 | 100179188,1.9501466751 862 | 100183132,2.1016616821 863 | 100187084,2.3216030597 864 | 100191036,2.5904202461 865 | 100194996,2.8787879943 866 | 100198956,3.1769306659 867 | 100202916,3.4555230140 868 | 100206876,3.5826001167 869 | 100210836,3.4115347862 870 | 100214804,3.0205278396 871 | 100218748,2.5317692756 872 | 100222708,2.1016616821 873 | 100226676,1.7937438488 874 | 100230640,1.5933528900 875 | 100234592,1.4858260154 876 | 100238548,1.5053763389 877 | 100242500,1.6422286987 878 | 100246456,1.8377322196 879 | 100250424,1.9990224838 880 | 100254380,2.0967741012 881 | 100258340,2.1652004718 882 | 100262284,2.2434017658 883 | 100266236,2.3411533832 884 | 100270196,2.4242424964 885 | 100274140,2.4731183052 886 | 100278112,2.4975562095 887 | 100282068,2.5562071800 888 | 100286020,2.6441838741 889 | 100289992,2.7028348445 890 | 100293948,2.7077224254 891 | 100297908,2.7126100063 892 | 100301868,2.7468230724 893 | 100305820,2.8054740905 894 | 100309764,2.8250244140 895 | 100313724,2.7908113002 896 | 100317676,2.7370479106 897 | 100321636,2.7223851680 898 | 100325600,2.7419354915 899 | 100329556,2.7517106533 900 | 100333516,2.7126100063 901 | 100337468,2.6735093593 902 | 100341428,2.6686217784 903 | 100345392,2.7028348445 904 | 100349348,2.7272727489 905 | 100353316,2.6881721019 906 | 100357260,2.6441838741 907 | 100361212,2.6588466167 908 | 100365180,2.6832845211 909 | 100369140,2.7077224254 910 | 100373100,2.6783969402 911 | 100377052,2.6148581504 912 | 100381012,2.6001954078 913 | 100384960,2.6246333122 914 | 100388916,2.6490714550 915 | 100392860,2.6197457313 916 | 100396828,2.5659823417 917 | 100400788,2.5562071800 918 | 100404740,2.5806450843 919 | 100408692,2.6099705696 920 | 100412644,2.5904202461 921 | 100416588,2.5366568565 922 | 100420548,2.5268816947 923 | 100424508,2.5610947608 924 | 100428460,2.5953078269 925 | 100432412,2.5757575035 926 | 100436372,2.5171065330 927 | 100440324,2.4926686286 928 | 100444276,2.5219941139 929 | 100448228,2.5366568565 930 | 100452196,2.5073313713 931 | 100456148,2.4389052391 932 | 100460108,2.3949170112 933 | 100464068,2.3753666877 934 | 100468028,2.3655912876 935 | 100471988,2.3069403171 -------------------------------------------------------------------------------- /logs/QRS_online_detector_log_2017_04_07_12_10_14.csv: -------------------------------------------------------------------------------- 1 | timestamp,ecg_measurement,qrs_detected 2 | 4789376,1.9599218368,0 3 | 4793252,2.0332355499,0 4 | 4797132,2.1309874057,0 5 | 4801004,2.2727272510,0 6 | 4804884,2.4046921730,0 7 | 4808752,2.5024437904,0 8 | 4812612,2.5415444374,0 9 | 4816500,2.5610947608,0 10 | 4820372,2.6050829887,0 11 | 4824244,2.6686217784,0 12 | 4828128,2.7174975872,0 13 | 4832012,2.7126100063,0 14 | 4835884,2.6979472637,0 15 | 4839764,2.7077224254,0 16 | 4843636,2.7517106533,0 17 | 4847508,2.7908113002,0 18 | 4851380,2.7859237194,0 19 | 4855268,2.7614858150,0 20 | 4859148,2.7663733959,0 21 | 4863028,2.8201368331,0 22 | 4866908,2.8396871566,0 23 | 4870788,2.8299119949,0 24 | 4874668,2.7956988811,0 25 | 4878540,2.7859237194,0 26 | 4882420,2.8396871566,0 27 | 4886304,2.8592374801,0 28 | 4890184,2.8592374801,0 29 | 4894060,2.8299119949,0 30 | 4897948,2.8152492523,0 31 | 4901828,2.8445747375,0 32 | 4905700,2.8787879943,0 33 | 4909576,2.8885631561,0 34 | 4913464,2.8592374801,0 35 | 4917332,2.8396871566,0 36 | 4921208,2.8739002227,0 37 | 4925076,2.9130010604,0 38 | 4928944,2.9325513839,0 39 | 4932824,2.9178886413,0 40 | 4936696,2.8983383178,0 41 | 4940572,2.9227762222,0 42 | 4944464,2.9863147735,0 43 | 4948340,3.0009775161,0 44 | 4952216,2.9912023544,0 45 | 4956096,2.9765396118,0 46 | 4959984,2.9912023544,0 47 | 4963860,3.0498533248,0 48 | 4967724,3.0742912292,0 49 | 4971588,3.0645160675,0 50 | 4975452,3.0254154205,0 51 | 4979332,3.0205278396,0 52 | 4983204,3.0498533248,0 53 | 4987076,3.0742912292,0 54 | 4990948,3.0547409057,0 55 | 4994812,3.0058650970,0 56 | 4998668,2.9814271926,0 57 | 5002544,2.9863147735,0 58 | 5006424,2.9960899353,0 59 | 5010296,2.9569892883,0 60 | 5014172,2.8787879943,0 61 | 5018052,2.8103616714,0 62 | 5021940,2.7810361385,0 63 | 5025820,2.7614858150,0 64 | 5029684,2.7077224254,0 65 | 5033560,2.6246333122,0 66 | 5037452,2.5562071800,0 67 | 5041324,2.5268816947,0 68 | 5045196,2.5219941139,0 69 | 5049088,2.4975562095,0 70 | 5052964,2.4389052391,0 71 | 5056844,2.3851418495,0 72 | 5060716,2.3753666877,0 73 | 5064588,2.3949170112,0 74 | 5068468,2.3998045921,0 75 | 5072348,2.3607037067,0 76 | 5076220,2.3216030597,0 77 | 5080100,2.3216030597,0 78 | 5083964,2.3509285449,0 79 | 5087844,2.3704788684,0 80 | 5091716,2.3509285449,0 81 | 5095588,2.3118278980,0 82 | 5099460,2.3118278980,0 83 | 5103340,2.3411533832,0 84 | 5107228,2.3753666877,0 85 | 5111108,2.3753666877,0 86 | 5114988,2.3411533832,0 87 | 5118876,2.3362658023,0 88 | 5122756,2.3704788684,0 89 | 5126636,2.4193549156,0 90 | 5130508,2.4144673347,0 91 | 5134388,2.3802542686,0 92 | 5138260,2.3655912876,0 93 | 5142140,2.3851418495,0 94 | 5146020,2.4144673347,0 95 | 5149900,2.4193549156,0 96 | 5153780,2.3851418495,0 97 | 5157660,2.3607037067,0 98 | 5161524,2.3802542686,0 99 | 5165404,2.4144673347,0 100 | 5169292,2.4193549156,0 101 | 5173172,2.3753666877,0 102 | 5177052,2.3362658023,0 103 | 5180932,2.3313782215,0 104 | 5184820,2.3607037067,0 105 | 5188676,2.3607037067,0 106 | 5192532,2.3020527362,0 107 | 5196412,2.2580645084,0 108 | 5200284,2.2336266040,0 109 | 5204164,2.2385141849,0 110 | 5208036,2.2336266040,0 111 | 5211916,2.1847507953,0 112 | 5215796,2.1358749866,0 113 | 5219672,2.0918865203,0 114 | 5223532,2.0821113586,0 115 | 5227404,2.0723361968,0 116 | 5231284,2.0234603881,0 117 | 5235160,1.9599218368,0 118 | 5239036,1.9110459327,0 119 | 5242916,1.8963831901,0 120 | 5246788,1.8866080284,0 121 | 5250660,1.8426198005,0 122 | 5254524,1.7741935253,0 123 | 5258412,1.7204301357,0 124 | 5262288,1.7008798122,0 125 | 5266160,1.6911046504,0 126 | 5270028,1.6568914413,0 127 | 5273908,1.6031280517,0 128 | 5277780,1.5444769859,0 129 | 5281652,1.5249266624,0 130 | 5285524,1.5200390815,0 131 | 5289396,1.5004887580,0 132 | 5293264,1.4516129493,0 133 | 5297140,1.4027370452,0 134 | 5301020,1.3880742835,0 135 | 5304900,1.3929618644,0 136 | 5308780,1.3782991170,0 137 | 5312660,1.3343108892,0 138 | 5316524,1.2903225421,0 139 | 5320404,1.2756597995,0 140 | 5324284,1.2903225421,0 141 | 5328164,1.2854349613,0 142 | 5332036,1.2609970569,0 143 | 5335900,1.2218964099,0 144 | 5339772,1.2072336673,0 145 | 5343648,1.2218964099,0 146 | 5347516,1.2365591526,0 147 | 5351396,1.2121212482,0 148 | 5355284,1.1779080629,0 149 | 5359156,1.1632453203,0 150 | 5363036,1.1827956390,0 151 | 5366916,1.2121212482,0 152 | 5370796,1.1925709247,0 153 | 5374668,1.1534701585,0 154 | 5378536,1.1339198350,0 155 | 5382408,1.1485825777,0 156 | 5386284,1.1779080629,0 157 | 5390148,1.1827956390,0 158 | 5394016,1.1583577394,0 159 | 5397896,1.1436949968,0 160 | 5401776,1.1583577394,0 161 | 5405648,1.1876833438,0 162 | 5409524,1.1974585056,0 163 | 5413392,1.1681329011,0 164 | 5417272,1.1388074159,0 165 | 5421144,1.1583577394,0 166 | 5425020,1.1925709247,0 167 | 5428892,1.2072336673,0 168 | 5432764,1.1779080629,0 169 | 5436632,1.1436949968,0 170 | 5440496,1.1436949968,0 171 | 5444372,1.1632453203,0 172 | 5448248,1.1681329011,0 173 | 5452128,1.1339198350,0 174 | 5456012,1.0850440216,0 175 | 5459864,1.0557184219,0 176 | 5463728,1.0508308410,0 177 | 5467584,1.0361680984,0 178 | 5471460,0.9921798706,0 179 | 5475324,0.9286412239,0 180 | 5479204,0.8846529960,0 181 | 5483068,0.8748778343,0 182 | 5486940,0.8748778343,0 183 | 5490820,0.8699902534,0 184 | 5494676,0.8162267684,0 185 | 5498548,0.7966764450,0 186 | 5502420,0.8113391876,0 187 | 5506300,0.8162267684,0 188 | 5510168,0.8211143493,0 189 | 5514044,0.7917888641,0 190 | 5517916,0.7722384929,0 191 | 5521788,0.7917888641,0 192 | 5525660,0.8357770919,0 193 | 5529516,0.8504399299,0 194 | 5533380,0.8357770919,0 195 | 5537252,0.8162267684,0 196 | 5541132,0.8260019302,0 197 | 5544992,0.8602150917,0 198 | 5548852,0.8993157386,0 199 | 5552716,0.9384163856,0 200 | 5556584,1.0263929367,0 201 | 5560468,1.2218964099,0 202 | 5564332,1.5151515007,0 203 | 5568216,1.8621701240,0 204 | 5572084,2.1847507953,0 205 | 5575964,2.4340176582,0 206 | 5579836,2.4975562095,0 207 | 5583700,2.3558161258,0 208 | 5587580,2.0332355499,0 209 | 5591460,1.5591397285,0 210 | 5595336,1.0752688646,0 211 | 5599204,0.6989247322,1 212 | 5603076,0.4887585639,0 213 | 5606948,0.4105571746,0 214 | 5610820,0.4301075458,0 215 | 5614668,0.4887585639,0 216 | 5618528,0.5865102291,0 217 | 5622404,0.7233626842,0 218 | 5626276,0.8651026725,0 219 | 5630148,0.9677418708,0 220 | 5634008,1.0117301940,0 221 | 5637872,1.0508308410,0 222 | 5641732,1.1143695116,0 223 | 5645612,1.1827956390,0 224 | 5649484,1.2267839908,0 225 | 5653356,1.2365591526,0 226 | 5657244,1.2463343143,0 227 | 5661132,1.2805473804,0 228 | 5665004,1.3343108892,0 229 | 5668884,1.3782991170,0 230 | 5672748,1.3831867027,0 231 | 5676628,1.3929618644,0 232 | 5680500,1.4076246261,0 233 | 5684392,1.4565005302,0 234 | 5688256,1.4956011772,0 235 | 5692132,1.5053763389,0 236 | 5696012,1.5053763389,0 237 | 5699884,1.5200390815,0 238 | 5703740,1.5640274047,0 239 | 5707600,1.6080156326,0 240 | 5711476,1.6177907943,0 241 | 5715360,1.6129032135,0 242 | 5719244,1.6177907943,0 243 | 5723116,1.6617790222,0 244 | 5727000,1.7106549739,0 245 | 5730876,1.7204301357,0 246 | 5734752,1.7106549739,0 247 | 5738628,1.7155425548,0 248 | 5742500,1.7595307826,0 249 | 5746380,1.8132943153,0 250 | 5750272,1.8279570579,0 251 | 5754148,1.8230694770,0 252 | 5758016,1.8279570579,0 253 | 5761884,1.8768328666,0 254 | 5765760,1.9452590942,0 255 | 5769640,1.9941349029,0 256 | 5773508,2.0185728073,0 257 | 5777372,2.0283479690,0 258 | 5781244,2.0723361968,0 259 | 5785124,2.1309874057,0 260 | 5788996,2.1700880527,0 261 | 5792860,2.1652004718,0 262 | 5796716,2.1554253101,0 263 | 5800588,2.1700880527,0 264 | 5804452,2.2091886997,0 265 | 5808324,2.2238514423,0 266 | 5812204,2.2189638614,0 267 | 5816092,2.1652004718,0 268 | 5819972,2.1554253101,0 269 | 5823852,2.1700880527,0 270 | 5827708,2.1652004718,0 271 | 5831572,2.1260998249,0 272 | 5835452,2.0576734542,0 273 | 5839332,2.0136852264,0 274 | 5843216,1.9990224838,0 275 | 5847092,1.9745845794,0 276 | 5850968,1.9208210945,0 277 | 5854848,1.8377322196,0 278 | 5858724,1.7839686870,0 279 | 5862596,1.7644183635,0 280 | 5866476,1.7644183635,0 281 | 5870368,1.7399804592,0 282 | 5874244,1.7057673931,0 283 | 5878132,1.6568914413,0 284 | 5882032,1.6715541839,0 285 | 5885912,1.7008798122,0 286 | 5889784,1.7106549739,0 287 | 5893660,1.6911046504,0 288 | 5897532,1.6666666030,0 289 | 5901408,1.6862169265,0 290 | 5905288,1.7302052974,0 291 | 5909156,1.7546432018,0 292 | 5913040,1.7497556209,0 293 | 5916916,1.7350928783,0 294 | 5920796,1.7595307826,0 295 | 5924668,1.8084066390,0 296 | 5928536,1.8377322196,0 297 | 5932420,1.8328446388,0 298 | 5936300,1.8181818962,0 299 | 5940184,1.8279570579,0 300 | 5944056,1.8719452857,0 301 | 5947936,1.9061583518,0 302 | 5951816,1.9061583518,0 303 | 5955680,1.8866080284,0 304 | 5959540,1.8914956092,0 305 | 5963420,1.9403715133,0 306 | 5967312,1.9696969985,0 307 | 5971192,1.9794721603,0 308 | 5975068,1.9550342559,0 309 | 5978944,1.9550342559,0 310 | 5982824,1.9941349029,0 311 | 5986692,2.0283479690,0 312 | 5990564,2.0283479690,0 313 | 5994428,2.0039100646,0 314 | 5998296,1.9941349029,0 315 | 6002172,2.0185728073,0 316 | 6006044,2.0576734542,0 317 | 6009916,2.0674486160,0 318 | 6013788,2.0430107116,0 319 | 6017660,2.0234603881,0 320 | 6021524,2.0527858734,0 321 | 6025404,2.0772237777,0 322 | 6029276,2.0869989395,0 323 | 6033148,2.0625610351,0 324 | 6037020,2.0332355499,0 325 | 6040900,2.0430107116,0 326 | 6044764,2.0821113586,0 327 | 6048636,2.1212120056,0 328 | 6052508,2.0869989395,0 329 | 6056380,2.0576734542,0 330 | 6060260,2.0625610351,0 331 | 6064140,2.0967741012,0 332 | 6068004,2.1212120056,0 333 | 6071884,2.1065492630,0 334 | 6075756,2.0869989395,0 335 | 6079636,2.0723361968,0 336 | 6083500,2.1016616821,0 337 | 6087380,2.1309874057,0 338 | 6091252,2.1212120056,0 339 | 6095132,2.0869989395,0 340 | 6099004,2.0772237777,0 341 | 6102876,2.1260998249,0 342 | 6106748,2.1505377292,0 343 | 6110628,2.1456501483,0 344 | 6114500,2.1163244247,0 345 | 6118380,2.1016616821,0 346 | 6122260,2.1407625675,0 347 | 6126140,2.1652004718,0 348 | 6130020,2.1652004718,0 349 | 6133900,2.1358749866,0 350 | 6137772,2.1114368438,0 351 | 6141660,2.1260998249,0 352 | 6145532,2.1749756336,0 353 | 6149412,2.1700880527,0 354 | 6153276,2.1456501483,0 355 | 6157148,2.1163244247,0 356 | 6161036,2.1309874057,0 357 | 6164908,2.1700880527,0 358 | 6168764,2.1847507953,0 359 | 6172636,2.1603128910,0 360 | 6176508,2.1407625675,0 361 | 6180388,2.1358749866,0 362 | 6184268,2.1652004718,0 363 | 6188132,2.1896383762,0 364 | 6192012,2.1700880527,0 365 | 6195876,2.1358749866,0 366 | 6199756,2.1309874057,0 367 | 6203628,2.1652004718,0 368 | 6207484,2.1945259571,0 369 | 6211372,2.1847507953,0 370 | 6215252,2.1505377292,0 371 | 6219132,2.1358749866,0 372 | 6223020,2.1652004718,0 373 | 6226892,2.2043011188,0 374 | 6230756,2.2140762805,0 375 | 6234628,2.1700880527,0 376 | 6238484,2.1554253101,0 377 | 6242364,2.1798632144,0 378 | 6246244,2.2140762805,0 379 | 6250124,2.2140762805,0 380 | 6253996,2.1847507953,0 381 | 6257876,2.1798632144,0 382 | 6261748,2.2189638614,0 383 | 6265636,2.2776148319,0 384 | 6269516,2.2971651554,0 385 | 6273404,2.2727272510,0 386 | 6277292,2.2385141849,0 387 | 6281172,2.2434017658,0 388 | 6285052,2.2629520893,0 389 | 6288932,2.2776148319,0 390 | 6292820,2.2189638614,0 391 | 6296700,2.1652004718,0 392 | 6300564,2.1505377292,0 393 | 6304444,2.1749756336,0 394 | 6308332,2.1847507953,0 395 | 6312212,2.1554253101,0 396 | 6316092,2.1065492630,0 397 | 6319964,2.0869989395,0 398 | 6323844,2.1114368438,0 399 | 6327724,2.1309874057,0 400 | 6331588,2.1260998249,0 401 | 6335460,2.1016616821,0 402 | 6339340,2.0772237777,0 403 | 6343220,2.1065492630,0 404 | 6347100,2.1358749866,0 405 | 6350988,2.1309874057,0 406 | 6354852,2.1114368438,0 407 | 6358732,2.0918865203,0 408 | 6362596,2.1163244247,0 409 | 6366484,2.1505377292,0 410 | 6370356,2.1505377292,0 411 | 6374236,2.1114368438,0 412 | 6378124,2.0869989395,0 413 | 6381996,2.1212120056,0 414 | 6385876,2.2140762805,0 415 | 6389740,2.3362658023,0 416 | 6393628,2.4926686286,0 417 | 6397500,2.7370479106,0 418 | 6401372,3.0889539718,0 419 | 6405244,3.4506354331,0 420 | 6409116,3.7194526195,0 421 | 6412996,3.7390029430,0 422 | 6416872,3.4995112419,0 423 | 6420748,3.1133918762,0 424 | 6424632,2.6392962932,0 425 | 6428500,2.1505377292,0 426 | 6432384,1.7497556209,1 427 | 6436264,1.4809384346,0 428 | 6440140,1.3880742835,0 429 | 6444012,1.4418377876,0 430 | 6447892,1.5444769859,0 431 | 6451764,1.6373411178,0 432 | 6455652,1.7155425548,0 433 | 6459532,1.7937438488,0 434 | 6463416,1.9012707710,0 435 | 6467288,1.9745845794,0 436 | 6471168,1.9990224838,0 437 | 6475048,1.9990224838,0 438 | 6478916,2.0136852264,0 439 | 6482788,2.0576734542,0 440 | 6486668,2.1016616821,0 441 | 6490540,2.1212120056,0 442 | 6494420,2.0967741012,0 443 | 6498284,2.0918865203,0 444 | 6502156,2.1212120056,0 445 | 6506036,2.1603128910,0 446 | 6509916,2.1749756336,0 447 | 6513804,2.1554253101,0 448 | 6517676,2.1358749866,0 449 | 6521548,2.1554253101,0 450 | 6525436,2.1994135379,0 451 | 6529324,2.2238514423,0 452 | 6533204,2.2091886997,0 453 | 6537076,2.1896383762,0 454 | 6540956,2.2091886997,0 455 | 6544828,2.2531769275,0 456 | 6548708,2.2776148319,0 457 | 6552588,2.2629520893,0 458 | 6556460,2.2531769275,0 459 | 6560348,2.2482893466,0 460 | 6564228,2.2922775745,0 461 | 6568108,2.3264906406,0 462 | 6571972,2.3216030597,0 463 | 6575844,2.3020527362,0 464 | 6579716,2.3167154788,0 465 | 6583596,2.3607037067,0 466 | 6587460,2.3998045921,0 467 | 6591332,2.4095797538,0 468 | 6595212,2.3900294303,0 469 | 6599084,2.3998045921,0 470 | 6602956,2.4437928199,0 471 | 6606836,2.4926686286,0 472 | 6610708,2.5024437904,0 473 | 6614572,2.4828934669,0 474 | 6618452,2.4780058860,0 475 | 6622308,2.5122189521,0 476 | 6626188,2.5562071800,0 477 | 6630060,2.5659823417,0 478 | 6633948,2.5415444374,0 479 | 6637836,2.5073313713,0 480 | 6641712,2.5171065330,0 481 | 6645572,2.5366568565,0 482 | 6649460,2.5317692756,0 483 | 6653348,2.4828934669,0 484 | 6657228,2.4340176582,0 485 | 6661100,2.4193549156,0 486 | 6664988,2.4291300773,0 487 | 6668860,2.4046921730,0 488 | 6672724,2.3411533832,0 489 | 6676604,2.2776148319,0 490 | 6680484,2.2140762805,0 491 | 6684356,2.1896383762,0 492 | 6688236,2.1603128910,0 493 | 6692108,2.0967741012,0 494 | 6695984,2.0234603881,0 495 | 6699856,1.9843597412,0 496 | 6703732,2.0039100646,0 497 | 6707592,1.9892473220,0 498 | 6711472,1.9648094177,0 499 | 6715344,1.9208210945,0 500 | 6719224,1.9012707710,0 501 | 6723096,1.9208210945,0 502 | 6726968,1.9452590942,0 503 | 6730840,1.9452590942,0 504 | 6734704,1.9208210945,0 505 | 6738564,1.9110459327,0 506 | 6742448,1.9501466751,0 507 | 6746328,1.9892473220,0 508 | 6750196,2.0039100646,0 509 | 6754064,1.9843597412,0 510 | 6757952,1.9696969985,0 511 | 6761828,2.0136852264,0 512 | 6765700,2.0527858734,0 513 | 6769564,2.0772237777,0 514 | 6773444,2.0576734542,0 515 | 6777324,2.0478982925,0 516 | 6781204,2.0674486160,0 517 | 6785072,2.1114368438,0 518 | 6788948,2.1407625675,0 519 | 6792828,2.1309874057,0 520 | 6796692,2.1016616821,0 521 | 6800564,2.1163244247,0 522 | 6804444,2.1554253101,0 523 | 6808332,2.1847507953,0 524 | 6812212,2.1798632144,0 525 | 6816100,2.1407625675,0 526 | 6819972,2.1456501483,0 527 | 6823844,2.1798632144,0 528 | 6827716,2.2091886997,0 529 | 6831580,2.1945259571,0 530 | 6835468,2.1554253101,0 531 | 6839348,2.1505377292,0 532 | 6843220,2.1896383762,0 533 | 6847100,2.2238514423,0 534 | 6850988,2.2140762805,0 535 | 6854860,2.1798632144,0 536 | 6858732,2.1603128910,0 537 | 6862604,2.1847507953,0 538 | 6866484,2.2189638614,0 539 | 6870364,2.2189638614,0 540 | 6874252,2.1896383762,0 541 | 6878132,2.1700880527,0 542 | 6881996,2.1847507953,0 543 | 6885876,2.2140762805,0 544 | 6889748,2.2189638614,0 545 | 6893616,2.1847507953,0 546 | 6897484,2.1603128910,0 547 | 6901356,2.1749756336,0 548 | 6905244,2.2140762805,0 549 | 6909124,2.2238514423,0 550 | 6913004,2.1896383762,0 551 | 6916884,2.1603128910,0 552 | 6920756,2.1652004718,0 553 | 6924636,2.2043011188,0 554 | 6928508,2.2385141849,0 555 | 6932380,2.2091886997,0 556 | 6936252,2.1749756336,0 557 | 6940140,2.1700880527,0 558 | 6944012,2.2091886997,0 559 | 6947884,2.2336266040,0 560 | 6951740,2.2238514423,0 561 | 6955628,2.1945259571,0 562 | 6959508,2.1798632144,0 563 | 6963396,2.2091886997,0 564 | 6967260,2.2434017658,0 565 | 6971140,2.2385141849,0 566 | 6975020,2.2043011188,0 567 | 6978892,2.1994135379,0 568 | 6982764,2.2238514423,0 569 | 6986644,2.2531769275,0 570 | 6990516,2.2482893466,0 571 | 6994396,2.2140762805,0 572 | 6998276,2.1994135379,0 573 | 7002160,2.2140762805,0 574 | 7006028,2.2482893466,0 575 | 7009908,2.2531769275,0 576 | 7013788,2.2189638614,0 577 | 7017668,2.1945259571,0 578 | 7021540,2.2140762805,0 579 | 7025420,2.2531769275,0 580 | 7029300,2.2678396701,0 581 | 7033180,2.2385141849,0 582 | 7037068,2.2091886997,0 583 | 7040940,2.2336266040,0 584 | 7044820,2.2531769275,0 585 | 7048692,2.2727272510,0 586 | 7052564,2.2531769275,0 587 | 7056444,2.2189638614,0 588 | 7060316,2.2238514423,0 589 | 7064204,2.2678396701,0 590 | 7068084,2.2825024127,0 591 | 7071964,2.2629520893,0 592 | 7075836,2.2287390232,0 593 | 7079716,2.2287390232,0 594 | 7083588,2.2873899936,0 595 | 7087468,2.3264906406,0 596 | 7091340,2.3362658023,0 597 | 7095212,2.3167154788,0 598 | 7099092,2.3069403171,0 599 | 7102964,2.3362658023,0 600 | 7106844,2.3802542686,0 601 | 7110708,2.3460409641,0 602 | 7114572,2.2873899936,0 603 | 7118452,2.2385141849,0 604 | 7122332,2.2385141849,0 605 | 7126212,2.2531769275,0 606 | 7130092,2.2434017658,0 607 | 7133972,2.2189638614,0 608 | 7137852,2.1652004718,0 609 | 7141716,2.1700880527,0 610 | 7145572,2.1994135379,0 611 | 7149452,2.1994135379,0 612 | 7153332,2.1700880527,0 613 | 7157204,2.1407625675,0 614 | 7161084,2.1505377292,0 615 | 7164972,2.1945259571,0 616 | 7168852,2.2091886997,0 617 | 7172716,2.1847507953,0 618 | 7176588,2.1554253101,0 619 | 7180468,2.1603128910,0 620 | 7184340,2.1994135379,0 621 | 7188228,2.2287390232,0 622 | 7192108,2.2091886997,0 623 | 7195980,2.1700880527,0 624 | 7199844,2.1554253101,0 625 | 7203716,2.1847507953,0 626 | 7207588,2.2385141849,0 627 | 7211468,2.3020527362,0 628 | 7215348,2.3998045921,0 629 | 7219228,2.6001954078,0 630 | 7223088,2.9178886413,0 631 | 7226972,3.2795698642,0 632 | 7230852,3.5923752784,0 633 | 7234724,3.7634408473,0 634 | 7238592,3.7341153621,0 635 | 7242480,3.4897360801,0 636 | 7246348,3.0791788101,0 637 | 7250220,2.5562071800,0 638 | 7254084,2.0576734542,0 639 | 7257960,1.6862169265,1 640 | 7261844,1.5151515007,0 641 | 7265720,1.4858260154,0 642 | 7269588,1.5347018241,0 643 | 7273460,1.6031280517,0 644 | 7277344,1.6862169265,0 645 | 7281228,1.7986314296,0 646 | 7285120,1.9208210945,0 647 | 7288996,2.0039100646,0 648 | 7292852,2.0332355499,0 649 | 7296724,2.0381231307,0 650 | 7300588,2.0674486160,0 651 | 7304460,2.1212120056,0 652 | 7308336,2.1603128910,0 653 | 7312212,2.1554253101,0 654 | 7316092,2.1407625675,0 655 | 7319972,2.1554253101,0 656 | 7323860,2.1994135379,0 657 | 7327732,2.2336266040,0 658 | 7331604,2.2287390232,0 659 | 7335484,2.2043011188,0 660 | 7339356,2.1945259571,0 661 | 7343244,2.2336266040,0 662 | 7347116,2.2727272510,0 663 | 7350996,2.2776148319,0 664 | 7354884,2.2531769275,0 665 | 7358764,2.2336266040,0 666 | 7362636,2.2678396701,0 667 | 7366500,2.3069403171,0 668 | 7370372,2.3167154788,0 669 | 7374252,2.2922775745,0 670 | 7378140,2.2776148319,0 671 | 7382028,2.3069403171,0 672 | 7385892,2.3558161258,0 673 | 7389772,2.3753666877,0 674 | 7393660,2.3558161258,0 675 | 7397540,2.3460409641,0 676 | 7401412,2.3753666877,0 677 | 7405292,2.4242424964,0 678 | 7409180,2.4535679817,0 679 | 7413060,2.4486804008,0 680 | 7416916,2.4291300773,0 681 | 7420788,2.4633431434,0 682 | 7424668,2.5122189521,0 683 | 7428548,2.5513195991,0 684 | 7432428,2.5464320182,0 685 | 7436308,2.5317692756,0 686 | 7440180,2.5513195991,0 687 | 7444060,2.6001954078,0 688 | 7447932,2.6295211315,0 689 | 7451820,2.6148581504,0 690 | 7455684,2.5806450843,0 691 | 7459548,2.5708699226,0 692 | 7463420,2.5953078269,0 693 | 7467292,2.6099705696,0 694 | 7471156,2.5855326652,0 695 | 7475036,2.5366568565,0 696 | 7478924,2.4975562095,0 697 | 7482804,2.4975562095,0 698 | 7486676,2.5073313713,0 699 | 7490552,2.4682307243,0 700 | 7494428,2.3998045921,0 701 | 7498308,2.3216030597,0 702 | 7502188,2.2922775745,0 703 | 7506076,2.2727272510,0 704 | 7509948,2.2287390232,0 705 | 7513836,2.1554253101,0 706 | 7517716,2.0821113586,0 707 | 7521596,2.0478982925,0 708 | 7525468,2.0478982925,0 709 | 7529340,2.0332355499,0 710 | 7533224,1.9843597412,0 711 | 7537112,1.9452590942,0 712 | 7540992,1.9354838371,0 713 | 7544876,1.9599218368,0 714 | 7548744,1.9745845794,0 715 | 7552628,1.9501466751,0 716 | 7556512,1.9208210945,0 717 | 7560384,1.9257086753,0 718 | 7564256,1.9696969985,0 719 | 7568132,2.0039100646,0 720 | 7572000,1.9990224838,0 721 | 7575880,1.9745845794,0 722 | 7579752,1.9794721603,0 723 | 7583612,2.0234603881,0 724 | 7587484,2.0674486160,0 725 | 7591356,2.0674486160,0 726 | 7595228,2.0430107116,0 727 | 7599092,2.0381231307,0 728 | 7602972,2.0821113586,0 729 | 7606852,2.1309874057,0 730 | 7610716,2.1309874057,0 731 | 7614580,2.1065492630,0 732 | 7618452,2.0918865203,0 733 | 7622324,2.1212120056,0 734 | 7626204,2.1700880527,0 735 | 7630076,2.1798632144,0 736 | 7633964,2.1554253101,0 737 | 7637836,2.1358749866,0 738 | 7641708,2.1505377292,0 739 | 7645580,2.1896383762,0 740 | 7649460,2.2043011188,0 741 | 7653332,2.1749756336,0 742 | 7657220,2.1407625675,0 743 | 7661100,2.1505377292,0 744 | 7664980,2.1847507953,0 745 | 7668860,2.2043011188,0 746 | 7672724,2.1798632144,0 747 | 7676604,2.1407625675,0 748 | 7680484,2.1505377292,0 749 | 7684364,2.1798632144,0 750 | 7688244,2.1994135379,0 751 | 7692124,2.1847507953,0 752 | 7696004,2.1505377292,0 753 | 7699884,2.1505377292,0 754 | 7703756,2.1798632144,0 755 | 7707636,2.2091886997,0 756 | 7711500,2.1945259571,0 757 | 7715388,2.1603128910,0 758 | 7719268,2.1456501483,0 759 | 7723148,2.1847507953,0 760 | 7727020,2.2189638614,0 761 | 7730900,2.2140762805,0 762 | 7734772,2.1749756336,0 763 | 7738660,2.1554253101,0 764 | 7742532,2.1798632144,0 765 | 7746412,2.2189638614,0 766 | 7750300,2.2238514423,0 767 | 7754188,2.1847507953,0 768 | 7758068,2.1603128910,0 769 | 7761948,2.1896383762,0 770 | 7765828,2.2189638614,0 771 | 7769700,2.2238514423,0 772 | 7773580,2.1945259571,0 773 | 7777468,2.1847507953,0 774 | 7781340,2.1847507953,0 775 | 7785220,2.2238514423,0 776 | 7789108,2.2385141849,0 777 | 7792988,2.2140762805,0 778 | 7796860,2.1798632144,0 779 | 7800732,2.1945259571,0 780 | 7804612,2.2189638614,0 781 | 7808492,2.2385141849,0 782 | 7812380,2.2189638614,0 783 | 7816260,2.1798632144,0 784 | 7820140,2.1749756336,0 785 | 7824028,2.2091886997,0 786 | 7827908,2.2434017658,0 787 | 7831788,2.2287390232,0 788 | 7835672,2.1994135379,0 789 | 7839548,2.1749756336,0 790 | 7843436,2.2043011188,0 791 | 7847308,2.2336266040,0 792 | 7851180,2.2287390232,0 793 | 7855052,2.2091886997,0 794 | 7858932,2.1896383762,0 795 | 7862812,2.2189638614,0 796 | 7866692,2.2580645084,0 797 | 7870548,2.2580645084,0 798 | 7874412,2.2238514423,0 799 | 7878300,2.2043011188,0 800 | 7882172,2.2336266040,0 801 | 7886044,2.2678396701,0 802 | 7889916,2.2776148319,0 803 | 7893804,2.2482893466,0 804 | 7897684,2.2238514423,0 805 | 7901564,2.2531769275,0 806 | 7905452,2.3167154788,0 807 | 7909332,2.3509285449,0 808 | 7913204,2.3362658023,0 809 | 7917084,2.3069403171,0 810 | 7920956,2.3069403171,0 811 | 7924828,2.3460409641,0 812 | 7928684,2.3460409641,0 813 | 7932548,2.3020527362,0 814 | 7936428,2.2336266040,0 815 | 7940308,2.2091886997,0 816 | 7944180,2.2336266040,0 817 | 7948052,2.2482893466,0 818 | 7951932,2.2189638614,0 819 | 7955812,2.1700880527,0 820 | 7959668,2.1456501483,0 821 | 7963532,2.1700880527,0 822 | 7967396,2.1994135379,0 823 | 7971276,2.1749756336,0 824 | 7975164,2.1407625675,0 825 | 7979052,2.1212120056,0 826 | 7982924,2.1505377292,0 827 | 7986804,2.1945259571,0 828 | 7990684,2.1896383762,0 829 | 7994556,2.1554253101,0 830 | 7998436,2.1309874057,0 831 | 8002308,2.1505377292,0 832 | 8006188,2.1945259571,0 833 | 8010076,2.2043011188,0 834 | 8013956,2.1603128910,0 835 | 8017828,2.1309874057,0 836 | 8021692,2.1700880527,0 837 | 8025556,2.2873899936,0 838 | 8029436,2.4437928199,0 839 | 8033316,2.6441838741,0 840 | 8037188,2.9032258987,0 841 | 8041068,3.2258064746,0 842 | 8044948,3.5532746315,0 843 | 8048836,3.7536656856,0 844 | 8052700,3.6656892299,0 845 | 8056572,3.3528835773,0 846 | 8060452,2.9130010604,0 847 | 8064316,2.4291300773,0 848 | 8068192,1.9990224838,0 849 | 8072060,1.6666666030,1 850 | 8075936,1.4565005302,0 851 | 8079804,1.3978494453,0 852 | 8083676,1.4711632728,0 853 | 8086532,1.5933528900,0 854 | 8091432,1.7008798122,0 855 | 8095300,1.7741935253,0 856 | 8099192,1.8426198005,0 857 | 8103072,1.9305962562,0 858 | 8106944,1.9990224838,0 859 | 8110820,2.0430107116,0 860 | 8114684,2.0332355499,0 861 | 8118556,2.0185728073,0 862 | 8122420,2.0576734542,0 863 | 8126292,2.1065492630,0 864 | 8130172,2.1212120056,0 865 | 8134052,2.1016616821,0 866 | 8137940,2.0918865203,0 867 | 8141812,2.1065492630,0 868 | 8145684,2.1505377292,0 869 | 8149556,2.1652004718,0 870 | 8153428,2.1407625675,0 871 | 8157308,2.1163244247,0 872 | 8161188,2.1309874057,0 873 | 8165060,2.1700880527,0 874 | 8168932,2.1994135379,0 875 | 8172812,2.1798632144,0 876 | 8176688,2.1505377292,0 877 | 8180556,2.1603128910,0 878 | 8184436,2.2043011188,0 879 | 8188308,2.2336266040,0 880 | 8192188,2.2482893466,0 881 | 8196060,2.2091886997,0 882 | 8199932,2.2091886997,0 883 | 8203812,2.2531769275,0 884 | 8207684,2.2873899936,0 885 | 8211548,2.2873899936,0 886 | 8215420,2.2629520893,0 887 | 8219300,2.2776148319,0 888 | 8223180,2.3167154788,0 889 | 8227068,2.3655912876,0 890 | 8230956,2.3851418495,0 891 | 8234828,2.3704788684,0 892 | 8238692,2.3802542686,0 893 | 8242564,2.4340176582,0 894 | 8246444,2.4828934669,0 895 | 8250316,2.5171065330,0 896 | 8254196,2.5122189521,0 897 | 8258084,2.5122189521,0 898 | 8261964,2.5610947608,0 899 | 8265828,2.6197457313,0 900 | 8269700,2.6490714550,0 901 | 8273572,2.6392962932,0 902 | 8277452,2.6197457313,0 903 | 8281340,2.6392962932,0 904 | 8285228,2.6979472637,0 905 | 8289108,2.7077224254,0 906 | 8292988,2.6783969402,0 907 | 8296868,2.6295211315,0 908 | 8300748,2.6148581504,0 909 | 8304612,2.6441838741,0 910 | 8308500,2.6148581504,0 911 | 8312380,2.5562071800,0 912 | 8316256,2.4682307243,0 913 | 8320132,2.4144673347,0 914 | 8324012,2.3998045921,0 915 | 8327884,2.3851418495,0 916 | 8331756,2.3264906406,0 917 | 8335628,2.2531769275,0 918 | 8339504,2.2091886997,0 919 | 8343372,2.2043011188,0 920 | 8347252,2.2140762805,0 921 | 8351124,2.1896383762,0 922 | 8355012,2.1456501483,0 923 | 8358884,2.1212120056,0 924 | 8362756,2.1407625675,0 925 | 8366636,2.1798632144,0 926 | 8370508,2.1847507953,0 927 | 8374380,2.1603128910,0 928 | 8378252,2.1407625675,0 929 | 8382132,2.1700880527,0 930 | 8385996,2.2189638614,0 931 | 8389884,2.2434017658,0 932 | 8393764,2.2238514423,0 933 | 8397644,2.1994135379,0 934 | 8401516,2.2385141849,0 935 | 8405404,2.2825024127,0 936 | 8409284,2.3167154788,0 937 | 8413156,2.3069403171,0 938 | 8417028,2.2873899936,0 939 | 8420908,2.3264906406,0 940 | 8424780,2.3655912876,0 941 | 8428660,2.3949170112,0 942 | 8432532,2.3851418495,0 943 | 8436412,2.3558161258,0 944 | 8440300,2.3607037067,0 945 | 8444172,2.4193549156,0 946 | 8448052,2.4389052391,0 947 | 8451924,2.4291300773,0 948 | 8455804,2.3949170112,0 949 | 8459676,2.3900294303,0 950 | 8463540,2.4291300773,0 951 | 8467412,2.4584555625,0 952 | 8471292,2.4486804008,0 953 | 8475156,2.4095797538,0 954 | 8479028,2.3851418495,0 955 | 8482908,2.4046921730,0 956 | 8486780,2.4437928199,0 957 | 8490660,2.4340176582,0 958 | 8494532,2.3900294303,0 959 | 8498396,2.3558161258,0 960 | 8502284,2.3704788684,0 961 | 8506148,2.3949170112,0 962 | 8510028,2.3949170112,0 963 | 8513908,2.3509285449,0 964 | 8517788,2.3167154788,0 965 | 8521664,2.3411533832,0 966 | 8525540,2.3655912876,0 967 | 8529420,2.3704788684,0 968 | 8533300,2.3411533832,0 969 | 8537180,2.2971651554,0 970 | 8541060,2.2971651554,0 971 | 8544948,2.3362658023,0 972 | 8548828,2.3558161258,0 973 | 8552708,2.3313782215,0 974 | 8556588,2.2873899936,0 975 | 8560460,2.2825024127,0 976 | 8564340,2.3167154788,0 977 | 8568228,2.3411533832,0 978 | 8572116,2.3264906406,0 979 | 8575980,2.2873899936,0 980 | 8579860,2.2873899936,0 981 | 8583732,2.3167154788,0 982 | 8587604,2.3411533832,0 983 | 8591492,2.3313782215,0 984 | 8595380,2.2873899936,0 985 | 8599260,2.2825024127,0 986 | 8603140,2.2971651554,0 987 | 8607028,2.3264906406,0 988 | 8610900,2.3216030597,0 989 | 8614756,2.2776148319,0 990 | 8618644,2.2531769275,0 991 | 8622516,2.2873899936,0 992 | 8626396,2.3167154788,0 993 | 8630284,2.3216030597,0 994 | 8634148,2.2873899936,0 995 | 8638028,2.2531769275,0 996 | 8641916,2.2678396701,0 997 | 8645796,2.3069403171,0 998 | 8649664,2.3216030597,0 999 | 8653532,2.2922775745,0 1000 | 8657420,2.2629520893,0 1001 | 8661300,2.2825024127,0 1002 | 8665172,2.3313782215,0 1003 | 8669052,2.3607037067,0 1004 | 8672924,2.3411533832,0 1005 | 8676812,2.3118278980,0 1006 | 8680684,2.3216030597,0 1007 | 8684556,2.3802542686,0 1008 | 8688428,2.4389052391,0 1009 | 8692308,2.4584555625,0 1010 | 8696196,2.4535679817,0 1011 | 8700080,2.4682307243,0 1012 | 8703956,2.5171065330,0 1013 | 8707836,2.5659823417,0 1014 | 8711708,2.5708699226,0 1015 | 8715572,2.5366568565,0 1016 | 8719444,2.5171065330,0 1017 | 8723316,2.5464320182,0 1018 | 8727196,2.5904202461,0 1019 | 8731076,2.6001954078,0 1020 | 8734948,2.5806450843,0 1021 | 8738812,2.5806450843,0 1022 | 8742676,2.6148581504,0 1023 | 8746548,2.6735093593,0 1024 | 8750428,2.6930596828,0 1025 | 8754312,2.6832845211,0 1026 | 8758188,2.6783969402,0 1027 | 8762068,2.7272727489,0 1028 | 8765948,2.8005865097,0 1029 | 8769812,2.8347995758,0 1030 | 8773684,2.8250244140,0 1031 | 8777548,2.8201368331,0 1032 | 8781436,2.8543498992,0 1033 | 8785320,2.9178886413,0 1034 | 8789200,2.9569892883,0 1035 | 8793080,2.9569892883,0 1036 | 8796960,2.9374389648,0 1037 | 8800836,2.9618768692,0 1038 | 8804716,3.0303030014,0 1039 | 8808572,3.1182794570,0 1040 | 8812444,3.2209188938,0 1041 | 8816324,3.3870968818,0 1042 | 8820204,3.6510264873,0 1043 | 8824084,4.0127077102,0 1044 | 8827952,4.3597264289,0 1045 | 8831828,4.5943303108,0 1046 | 8835692,4.6089930534,0 1047 | 8839556,4.4037146568,0 1048 | 8843436,4.0615835189,0 1049 | 8847308,3.6314761638,0 1050 | 8851196,3.1378300189,0 1051 | 8855076,2.7517106533,1 1052 | 8858956,2.5122189521,0 1053 | 8862836,2.4584555625,0 1054 | 8866708,2.5415444374,0 1055 | 8870588,2.6588466167,0 1056 | 8874472,2.7468230724,0 1057 | 8878348,2.8494623184,0 1058 | 8882232,2.9863147735,0 1059 | 8886108,3.1231670379,0 1060 | 8889988,3.1964809894,0 1061 | 8893860,3.2111437320,0 1062 | 8897740,3.2160313129,0 1063 | 8901612,3.2600195407,0 1064 | 8905476,3.3235580921,0 1065 | 8909356,3.3577711582,0 1066 | 8913244,3.3479959964,0 1067 | 8917124,3.3235580921,0 1068 | 8920996,3.3479959964,0 1069 | 8924880,3.4017596244,0 1070 | 8928748,3.4261975288,0 1071 | 8932636,3.4164223670,0 1072 | 8936500,3.3773217201,0 1073 | 8940380,3.3870968818,0 1074 | 8944256,3.4310851097,0 1075 | 8948136,3.4604105949,0 1076 | 8952004,3.4457478523,0 1077 | 8955888,3.4213099479,0 1078 | 8959756,3.4164223670,0 1079 | 8963644,3.4701857566,0 1080 | 8967516,3.5043988227,0 1081 | 8971400,3.4995112419,0 1082 | 8975276,3.4652981758,0 1083 | 8979164,3.4652981758,0 1084 | 8983052,3.5043988227,0 1085 | 8986924,3.5532746315,0 1086 | 8990804,3.5532746315,0 1087 | 8994684,3.5190615653,0 1088 | 8998556,3.5141739845,0 1089 | 9002444,3.5434994697,0 1090 | 9006324,3.5923752784,0 1091 | 9010212,3.6070380210,0 1092 | 9014068,3.5728249549,0 1093 | 9017948,3.5630497932,0 1094 | 9021828,3.5826001167,0 1095 | 9025700,3.6265885829,0 1096 | 9029564,3.6314761638,0 1097 | 9033452,3.5923752784,0 1098 | 9037340,3.5483870506,0 1099 | 9041212,3.5630497932,0 1100 | 9045084,3.5874876976,0 1101 | 9048964,3.5826001167,0 1102 | 9052836,3.5288367271,0 1103 | 9056720,3.4604105949,0 1104 | 9060580,3.4310851097,0 1105 | 9064460,3.4408602714,0 1106 | 9068324,3.4261975288,0 1107 | 9072204,3.3675463199,0 1108 | 9076084,3.2746822834,0 1109 | 9079972,3.2209188938,0 1110 | 9083844,3.2013685703,0 1111 | 9087716,3.1769306659,0 1112 | 9091588,3.1036167144,0 1113 | 9095480,2.9765396118,0 1114 | 9099360,2.8739002227,0 1115 | 9103232,2.8103616714,0 1116 | 9107120,2.7419354915,0 1117 | 9111004,2.6441838741,0 1118 | 9114892,2.5073313713,0 1119 | 9118772,2.3900294303,0 1120 | 9122636,2.3118278980,0 1121 | 9126508,2.2531769275,0 1122 | 9130388,2.1652004718,0 1123 | 9134268,2.0381231307,0 1124 | 9138144,1.9208210945,0 1125 | 9142012,1.8328446388,0 1126 | 9145892,1.7693059444,0 1127 | 9149776,1.6862169265,0 1128 | 9153652,1.5738025665,0 1129 | 9157520,1.4369501113,0 1130 | 9161408,1.3391984701,0 1131 | 9165292,1.2658846378,0 1132 | 9169172,1.1827956390,0 1133 | 9173040,1.0752688646,0 1134 | 9176916,0.9481915473,0 1135 | 9180796,0.8455523490,0 1136 | 9184664,0.7771260738,0 1137 | 9188532,0.7086998939,0 1138 | 9192396,0.6060606002,0 1139 | 9196244,0.4838709354,0 1140 | 9200116,0.3812316703,0 1141 | 9203988,0.3079178810,0 1142 | 9207856,0.2394916772,0 1143 | 9211724,0.1661779165,0 1144 | 9215604,0.1026392936,0 1145 | 9219484,0.0684261989,0 1146 | 9223356,0.0391006832,0 1147 | 9227212,0.0195503416,0 1148 | 9231084,0.0048875851,0 1149 | 9234948,0.0048875851,0 1150 | 9238780,0.0000000000,0 1151 | 9242540,0.0000000000,0 1152 | 9246316,0.0000000000,0 1153 | 9250100,0.0000000000,0 1154 | 9253868,0.0000000000,0 1155 | 9257644,0.0000000000,0 1156 | 9261412,0.0000000000,0 1157 | 9265180,0.0000000000,0 1158 | 9268948,0.0000000000,0 1159 | 9272716,0.0000000000,0 1160 | 9276476,0.0000000000,0 1161 | 9280244,0.0000000000,0 1162 | 9284020,0.0000000000,0 1163 | 9287804,0.0000000000,0 1164 | 9291564,0.0000000000,0 1165 | 9295340,0.0000000000,0 1166 | 9299116,0.0000000000,0 1167 | 9302884,0.0000000000,0 1168 | 9306652,0.0000000000,0 1169 | 9310428,0.0000000000,0 1170 | 9314196,0.0000000000,0 1171 | 9317972,0.0000000000,0 1172 | 9321756,0.0000000000,0 1173 | 9325516,0.0000000000,0 1174 | 9329292,0.0000000000,0 1175 | 9333068,0.0000000000,0 1176 | 9336844,0.0000000000,0 1177 | 9340620,0.0000000000,0 1178 | 9344388,0.0000000000,0 1179 | 9348156,0.0000000000,0 1180 | 9351924,0.0000000000,0 1181 | 9355700,0.0000000000,0 1182 | 9359476,0.0000000000,0 1183 | 9363244,0.0000000000,0 1184 | 9367020,0.0000000000,0 1185 | 9370804,0.0000000000,0 1186 | 9374596,0.0097751703,0 1187 | 9378428,0.0000000000,0 1188 | 9382204,0.0000000000,0 1189 | 9385972,0.0000000000,0 1190 | 9389748,0.0000000000,0 1191 | 9393516,0.0000000000,0 1192 | 9397292,0.0000000000,0 1193 | 9401060,0.0000000000,0 1194 | 9404836,0.0000000000,0 1195 | 9408604,0.0000000000,0 1196 | 9412372,0.0000000000,0 1197 | 9416156,0.0000000000,0 1198 | 9419972,0.0146627559,0 1199 | 9423844,0.0488758563,0 1200 | 9427708,0.0782013654,0 1201 | 9431572,0.0977517127,0 1202 | 9435452,0.0782013654,0 1203 | 9439316,0.0928641223,0 1204 | 9443188,0.1564027309,0 1205 | 9447060,0.2297165155,0 1206 | 9450940,0.2785923719,0 1207 | 9454820,0.2932551193,0 1208 | 9458680,0.3128054618,0 1209 | 9462548,0.3763440847,0 1210 | 9466412,0.4398827075,0 1211 | 9470276,0.4643206119,0 1212 | 9474140,0.4740957736,0 1213 | 9478004,0.4496578693,0 1214 | 9481876,0.4643206119,0 1215 | 9485736,0.5083088874,0 1216 | 9489584,0.5278592109,0 1217 | 9493452,0.5229716300,0 1218 | 9497316,0.4887585639,0 1219 | 9501188,0.4985337257,0 1220 | 9505068,0.5376344203,0 1221 | 9508932,0.5816226482,0 1222 | 9512804,0.5816226482,0 1223 | 9516668,0.5816226482,0 1224 | 9520540,0.6011730194,0 1225 | 9524412,0.6598240852,0 1226 | 9528276,0.7135874748,0 1227 | 9532148,0.7429130077,0 1228 | 9536012,0.7575757503,0 1229 | 9539884,0.7575757503,0 1230 | 9543740,0.8015640258,0 1231 | 9547596,0.8553275108,0 1232 | 9551468,0.8797654151,0 1233 | 9555340,0.8895405769,0 1234 | 9559212,0.8699902534,0 1235 | 9563076,0.8993157386,0 1236 | 9566948,0.9433039665,0 1237 | 9570820,0.9872922897,0 1238 | 9574680,1.0410556793,0 1239 | 9578540,1.1583577394,0 1240 | 9582420,1.3929618644,0 1241 | 9586304,1.7253177165,0 1242 | 9590188,2.1114368438,0 1243 | 9594076,2.4046921730,0 1244 | 9597948,2.6001954078,0 1245 | 9601820,2.5953078269,0 1246 | 9605684,2.3851418495,0 1247 | 9609560,1.9990224838,0 1248 | 9613436,1.5151515007,0 1249 | 9617316,1.0850440216,1 1250 | 9621180,0.7917888641,0 1251 | 9625052,0.6842619895,0 1252 | 9628924,0.7086998939,0 1253 | 9632784,0.7869012832,0 1254 | 9636652,0.8944281578,0 1255 | 9640512,1.0410556793,0 1256 | 9644388,1.2170088291,0 1257 | 9648264,1.3685239553,0 1258 | 9652144,1.4565005302,0 1259 | 9656016,1.4956011772,0 1260 | 9659892,1.5395894050,0 1261 | 9663760,1.5933528900,0 1262 | 9667636,1.6471162796,0 1263 | 9671508,1.6617790222,0 1264 | 9675396,1.6373411178,0 1265 | 9679284,1.6373411178,0 1266 | 9683172,1.6520038604,0 1267 | 9686020,1.6862169265,0 1268 | 9690924,1.6813293457,0 1269 | 9694812,1.6373411178,0 1270 | 9698696,1.6129032135,0 1271 | 9702576,1.6080156326,0 1272 | 9706444,1.6373411178,0 1273 | 9710332,1.6373411178,0 1274 | 9714224,1.6129032135,0 1275 | 9718108,1.5640274047,0 1276 | 9721980,1.5689149856,0 1277 | 9725856,1.6080156326,0 1278 | 9729724,1.6177907943,0 1279 | 9733600,1.5933528900,0 1280 | 9737476,1.5689149856,0 1281 | 9741356,1.5689149856,0 1282 | 9745228,1.6080156326,0 1283 | 9749108,1.6324535369,0 1284 | 9752996,1.6177907943,0 1285 | 9756876,1.5884653091,0 1286 | 9760744,1.5933528900,0 1287 | 9764604,1.6422286987,0 1288 | 9768496,1.6813293457,0 1289 | 9772380,1.6764417648,0 1290 | 9776268,1.6471162796,0 1291 | 9780148,1.6520038604,0 1292 | 9784024,1.6862169265,0 1293 | 9787912,1.7253177165,0 1294 | 9791808,1.7253177165,0 1295 | 9795688,1.7008798122,0 1296 | 9799548,1.6911046504,0 1297 | 9803424,1.7253177165,0 1298 | 9807308,1.7693059444,0 1299 | 9811188,1.7790811061,0 1300 | 9815068,1.7497556209,0 1301 | 9818944,1.7399804592,0 1302 | 9822820,1.7546432018,0 1303 | 9826692,1.7888562679,0 1304 | 9830564,1.7888562679,0 1305 | 9834436,1.7546432018,0 1306 | 9838320,1.7155425548,0 1307 | 9842208,1.7253177165,0 1308 | 9846096,1.7448680400,0 1309 | 9849948,1.7350928783,0 1310 | 9853824,1.6862169265,0 1311 | 9857704,1.6226783752,0 1312 | 9861580,1.5835777282,0 1313 | 9865460,1.5884653091,0 1314 | 9869340,1.5542521476,0 1315 | 9873224,1.4907135963,0 1316 | 9877100,1.4173997879,0 1317 | 9880988,1.3831867027,0 1318 | 9884868,1.3880742835,0 1319 | 9888732,1.3929618644,0 1320 | 9892604,1.3636363744,0 1321 | 9896492,1.3098728656,0 1322 | 9900372,1.2903225421,0 1323 | 9904252,1.3147605657,0 1324 | 9908124,1.3489736318,0 1325 | 9912012,1.3391984701,0 1326 | 9915892,1.3147605657,0 1327 | 9919772,1.3098728656,0 1328 | 9923644,1.3440860509,0 1329 | 9927492,1.3929618644,0 1330 | 9931372,1.4076246261,0 1331 | 9935252,1.3978494453,0 1332 | 9939140,1.3880742835,0 1333 | 9943012,1.4222873687,0 1334 | 9946904,1.4760508537,0 1335 | 9950772,1.5004887580,0 1336 | 9954636,1.4809384346,0 1337 | 9958512,1.4809384346,0 1338 | 9962380,1.5053763389,0 1339 | 9966260,1.5542521476,0 1340 | 9970148,1.5835777282,0 1341 | 9974036,1.5738025665,0 1342 | 9977916,1.5640274047,0 1343 | 9981780,1.5835777282,0 1344 | 9985664,1.6324535369,0 1345 | 9989540,1.6617790222,0 1346 | 9993428,1.6520038604,0 1347 | 9997292,1.6275659561,0 1348 | 10001180,1.6422286987,0 1349 | 10005100,1.6813293457,0 1350 | 10009032,1.7155425548,0 1351 | 10012952,1.7106549739,0 1352 | 10016860,1.6813293457,0 1353 | 10020780,1.6813293457,0 1354 | 10024704,1.7399804592,0 1355 | 10028620,1.7644183635,0 1356 | 10032540,1.7595307826,0 1357 | 10036464,1.7399804592,0 1358 | 10040376,1.7253177165,0 1359 | 10044292,1.7693059444,0 1360 | 10048204,1.8035190582,0 1361 | 10052120,1.8035190582,0 1362 | 10056028,1.7644183635,0 1363 | 10059948,1.7595307826,0 1364 | 10063860,1.7986314296,0 1365 | 10067780,1.8328446388,0 1366 | 10071696,1.8377322196,0 1367 | 10075620,1.8181818962,0 1368 | 10079540,1.7888562679,0 1369 | 10083460,1.8230694770,0 1370 | 10087364,1.8817204475,0 1371 | 10091288,1.8670577049,0 1372 | 10095200,1.8377322196,0 1373 | 10099124,1.8132943153,0 1374 | 10103056,1.8426198005,0 1375 | 10106956,1.8914956092,0 1376 | 10110868,1.8914956092,0 1377 | 10114792,1.8621701240,0 1378 | 10118700,1.8328446388,0 1379 | 10122620,1.8572825431,0 1380 | 10126544,1.9012707710,0 1381 | 10130452,1.9110459327,0 1382 | 10134364,1.8817204475,0 1383 | 10138284,1.8523949623,0 1384 | 10142208,1.8670577049,0 1385 | 10146120,1.9208210945,0 1386 | 10150032,1.9403715133,0 1387 | 10153952,1.9208210945,0 1388 | 10157864,1.9012707710,0 1389 | 10161772,1.9110459327,0 1390 | 10165688,1.9648094177,0 1391 | 10169600,1.9892473220,0 1392 | 10173512,1.9696969985,0 1393 | 10177424,1.9452590942,0 1394 | 10181344,1.9696969985,0 1395 | 10185260,2.0332355499,0 1396 | 10189180,2.0723361968,0 1397 | 10193100,2.0674486160,0 1398 | 10197012,2.0381231307,0 1399 | 10200916,2.0430107116,0 1400 | 10204828,2.0967741012,0 1401 | 10208732,2.1163244247,0 1402 | 10212660,2.0967741012,0 1403 | 10216564,2.0527858734,0 1404 | 10220476,2.0332355499,0 1405 | 10224396,2.0527858734,0 1406 | 10228316,2.0625610351,0 1407 | 10232228,2.0234603881,0 1408 | 10236144,1.9550342559,0 1409 | 10240056,1.9257086753,0 1410 | 10243960,1.9452590942,0 1411 | 10247872,1.9745845794,0 1412 | 10251792,1.9648094177,0 1413 | 10255704,1.9257086753,0 1414 | 10259620,1.9159335136,0 1415 | 10263532,1.9403715133,0 1416 | 10267456,1.9794721603,0 1417 | 10271376,1.9843597412,0 1418 | 10275304,1.9501466751,0 1419 | 10279224,1.9305962562,0 1420 | 10283136,1.9696969985,0 1421 | 10287044,2.0087976455,0 1422 | 10290948,2.0136852264,0 1423 | 10294872,1.9794721603,0 1424 | 10298792,1.9501466751,0 1425 | 10302712,1.9843597412,0 1426 | 10306628,2.0381231307,0 1427 | 10310524,2.1309874057,0 1428 | 10314436,2.2238514423,0 1429 | 10318364,2.4144673347,0 1430 | 10322288,2.7468230724,0 1431 | 10326204,3.1036167144,0 1432 | 10330124,3.4457478523,0 1433 | 10334036,3.6217007637,0 1434 | 10337956,3.5483870506,0 1435 | 10341868,3.2795698642,0 1436 | 10345792,2.8592374801,0 1437 | 10349692,2.3460409641,0 1438 | 10353592,1.8719452857,1 1439 | 10357508,1.5151515007,0 1440 | 10361428,1.3489736318,0 1441 | 10365352,1.3587487936,0 1442 | 10369276,1.4418377876,0 1443 | 10373188,1.5347018241,0 1444 | 10377100,1.6275659561,0 1445 | 10381024,1.7399804592,0 1446 | 10384936,1.8621701240,0 1447 | 10388848,1.9550342559,0 1448 | 10392760,1.9892473220,0 1449 | 10396664,1.9892473220,0 1450 | 10400572,2.0136852264,0 1451 | 10404492,2.0772237777,0 1452 | 10408404,2.1309874057,0 1453 | 10412316,2.1358749866,0 1454 | 10416236,2.1212120056,0 1455 | 10420148,2.1309874057,0 1456 | 10424060,2.1847507953,0 1457 | 10427980,2.2385141849,0 1458 | 10431900,2.2434017658,0 1459 | 10435820,2.2189638614,0 1460 | 10439732,2.2238514423,0 1461 | 10443652,2.2531769275,0 1462 | 10447564,2.3020527362,0 1463 | 10451476,2.3118278980,0 1464 | 10455396,2.2873899936,0 1465 | 10459316,2.2922775745,0 1466 | 10463244,2.3216030597,0 1467 | 10467148,2.3704788684,0 1468 | 10471068,2.3851418495,0 1469 | 10474996,2.3607037067,0 1470 | 10478908,2.3509285449,0 1471 | 10482828,2.3802542686,0 1472 | 10486732,2.4242424964,0 1473 | 10490652,2.4584555625,0 1474 | 10494564,2.4144673347,0 1475 | 10498484,2.3998045921,0 1476 | 10502396,2.4340176582,0 1477 | 10506308,2.4877810478,0 1478 | 10510212,2.5122189521,0 1479 | 10514136,2.4975562095,0 1480 | 10518052,2.4780058860,0 1481 | 10521956,2.5073313713,0 1482 | 10525884,2.5708699226,0 1483 | 10529788,2.6050829887,0 1484 | 10533684,2.6001954078,0 1485 | 10537580,2.5757575035,0 1486 | 10541500,2.5953078269,0 1487 | 10545420,2.6490714550,0 1488 | 10549324,2.6637341976,0 1489 | 10553244,2.6441838741,0 1490 | 10557164,2.6050829887,0 1491 | 10561076,2.6001954078,0 1492 | 10564980,2.6344087123,0 1493 | 10568900,2.6490714550,0 1494 | 10572820,2.6050829887,0 1495 | 10576708,2.5464320182,0 1496 | 10580628,2.5122189521,0 1497 | 10584540,2.5219941139,0 1498 | 10588460,2.5171065330,0 1499 | 10592372,2.4584555625,0 1500 | 10596284,2.3655912876,0 1501 | 10600204,2.3069403171,0 1502 | 10604116,2.2678396701,0 1503 | 10608028,2.2482893466,0 1504 | 10611948,2.1847507953,0 1505 | 10615860,2.1016616821,0 1506 | 10619772,2.0576734542,0 1507 | 10623684,2.0381231307,0 1508 | 10627588,2.0430107116,0 1509 | 10631500,2.0234603881,0 1510 | 10635416,1.9745845794,0 1511 | 10639328,1.9354838371,0 1512 | 10643256,1.9550342559,0 1513 | 10647176,1.9990224838,0 1514 | 10651096,1.9990224838,0 1515 | 10655016,1.9648094177,0 1516 | 10658928,1.9501466751,0 1517 | 10662840,1.9745845794,0 1518 | 10666748,2.0332355499,0 1519 | 10670660,2.0478982925,0 1520 | 10674564,2.0234603881,0 1521 | 10678480,1.9990224838,0 1522 | 10682396,2.0283479690,0 1523 | 10686292,2.0821113586,0 1524 | 10690212,2.1065492630,0 1525 | 10694124,2.0918865203,0 1526 | 10698036,2.0576734542,0 1527 | 10701956,2.0772237777,0 1528 | 10705868,2.1309874057,0 1529 | 10709780,2.1603128910,0 1530 | 10713684,2.1358749866,0 1531 | 10717596,2.1065492630,0 1532 | 10721516,2.1260998249,0 1533 | 10725428,2.1700880527,0 1534 | 10729332,2.2043011188,0 1535 | 10733244,2.1847507953,0 1536 | 10737156,2.1505377292,0 1537 | 10741076,2.1505377292,0 1538 | 10744996,2.1945259571,0 1539 | 10748916,2.2238514423,0 1540 | 10752844,2.2140762805,0 1541 | 10756748,2.1700880527,0 1542 | 10760660,2.1700880527,0 1543 | 10764556,2.1994135379,0 1544 | 10768468,2.2434017658,0 1545 | 10772380,2.2140762805,0 1546 | 10776292,2.1749756336,0 1547 | 10780212,2.1603128910,0 1548 | 10784124,2.1994135379,0 1549 | 10788044,2.2385141849,0 1550 | 10791972,2.2238514423,0 1551 | 10795892,2.1847507953,0 1552 | 10799812,2.1749756336,0 1553 | 10803732,2.1994135379,0 1554 | 10807660,2.2434017658,0 1555 | 10811572,2.2482893466,0 1556 | 10815500,2.2043011188,0 1557 | 10819404,2.1847507953,0 1558 | 10823316,2.2091886997,0 1559 | 10827236,2.2482893466,0 1560 | 10831156,2.2531769275,0 1561 | 10835084,2.2238514423,0 1562 | 10839004,2.1896383762,0 1563 | 10842932,2.2189638614,0 1564 | 10846852,2.2776148319,0 1565 | 10850772,2.2678396701,0 1566 | 10854684,2.2385141849,0 1567 | 10858588,2.2091886997,0 1568 | 10862492,2.2385141849,0 1569 | 10866412,2.2922775745,0 1570 | 10870332,2.3167154788,0 1571 | 10874252,2.3069403171,0 1572 | 10878172,2.2825024127,0 1573 | 10882088,2.3167154788,0 1574 | 10886004,2.3900294303,0 1575 | 10889908,2.4242424964,0 1576 | 10893828,2.4242424964,0 1577 | 10897740,2.4046921730,0 1578 | 10901660,2.4437928199,0 1579 | 10905564,2.5317692756,0 1580 | 10909492,2.5806450843,0 1581 | 10913404,2.5855326652,0 1582 | 10917332,2.5659823417,0 1583 | 10921252,2.5855326652,0 1584 | 10925180,2.6490714550,0 1585 | 10929084,2.6881721019,0 1586 | 10933004,2.6735093593,0 1587 | 10936924,2.6344087123,0 1588 | 10940844,2.6197457313,0 1589 | 10944772,2.6539590358,0 1590 | 10948680,2.6832845211,0 1591 | 10952596,2.6344087123,0 1592 | 10956516,2.5708699226,0 1593 | 10960428,2.5366568565,0 1594 | 10964348,2.5610947608,0 1595 | 10968260,2.5953078269,0 1596 | 10972172,2.5806450843,0 1597 | 10976076,2.5464320182,0 1598 | 10979996,2.5366568565,0 1599 | -------------------------------------------------------------------------------- /ecg_data/ecg_data_1.csv: -------------------------------------------------------------------------------- 1 | timestamp,ecg_measurement 2 | 6034140,1.5933528900 3 | 6038012,1.6764417648 4 | 6041904,1.7155425548 5 | 6045784,1.7302052974 6 | 6049652,1.7644183635 7 | 6053532,1.8035190582 8 | 6057412,1.8328446388 9 | 6061296,1.8377322196 10 | 6065180,1.8181818962 11 | 6069064,1.8328446388 12 | 6072948,1.8768328666 13 | 6076836,1.9012707710 14 | 6080708,1.9012707710 15 | 6084572,1.8817204475 16 | 6088452,1.8866080284 17 | 6092320,1.9012707710 18 | 6096192,1.9257086753 19 | 6100064,1.9257086753 20 | 6103940,1.9012707710 21 | 6107816,1.9012707710 22 | 6111688,1.9257086753 23 | 6115568,1.9648094177 24 | 6119444,1.9696969985 25 | 6123312,1.9501466751 26 | 6127200,1.9354838371 27 | 6131088,1.9648094177 28 | 6134964,2.0039100646 29 | 6138820,2.0234603881 30 | 6142692,2.0039100646 31 | 6146548,2.0039100646 32 | 6150412,2.0136852264 33 | 6154280,2.0625610351 34 | 6158148,2.0967741012 35 | 6162020,2.0869989395 36 | 6165892,2.0723361968 37 | 6169772,2.0918865203 38 | 6173636,2.1358749866 39 | 6177516,2.1798632144 40 | 6181396,2.1896383762 41 | 6185276,2.1896383762 42 | 6189156,2.1994135379 43 | 6193036,2.2482893466 44 | 6196924,2.3020527362 45 | 6200804,2.2971651554 46 | 6204692,2.2776148319 47 | 6208572,2.2776148319 48 | 6212452,2.3118278980 49 | 6216324,2.3509285449 50 | 6220196,2.3509285449 51 | 6224076,2.3069403171 52 | 6227948,2.2825024127 53 | 6231828,2.3069403171 54 | 6235700,2.3167154788 55 | 6239580,2.2971651554 56 | 6243460,2.2287390232 57 | 6247324,2.1700880527 58 | 6251196,2.1163244247 59 | 6255084,2.0772237777 60 | 6258964,2.0185728073 61 | 6262832,1.9257086753 62 | 6266700,1.8328446388 63 | 6270580,1.7790811061 64 | 6274456,1.7546432018 65 | 6278328,1.7302052974 66 | 6282196,1.6813293457 67 | 6286084,1.6373411178 68 | 6289972,1.6177907943 69 | 6293856,1.6226783752 70 | 6297740,1.6373411178 71 | 6301620,1.6324535369 72 | 6305504,1.5933528900 73 | 6309364,1.5884653091 74 | 6313248,1.6080156326 75 | 6317116,1.6422286987 76 | 6320996,1.6324535369 77 | 6324888,1.6129032135 78 | 6328772,1.6177907943 79 | 6332652,1.6324535369 80 | 6336532,1.6715541839 81 | 6340404,1.6568914413 82 | 6344292,1.6275659561 83 | 6348184,1.6226783752 84 | 6352068,1.6373411178 85 | 6355948,1.6666666030 86 | 6359832,1.6813293457 87 | 6363720,1.6715541839 88 | 6367608,1.6715541839 89 | 6371492,1.6959922313 90 | 6375364,1.7350928783 91 | 6379248,1.7497556209 92 | 6383128,1.7399804592 93 | 6387008,1.7399804592 94 | 6390876,1.7595307826 95 | 6394748,1.7937438488 96 | 6398640,1.8084066390 97 | 6402504,1.8035190582 98 | 6406364,1.7888562679 99 | 6410252,1.8035190582 100 | 6414116,1.8230694770 101 | 6417992,1.8426198005 102 | 6421864,1.8328446388 103 | 6425744,1.8279570579 104 | 6429616,1.8426198005 105 | 6433480,1.8670577049 106 | 6437344,1.8866080284 107 | 6441212,1.8963831901 108 | 6445092,1.8670577049 109 | 6448956,1.8817204475 110 | 6452836,1.8817204475 111 | 6456716,1.8914956092 112 | 6460600,1.8719452857 113 | 6464472,1.8426198005 114 | 6468332,1.8328446388 115 | 6472224,1.8377322196 116 | 6476112,1.8621701240 117 | 6479984,1.8377322196 118 | 6483864,1.8377322196 119 | 6487748,1.8132943153 120 | 6491640,1.8279570579 121 | 6495512,1.8426198005 122 | 6499380,1.8426198005 123 | 6503244,1.8181818962 124 | 6507136,1.8035190582 125 | 6511008,1.8084066390 126 | 6514872,1.8279570579 127 | 6518740,1.8328446388 128 | 6522620,1.8132943153 129 | 6526500,1.7986314296 130 | 6530384,1.8084066390 131 | 6534248,1.8426198005 132 | 6538108,1.8523949623 133 | 6542000,1.8279570579 134 | 6545876,1.7986314296 135 | 6549756,1.8035190582 136 | 6553636,1.8328446388 137 | 6557504,1.8572825431 138 | 6561384,1.8377322196 139 | 6565260,1.7986314296 140 | 6569140,1.7937438488 141 | 6573016,1.8279570579 142 | 6576884,1.8768328666 143 | 6580768,1.8719452857 144 | 6584656,1.8377322196 145 | 6588524,1.8328446388 146 | 6592400,1.8621701240 147 | 6596280,1.9012707710 148 | 6600148,1.9159335136 149 | 6604040,1.8963831901 150 | 6607916,1.8866080284 151 | 6611780,1.9110459327 152 | 6615664,1.9599218368 153 | 6619544,1.9941349029 154 | 6623416,1.9696969985 155 | 6627288,1.9452590942 156 | 6631168,1.9354838371 157 | 6635056,1.9354838371 158 | 6638944,1.9305962562 159 | 6642824,1.8866080284 160 | 6646688,1.8475073814 161 | 6650560,1.8084066390 162 | 6654428,1.7986314296 163 | 6658312,1.7888562679 164 | 6662188,1.7693059444 165 | 6666056,1.7253177165 166 | 6669940,1.7057673931 167 | 6673824,1.7008798122 168 | 6677696,1.7155425548 169 | 6681568,1.7106549739 170 | 6685444,1.6911046504 171 | 6689312,1.6715541839 172 | 6693196,1.6764417648 173 | 6697084,1.6959922313 174 | 6700964,1.6959922313 175 | 6704844,1.6813293457 176 | 6708732,1.6666666030 177 | 6712608,1.6715541839 178 | 6716476,1.6959922313 179 | 6720348,1.6959922313 180 | 6724240,1.7008798122 181 | 6728112,1.7399804592 182 | 6731984,1.8572825431 183 | 6735860,2.0674486160 184 | 6739732,2.3704788684 185 | 6743612,2.7077224254 186 | 6747484,3.0205278396 187 | 6751340,3.2551319599 188 | 6755220,3.3137829303 189 | 6759100,3.1280548572 190 | 6762980,2.7614858150 191 | 6766860,2.2629520893 192 | 6770736,1.7595307826 193 | 6774604,1.3929618644 194 | 6778480,1.1583577394 195 | 6782356,1.0850440216 196 | 6786220,1.0850440216 197 | 6790080,1.1583577394 198 | 6793964,1.2658846378 199 | 6797844,1.3880742835 200 | 6801728,1.4956011772 201 | 6805596,1.5640274047 202 | 6809468,1.5884653091 203 | 6813340,1.6324535369 204 | 6817228,1.6617790222 205 | 6821108,1.6959922313 206 | 6824996,1.6959922313 207 | 6828868,1.6911046504 208 | 6832740,1.7057673931 209 | 6836624,1.7302052974 210 | 6840484,1.7546432018 211 | 6844348,1.7644183635 212 | 6848236,1.7595307826 213 | 6852108,1.7693059444 214 | 6855980,1.8035190582 215 | 6859856,1.8279570579 216 | 6863728,1.8475073814 217 | 6867608,1.8328446388 218 | 6871480,1.8426198005 219 | 6875352,1.8670577049 220 | 6879212,1.8963831901 221 | 6883092,1.9110459327 222 | 6886976,1.9159335136 223 | 6890860,1.9012707710 224 | 6894736,1.9159335136 225 | 6898616,1.9403715133 226 | 6902488,1.9648094177 227 | 6906360,1.9648094177 228 | 6910240,1.9696969985 229 | 6914112,1.9843597412 230 | 6917988,2.0234603881 231 | 6921860,2.0478982925 232 | 6925732,2.0576734542 233 | 6929612,2.0723361968 234 | 6933476,2.0821113586 235 | 6937348,2.1260998249 236 | 6941228,2.1554253101 237 | 6945108,2.1896383762 238 | 6948996,2.1847507953 239 | 6952868,2.2091886997 240 | 6956740,2.2434017658 241 | 6960620,2.2776148319 242 | 6964500,2.2873899936 243 | 6968368,2.2873899936 244 | 6972236,2.2922775745 245 | 6976116,2.3167154788 246 | 6979996,2.3460409641 247 | 6983868,2.3362658023 248 | 6987740,2.3118278980 249 | 6991620,2.3020527362 250 | 6995484,2.3069403171 251 | 6999348,2.3167154788 252 | 7003228,2.2873899936 253 | 7007100,2.2385141849 254 | 7010980,2.1749756336 255 | 7014868,2.1309874057 256 | 7018740,2.0918865203 257 | 7022616,2.0234603881 258 | 7026480,1.9550342559 259 | 7030352,1.8621701240 260 | 7034228,1.7986314296 261 | 7038116,1.7546432018 262 | 7041996,1.7057673931 263 | 7045876,1.6520038604 264 | 7049740,1.5982404708 265 | 7053612,1.5738025665 266 | 7057476,1.5689149856 267 | 7061340,1.5591397285 268 | 7065220,1.5444769859 269 | 7069100,1.5200390815 270 | 7072964,1.5200390815 271 | 7076828,1.5347018241 272 | 7080708,1.5591397285 273 | 7084588,1.5591397285 274 | 7088476,1.5542521476 275 | 7092348,1.5689149856 276 | 7096228,1.5884653091 277 | 7100108,1.6177907943 278 | 7103992,1.6226783752 279 | 7107876,1.6177907943 280 | 7111748,1.6177907943 281 | 7115620,1.6422286987 282 | 7119500,1.6764417648 283 | 7123380,1.6764417648 284 | 7127264,1.6715541839 285 | 7131148,1.6666666030 286 | 7135024,1.6862169265 287 | 7138912,1.7106549739 288 | 7142792,1.7155425548 289 | 7146680,1.7106549739 290 | 7150552,1.7008798122 291 | 7154416,1.7106549739 292 | 7158296,1.7302052974 293 | 7162168,1.7399804592 294 | 7166040,1.7302052974 295 | 7169912,1.7253177165 296 | 7173796,1.7350928783 297 | 7177676,1.7644183635 298 | 7181556,1.7937438488 299 | 7185444,1.7741935253 300 | 7189316,1.7595307826 301 | 7193196,1.7546432018 302 | 7197076,1.7693059444 303 | 7200956,1.7888562679 304 | 7204836,1.7741935253 305 | 7208724,1.7595307826 306 | 7212608,1.7497556209 307 | 7216480,1.7644183635 308 | 7220356,1.7839686870 309 | 7224224,1.7790811061 310 | 7228100,1.7644183635 311 | 7231988,1.7644183635 312 | 7235876,1.7839686870 313 | 7239740,1.7986314296 314 | 7243620,1.7986314296 315 | 7247492,1.7790811061 316 | 7251356,1.7839686870 317 | 7255232,1.7888562679 318 | 7259108,1.8132943153 319 | 7263000,1.8084066390 320 | 7266860,1.7937438488 321 | 7270748,1.7741935253 322 | 7274628,1.7839686870 323 | 7278496,1.8035190582 324 | 7282364,1.8132943153 325 | 7286252,1.8132943153 326 | 7290140,1.7839686870 327 | 7294012,1.7937438488 328 | 7297896,1.8084066390 329 | 7301764,1.8181818962 330 | 7305656,1.8084066390 331 | 7309508,1.7986314296 332 | 7313380,1.7986314296 333 | 7317264,1.8279570579 334 | 7321144,1.8426198005 335 | 7325024,1.8377322196 336 | 7328912,1.8279570579 337 | 7332784,1.8279570579 338 | 7336664,1.8523949623 339 | 7340540,1.8768328666 340 | 7344412,1.8817204475 341 | 7348284,1.8768328666 342 | 7352156,1.8817204475 343 | 7356040,1.9061583518 344 | 7359920,1.9305962562 345 | 7363800,1.9354838371 346 | 7366660,1.9159335136 347 | 7371560,1.9159335136 348 | 7375444,1.9354838371 349 | 7379328,1.9648094177 350 | 7383208,1.9745845794 351 | 7387080,1.9599218368 352 | 7390968,1.9452590942 353 | 7394848,1.9501466751 354 | 7398728,1.9599218368 355 | 7402600,1.9452590942 356 | 7406468,1.9159335136 357 | 7410348,1.8817204475 358 | 7414232,1.8719452857 359 | 7418112,1.8719452857 360 | 7421996,1.8523949623 361 | 7425876,1.8181818962 362 | 7429764,1.7888562679 363 | 7433644,1.7790811061 364 | 7437508,1.7986314296 365 | 7441380,1.7937438488 366 | 7445260,1.7888562679 367 | 7449140,1.7644183635 368 | 7453028,1.7693059444 369 | 7456908,1.7888562679 370 | 7460792,1.8084066390 371 | 7464652,1.7986314296 372 | 7468524,1.7839686870 373 | 7472392,1.7790811061 374 | 7476268,1.7839686870 375 | 7480132,1.7937438488 376 | 7484020,1.7937438488 377 | 7487908,1.8328446388 378 | 7491800,1.9403715133 379 | 7495676,2.1554253101 380 | 7499560,2.4682307243 381 | 7503428,2.8005865097 382 | 7507292,3.1329424381 383 | 7511172,3.4115347862 384 | 7515052,3.5190615653 385 | 7518932,3.3577711582 386 | 7522824,2.9765396118 387 | 7526708,2.4437928199 388 | 7530576,1.9061583518 389 | 7534436,1.5151515007 390 | 7538316,1.2952101230 391 | 7542196,1.2316715717 392 | 7546084,1.2463343143 393 | 7549972,1.3294233083 394 | 7553848,1.4369501113 395 | 7557724,1.5591397285 396 | 7561604,1.6422286987 397 | 7565484,1.6862169265 398 | 7569360,1.7106549739 399 | 7573236,1.7204301357 400 | 7577116,1.7546432018 401 | 7580996,1.7741935253 402 | 7584876,1.7741935253 403 | 7588756,1.7693059444 404 | 7592636,1.7741935253 405 | 7596520,1.8084066390 406 | 7600384,1.8279570579 407 | 7604260,1.8328446388 408 | 7608132,1.8230694770 409 | 7612004,1.8181818962 410 | 7615896,1.8475073814 411 | 7619776,1.8719452857 412 | 7623652,1.8768328666 413 | 7627528,1.8670577049 414 | 7631400,1.8572825431 415 | 7635284,1.8768328666 416 | 7639168,1.9061583518 417 | 7643036,1.9110459327 418 | 7646920,1.9061583518 419 | 7650796,1.9012707710 420 | 7654672,1.9159335136 421 | 7658548,1.9452590942 422 | 7662416,1.9648094177 423 | 7666296,1.9648094177 424 | 7670176,1.9599218368 425 | 7674056,1.9745845794 426 | 7677932,2.0039100646 427 | 7681796,2.0234603881 428 | 7685668,2.0234603881 429 | 7689532,2.0185728073 430 | 7693396,2.0381231307 431 | 7697268,2.0772237777 432 | 7701148,2.1114368438 433 | 7705028,2.1163244247 434 | 7708916,2.1212120056 435 | 7712792,2.1407625675 436 | 7716668,2.1652004718 437 | 7720540,2.1994135379 438 | 7724420,2.2091886997 439 | 7728292,2.2140762805 440 | 7732156,2.2091886997 441 | 7736028,2.2434017658 442 | 7739908,2.2580645084 443 | 7743780,2.2678396701 444 | 7747652,2.2287390232 445 | 7751516,2.2189638614 446 | 7755396,2.2091886997 447 | 7759276,2.2140762805 448 | 7763148,2.1847507953 449 | 7767020,2.1407625675 450 | 7770900,2.0821113586 451 | 7774780,2.0381231307 452 | 7778664,1.9941349029 453 | 7782536,1.9403715133 454 | 7786408,1.8523949623 455 | 7790292,1.7741935253 456 | 7794184,1.7106549739 457 | 7798064,1.6715541839 458 | 7801940,1.6324535369 459 | 7805820,1.5786901473 460 | 7809700,1.5249266624 461 | 7813576,1.4956011772 462 | 7817452,1.4907135963 463 | 7821324,1.4907135963 464 | 7825200,1.4858260154 465 | 7829080,1.4858260154 466 | 7832960,1.4907135963 467 | 7836844,1.5249266624 468 | 7840724,1.5640274047 469 | 7844588,1.5884653091 470 | 7848468,1.5982404708 471 | 7852332,1.6324535369 472 | 7856212,1.6959922313 473 | 7860092,1.7839686870 474 | 7863964,1.8523949623 475 | 7867856,1.8963831901 476 | 7871736,1.9305962562 477 | 7875620,1.9794721603 478 | 7879492,2.0332355499 479 | 7883364,2.0625610351 480 | 7887244,2.0527858734 481 | 7891116,2.0332355499 482 | 7894988,2.0332355499 483 | 7898868,2.0723361968 484 | 7902748,2.0772237777 485 | 7906628,2.0674486160 486 | 7910500,2.0576734542 487 | 7914364,2.0772237777 488 | 7918244,2.1065492630 489 | 7922124,2.1016616821 490 | 7926012,2.0625610351 491 | 7929892,2.0381231307 492 | 7933764,2.0283479690 493 | 7937636,2.0332355499 494 | 7941508,2.0136852264 495 | 7945384,1.9745845794 496 | 7949256,1.9501466751 497 | 7953144,1.9501466751 498 | 7957032,1.9599218368 499 | 7960912,1.9501466751 500 | 7964800,1.9257086753 501 | 7968668,1.9110459327 502 | 7972544,1.9061583518 503 | 7976412,1.9110459327 504 | 7980292,1.9110459327 505 | 7984172,1.8768328666 506 | 7988048,1.8572825431 507 | 7991936,1.8670577049 508 | 7995816,1.8866080284 509 | 7999684,1.8914956092 510 | 8003552,1.8523949623 511 | 8007432,1.8230694770 512 | 8011304,1.8279570579 513 | 8015180,1.8523949623 514 | 8019064,1.8621701240 515 | 8022936,1.8377322196 516 | 8026824,1.8230694770 517 | 8030696,1.8084066390 518 | 8034552,1.8230694770 519 | 8038412,1.8475073814 520 | 8042288,1.8279570579 521 | 8046156,1.8132943153 522 | 8050044,1.8035190582 523 | 8053924,1.8132943153 524 | 8057804,1.8181818962 525 | 8061696,1.8084066390 526 | 8065548,1.7888562679 527 | 8069420,1.7790811061 528 | 8073292,1.7888562679 529 | 8077176,1.8084066390 530 | 8081044,1.8181818962 531 | 8084932,1.7937438488 532 | 8088812,1.7937438488 533 | 8092700,1.8084066390 534 | 8096552,1.8377322196 535 | 8100432,1.8426198005 536 | 8104304,1.8426198005 537 | 8108176,1.8475073814 538 | 8112048,1.8670577049 539 | 8115920,1.8866080284 540 | 8119788,1.8963831901 541 | 8123672,1.8866080284 542 | 8127532,1.8768328666 543 | 8131400,1.8866080284 544 | 8135272,1.9061583518 545 | 8139152,1.8963831901 546 | 8143032,1.8670577049 547 | 8146896,1.8279570579 548 | 8150772,1.8035190582 549 | 8154648,1.7888562679 550 | 8158524,1.7741935253 551 | 8162404,1.7350928783 552 | 8166276,1.6959922313 553 | 8170168,1.6911046504 554 | 8174040,1.6862169265 555 | 8177928,1.7008798122 556 | 8181796,1.6813293457 557 | 8185676,1.6617790222 558 | 8189552,1.6520038604 559 | 8193412,1.6764417648 560 | 8197292,1.6911046504 561 | 8201164,1.6911046504 562 | 8205040,1.6715541839 563 | 8208916,1.6666666030 564 | 8212788,1.6764417648 565 | 8216668,1.6813293457 566 | 8220540,1.6764417648 567 | 8224416,1.7008798122 568 | 8228284,1.7790811061 569 | 8232160,1.9550342559 570 | 8236028,2.2238514423 571 | 8239916,2.5513195991 572 | 8243804,2.8836755752 573 | 8247688,3.1867058277 574 | 8251556,3.3724339008 575 | 8255420,3.3040077686 576 | 8259284,3.0058650970 577 | 8263140,2.5366568565 578 | 8267024,1.9892473220 579 | 8270896,1.5444769859 580 | 8274772,1.2512218952 581 | 8278660,1.1192570924 582 | 8282528,1.0997067642 583 | 8286392,1.1485825777 584 | 8290268,1.2609970569 585 | 8294140,1.3782991170 586 | 8298024,1.4809384346 587 | 8301900,1.5395894050 588 | 8305764,1.5591397285 589 | 8309644,1.5786901473 590 | 8313520,1.6129032135 591 | 8317396,1.6324535369 592 | 8321284,1.6324535369 593 | 8325168,1.6226783752 594 | 8329044,1.6177907943 595 | 8332924,1.6324535369 596 | 8336804,1.6617790222 597 | 8340688,1.6862169265 598 | 8344560,1.6715541839 599 | 8348436,1.6813293457 600 | 8352324,1.6911046504 601 | 8356196,1.7204301357 602 | 8360080,1.7302052974 603 | 8363944,1.7253177165 604 | 8367832,1.7155425548 605 | 8371720,1.7253177165 606 | 8375596,1.7595307826 607 | 8379468,1.7741935253 608 | 8383340,1.7839686870 609 | 8387220,1.7644183635 610 | 8391104,1.7790811061 611 | 8394972,1.7937438488 612 | 8398860,1.8084066390 613 | 8402728,1.8084066390 614 | 8406592,1.8084066390 615 | 8410452,1.8230694770 616 | 8414320,1.8475073814 617 | 8418188,1.8768328666 618 | 8422072,1.8963831901 619 | 8425948,1.8914956092 620 | 8429824,1.9159335136 621 | 8433708,1.9305962562 622 | 8437576,1.9648094177 623 | 8441448,1.9648094177 624 | 8445328,1.9648094177 625 | 8449208,1.9745845794 626 | 8453076,2.0039100646 627 | 8456940,2.0381231307 628 | 8460812,2.0723361968 629 | 8464684,2.0625610351 630 | 8468540,2.0674486160 631 | 8472396,2.0918865203 632 | 8476268,2.1114368438 633 | 8480156,2.1163244247 634 | 8484044,2.1065492630 635 | 8487916,2.0674486160 636 | 8491788,2.0772237777 637 | 8495668,2.0625610351 638 | 8499532,2.0576734542 639 | 8503396,2.0039100646 640 | 8507256,1.9501466751 641 | 8511132,1.9012707710 642 | 8515008,1.8621701240 643 | 8518888,1.8084066390 644 | 8522756,1.7302052974 645 | 8526628,1.6471162796 646 | 8530516,1.5835777282 647 | 8534388,1.5395894050 648 | 8538256,1.4956011772 649 | 8542124,1.4467253684 650 | 8546004,1.3978494453 651 | 8549888,1.3587487936 652 | 8553772,1.3489736318 653 | 8557652,1.3489736318 654 | 8561528,1.3391984701 655 | 8565396,1.3147605657 656 | 8569276,1.3049852848 657 | 8573156,1.3098728656 658 | 8577036,1.3294233083 659 | 8580908,1.3294233083 660 | 8584788,1.3196481466 661 | 8588676,1.3196481466 662 | 8592556,1.3343108892 663 | 8596432,1.3587487936 664 | 8600320,1.3734115362 665 | 8604212,1.3782991170 666 | 8608092,1.3880742835 667 | 8611976,1.3978494453 668 | 8615844,1.4271749496 669 | 8619724,1.4418377876 670 | 8623604,1.4418377876 671 | 8627492,1.4320625305 672 | 8631356,1.4418377876 673 | 8635240,1.4760508537 674 | 8639112,1.4858260154 675 | 8642992,1.4760508537 676 | 8646860,1.4711632728 677 | 8650744,1.4907135963 678 | 8654612,1.5004887580 679 | 8658476,1.5200390815 680 | 8662332,1.5200390815 681 | 8666196,1.5053763389 682 | 8670068,1.5053763389 683 | 8673948,1.5200390815 684 | 8677812,1.5444769859 685 | 8681692,1.5347018241 686 | 8685564,1.5249266624 687 | 8689436,1.5151515007 688 | 8693316,1.5249266624 689 | 8697196,1.5347018241 690 | 8701084,1.5200390815 691 | 8704948,1.5004887580 692 | 8708816,1.4858260154 693 | 8712696,1.4956011772 694 | 8716564,1.5102639198 695 | 8720432,1.5151515007 696 | 8724300,1.5053763389 697 | 8728184,1.4907135963 698 | 8732064,1.4907135963 699 | 8735940,1.5053763389 700 | 8739812,1.5102639198 701 | 8743692,1.5004887580 702 | 8747552,1.4809384346 703 | 8751424,1.4809384346 704 | 8755304,1.4907135963 705 | 8759180,1.5004887580 706 | 8763048,1.4956011772 707 | 8766928,1.4809384346 708 | 8770808,1.4858260154 709 | 8774684,1.4907135963 710 | 8778552,1.4956011772 711 | 8782432,1.4809384346 712 | 8786312,1.4662756919 713 | 8790200,1.4565005302 714 | 8794060,1.4613881111 715 | 8797956,1.4711632728 716 | 8801848,1.4662756919 717 | 8805728,1.4565005302 718 | 8809584,1.4516129493 719 | 8813452,1.4613881111 720 | 8817344,1.4956011772 721 | 8821232,1.4858260154 722 | 8825112,1.4858260154 723 | 8828984,1.4809384346 724 | 8832856,1.4858260154 725 | 8836736,1.4956011772 726 | 8840604,1.5053763389 727 | 8844484,1.4907135963 728 | 8848360,1.4907135963 729 | 8852236,1.5004887580 730 | 8856100,1.5200390815 731 | 8859964,1.5200390815 732 | 8863828,1.5053763389 733 | 8867704,1.4662756919 734 | 8871584,1.4369501113 735 | 8875460,1.4027370452 736 | 8879332,1.3782991170 737 | 8883212,1.3343108892 738 | 8887084,1.2952101230 739 | 8890964,1.2707722187 740 | 8894852,1.2658846378 741 | 8898732,1.2707722187 742 | 8902604,1.2658846378 743 | 8906484,1.2805473804 744 | 8910348,1.2756597995 745 | 8914228,1.2903225421 746 | 8918100,1.3098728656 747 | 8921972,1.3196481466 748 | 8925860,1.3196481466 749 | 8929748,1.3294233083 750 | 8933620,1.3391984701 751 | 8937500,1.3587487936 752 | 8941376,1.3685239553 753 | 8945260,1.3636363744 754 | 8949152,1.3685239553 755 | 8953036,1.4173997879 756 | 8956916,1.5200390815 757 | 8960792,1.7106549739 758 | 8964672,1.9696969985 759 | 8968540,2.3167154788 760 | 8972420,2.6783969402 761 | 8976292,3.0303030014 762 | 8980156,3.1720430850 763 | 8984028,3.0498533248 764 | 8987904,2.7174975872 765 | 8991788,2.2336266040 766 | 8995664,1.7399804592 767 | 8999532,1.3440860509 768 | 9003384,1.0703812837 769 | 9007268,0.9481915473 770 | 9011140,0.9481915473 771 | 9015016,1.0312805175 772 | 9018888,1.1485825777 773 | 9022772,1.2707722187 774 | 9026648,1.3587487936 775 | 9030524,1.4222873687 776 | 9034396,1.4711632728 777 | 9038284,1.5102639198 778 | 9042164,1.5298142433 779 | 9046052,1.5395894050 780 | 9049916,1.5493645668 781 | 9053796,1.5640274047 782 | 9057668,1.5786901473 783 | 9061540,1.5982404708 784 | 9065400,1.6080156326 785 | 9069280,1.6226783752 786 | 9073164,1.6373411178 787 | 9077052,1.6568914413 788 | 9080936,1.6715541839 789 | 9084816,1.6715541839 790 | 9088700,1.6764417648 791 | 9092584,1.6862169265 792 | 9096464,1.7106549739 793 | 9100336,1.7302052974 794 | 9104208,1.7399804592 795 | 9108084,1.7595307826 796 | 9111964,1.7546432018 797 | 9115844,1.7741935253 798 | 9119724,1.7839686870 799 | 9123596,1.7937438488 800 | 9127476,1.7888562679 801 | 9131356,1.7986314296 802 | 9135244,1.8328446388 803 | 9139128,1.8426198005 804 | 9143000,1.8572825431 805 | 9146888,1.8621701240 806 | 9150768,1.8719452857 807 | 9154648,1.8866080284 808 | 9158516,1.9159335136 809 | 9162400,1.9354838371 810 | 9166288,1.9550342559 811 | 9170168,1.9794721603 812 | 9174044,1.9892473220 813 | 9177916,2.0136852264 814 | 9181796,2.0332355499 815 | 9185676,2.0527858734 816 | 9189548,2.0625610351 817 | 9193412,2.0723361968 818 | 9197292,2.0821113586 819 | 9201172,2.0918865203 820 | 9205044,2.0918865203 821 | 9208908,2.0918865203 822 | 9212780,2.0869989395 823 | 9216660,2.0967741012 824 | 9220532,2.0869989395 825 | 9224396,2.0821113586 826 | 9228268,2.0430107116 827 | 9232140,2.0234603881 828 | 9236016,1.9696969985 829 | 9239896,1.9354838371 830 | 9243784,1.8621701240 831 | 9247652,1.7986314296 832 | 9251536,1.7253177165 833 | 9255412,1.6666666030 834 | 9259292,1.6177907943 835 | 9263164,1.5542521476 836 | 9267044,1.5102639198 837 | 9270924,1.4613881111 838 | 9274820,1.4320625305 839 | 9278700,1.4125122070 840 | 9282580,1.3880742835 841 | 9286444,1.3636363744 842 | 9290332,1.3440860509 843 | 9294196,1.3440860509 844 | 9298060,1.3538612127 845 | 9301940,1.3636363744 846 | 9305828,1.3636363744 847 | 9309720,1.3734115362 848 | 9313596,1.3880742835 849 | 9317460,1.4076246261 850 | 9321332,1.4125122070 851 | 9325212,1.4173997879 852 | 9329100,1.4222873687 853 | 9332980,1.4320625305 854 | 9336860,1.4565005302 855 | 9340728,1.4809384346 856 | 9344600,1.4907135963 857 | 9348472,1.4956011772 858 | 9352356,1.5004887580 859 | 9356212,1.5102639198 860 | 9360092,1.5249266624 861 | 9363972,1.5298142433 862 | 9367860,1.5347018241 863 | 9371732,1.5347018241 864 | 9375596,1.5542521476 865 | 9379476,1.5493645668 866 | 9383364,1.5591397285 867 | 9387244,1.5591397285 868 | 9391132,1.5591397285 869 | 9395012,1.5689149856 870 | 9398900,1.5689149856 871 | 9402780,1.5689149856 872 | 9406660,1.5640274047 873 | 9410532,1.5689149856 874 | 9414412,1.5786901473 875 | 9418296,1.5933528900 876 | 9422164,1.6031280517 877 | 9426044,1.6031280517 878 | 9429916,1.6031280517 879 | 9433800,1.6129032135 880 | 9437688,1.6226783752 881 | 9441564,1.6177907943 882 | 9445432,1.6226783752 883 | 9449312,1.6080156326 884 | 9453192,1.6080156326 885 | 9457068,1.6129032135 886 | 9460960,1.6129032135 887 | 9464844,1.6129032135 888 | 9468724,1.6031280517 889 | 9472596,1.6031280517 890 | 9476468,1.6177907943 891 | 9480356,1.6275659561 892 | 9484236,1.6275659561 893 | 9488124,1.6275659561 894 | 9492012,1.6324535369 895 | 9495900,1.6422286987 896 | 9499788,1.6471162796 897 | 9503668,1.6617790222 898 | 9507540,1.6471162796 899 | 9511420,1.6471162796 900 | 9515308,1.6520038604 901 | 9519176,1.6715541839 902 | 9523052,1.6666666030 903 | 9526928,1.6715541839 904 | 9530812,1.6764417648 905 | 9534700,1.6911046504 906 | 9538572,1.7057673931 907 | 9542444,1.7204301357 908 | 9546328,1.7302052974 909 | 9550200,1.7302052974 910 | 9554080,1.7399804592 911 | 9557948,1.7546432018 912 | 9561828,1.7693059444 913 | 9565712,1.7790811061 914 | 9569580,1.7839686870 915 | 9573444,1.7937438488 916 | 9577324,1.8181818962 917 | 9581212,1.8230694770 918 | 9585092,1.8230694770 919 | 9588964,1.8132943153 920 | 9592860,1.8035190582 921 | 9596724,1.7986314296 922 | 9600604,1.7741935253 923 | 9604488,1.7497556209 924 | 9608368,1.7253177165 925 | 9612244,1.6959922313 926 | 9616132,1.6911046504 927 | 9620016,1.6715541839 928 | 9623900,1.6617790222 929 | 9627788,1.6471162796 930 | 9631676,1.6373411178 931 | 9635556,1.6520038604 932 | 9639420,1.6471162796 933 | 9643308,1.6617790222 934 | 9647184,1.6520038604 935 | 9651044,1.6568914413 936 | 9654932,1.6617790222 937 | 9658820,1.6764417648 938 | 9662708,1.6764417648 939 | 9666588,1.6666666030 940 | 9670444,1.6520038604 941 | 9674308,1.6617790222 942 | 9678200,1.7106549739 943 | 9682084,1.8132943153 944 | 9685968,1.9990224838 945 | 9689844,2.2580645084 946 | 9693716,2.6050829887 947 | 9697580,2.9716520309 948 | 9701444,3.2844574451 949 | 9705324,3.4017596244 950 | 9709204,3.2404692173 951 | 9713096,2.8739002227 952 | 9716964,2.3851418495 953 | 9720852,1.8768328666 954 | 9724728,1.4760508537 955 | 9728596,1.2072336673 956 | 9732464,1.0948191833 957 | 9736348,1.1143695116 958 | 9740228,1.1974585056 959 | 9744108,1.3000977039 960 | 9747972,1.4076246261 961 | 9751864,1.4858260154 962 | 9755732,1.5542521476 963 | 9759604,1.5982404708 964 | 9763468,1.6275659561 965 | 9767356,1.6568914413 966 | 9771244,1.6666666030 967 | 9775116,1.6911046504 968 | 9778980,1.7057673931 969 | 9782864,1.7302052974 970 | 9786736,1.7253177165 971 | 9790620,1.7350928783 972 | 9794496,1.7497556209 973 | 9798372,1.7644183635 974 | 9802260,1.7839686870 975 | 9806140,1.7888562679 976 | 9810012,1.7986314296 977 | 9813896,1.8084066390 978 | 9817768,1.8426198005 979 | 9821632,1.8426198005 980 | 9825496,1.8475073814 981 | 9829372,1.8523949623 982 | 9833264,1.8572825431 983 | 9837152,1.8670577049 984 | 9841020,1.8914956092 985 | 9844904,1.8866080284 986 | 9848764,1.9110459327 987 | 9852636,1.9110459327 988 | 9856516,1.9403715133 989 | 9860392,1.9452590942 990 | 9864264,1.9550342559 991 | 9868136,1.9501466751 992 | 9872024,1.9648094177 993 | 9875904,1.9892473220 994 | 9879780,2.0185728073 995 | 9883644,2.0430107116 996 | 9887516,2.0723361968 997 | 9891388,2.0723361968 998 | 9895268,2.0918865203 999 | 9899140,2.1114368438 1000 | 9903020,2.1260998249 1001 | 9906900,2.1358749866 1002 | 9910788,2.1505377292 1003 | 9914668,2.1652004718 1004 | 9918540,2.1798632144 1005 | 9922412,2.2043011188 1006 | 9926292,2.1945259571 1007 | 9930180,2.1945259571 1008 | 9934068,2.1945259571 1009 | 9937956,2.1945259571 1010 | 9941836,2.1896383762 1011 | 9945716,2.1700880527 1012 | 9949580,2.1700880527 1013 | 9953452,2.1260998249 1014 | 9957324,2.1114368438 1015 | 9961212,2.0674486160 1016 | 9965084,2.0136852264 1017 | 9968968,1.9452590942 1018 | 9972836,1.8817204475 1019 | 9976708,1.8230694770 1020 | 9980580,1.7693059444 1021 | 9984452,1.7057673931 1022 | 9988332,1.6520038604 1023 | 9992204,1.6031280517 1024 | 9996076,1.5689149856 1025 | 9999956,1.5395894050 1026 | 10003828,1.5151515007 1027 | 10007752,1.4907135963 1028 | 10011676,1.4809384346 1029 | 10015584,1.4760508537 1030 | 10019496,1.4858260154 1031 | 10023416,1.4662756919 1032 | 10027336,1.4662756919 1033 | 10031264,1.4760508537 1034 | 10035168,1.4907135963 1035 | 10039084,1.5053763389 1036 | 10042996,1.5298142433 1037 | 10046924,1.5347018241 1038 | 10050844,1.5444769859 1039 | 10054756,1.5591397285 1040 | 10058676,1.5835777282 1041 | 10062588,1.5884653091 1042 | 10066500,1.5884653091 1043 | 10070424,1.5933528900 1044 | 10074332,1.6031280517 1045 | 10078252,1.6226783752 1046 | 10082172,1.6373411178 1047 | 10086100,1.6422286987 1048 | 10090020,1.6520038604 1049 | 10093924,1.6471162796 1050 | 10097852,1.6764417648 1051 | 10101780,1.6911046504 1052 | 10105688,1.6813293457 1053 | 10109604,1.6764417648 1054 | 10113524,1.6813293457 1055 | 10117448,1.6862169265 1056 | 10121376,1.6911046504 1057 | 10125276,1.6911046504 1058 | 10129200,1.7008798122 1059 | 10133112,1.6862169265 1060 | 10137036,1.7057673931 1061 | 10140968,1.7106549739 1062 | 10144880,1.7008798122 1063 | 10148788,1.6959922313 1064 | 10152720,1.7106549739 1065 | 10156632,1.7253177165 1066 | 10160556,1.7350928783 1067 | 10164468,1.7350928783 1068 | 10168384,1.7155425548 1069 | 10172304,1.7106549739 1070 | 10176224,1.7106549739 1071 | 10180140,1.7350928783 1072 | 10184060,1.7204301357 1073 | 10187972,1.7204301357 1074 | 10191892,1.7204301357 1075 | 10195808,1.7302052974 1076 | 10199720,1.7399804592 1077 | 10203632,1.7448680400 1078 | 10207532,1.7399804592 1079 | 10211436,1.7350928783 1080 | 10215348,1.7350928783 1081 | 10219272,1.7399804592 1082 | 10223192,1.7448680400 1083 | 10227096,1.7497556209 1084 | 10231012,1.7546432018 1085 | 10234932,1.7546432018 1086 | 10238844,1.7790811061 1087 | 10242764,1.7741935253 1088 | 10246684,1.7839686870 1089 | 10250588,1.7790811061 1090 | 10254500,1.7937438488 1091 | 10258416,1.8084066390 1092 | 10262320,1.8181818962 1093 | 10266236,1.8181818962 1094 | 10270156,1.8230694770 1095 | 10274068,1.8328446388 1096 | 10277984,1.8426198005 1097 | 10281892,1.8523949623 1098 | 10285824,1.8621701240 1099 | 10289744,1.8719452857 1100 | 10293652,1.8768328666 1101 | 10297564,1.8914956092 1102 | 10301476,1.9061583518 1103 | 10305388,1.9159335136 1104 | 10309320,1.9208210945 1105 | 10313232,1.9257086753 1106 | 10317152,1.9305962562 1107 | 10321072,1.9208210945 1108 | 10324972,1.9110459327 1109 | 10328892,1.8914956092 1110 | 10332808,1.8670577049 1111 | 10336720,1.8377322196 1112 | 10340636,1.8132943153 1113 | 10344556,1.7839686870 1114 | 10348460,1.7644183635 1115 | 10352380,1.7546432018 1116 | 10356300,1.7595307826 1117 | 10360220,1.7693059444 1118 | 10364132,1.7693059444 1119 | 10368048,1.7644183635 1120 | 10371964,1.7644183635 1121 | 10375884,1.7693059444 1122 | 10379796,1.7790811061 1123 | 10383708,1.7790811061 1124 | 10387620,1.7741935253 1125 | 10391540,1.7693059444 1126 | 10395452,1.7644183635 1127 | 10399372,1.7693059444 1128 | 10403284,1.7888562679 1129 | 10407208,1.8475073814 1130 | 10411120,1.9745845794 1131 | 10415028,2.1994135379 1132 | 10418956,2.5219941139 1133 | 10422884,2.8885631561 1134 | 10426804,3.2355816364 1135 | 10430732,3.4555230140 1136 | 10434636,3.4261975288 1137 | 10438556,3.1476051807 1138 | 10442460,2.6930596828 1139 | 10446380,2.1700880527 1140 | 10450296,1.7106549739 1141 | 10454212,1.3831867027 1142 | 10458128,1.2023460865 1143 | 10462032,1.1730204820 1144 | 10465940,1.2316715717 1145 | 10469868,1.3294233083 1146 | 10473788,1.4418377876 1147 | 10477716,1.5493645668 1148 | 10481628,1.6275659561 1149 | 10485548,1.6715541839 1150 | 10489472,1.7008798122 1151 | 10493384,1.7302052974 1152 | 10497292,1.7546432018 1153 | 10501204,1.7790811061 1154 | 10505108,1.7888562679 1155 | 10509028,1.7937438488 1156 | 10512948,1.7937438488 1157 | 10516876,1.8132943153 1158 | 10520808,1.8230694770 1159 | 10524716,1.8279570579 1160 | 10528620,1.8230694770 1161 | 10532532,1.8230694770 1162 | 10536440,1.8426198005 1163 | 10540352,1.8670577049 1164 | 10544264,1.8866080284 1165 | 10548168,1.8866080284 1166 | 10552080,1.8866080284 1167 | 10555992,1.9012707710 1168 | 10559900,1.9110459327 1169 | 10563824,1.9208210945 1170 | 10567728,1.9305962562 1171 | 10571640,1.9354838371 1172 | 10575564,1.9550342559 1173 | 10579472,1.9745845794 1174 | 10583392,1.9843597412 1175 | 10587320,1.9892473220 1176 | 10591236,1.9941349029 1177 | 10595148,2.0039100646 1178 | 10599044,2.0283479690 1179 | 10602948,2.0527858734 1180 | 10606860,2.0576734542 1181 | 10610772,2.0674486160 1182 | 10614676,2.0869989395 1183 | 10618580,2.1163244247 1184 | 10622500,2.1456501483 1185 | 10626420,2.1603128910 1186 | 10630340,2.1700880527 1187 | 10634252,2.1847507953 1188 | 10638156,2.1994135379 1189 | 10642084,2.2140762805 1190 | 10645996,2.2238514423 1191 | 10649924,2.2287390232 1192 | 10653844,2.2385141849 1193 | 10657764,2.2482893466 1194 | 10661684,2.2531769275 1195 | 10665604,2.2434017658 1196 | 10669516,2.2287390232 1197 | 10673436,2.2189638614 1198 | 10677356,2.2140762805 1199 | 10681268,2.1994135379 1200 | 10685188,2.1652004718 1201 | 10689100,2.1163244247 1202 | 10693028,2.0576734542 1203 | 10696944,1.9990224838 1204 | 10700856,1.9452590942 1205 | 10704764,1.8817204475 1206 | 10708684,1.8132943153 1207 | 10712604,1.7644183635 1208 | 10716532,1.7057673931 1209 | 10720448,1.6715541839 1210 | 10724372,1.6226783752 1211 | 10728292,1.5835777282 1212 | 10732220,1.5640274047 1213 | 10736132,1.5493645668 1214 | 10740060,1.5493645668 1215 | 10743988,1.5493645668 1216 | 10747916,1.5395894050 1217 | 10751820,1.5395894050 1218 | 10755732,1.5493645668 1219 | 10759652,1.5689149856 1220 | 10763572,1.5786901473 1221 | 10767484,1.5835777282 1222 | 10771396,1.5884653091 1223 | 10775316,1.6031280517 1224 | 10779232,1.6226783752 1225 | 10783156,1.6324535369 1226 | 10787076,1.6422286987 1227 | 10790988,1.6422286987 1228 | 10794900,1.6520038604 1229 | 10798808,1.6715541839 1230 | 10802736,1.6862169265 1231 | 10806652,1.6959922313 1232 | 10810572,1.6959922313 1233 | 10814492,1.7106549739 1234 | 10818408,1.7253177165 1235 | 10822332,1.7350928783 1236 | 10826256,1.7399804592 1237 | 10830168,1.7302052974 1238 | 10834088,1.7302052974 1239 | 10837996,1.7350928783 1240 | 10841920,1.7448680400 1241 | 10845824,1.7448680400 1242 | 10849728,1.7399804592 1243 | 10853640,1.7448680400 1244 | 10857540,1.7546432018 1245 | 10861444,1.7595307826 1246 | 10865356,1.7595307826 1247 | 10869268,1.7595307826 1248 | 10873180,1.7546432018 1249 | 10877100,1.7595307826 1250 | 10881012,1.7644183635 1251 | 10884940,1.7644183635 1252 | 10888868,1.7546432018 1253 | 10892788,1.7644183635 1254 | 10896708,1.7741935253 1255 | 10900628,1.7839686870 1256 | 10904540,1.7839686870 1257 | 10908444,1.7790811061 1258 | 10912356,1.7693059444 1259 | 10916276,1.7839686870 1260 | 10920188,1.7937438488 1261 | 10924100,1.8035190582 1262 | 10928012,1.7937438488 1263 | 10931940,1.7888562679 1264 | 10935860,1.7937438488 1265 | 10939780,1.7986314296 1266 | 10943708,1.7986314296 1267 | 10947628,1.7937438488 1268 | 10951540,1.7986314296 1269 | 10955464,1.8084066390 1270 | 10959372,1.8132943153 1271 | 10963300,1.8132943153 1272 | 10967232,1.8035190582 1273 | 10971148,1.8035190582 1274 | 10975056,1.8084066390 1275 | 10978968,1.8279570579 1276 | 10982880,1.8377322196 1277 | 10986796,1.8328446388 1278 | 10990720,1.8328446388 1279 | 10994632,1.8426198005 1280 | 10998540,1.8572825431 1281 | 11002460,1.8768328666 1282 | 11006380,1.8817204475 1283 | 11010304,1.8866080284 1284 | 11014204,1.9012707710 1285 | 11018112,1.9208210945 1286 | 11022032,1.9305962562 1287 | 11025948,1.9305962562 1288 | 11029872,1.9305962562 1289 | 11033792,1.9550342559 1290 | 11037708,1.9599218368 1291 | 11041616,1.9696969985 1292 | 11045528,1.9648094177 1293 | 11049448,1.9550342559 1294 | 11053368,1.9452590942 1295 | 11057280,1.9354838371 1296 | 11061200,1.9208210945 1297 | 11065108,1.8963831901 1298 | 11069032,1.8572825431 1299 | 11072956,1.8230694770 1300 | 11076872,1.8084066390 1301 | 11080764,1.7986314296 1302 | 11084676,1.7888562679 1303 | 11088592,1.7790811061 1304 | 11092492,1.7741935253 1305 | 11096420,1.7790811061 1306 | 11100340,1.7986314296 1307 | 11104252,1.8035190582 1308 | 11108164,1.8035190582 1309 | 11112076,1.7888562679 1310 | 11115996,1.7986314296 1311 | 11119916,1.8230694770 1312 | 11123828,1.8035190582 1313 | 11127732,1.7839686870 1314 | 11131636,1.7741935253 1315 | 11135564,1.7986314296 1316 | 11139476,1.8768328666 1317 | 11143396,2.0087976455 1318 | 11147308,2.2287390232 1319 | 11151220,2.5317692756 1320 | 11155140,2.9032258987 1321 | 11159060,3.2697947025 1322 | 11162972,3.5141739845 1323 | 11166904,3.4799609184 1324 | 11170812,3.1964809894 1325 | 11174728,2.7468230724 1326 | 11178636,2.2336266040 1327 | 11182548,1.7839686870 1328 | 11186456,1.4369501113 1329 | 11190372,1.2365591526 1330 | 11194288,1.1876833438 1331 | 11198212,1.2658846378 1332 | 11202136,1.3587487936 1333 | 11206056,1.4760508537 1334 | 11209964,1.5738025665 1335 | 11213876,1.6520038604 1336 | 11217784,1.7155425548 1337 | 11221704,1.7497556209 1338 | 11225612,1.7644183635 1339 | 11229524,1.7741935253 1340 | 11233452,1.7839686870 1341 | 11237368,1.8035190582 1342 | 11241280,1.8279570579 1343 | 11245192,1.8328446388 1344 | 11249116,1.8328446388 1345 | 11253048,1.8426198005 1346 | 11256960,1.8621701240 1347 | 11260868,1.8817204475 1348 | 11264792,1.8866080284 1349 | 11268700,1.8866080284 1350 | 11272608,1.8963831901 1351 | 11276516,1.9159335136 1352 | 11280440,1.9354838371 1353 | 11284360,1.9452590942 1354 | 11288280,1.9452590942 1355 | 11292200,1.9550342559 1356 | 11296120,1.9745845794 1357 | 11300040,1.9941349029 1358 | 11303952,2.0039100646 1359 | 11307856,1.9941349029 1360 | 11311776,1.9990224838 1361 | 11315684,2.0136852264 1362 | 11319596,2.0381231307 1363 | 11323500,2.0527858734 1364 | 11327412,2.0625610351 1365 | 11331324,2.0723361968 1366 | 11335236,2.0918865203 1367 | 11339148,2.1163244247 1368 | 11343076,2.1358749866 1369 | 11346996,2.1456501483 1370 | 11350908,2.1603128910 1371 | 11354828,2.1798632144 1372 | 11358748,2.2043011188 1373 | 11362652,2.2287390232 1374 | 11366580,2.2336266040 1375 | 11370476,2.2336266040 1376 | 11374396,2.2482893466 1377 | 11378316,2.2678396701 1378 | 11382236,2.2922775745 1379 | 11386156,2.2727272510 1380 | 11390076,2.2678396701 1381 | 11393988,2.2727272510 1382 | 11397908,2.2825024127 1383 | 11401828,2.2825024127 1384 | 11405748,2.2727272510 1385 | 11409660,2.2482893466 1386 | 11413572,2.2287390232 1387 | 11417484,2.2091886997 1388 | 11421396,2.1652004718 1389 | 11425316,2.1065492630 1390 | 11429236,2.0332355499 1391 | 11433152,1.9696969985 1392 | 11437068,1.9208210945 1393 | 11440984,1.8670577049 1394 | 11444896,1.8035190582 1395 | 11448808,1.7448680400 1396 | 11452712,1.7008798122 1397 | 11456612,1.6520038604 1398 | 11460508,1.6275659561 1399 | 11464436,1.5982404708 1400 | 11468348,1.5689149856 1401 | 11472268,1.5542521476 1402 | 11476188,1.5591397285 1403 | 11480108,1.5640274047 1404 | 11484012,1.5591397285 1405 | 11487940,1.5542521476 1406 | 11491868,1.5542521476 1407 | 11495788,1.5689149856 1408 | 11499708,1.5884653091 1409 | 11503612,1.5982404708 1410 | 11507516,1.5982404708 1411 | 11511432,1.6080156326 1412 | 11515340,1.6324535369 1413 | 11519268,1.6471162796 1414 | 11523196,1.6568914413 1415 | 11527116,1.6568914413 1416 | 11531036,1.6666666030 1417 | 11534948,1.6911046504 1418 | 11538864,1.7106549739 1419 | 11542780,1.7204301357 1420 | 11546684,1.7204301357 1421 | 11550592,1.7155425548 1422 | 11554512,1.7253177165 1423 | 11558440,1.7399804592 1424 | 11562352,1.7497556209 1425 | 11566272,1.7497556209 1426 | 11570188,1.7399804592 1427 | 11574104,1.7399804592 1428 | 11578016,1.7448680400 1429 | 11581920,1.7497556209 1430 | 11585840,1.7448680400 1431 | 11589736,1.7399804592 1432 | 11593640,1.7497556209 1433 | 11597556,1.7790811061 1434 | 11601468,1.7741935253 1435 | 11605396,1.7693059444 1436 | 11609308,1.7693059444 1437 | 11613228,1.7741935253 1438 | 11617148,1.7790811061 1439 | 11621072,1.7790811061 1440 | 11624980,1.7888562679 1441 | 11628900,1.7741935253 1442 | 11632828,1.7790811061 1443 | 11636732,1.7839686870 1444 | 11640644,1.7986314296 1445 | 11644572,1.8035190582 1446 | 11648476,1.7937438488 1447 | 11652404,1.7888562679 1448 | 11656324,1.7986314296 1449 | 11660244,1.8035190582 1450 | 11664156,1.7986314296 1451 | 11668084,1.7888562679 1452 | 11672008,1.7888562679 1453 | 11675924,1.7986314296 1454 | 11679836,1.8132943153 1455 | 11683756,1.8132943153 1456 | 11687676,1.8035190582 1457 | 11691596,1.8035190582 1458 | 11695504,1.8084066390 1459 | 11699412,1.8230694770 1460 | 11703324,1.8328446388 1461 | 11707248,1.8328446388 1462 | 11711176,1.8377322196 1463 | 11715100,1.8523949623 1464 | 11719032,1.8719452857 1465 | 11722948,1.8817204475 1466 | 11726868,1.8719452857 1467 | 11730792,1.8670577049 1468 | 11734692,1.8768328666 1469 | 11738616,1.8866080284 1470 | 11742516,1.8963831901 1471 | 11746440,1.9012707710 1472 | 11750340,1.9110459327 1473 | 11754264,1.9257086753 1474 | 11758184,1.9501466751 1475 | 11762104,1.9648094177 1476 | 11766024,1.9696969985 1477 | 11769936,1.9599218368 1478 | 11773848,1.9648094177 1479 | 11777768,1.9745845794 1480 | 11781676,1.9696969985 1481 | 11785596,1.9501466751 1482 | 11789520,1.9159335136 1483 | 11793444,1.8914956092 1484 | 11797348,1.8817204475 1485 | 11801272,1.8719452857 1486 | 11805188,1.8523949623 1487 | 11809108,1.8328446388 1488 | 11813028,1.8035190582 1489 | 11816932,1.7986314296 1490 | 11820860,1.8035190582 1491 | 11824772,1.8035190582 1492 | 11828684,1.7986314296 1493 | 11832604,1.7986314296 1494 | 11836520,1.8084066390 1495 | 11840420,1.8181818962 1496 | 11844340,1.8132943153 1497 | 11848272,1.8084066390 1498 | 11852172,1.8035190582 1499 | 11856084,1.8035190582 1500 | 11860004,1.8084066390 1501 | 11863900,1.8230694770 1502 | 11867816,1.8719452857 1503 | 11871736,1.9843597412 1504 | 11875652,2.1847507953 1505 | 11879572,2.4975562095 1506 | 11883476,2.8347995758 1507 | 11887396,3.1915934085 1508 | 11891316,3.4652981758 1509 | 11895244,3.5239491462 1510 | 11899164,3.3137829303 1511 | 11903080,2.8983383178 1512 | 11906996,2.3753666877 1513 | 11910916,1.8768328666 1514 | 11914836,1.5102639198 1515 | 11918756,1.3000977039 1516 | 11922652,1.2170088291 1517 | 11926568,1.2414467334 1518 | 11930484,1.3245357275 1519 | 11934412,1.4418377876 1520 | 11938340,1.5640274047 1521 | 11942252,1.6617790222 1522 | 11946172,1.7057673931 1523 | 11950092,1.7350928783 1524 | 11954004,1.7595307826 1525 | 11957924,1.7937438488 1526 | 11961844,1.8132943153 1527 | 11965772,1.8230694770 1528 | 11969676,1.8230694770 1529 | 11973588,1.8328446388 1530 | 11977500,1.8523949623 1531 | 11981432,1.8719452857 1532 | 11985348,1.8768328666 1533 | 11989268,1.8768328666 1534 | 11993180,1.8866080284 1535 | 11997096,1.9061583518 1536 | 12001016,1.9208210945 1537 | 12004928,1.9305962562 1538 | 12008848,1.9305962562 1539 | 12012768,1.9354838371 1540 | 12016684,1.9501466751 1541 | 12020600,1.9648094177 1542 | 12024512,1.9648094177 1543 | 12028432,1.9648094177 1544 | 12032352,1.9648094177 1545 | 12036272,1.9843597412 1546 | 12040188,2.0087976455 1547 | 12044092,2.0283479690 1548 | 12047996,2.0087976455 1549 | 12051900,2.0185728073 1550 | 12055812,2.0332355499 1551 | 12059724,2.0576734542 1552 | 12063628,2.0723361968 1553 | 12067540,2.0772237777 1554 | 12071460,2.0869989395 1555 | 12075372,2.1016616821 1556 | 12079292,2.1309874057 1557 | 12083196,2.1554253101 1558 | 12087124,2.1798632144 1559 | 12091044,2.1847507953 1560 | 12094964,2.2140762805 1561 | 12098876,2.2482893466 1562 | 12102796,2.2727272510 1563 | 12106700,2.2629520893 1564 | 12110612,2.2629520893 1565 | 12114524,2.2678396701 1566 | 12118444,2.2825024127 1567 | 12122364,2.2873899936 1568 | 12126276,2.2776148319 1569 | 12130196,2.2629520893 1570 | 12134116,2.2531769275 1571 | 12138044,2.2482893466 1572 | 12141964,2.2385141849 1573 | 12145884,2.2043011188 1574 | 12149804,2.1554253101 1575 | 12153716,2.1016616821 1576 | 12157636,2.0576734542 1577 | 12161548,2.0039100646 1578 | 12165444,1.9403715133 1579 | 12169376,1.8670577049 1580 | 12173280,1.8084066390 1581 | 12177180,1.7693059444 1582 | 12181092,1.7204301357 1583 | 12185016,1.6862169265 1584 | 12188940,1.6373411178 1585 | 12192864,1.6226783752 1586 | 12196780,1.5982404708 1587 | 12200684,1.5835777282 1588 | 12204604,1.5689149856 1589 | 12208516,1.5542521476 1590 | 12212444,1.5493645668 1591 | 12216368,1.5591397285 1592 | 12220284,1.5786901473 1593 | 12224204,1.5835777282 1594 | 12228132,1.5835777282 1595 | 12232056,1.5933528900 1596 | 12235968,1.6080156326 1597 | 12239884,1.6324535369 1598 | 12243804,1.6520038604 1599 | 12247708,1.6568914413 1600 | 12251628,1.6617790222 1601 | 12255548,1.6764417648 1602 | 12259476,1.6959922313 1603 | 12263400,1.7008798122 1604 | 12267312,1.7008798122 1605 | 12271232,1.7008798122 1606 | 12275152,1.7155425548 1607 | 12279080,1.7399804592 1608 | 12282988,1.7546432018 1609 | 12286904,1.7497556209 1610 | 12290824,1.7399804592 1611 | 12294736,1.7399804592 1612 | 12298636,1.7546432018 1613 | 12302548,1.7693059444 1614 | 12306468,1.7644183635 1615 | 12310380,1.7644183635 1616 | 12314300,1.7693059444 1617 | 12318212,1.7839686870 1618 | 12322132,1.7986314296 1619 | 12326060,1.7937438488 1620 | 12329980,1.7888562679 1621 | 12333900,1.7937438488 1622 | 12337820,1.8035190582 1623 | 12341736,1.8084066390 1624 | 12345628,1.8035190582 1625 | 12349524,1.7986314296 1626 | 12353436,1.7937438488 1627 | 12357356,1.8035190582 1628 | 12361268,1.8132943153 1629 | 12365200,1.8084066390 1630 | 12369100,1.7986314296 1631 | 12373028,1.7986314296 1632 | 12376952,1.8084066390 1633 | 12380852,1.8230694770 1634 | 12384768,1.8279570579 1635 | 12388680,1.8279570579 1636 | 12392588,1.8181818962 1637 | 12396500,1.8328446388 1638 | 12400432,1.8572825431 1639 | 12404360,1.8621701240 1640 | 12408272,1.8572825431 1641 | 12412200,1.8475073814 1642 | 12416112,1.8523949623 1643 | 12420032,1.8670577049 1644 | 12423944,1.8719452857 1645 | 12427864,1.8621701240 1646 | 12431776,1.8475073814 1647 | 12435688,1.8572825431 1648 | 12439608,1.8719452857 1649 | 12443516,1.8817204475 1650 | 12447440,1.8719452857 1651 | 12451360,1.8719452857 1652 | 12455276,1.8866080284 1653 | 12459192,1.9159335136 1654 | 12463116,1.9305962562 1655 | 12467032,1.9257086753 1656 | 12470952,1.9208210945 1657 | 12474864,1.9354838371 1658 | 12478792,1.9599218368 1659 | 12482712,1.9745845794 1660 | 12486624,1.9794721603 1661 | 12490536,1.9794721603 1662 | 12494456,1.9941349029 1663 | 12498364,2.0136852264 1664 | 12502284,2.0136852264 1665 | 12506200,1.9990224838 1666 | 12510112,1.9696969985 1667 | 12514032,1.9550342559 1668 | 12517952,1.9501466751 1669 | 12521880,1.9403715133 1670 | 12525796,1.9110459327 1671 | 12529712,1.8768328666 1672 | 12533624,1.8475073814 1673 | 12537536,1.8426198005 1674 | 12541448,1.8426198005 1675 | 12545360,1.8377322196 1676 | 12549292,1.8181818962 1677 | 12552196,1.8084066390 1678 | 12557116,1.8181818962 1679 | 12561048,1.8279570579 1680 | 12564960,1.8328446388 1681 | 12568876,1.8181818962 1682 | 12572796,1.8181818962 1683 | 12576712,1.8279570579 1684 | 12580624,1.8279570579 1685 | 12584532,1.8132943153 1686 | 12588460,1.7986314296 1687 | 12592388,1.8035190582 1688 | 12596296,1.8621701240 1689 | 12600208,1.9941349029 1690 | 12604124,2.2091886997 1691 | 12608036,2.5024437904 1692 | 12611952,2.8592374801 1693 | 12615868,3.2160313129 1694 | 12619796,3.4946236610 1695 | 12623700,3.5092864036 1696 | 12627612,3.2600195407 1697 | 12631516,2.8299119949 1698 | 12635436,2.3118278980 1699 | 12639360,1.8426198005 1700 | 12643264,1.4907135963 1701 | 12647180,1.2707722187 1702 | 12651100,1.2072336673 1703 | 12655020,1.2414467334 1704 | 12658948,1.3489736318 1705 | 12662872,1.4662756919 1706 | 12666788,1.5640274047 1707 | 12670700,1.6422286987 1708 | 12674624,1.7008798122 1709 | 12678532,1.7546432018 1710 | 12682452,1.7839686870 1711 | 12686364,1.7839686870 1712 | 12690268,1.7888562679 1713 | 12694188,1.7986314296 1714 | 12698112,1.8181818962 1715 | 12702036,1.8328446388 1716 | 12705960,1.8426198005 1717 | 12709872,1.8426198005 1718 | 12713784,1.8572825431 1719 | 12717704,1.8719452857 1720 | 12721620,1.8914956092 1721 | 12725532,1.8914956092 1722 | 12729448,1.8866080284 1723 | 12733356,1.8914956092 1724 | 12737280,1.9061583518 1725 | 12741200,1.9208210945 1726 | 12745120,1.9257086753 1727 | 12749040,1.9305962562 1728 | 12752952,1.9354838371 1729 | 12756872,1.9550342559 1730 | 12760792,1.9696969985 1731 | 12764704,1.9794721603 1732 | 12768624,1.9843597412 1733 | 12772544,1.9941349029 1734 | 12776456,2.0234603881 1735 | 12780364,2.0527858734 1736 | 12784284,2.0674486160 1737 | 12788196,2.0723361968 1738 | 12792116,2.0772237777 1739 | 12796036,2.0967741012 1740 | 12799940,2.1114368438 1741 | 12803868,2.1260998249 1742 | 12807788,2.1407625675 1743 | 12811700,2.1505377292 1744 | 12815620,2.1749756336 1745 | 12819532,2.2043011188 1746 | 12823444,2.2238514423 1747 | 12827364,2.2336266040 1748 | 12831276,2.2482893466 1749 | 12835196,2.2678396701 1750 | 12839116,2.2922775745 1751 | 12843036,2.3020527362 1752 | 12846948,2.2971651554 1753 | 12850868,2.2873899936 1754 | 12854788,2.2873899936 1755 | 12858700,2.2971651554 1756 | 12862624,2.2922775745 1757 | 12866532,2.2727272510 1758 | 12870452,2.2385141849 1759 | 12874372,2.2043011188 1760 | 12878284,2.1603128910 1761 | 12882196,2.1163244247 1762 | 12886116,2.0527858734 1763 | 12890032,1.9843597412 1764 | 12893960,1.9159335136 1765 | 12897888,1.8621701240 1766 | 12901800,1.8084066390 1767 | 12905696,1.7497556209 1768 | 12909612,1.6959922313 1769 | 12913524,1.6520038604 1770 | 12917428,1.6324535369 1771 | 12921356,1.6177907943 1772 | 12925276,1.5982404708 1773 | 12929188,1.5786901473 1774 | 12933100,1.5640274047 1775 | 12937012,1.5591397285 1776 | 12940940,1.5689149856 1777 | 12944860,1.5738025665 1778 | 12948780,1.5689149856 1779 | 12952692,1.5786901473 1780 | 12956604,1.5982404708 1781 | 12960508,1.6177907943 1782 | 12964428,1.6324535369 1783 | 12968348,1.6324535369 1784 | 12972268,1.6324535369 1785 | 12976188,1.6471162796 1786 | 12980112,1.6715541839 1787 | 12984036,1.6764417648 1788 | 12987956,1.6764417648 1789 | 12991880,1.6715541839 1790 | 12995804,1.6813293457 1791 | 12999724,1.7008798122 1792 | 13003628,1.7204301357 1793 | 13007544,1.7253177165 1794 | 13011472,1.7253177165 1795 | 13015396,1.7350928783 1796 | 13019316,1.7546432018 1797 | 13023228,1.7595307826 1798 | 13027152,1.7497556209 1799 | 13031072,1.7448680400 1800 | 13034972,1.7595307826 1801 | 13038892,1.7595307826 1802 | 13042812,1.7741935253 1803 | 13046724,1.7790811061 1804 | 13050628,1.7595307826 1805 | 13054540,1.7595307826 1806 | 13058460,1.7741935253 1807 | 13062388,1.7888562679 1808 | 13066300,1.7741935253 1809 | 13070220,1.7693059444 1810 | 13074132,1.7693059444 1811 | 13078044,1.7839686870 1812 | 13081964,1.7937438488 1813 | 13085884,1.7937438488 1814 | 13089812,1.7839686870 1815 | 13093716,1.7741935253 1816 | 13097636,1.7839686870 1817 | 13101548,1.7937438488 1818 | 13105476,1.7937438488 1819 | 13109408,1.7888562679 1820 | 13113320,1.7888562679 1821 | 13117236,1.8035190582 1822 | 13121148,1.8181818962 1823 | 13125080,1.8181818962 1824 | 13129000,1.8084066390 1825 | 13132892,1.7986314296 1826 | 13136804,1.8035190582 1827 | 13140708,1.8181818962 1828 | 13144632,1.8181818962 1829 | 13148548,1.8181818962 1830 | 13152472,1.8084066390 1831 | 13156380,1.8132943153 1832 | 13160304,1.8279570579 1833 | 13164224,1.8377322196 1834 | 13168140,1.8328446388 1835 | 13172064,1.8279570579 1836 | 13175980,1.8523949623 1837 | 13179908,1.8572825431 1838 | 13183832,1.8670577049 1839 | 13187744,1.8719452857 1840 | 13191656,1.8670577049 1841 | 13195560,1.8621701240 1842 | 13199468,1.8817204475 1843 | 13203384,1.9012707710 1844 | 13207292,1.9110459327 1845 | 13211212,1.9110459327 1846 | 13215136,1.9208210945 1847 | 13219048,1.9403715133 1848 | 13222960,1.9501466751 1849 | 13226880,1.9452590942 1850 | 13230792,1.9305962562 1851 | 13234704,1.9159335136 1852 | 13238628,1.9159335136 1853 | 13242552,1.9012707710 1854 | 13246452,1.8768328666 1855 | 13250376,1.8426198005 1856 | 13254288,1.8279570579 1857 | 13258196,1.8035190582 1858 | 13262108,1.7986314296 1859 | 13266020,1.7839686870 1860 | 13269932,1.7741935253 1861 | 13273860,1.7693059444 1862 | 13277772,1.7839686870 1863 | 13281676,1.7937438488 1864 | 13285604,1.7937438488 1865 | 13289520,1.7888562679 1866 | 13293436,1.7839686870 1867 | 13297348,1.7937438488 1868 | 13301280,1.8084066390 1869 | 13305184,1.8035190582 1870 | 13309100,1.7888562679 1871 | 13313020,1.7741935253 1872 | 13316940,1.7888562679 1873 | 13320864,1.8426198005 1874 | 13324776,1.9550342559 1875 | 13328684,2.1407625675 1876 | 13332596,2.4242424964 1877 | 13336500,2.7859237194 1878 | 13340428,3.1671555042 1879 | 13344348,3.4750733375 1880 | 13348268,3.5337243080 1881 | 13352180,3.3333332538 1882 | 13356104,2.9276638031 1883 | 13360020,2.4242424964 1884 | 13363944,1.9452590942 1885 | 13367852,1.5395894050 1886 | 13371756,1.2903225421 1887 | 13375668,1.2023460865 1888 | 13379564,1.2365591526 1889 | 13383484,1.3245357275 1890 | 13387416,1.4369501113 1891 | 13391332,1.5347018241 1892 | 13395256,1.6226783752 1893 | 13399184,1.6911046504 1894 | 13403084,1.7350928783 1895 | 13407004,1.7546432018 1896 | 13410924,1.7644183635 1897 | 13414844,1.7790811061 1898 | 13418756,1.8035190582 1899 | 13422656,1.8279570579 1900 | 13426560,1.8279570579 1901 | 13430472,1.8279570579 1902 | 13434380,1.8328446388 1903 | 13438300,1.8523949623 1904 | 13442232,1.8670577049 1905 | 13446136,1.8719452857 1906 | 13450056,1.8719452857 1907 | 13453980,1.8768328666 1908 | 13457900,1.8914956092 1909 | 13461820,1.9110459327 1910 | 13465732,1.9159335136 1911 | 13469648,1.9208210945 1912 | 13473552,1.9257086753 1913 | 13477472,1.9403715133 1914 | 13481392,1.9599218368 1915 | 13485312,1.9696969985 1916 | 13489220,1.9696969985 1917 | 13493136,1.9745845794 1918 | 13497056,1.9941349029 1919 | 13500972,2.0136852264 1920 | 13504892,2.0283479690 1921 | 13508796,2.0430107116 1922 | 13512692,2.0381231307 1923 | 13516604,2.0576734542 1924 | 13520516,2.0772237777 1925 | 13524428,2.0869989395 1926 | 13528340,2.0967741012 1927 | 13532244,2.1065492630 1928 | 13536156,2.1309874057 1929 | 13540068,2.1603128910 1930 | 13543980,2.1700880527 1931 | 13547884,2.1798632144 1932 | 13551812,2.1896383762 1933 | 13555732,2.2043011188 1934 | 13559644,2.2287390232 1935 | 13563556,2.2385141849 1936 | 13567484,2.2336266040 1937 | 13571396,2.2287390232 1938 | 13575316,2.2287390232 1939 | 13579228,2.2385141849 1940 | 13583148,2.2336266040 1941 | 13587060,2.2189638614 1942 | 13590988,2.1945259571 1943 | 13594916,2.1700880527 1944 | 13598820,2.1456501483 1945 | 13602724,2.1065492630 1946 | 13606636,2.0478982925 1947 | 13610544,1.9843597412 1948 | 13614472,1.9159335136 1949 | 13618400,1.8523949623 1950 | 13622320,1.7986314296 1951 | 13626236,1.7350928783 1952 | 13630156,1.6764417648 1953 | 13634076,1.6177907943 1954 | 13637996,1.5786901473 1955 | 13641916,1.5542521476 1956 | 13645844,1.5298142433 1957 | 13649756,1.5004887580 1958 | 13653656,1.4809384346 1959 | 13657568,1.4760508537 1960 | 13661480,1.4809384346 1961 | 13665392,1.4809384346 1962 | 13669304,1.4760508537 1963 | 13673216,1.4760508537 1964 | 13677128,1.4809384346 1965 | 13681044,1.5053763389 1966 | 13684956,1.5200390815 1967 | 13688868,1.5249266624 1968 | 13692788,1.5347018241 1969 | 13696700,1.5591397285 1970 | 13700628,1.5786901473 1971 | 13704544,1.5933528900 1972 | 13708464,1.5933528900 1973 | 13712368,1.5933528900 1974 | 13716280,1.6129032135 1975 | 13720208,1.6226783752 1976 | 13724132,1.6422286987 1977 | 13728052,1.6422286987 1978 | 13731972,1.6422286987 1979 | 13735884,1.6471162796 1980 | 13739812,1.6617790222 1981 | 13743732,1.6666666030 1982 | 13747648,1.6764417648 1983 | 13751568,1.6715541839 1984 | 13755484,1.6813293457 1985 | 13759408,1.7008798122 1986 | 13763328,1.7155425548 1987 | 13767256,1.7008798122 1988 | 13771164,1.6959922313 1989 | 13775084,1.6959922313 1990 | 13779004,1.7057673931 1991 | 13782928,1.7008798122 1992 | 13786836,1.7057673931 1993 | 13790756,1.7057673931 1994 | 13794668,1.6959922313 1995 | 13798580,1.7057673931 1996 | 13801476,1.7155425548 1997 | 13806416,1.7155425548 1998 | 13810336,1.7106549739 1999 | 13814256,1.7106549739 2000 | 13818176,1.7155425548 2001 | 13822104,1.7155425548 2002 | 13826024,1.7155425548 2003 | 13829952,1.7057673931 2004 | 13833868,1.7057673931 2005 | 13837792,1.7155425548 2006 | 13841708,1.7204301357 2007 | 13845620,1.7253177165 2008 | 13849536,1.7204301357 2009 | 13853452,1.7204301357 2010 | 13857368,1.7302052974 2011 | 13861280,1.7497556209 2012 | 13865196,1.7546432018 2013 | 13869112,1.7448680400 2014 | 13873008,1.7399804592 2015 | 13876928,1.7399804592 2016 | 13880848,1.7497556209 2017 | 13884764,1.7546432018 2018 | 13888676,1.7595307826 2019 | 13892580,1.7644183635 2020 | 13896500,1.7741935253 2021 | 13900432,1.7888562679 2022 | 13904348,1.8035190582 2023 | 13908260,1.7986314296 2024 | 13912188,1.8132943153 2025 | 13916108,1.8328446388 2026 | 13920032,1.8621701240 2027 | 13923944,1.8719452857 2028 | 13927864,1.8719452857 2029 | 13931784,1.8719452857 2030 | 13935692,1.8768328666 2031 | 13939600,1.8963831901 2032 | 13943516,1.9110459327 2033 | 13947440,1.9061583518 2034 | 13951360,1.8866080284 2035 | 13955272,1.8670577049 2036 | 13959180,1.8523949623 2037 | 13963100,1.8328446388 2038 | 13967028,1.8035190582 2039 | 13970948,1.7693059444 2040 | 13974864,1.7448680400 2041 | 13978764,1.7350928783 2042 | 13982668,1.7350928783 2043 | 13986584,1.7302052974 2044 | 13990492,1.7204301357 2045 | 13994408,1.7106549739 2046 | 13998328,1.7204301357 2047 | 14002236,1.7350928783 2048 | 14006152,1.7302052974 2049 | 14010072,1.7204301357 2050 | 14013992,1.7155425548 2051 | 14017916,1.7204301357 2052 | 14021840,1.7302052974 2053 | 14025748,1.7302052974 2054 | 14029652,1.7155425548 2055 | 14033568,1.7106549739 2056 | 14037488,1.7448680400 2057 | 14041392,1.8377322196 2058 | 14045320,1.9892473220 2059 | 14049228,2.2238514423 2060 | 14053156,2.5464320182 2061 | 14057080,2.9178886413 2062 | 14061004,3.2697947025 2063 | 14064920,3.4604105949 2064 | 14068828,3.3675463199 2065 | 14072740,3.0449657440 2066 | 14076652,2.5806450843 2067 | 14080556,2.0527858734 2068 | 14084480,1.6226783752 2069 | 14088404,1.3294233083 2070 | 14092320,1.1534701585 2071 | 14096224,1.1339198350 2072 | 14100148,1.2072336673 2073 | 14104068,1.3147605657 2074 | 14107988,1.4173997879 2075 | 14111916,1.5004887580 2076 | 14115812,1.5689149856 2077 | 14119728,1.6129032135 2078 | 14123652,1.6422286987 2079 | 14127564,1.6568914413 2080 | 14131488,1.6715541839 2081 | 14135404,1.6959922313 2082 | 14139328,1.7155425548 2083 | 14143244,1.7350928783 2084 | 14147168,1.7399804592 2085 | 14151088,1.7448680400 2086 | 14154992,1.7497556209 2087 | 14158900,1.7693059444 2088 | 14162812,1.7839686870 2089 | 14166724,1.7986314296 2090 | 14170652,1.8132943153 2091 | 14174572,1.8181818962 2092 | 14178500,1.8328446388 2093 | 14182420,1.8475073814 2094 | 14186332,1.8523949623 2095 | 14190256,1.8426198005 2096 | 14194168,1.8475073814 2097 | 14198088,1.8572825431 2098 | 14202012,1.8768328666 2099 | 14205928,1.8866080284 2100 | 14209840,1.9012707710 2101 | 14213740,1.8914956092 2102 | 14217660,1.9061583518 2103 | 14221576,1.9257086753 2104 | 14225488,1.9452590942 2105 | 14229400,1.9599218368 2106 | 14233328,1.9745845794 2107 | 14237248,1.9941349029 2108 | 14241164,2.0234603881 2109 | 14245076,2.0381231307 2110 | 14248992,2.0478982925 2111 | 14252900,2.0576734542 2112 | 14256820,2.0821113586 2113 | 14260732,2.1114368438 2114 | 14264660,2.1358749866 2115 | 14268580,2.1407625675 2116 | 14272492,2.1456501483 2117 | 14276412,2.1554253101 2118 | 14280340,2.1798632144 2119 | 14284268,2.1896383762 2120 | 14288196,2.1896383762 2121 | 14292116,2.1847507953 2122 | 14296028,2.1896383762 2123 | 14299948,2.1945259571 2124 | 14303876,2.1945259571 2125 | 14307804,2.1700880527 2126 | 14311708,2.1456501483 2127 | 14315620,2.1163244247 2128 | 14319532,2.0869989395 2129 | 14323444,2.0430107116 2130 | 14327360,1.9843597412 2131 | 14331284,1.9110459327 2132 | 14335208,1.8426198005 2133 | 14339120,1.7839686870 2134 | 14343028,1.7350928783 2135 | 14346948,1.6764417648 2136 | 14350880,1.6226783752 2137 | 14354804,1.5786901473 2138 | 14358716,1.5493645668 2139 | 14362644,1.5249266624 2140 | 14366556,1.5053763389 2141 | 14370480,1.4809384346 2142 | 14374396,1.4711632728 2143 | 14378328,1.4711632728 2144 | 14382256,1.4809384346 2145 | 14386168,1.4907135963 2146 | 14390088,1.4907135963 2147 | 14394008,1.4956011772 2148 | 14397932,1.5102639198 2149 | 14401852,1.5347018241 2150 | 14405772,1.5493645668 2151 | 14409684,1.5591397285 2152 | 14413604,1.5689149856 2153 | 14417524,1.5884653091 2154 | 14421444,1.6031280517 2155 | 14425368,1.6080156326 2156 | 14429280,1.6129032135 2157 | 14433200,1.6226783752 2158 | 14437124,1.6373411178 2159 | 14441052,1.6568914413 2160 | 14444980,1.6666666030 2161 | 14448896,1.6715541839 2162 | 14452816,1.6715541839 2163 | 14456724,1.6813293457 2164 | 14460652,1.6959922313 2165 | 14464564,1.7057673931 2166 | 14468488,1.7008798122 2167 | 14472400,1.7008798122 2168 | 14476308,1.7106549739 2169 | 14480224,1.7155425548 2170 | 14484148,1.7204301357 2171 | 14488064,1.7253177165 2172 | 14491992,1.7155425548 2173 | 14495920,1.7106549739 2174 | 14499832,1.7253177165 2175 | 14503752,1.7302052974 2176 | 14507668,1.7302052974 2177 | 14511572,1.7057673931 2178 | 14515496,1.7008798122 2179 | 14519408,1.7106549739 2180 | 14523320,1.7204301357 2181 | 14527232,1.7204301357 2182 | 14531152,1.7106549739 2183 | 14535072,1.7155425548 2184 | 14539000,1.7253177165 2185 | 14542924,1.7350928783 2186 | 14546840,1.7302052974 2187 | 14550752,1.7253177165 2188 | 14554672,1.7253177165 2189 | 14558588,1.7350928783 2190 | 14562512,1.7399804592 2191 | 14566428,1.7350928783 2192 | 14570336,1.7302052974 2193 | 14574252,1.7350928783 2194 | 14578176,1.7497556209 2195 | 14582092,1.7644183635 2196 | 14586020,1.7644183635 2197 | 14589940,1.7546432018 2198 | 14593864,1.7497556209 2199 | 14597780,1.7546432018 2200 | 14601692,1.7741935253 2201 | 14605612,1.7839686870 2202 | 14609524,1.7790811061 2203 | 14613428,1.7839686870 2204 | 14617340,1.7986314296 2205 | 14621260,1.8181818962 2206 | 14625192,1.8279570579 2207 | 14629112,1.8279570579 2208 | 14633024,1.8279570579 2209 | 14636936,1.8426198005 2210 | 14640848,1.8719452857 2211 | 14644760,1.8866080284 2212 | 14648668,1.8866080284 2213 | 14652580,1.8914956092 2214 | 14656496,1.9061583518 2215 | 14660416,1.9159335136 2216 | 14664344,1.9159335136 2217 | 14668268,1.8914956092 2218 | 14672184,1.8621701240 2219 | 14676104,1.8475073814 2220 | 14680016,1.8377322196 2221 | 14683944,1.8181818962 2222 | 14687868,1.7888562679 2223 | 14691788,1.7546432018 2224 | 14695704,1.7399804592 2225 | 14699604,1.7350928783 2226 | 14703516,1.7350928783 2227 | 14707440,1.7253177165 2228 | 14711364,1.7204301357 2229 | 14715288,1.7204301357 2230 | 14719208,1.7302052974 2231 | 14723120,1.7448680400 2232 | 14727020,1.7546432018 2233 | 14730944,1.7497556209 2234 | 14734864,1.7399804592 2235 | 14738784,1.7497556209 2236 | 14742692,1.7741935253 2237 | 14746608,1.7448680400 2238 | 14750512,1.7448680400 2239 | 14754412,1.7790811061 2240 | 14758328,1.8719452857 2241 | 14762244,2.0478982925 2242 | 14766148,2.3069403171 2243 | 14770052,2.6539590358 2244 | 14773964,3.0205278396 2245 | 14777876,3.3528835773 2246 | 14781804,3.5288367271 2247 | 14785728,3.3724339008 2248 | 14789620,3.0107526779 2249 | 14793532,2.5024437904 2250 | 14797448,1.9941349029 2251 | 14801364,1.5835777282 2252 | 14805292,1.3049852848 2253 | 14809208,1.1730204820 2254 | 14813112,1.1730204820 2255 | 14817028,1.2512218952 2256 | 14820956,1.3636363744 2257 | 14824888,1.4809384346 2258 | 14828804,1.5591397285 2259 | 14832712,1.6129032135 2260 | 14836620,1.6568914413 2261 | 14840540,1.6959922313 2262 | 14844464,1.7155425548 2263 | 14848388,1.7204301357 2264 | 14852312,1.7302052974 2265 | 14856220,1.7497556209 2266 | 14860132,1.7644183635 2267 | 14864052,1.7888562679 2268 | 14867972,1.7937438488 2269 | 14871896,1.7888562679 2270 | 14875820,1.7986314296 2271 | 14879732,1.8181818962 2272 | 14883660,1.8377322196 2273 | 14887580,1.8328446388 2274 | 14891512,1.8377322196 2275 | 14895440,1.8475073814 2276 | 14899368,1.8670577049 2277 | 14903268,1.8817204475 2278 | 14907192,1.8866080284 2279 | 14911104,1.8963831901 2280 | 14915024,1.9012707710 2281 | 14918936,1.9257086753 2282 | 14922848,1.9452590942 2283 | 14926752,1.9501466751 2284 | 14930676,1.9501466751 2285 | 14934592,1.9501466751 2286 | 14938512,1.9648094177 2287 | 14942432,1.9794721603 2288 | 14946356,1.9941349029 2289 | 14950264,1.9990224838 2290 | 14954180,2.0136852264 2291 | 14958100,2.0381231307 2292 | 14962012,2.0625610351 2293 | 14965932,2.0821113586 2294 | 14969844,2.0869989395 2295 | 14973748,2.1016616821 2296 | 14977676,2.1260998249 2297 | 14981580,2.1554253101 2298 | 14985508,2.1798632144 2299 | 14989436,2.1896383762 2300 | 14993356,2.1945259571 2301 | 14997284,2.2091886997 2302 | 15001204,2.2287390232 2303 | 15005124,2.2336266040 2304 | 15009044,2.2189638614 2305 | 15012956,2.1994135379 2306 | 15016876,2.1945259571 2307 | 15020804,2.1945259571 2308 | 15024724,2.1847507953 2309 | 15028644,2.1554253101 2310 | 15032556,2.1114368438 2311 | 15036476,2.0723361968 2312 | 15040388,2.0332355499 2313 | 15044304,1.9794721603 2314 | 15048224,1.9159335136 2315 | 15052152,1.8426198005 2316 | 15056068,1.7741935253 2317 | 15059996,1.7204301357 2318 | 15063908,1.6666666030 2319 | 15067828,1.6177907943 2320 | 15071740,1.5689149856 2321 | 15075668,1.5298142433 2322 | 15079588,1.5102639198 2323 | 15083500,1.5053763389 2324 | 15087424,1.4809384346 2325 | 15091344,1.4662756919 2326 | 15095264,1.4662756919 2327 | 15099180,1.4711632728 2328 | 15103112,1.4858260154 2329 | 15107032,1.4858260154 2330 | 15110952,1.4809384346 2331 | 15114872,1.4858260154 2332 | 15118780,1.5053763389 2333 | 15122692,1.5347018241 2334 | 15126604,1.5395894050 2335 | 15130508,1.5444769859 2336 | 15134428,1.5444769859 2337 | 15138348,1.5542521476 2338 | 15142276,1.5738025665 2339 | 15146196,1.5786901473 2340 | 15150116,1.5786901473 2341 | 15154028,1.5786901473 2342 | 15157952,1.5933528900 2343 | 15161872,1.6129032135 2344 | 15165800,1.6226783752 2345 | 15169720,1.6226783752 2346 | 15173628,1.6275659561 2347 | 15177556,1.6422286987 2348 | 15181484,1.6617790222 2349 | 15185404,1.6666666030 2350 | 15189316,1.6666666030 2351 | 15193228,1.6666666030 2352 | 15197140,1.6764417648 2353 | 15201060,1.6959922313 2354 | 15204984,1.7106549739 2355 | 15208904,1.7057673931 2356 | 15212820,1.6959922313 2357 | 15216736,1.6862169265 2358 | 15220652,1.6959922313 2359 | 15224568,1.7008798122 2360 | 15228476,1.7057673931 2361 | 15232408,1.7008798122 2362 | 15236320,1.7008798122 2363 | 15240228,1.7106549739 2364 | 15244144,1.7106549739 2365 | 15248060,1.7057673931 2366 | 15251980,1.6959922313 2367 | 15255908,1.6959922313 2368 | 15259836,1.7057673931 2369 | 15263756,1.7106549739 2370 | 15267668,1.7057673931 2371 | 15271592,1.7008798122 2372 | 15275508,1.7057673931 2373 | 15279440,1.7253177165 2374 | 15283376,1.7399804592 2375 | 15287288,1.7399804592 2376 | 15291208,1.7302052974 2377 | 15295128,1.7253177165 2378 | 15299052,1.7350928783 2379 | 15302976,1.7448680400 2380 | 15306888,1.7448680400 2381 | 15310784,1.7399804592 2382 | 15314696,1.7497556209 2383 | 15318604,1.7595307826 2384 | 15322524,1.7839686870 2385 | 15326444,1.7937438488 2386 | 15330364,1.7986314296 2387 | 15334284,1.7986314296 2388 | 15338216,1.8181818962 2389 | 15342144,1.8279570579 2390 | 15346064,1.8475073814 2391 | 15349980,1.8523949623 2392 | 15353908,1.8572825431 2393 | 15357832,1.8621701240 2394 | 15361740,1.8817204475 2395 | 15365660,1.8914956092 2396 | 15369576,1.9012707710 2397 | 15373488,1.8866080284 2398 | 15377388,1.8768328666 2399 | 15381312,1.8719452857 2400 | 15385240,1.8621701240 2401 | 15389160,1.8377322196 2402 | 15393084,1.8132943153 2403 | 15397016,1.8084066390 2404 | 15400916,1.7790811061 2405 | 15404828,1.7644183635 2406 | 15408740,1.7350928783 2407 | 15412660,1.7204301357 2408 | 15416568,1.7155425548 2409 | 15420488,1.7253177165 2410 | 15424408,1.7302052974 2411 | 15428316,1.7204301357 2412 | 15432240,1.7106549739 2413 | 15436160,1.7057673931 2414 | 15440080,1.7155425548 2415 | 15444004,1.7253177165 2416 | 15447928,1.7302052974 2417 | 15451844,1.7204301357 2418 | 15455760,1.7155425548 2419 | 15459684,1.7204301357 2420 | 15463600,1.7350928783 2421 | 15467508,1.7790811061 2422 | 15471420,1.8768328666 2423 | 15475340,2.0674486160 2424 | 15479252,2.3655912876 2425 | 15483184,2.7321603298 2426 | 15487100,3.1133918762 2427 | 15491020,3.3968720436 2428 | 15494940,3.4750733375 2429 | 15498860,3.2795698642 2430 | 15502772,2.8934507369 2431 | 15506692,2.3558161258 2432 | 15510608,1.8523949623 2433 | 15514528,1.4613881111 2434 | 15518452,1.2218964099 2435 | 15522368,1.1485825777 2436 | 15526292,1.1632453203 2437 | 15530212,1.2463343143 2438 | 15534132,1.3489736318 2439 | 15538056,1.4565005302 2440 | 15541964,1.5591397285 2441 | 15545888,1.6129032135 2442 | 15549812,1.6568914413 2443 | 15553736,1.6715541839 2444 | 15557660,1.7008798122 2445 | 15561568,1.7302052974 2446 | 15565480,1.7302052974 2447 | 15569392,1.7399804592 2448 | 15573312,1.7497556209 2449 | 15577228,1.7595307826 2450 | 15581140,1.7790811061 2451 | 15585052,1.7937438488 2452 | 15588972,1.7937438488 2453 | 15592892,1.7937438488 2454 | 15596812,1.8035190582 2455 | 15600708,1.8230694770 2456 | 15604616,1.8475073814 2457 | 15608532,1.8523949623 2458 | 15612464,1.8572825431 2459 | 15616392,1.8621701240 2460 | 15620300,1.8817204475 2461 | 15624220,1.8963831901 2462 | 15628136,1.8963831901 2463 | 15632056,1.9012707710 2464 | 15635968,1.9208210945 2465 | 15639880,1.9305962562 2466 | 15643792,1.9452590942 2467 | 15647696,1.9599218368 2468 | 15651616,1.9648094177 2469 | 15655536,1.9794721603 2470 | 15659452,2.0039100646 2471 | 15663356,2.0332355499 2472 | 15667268,2.0430107116 2473 | 15671172,2.0478982925 2474 | 15675092,2.0576734542 2475 | 15679012,2.0869989395 2476 | 15682924,2.1212120056 2477 | 15686844,2.1505377292 2478 | 15690748,2.1456501483 2479 | 15694668,2.1554253101 2480 | 15698580,2.1749756336 2481 | 15702508,2.2043011188 2482 | 15706420,2.2189638614 2483 | 15710340,2.2140762805 2484 | 15714252,2.2140762805 2485 | 15718172,2.2140762805 2486 | 15722084,2.2287390232 2487 | 15726004,2.2287390232 2488 | 15729924,2.2140762805 2489 | 15733836,2.1945259571 2490 | 15737748,2.1798632144 2491 | 15741668,2.1652004718 2492 | 15745572,2.1309874057 2493 | 15749484,2.0772237777 2494 | 15753404,2.0136852264 2495 | 15757324,1.9550342559 2496 | 15761236,1.8963831901 2497 | 15765160,1.8377322196 2498 | 15769084,1.7644183635 2499 | 15773016,1.7008798122 2500 | 15776932,1.6471162796 2501 | 15780856,1.6080156326 2502 | 15784756,1.5786901473 2503 | 15788676,1.5347018241 2504 | 15792592,1.4956011772 2505 | 15796520,1.4858260154 2506 | 15800432,1.4760508537 2507 | 15804336,1.4662756919 2508 | 15808252,1.4613881111 2509 | 15812184,1.4516129493 2510 | 15816112,1.4662756919 2511 | 15820032,1.4760508537 2512 | 15823936,1.4907135963 2513 | 15827852,1.5053763389 2514 | 15831764,1.5053763389 2515 | 15835684,1.5151515007 2516 | 15839596,1.5347018241 2517 | 15843516,1.5542521476 2518 | 15847444,1.5591397285 2519 | 15851364,1.5689149856 2520 | 15855284,1.5786901473 2521 | 15859204,1.5982404708 2522 | 15863120,1.6226783752 2523 | 15867044,1.6373411178 2524 | 15870964,1.6373411178 2525 | 15874892,1.6373411178 2526 | 15878820,1.6471162796 2527 | 15882740,1.6617790222 2528 | 15886660,1.6715541839 2529 | 15890580,1.6666666030 2530 | 15894492,1.6666666030 2531 | 15898404,1.6764417648 2532 | 15902332,1.6911046504 2533 | 15906248,1.7008798122 2534 | 15910156,1.6959922313 2535 | 15914076,1.6911046504 2536 | 15917988,1.6959922313 2537 | 15921916,1.7057673931 2538 | 15925848,1.7106549739 2539 | 15929760,1.7057673931 2540 | 15933676,1.7008798122 2541 | 15937580,1.6959922313 2542 | 15941504,1.7106549739 2543 | 15945420,1.7204301357 2544 | 15949344,1.7106549739 2545 | 15953264,1.7008798122 2546 | 15957180,1.6959922313 2547 | 15961108,1.7106549739 2548 | 15965024,1.7204301357 2549 | 15968944,1.7204301357 2550 | 15972864,1.7106549739 2551 | 15976772,1.7057673931 2552 | 15980692,1.7204301357 2553 | 15984596,1.7350928783 2554 | 15988516,1.7350928783 2555 | 15992440,1.7302052974 2556 | 15996360,1.7253177165 2557 | 16000284,1.7350928783 2558 | 16004200,1.7497556209 2559 | 16008112,1.7399804592 2560 | 16012024,1.7302052974 2561 | 16015936,1.7302052974 2562 | 16019848,1.7399804592 2563 | 16023756,1.7595307826 2564 | 16027676,1.7693059444 2565 | 16031572,1.7693059444 2566 | 16035484,1.7790811061 2567 | 16039404,1.7888562679 2568 | 16043328,1.8035190582 2569 | 16047240,1.8181818962 2570 | 16051160,1.8084066390 2571 | 16055060,1.8035190582 2572 | 16058972,1.8181818962 2573 | 16062896,1.8426198005 2574 | 16066800,1.8572825431 2575 | 16070712,1.8621701240 2576 | 16074616,1.8670577049 2577 | 16078524,1.8768328666 2578 | 16082448,1.8963831901 2579 | 16086368,1.9012707710 2580 | 16090280,1.8866080284 2581 | 16094184,1.8621701240 2582 | 16098092,1.8523949623 2583 | 16102024,1.8475073814 2584 | 16105944,1.8279570579 2585 | 16109852,1.7986314296 2586 | 16113764,1.7693059444 2587 | 16117676,1.7546432018 2588 | 16121588,1.7546432018 2589 | 16125512,1.7497556209 2590 | 16129428,1.7350928783 2591 | 16133352,1.7253177165 2592 | 16137272,1.7253177165 2593 | 16141192,1.7399804592 2594 | 16145112,1.7497556209 2595 | 16149032,1.7448680400 2596 | 16152936,1.7399804592 2597 | 16156852,1.7350928783 2598 | 16160760,1.7497556209 2599 | 16164676,1.7546432018 2600 | 16168592,1.7497556209 2601 | 16172512,1.7155425548 2602 | 16176440,1.7302052974 2603 | 16180348,1.7839686870 2604 | 16184260,1.8866080284 2605 | 16188172,2.0674486160 2606 | 16192084,2.3313782215 2607 | 16196012,2.6783969402 2608 | 16199924,3.0645160675 2609 | 16203828,3.3870968818 2610 | 16207736,3.4995112419 2611 | 16211652,3.3235580921 2612 | 16215576,2.9374389648 2613 | 16219500,2.4291300773 2614 | 16223416,1.9305962562 2615 | 16227324,1.5249266624 2616 | 16231244,1.2561094760 2617 | 16235152,1.1436949968 2618 | 16239076,1.1632453203 2619 | 16242996,1.2512218952 2620 | 16246920,1.3734115362 2621 | 16250836,1.4711632728 2622 | 16254756,1.5444769859 2623 | 16258676,1.6080156326 2624 | 16262580,1.6568914413 2625 | 16266500,1.6911046504 2626 | 16270408,1.7008798122 2627 | 16274320,1.7106549739 2628 | 16278240,1.7253177165 2629 | 16282168,1.7497556209 2630 | 16286084,1.7644183635 2631 | 16290004,1.7693059444 2632 | 16293924,1.7741935253 2633 | 16297844,1.7888562679 2634 | 16301760,1.8084066390 2635 | 16305652,1.8230694770 2636 | 16309564,1.8328446388 2637 | 16313496,1.8377322196 2638 | 16317416,1.8426198005 2639 | 16321336,1.8621701240 2640 | 16325244,1.8768328666 2641 | 16329164,1.8817204475 2642 | 16333084,1.8817204475 2643 | 16336996,1.8914956092 2644 | 16340912,1.9208210945 2645 | 16344824,1.9354838371 2646 | 16348744,1.9305962562 2647 | 16352656,1.9305962562 2648 | 16356576,1.9403715133 2649 | 16360500,1.9648094177 2650 | 16364408,1.9892473220 2651 | 16368324,2.0039100646 2652 | 16372228,2.0136852264 2653 | 16376148,2.0234603881 2654 | 16380068,2.0430107116 2655 | 16383972,2.0674486160 2656 | 16387892,2.0821113586 2657 | 16391804,2.0967741012 2658 | 16395716,2.1163244247 2659 | 16399636,2.1456501483 2660 | 16403548,2.1798632144 2661 | 16407468,2.1945259571 2662 | 16411396,2.1994135379 2663 | 16415316,2.2091886997 2664 | 16419228,2.2287390232 2665 | 16423148,2.2531769275 2666 | 16427060,2.2580645084 2667 | 16430964,2.2336266040 2668 | 16434876,2.2238514423 2669 | 16438796,2.2238514423 2670 | 16442716,2.2287390232 2671 | 16446628,2.2140762805 2672 | 16450532,2.1847507953 2673 | 16454444,2.1505377292 2674 | 16458364,2.1163244247 2675 | 16462292,2.0821113586 2676 | 16466212,2.0283479690 2677 | 16470120,1.9599218368 2678 | 16474036,1.8817204475 2679 | 16477956,1.8132943153 2680 | 16481884,1.7595307826 2681 | 16485792,1.7008798122 2682 | 16489700,1.6422286987 2683 | 16493612,1.5835777282 2684 | 16497524,1.5444769859 2685 | 16501444,1.5200390815 2686 | 16505356,1.5053763389 2687 | 16509272,1.4858260154 2688 | 16513188,1.4613881111 2689 | 16517112,1.4565005302 2690 | 16521024,1.4662756919 2691 | 16524952,1.4760508537 2692 | 16528864,1.4760508537 2693 | 16532764,1.4711632728 2694 | 16536684,1.4809384346 2695 | 16540592,1.4956011772 2696 | 16544508,1.5249266624 2697 | 16548428,1.5347018241 2698 | 16552348,1.5444769859 2699 | 16556268,1.5542521476 2700 | 16560188,1.5738025665 2701 | 16564100,1.6031280517 2702 | 16568016,1.6129032135 2703 | 16571940,1.6177907943 2704 | 16575864,1.6226783752 2705 | 16579780,1.6422286987 2706 | 16583700,1.6520038604 2707 | 16587596,1.6568914413 2708 | 16591516,1.6520038604 2709 | 16595420,1.6568914413 2710 | 16599352,1.6715541839 2711 | 16603280,1.6862169265 2712 | 16607196,1.6911046504 2713 | 16611120,1.6862169265 2714 | 16615036,1.6813293457 2715 | 16618968,1.6862169265 2716 | 16622884,1.6959922313 2717 | 16626800,1.7008798122 2718 | 16630700,1.6862169265 2719 | 16634612,1.6764417648 2720 | 16638544,1.6862169265 --------------------------------------------------------------------------------