├── REPORT.pdf ├── Results ├── 1 │ ├── graph.png │ └── output.png ├── 2 │ ├── graph.png │ └── output.png └── 3 │ ├── graph.png │ └── output.png ├── User Manual.txt ├── LICENSE ├── README.md ├── .gitignore ├── SOURCE CODE.py └── Dataset ├── data 3.csv ├── data 2.csv └── data 1.csv /REPORT.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/REPORT.pdf -------------------------------------------------------------------------------- /Results/1/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/Results/1/graph.png -------------------------------------------------------------------------------- /Results/2/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/Results/2/graph.png -------------------------------------------------------------------------------- /Results/3/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/Results/3/graph.png -------------------------------------------------------------------------------- /Results/1/output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/Results/1/output.png -------------------------------------------------------------------------------- /Results/2/output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/Results/2/output.png -------------------------------------------------------------------------------- /Results/3/output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DebalekhaChakraborty/Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal/HEAD/Results/3/output.png -------------------------------------------------------------------------------- /User Manual.txt: -------------------------------------------------------------------------------- 1 | 2 | Guide To Run the Source Code : 3 | 4 | Step 1: Install Matplotlib, Pandas, Numpy Libraries. 5 | Step 2: Update the address of the ECG Dataset in line 5 of the source code. 6 | Step 3: Run the source code on Python 3.7 idle. -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Debalekha Chakraborty 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Myocardial-Ischemia-Detection-by-Analysing-ECG-Signal 2 | Processing ECG Signal, QRS and ST Segment Detection, BPM Calculation, ST Slope Measurement and Myocardial Ischemia Detection. 3 | 4 | I have done this project on my 4th year of B.Tech and submitted as Final Project. In this project I collected various ecg signals from online opensources and used them to study the behaviour of the signal in the presence of abnormal heart rate and myocardial ischemia. 5 | 6 | SYSTEM ANALYSIS & DESIGN: 7 | 8 | The QRS complex (or R peak) is detected from the ECG signal. Based on that, BPM (Beats Per Minute) is calculated. Then ST segmentation is computed and slope of the ST segment is measured. A threshold is set and ischemic episode is detected according to that threshold. 9 | 10 | • Database: ECG signals are used from the Physiobank database (Goldberger et al., 2000). The European ST-T database in Physiobank contains ECG signals with ST segment and T wave changes (Taddei, et al., 1992). The database contains ECG signals from ischemic patients where normal ECG sections and sudden ischemic episodes are annotated. 11 | 12 | • Proposed Algorithm Process Flow: 13 | 14 |
16 | 17 | • Result: 18 | 19 |15 |
22 | 23 | 24 | For Details, refer to the "REPORT" file of the Repository. 25 | -------------------------------------------------------------------------------- /.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 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | wheels/ 23 | pip-wheel-metadata/ 24 | share/python-wheels/ 25 | *.egg-info/ 26 | .installed.cfg 27 | *.egg 28 | MANIFEST 29 | 30 | # PyInstaller 31 | # Usually these files are written by a python script from a template 32 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 33 | *.manifest 34 | *.spec 35 | 36 | # Installer logs 37 | pip-log.txt 38 | pip-delete-this-directory.txt 39 | 40 | # Unit test / coverage reports 41 | htmlcov/ 42 | .tox/ 43 | .nox/ 44 | .coverage 45 | .coverage.* 46 | .cache 47 | nosetests.xml 48 | coverage.xml 49 | *.cover 50 | *.py,cover 51 | .hypothesis/ 52 | .pytest_cache/ 53 | 54 | # Translations 55 | *.mo 56 | *.pot 57 | 58 | # Django stuff: 59 | *.log 60 | local_settings.py 61 | db.sqlite3 62 | db.sqlite3-journal 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | target/ 76 | 77 | # Jupyter Notebook 78 | .ipynb_checkpoints 79 | 80 | # IPython 81 | profile_default/ 82 | ipython_config.py 83 | 84 | # pyenv 85 | .python-version 86 | 87 | # pipenv 88 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 89 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 90 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 91 | # install all needed dependencies. 92 | #Pipfile.lock 93 | 94 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 95 | __pypackages__/ 96 | 97 | # Celery stuff 98 | celerybeat-schedule 99 | celerybeat.pid 100 | 101 | # SageMath parsed files 102 | *.sage.py 103 | 104 | # Environments 105 | .env 106 | .venv 107 | env/ 108 | venv/ 109 | ENV/ 110 | env.bak/ 111 | venv.bak/ 112 | 113 | # Spyder project settings 114 | .spyderproject 115 | .spyproject 116 | 117 | # Rope project settings 118 | .ropeproject 119 | 120 | # mkdocs documentation 121 | /site 122 | 123 | # mypy 124 | .mypy_cache/ 125 | .dmypy.json 126 | dmypy.json 127 | 128 | # Pyre type checker 129 | .pyre/ 130 | -------------------------------------------------------------------------------- /SOURCE CODE.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import matplotlib.pyplot as plt 3 | import numpy as np 4 | import math 5 | dataset = pd.read_csv(r"C:\Users\MAHABHARAT\Desktop\ECG\FINAL PROJECT 8 SEM\data.csv")#read data 6 | #Calculate moving average with 0.75s in both directions, then append do dataset 7 | hrw = 0.200 #One-sided window size, as proportion of the sampling frequency 8 | fs = 250 #The example dataset was recorded at 250Hz 9 | mov_avg = dataset['hart'].rolling(int(hrw*fs)).mean() #Calculate moving average #for older panda version mov_avg = pd.rolling_mean(dataset.hart, window=int(hrw*fs)) 10 | #Impute where moving average function returns NaN, which is the beginning of the signal where x hrw 11 | avg_hr = (np.mean(dataset.hart)) 12 | mov_avg = [avg_hr if math.isnan(x) else x for x in mov_avg] 13 | mov_avg = [x*1.2 for x in mov_avg] #For now we raise the average by 20% to prevent the secondary heart contraction from interfering 14 | dataset['hart_rollingmean'] = mov_avg #Append the moving average to the dataframe 15 | 16 | #Mark regions of interest 17 | window = [] 18 | peaklist = [] 19 | listpos = 0 #We use a counter to move over the different data columns 20 | for datapoint in dataset.hart: 21 | rollingmean = dataset.hart_rollingmean[listpos] #Get local mean 22 | if (datapoint < rollingmean) and (len(window) < 1): #If no detectable R-complex activity -> do nothing 23 | listpos += 1 24 | elif (datapoint > rollingmean): #If signal comes above local mean, mark ROI 25 | window.append(datapoint) 26 | listpos += 1 27 | else: #If signal drops below local mean -> determine highest point 28 | maximum = max(window) 29 | beatposition = listpos - len(window) + (window.index(max(window))) #Notate the position of the point on the X-axis 30 | peaklist.append(beatposition) #Add detected peak to list 31 | window = [] #Clear marked ROI 32 | listpos += 1 33 | ybeat = [dataset.hart[x] for x in peaklist] #Get the y-value of all peaks for plotting purposes 34 | print (peaklist) 35 | 36 | RR_list = [] 37 | cnt = 0 38 | while (cnt < (len(peaklist)-1)): 39 | RR_interval = (peaklist[cnt+1] - peaklist[cnt]) #Calculate distance between beats in # of samples 40 | ms_dist = ((RR_interval / fs) * 1000.0) #Convert sample distances to ms distances 41 | RR_list.append(ms_dist) #Append to list 42 | cnt += 1 43 | bpm = 60000 / np.mean(RR_list) #60000 ms (1 minute) / average R-R interval of signal 44 | print ("Average Heart Beat is: %.01f" %bpm) #Round off to 1 decimal and print 45 | if (bpm>100): 46 | print (" Heart Condition : TACHYCARDIA ") 47 | elif(bpm<60): 48 | print(" Heart Condition : BRADYCARDIA ") 49 | else: 50 | print (" Heart Condition : NORMAL ") 51 | 52 | 53 | 54 | CycleTime = 60000/bpm # Time duration of a single cycle (60*1000)/bpm in ms 55 | STStartTime = CycleTime*0.055 # CycleTime*(110/1000)/2 = 0.055 56 | STStartTimeSample = round (STStartTime*0.250) # converting ms to sample value 57 | STDuration = CycleTime*0.120 # Duration of ST 58 | STDurationSample = round (STDuration*0.250) # converting ms to sample value 59 | 60 | S_Point=[] 61 | count=0 62 | while (count <= (len(peaklist)-1)): 63 | S = (peaklist[count] + STStartTimeSample) 64 | S_Point.append(S) 65 | count +=1 66 | print (S_Point) 67 | y1beat = [dataset.hart[x1] for x1 in S_Point] #Get the y-value of S points for plotting purposes 68 | 69 | 70 | T_Point=[] 71 | count=0 72 | while (count <= (len(S_Point)-1)): 73 | T = (S_Point[count] + STDurationSample) 74 | T_Point.append(T) 75 | count +=1 76 | print (T_Point) 77 | y2beat = [dataset.hart[x2] for x2 in T_Point] #Get the y-value of T points for plotting purposes 78 | 79 | 80 | ST = [] 81 | ST_interval = np.subtract(y2beat,y1beat) 82 | ST.append(ST_interval) 83 | print(ST) 84 | 85 | slope=[] 86 | slope_is =np.divide(ST,STDurationSample) 87 | slope.append(slope_is) 88 | print(slope) 89 | 90 | avg_slope =np.mean(slope) 91 | print ("Average Slope is: %.01f" %avg_slope) 92 | 93 | if (avg_slope>0.35): 94 | print (" Heart Condition : MYOCARDIAL ISCHEMIA ") 95 | else: 96 | print (" Heart Condition : NORMAL ") 97 | 98 | 99 | 100 | plt.title("Detected R peaks in signal") 101 | plt.xlim(0,1000) 102 | plt.xlabel('Time') 103 | plt.ylabel('Amplitude of Signal') 104 | plt.plot(dataset.hart, alpha=0.5, color='black', label="raw signal") #Plot semi-transparent HR 105 | #plt.plot(mov_avg, color ='red', label="moving average") #Plot moving average 106 | plt.scatter(peaklist, ybeat, color='purple', label="average: %.1f BPM" %bpm) #Plot detected peaks 107 | plt.scatter(S_Point, y1beat, color='red',label="ST Segment Range") 108 | plt.scatter(T_Point, y2beat, color='red') 109 | plt.legend(loc=4, framealpha=0.6) 110 | plt.show() 111 | -------------------------------------------------------------------------------- /Dataset/data 3.csv: -------------------------------------------------------------------------------- 1 | hart 2 | 530 3 | 518 4 | 506 5 | 494 6 | 483 7 | 472 8 | 462 9 | 454 10 | 446 11 | 440 12 | 434 13 | 430 14 | 428 15 | 431 16 | 431 17 | 432 18 | 434 19 | 439 20 | 444 21 | 450 22 | 454 23 | 459 24 | 465 25 | 470 26 | 475 27 | 481 28 | 487 29 | 490 30 | 494 31 | 497 32 | 496 33 | 500 34 | 501 35 | 502 36 | 504 37 | 505 38 | 504 39 | 503 40 | 502 41 | 501 42 | 499 43 | 498 44 | 496 45 | 495 46 | 492 47 | 492 48 | 490 49 | 490 50 | 490 51 | 491 52 | 492 53 | 493 54 | 493 55 | 494 56 | 494 57 | 495 58 | 496 59 | 496 60 | 495 61 | 495 62 | 496 63 | 497 64 | 497 65 | 500 66 | 510 67 | 530 68 | 559 69 | 593 70 | 630 71 | 667 72 | 703 73 | 735 74 | 759 75 | 774 76 | 782 77 | 781 78 | 771 79 | 753 80 | 728 81 | 597 82 | 562 83 | 528 84 | 497 85 | 411 86 | 399 87 | 389 88 | 385 89 | 433 90 | 450 91 | 458 92 | 459 93 | 463 94 | 467 95 | 469 96 | 471 97 | 474 98 | 475 99 | 478 100 | 480 101 | 483 102 | 485 103 | 488 104 | 491 105 | 492 106 | 493 107 | 495 108 | 498 109 | 501 110 | 502 111 | 504 112 | 505 113 | 508 114 | 508 115 | 510 116 | 512 117 | 515 118 | 520 119 | 535 120 | 536 121 | 540 122 | 544 123 | 546 124 | 550 125 | 553 126 | 556 127 | 558 128 | 558 129 | 560 130 | 564 131 | 565 132 | 565 133 | 561 134 | 556 135 | 548 136 | 540 137 | 531 138 | 519 139 | 508 140 | 497 141 | 486 142 | 475 143 | 465 144 | 457 145 | 450 146 | 444 147 | 438 148 | 435 149 | 432 150 | 431 151 | 431 152 | 432 153 | 434 154 | 439 155 | 444 156 | 450 157 | 454 158 | 459 159 | 465 160 | 470 161 | 475 162 | 481 163 | 487 164 | 490 165 | 494 166 | 497 167 | 496 168 | 500 169 | 501 170 | 502 171 | 504 172 | 505 173 | 504 174 | 503 175 | 502 176 | 501 177 | 499 178 | 498 179 | 496 180 | 495 181 | 492 182 | 492 183 | 490 184 | 490 185 | 490 186 | 491 187 | 492 188 | 493 189 | 493 190 | 494 191 | 494 192 | 495 193 | 496 194 | 496 195 | 495 196 | 495 197 | 496 198 | 497 199 | 497 200 | 500 201 | 510 202 | 530 203 | 559 204 | 593 205 | 630 206 | 667 207 | 703 208 | 735 209 | 759 210 | 774 211 | 782 212 | 781 213 | 771 214 | 753 215 | 728 216 | 597 217 | 562 218 | 528 219 | 497 220 | 411 221 | 399 222 | 389 223 | 385 224 | 433 225 | 450 226 | 458 227 | 459 228 | 463 229 | 467 230 | 469 231 | 471 232 | 474 233 | 475 234 | 478 235 | 480 236 | 483 237 | 485 238 | 488 239 | 491 240 | 492 241 | 493 242 | 495 243 | 498 244 | 501 245 | 502 246 | 504 247 | 505 248 | 508 249 | 508 250 | 510 251 | 512 252 | 515 253 | 520 254 | 535 255 | 536 256 | 540 257 | 544 258 | 546 259 | 550 260 | 553 261 | 556 262 | 558 263 | 558 264 | 560 265 | 564 266 | 565 267 | 565 268 | 561 269 | 556 270 | 548 271 | 540 272 | 531 273 | 519 274 | 508 275 | 497 276 | 486 277 | 475 278 | 465 279 | 457 280 | 450 281 | 444 282 | 438 283 | 435 284 | 432 285 | 433 286 | 435 287 | 437 288 | 441 289 | 444 290 | 450 291 | 454 292 | 459 293 | 465 294 | 470 295 | 475 296 | 481 297 | 487 298 | 490 299 | 494 300 | 497 301 | 496 302 | 500 303 | 503 304 | 505 305 | 507 306 | 509 307 | 504 308 | 503 309 | 502 310 | 501 311 | 499 312 | 498 313 | 496 314 | 495 315 | 492 316 | 492 317 | 490 318 | 490 319 | 493 320 | 495 321 | 497 322 | 495 323 | 494 324 | 496 325 | 496 326 | 495 327 | 496 328 | 496 329 | 495 330 | 495 331 | 496 332 | 497 333 | 497 334 | 500 335 | 510 336 | 530 337 | 559 338 | 593 339 | 630 340 | 670 341 | 705 342 | 740 343 | 763 344 | 777 345 | 790 346 | 785 347 | 775 348 | 760 349 | 731 350 | 597 351 | 562 352 | 528 353 | 497 354 | 411 355 | 399 356 | 389 357 | 385 358 | 433 359 | 450 360 | 458 361 | 459 362 | 463 363 | 467 364 | 469 365 | 471 366 | 477 367 | 480 368 | 482 369 | 485 370 | 487 371 | 490 372 | 490 373 | 495 374 | 493 375 | 493 376 | 495 377 | 498 378 | 501 379 | 502 380 | 504 381 | 505 382 | 508 383 | 508 384 | 510 385 | 512 386 | 515 387 | 520 388 | 535 389 | 536 390 | 540 391 | 544 392 | 546 393 | 550 394 | 553 395 | 556 396 | 558 397 | 558 398 | 560 399 | 564 400 | 570 401 | 570 402 | 565 403 | 560 404 | 553 405 | 540 406 | 531 407 | 519 408 | 508 409 | 497 410 | 486 411 | 475 412 | 465 413 | 457 414 | 450 415 | 444 416 | 438 417 | 435 418 | 432 419 | 431 420 | 432 421 | 434 422 | 439 423 | 444 424 | 450 425 | 454 426 | 459 427 | 465 428 | 470 429 | 475 430 | 481 431 | 487 432 | 490 433 | 494 434 | 497 435 | 496 436 | 500 437 | 501 438 | 502 439 | 504 440 | 505 441 | 504 442 | 503 443 | 502 444 | 501 445 | 499 446 | 498 447 | 496 448 | 495 449 | 492 450 | 492 451 | 490 452 | 490 453 | 490 454 | 491 455 | 492 456 | 493 457 | 493 458 | 494 459 | 494 460 | 495 461 | 496 462 | 496 463 | 495 464 | 495 465 | 496 466 | 497 467 | 497 468 | 500 469 | 510 470 | 530 471 | 559 472 | 593 473 | 630 474 | 667 475 | 703 476 | 735 477 | 759 478 | 774 479 | 782 480 | 781 481 | 771 482 | 753 483 | 728 484 | 597 485 | 562 486 | 528 487 | 497 488 | 411 489 | 399 490 | 389 491 | 385 492 | 433 493 | 450 494 | 458 495 | 459 496 | 463 497 | 467 498 | 469 499 | 471 500 | 474 501 | 475 502 | 478 503 | 480 504 | 483 505 | 485 506 | 488 507 | 491 508 | 492 509 | 493 510 | 495 511 | 498 512 | 501 513 | 502 514 | 504 515 | 505 516 | 508 517 | 508 518 | 510 519 | 512 520 | 515 521 | 520 522 | 535 523 | 536 524 | 540 525 | 544 526 | 546 527 | 550 528 | 553 529 | 556 530 | 558 531 | 558 532 | 560 533 | 564 534 | 565 535 | 565 536 | 561 537 | 556 538 | 548 539 | 540 540 | 531 541 | 519 542 | 508 543 | 497 544 | 486 545 | 475 546 | 465 547 | 457 548 | 450 549 | 444 550 | 438 551 | 435 552 | 432 553 | 433 554 | 435 555 | 437 556 | 441 557 | 444 558 | 450 559 | 454 560 | 459 561 | 465 562 | 470 563 | 475 564 | 481 565 | 487 566 | 490 567 | 494 568 | 497 569 | 496 570 | 500 571 | 503 572 | 505 573 | 510 574 | 511 575 | 507 576 | 505 577 | 499 578 | 497 579 | 498 580 | 496 581 | 495 582 | 492 583 | 492 584 | 490 585 | 490 586 | 493 587 | 495 588 | 497 589 | 495 590 | 494 591 | 496 592 | 496 593 | 495 594 | 496 595 | 496 596 | 495 597 | 495 598 | 496 599 | 497 600 | 497 601 | 500 602 | 503 603 | 515 604 | 535 605 | 559 606 | 593 607 | 630 608 | 670 609 | 705 610 | 740 611 | 763 612 | 777 613 | 771 614 | 770 615 | 773 616 | 760 617 | 731 618 | 597 619 | 562 620 | 528 621 | 497 622 | 411 623 | 399 624 | 389 625 | 385 626 | 433 627 | 450 628 | 458 629 | 459 630 | 463 631 | 467 632 | 469 633 | 471 634 | 474 635 | 475 636 | 478 637 | 480 638 | 483 639 | 485 640 | 488 641 | 491 642 | 492 643 | 493 644 | 495 645 | 498 646 | 501 647 | 502 648 | 504 649 | 505 650 | 508 651 | 508 652 | 510 653 | 512 654 | 515 655 | 520 656 | 535 657 | 536 658 | 540 659 | 544 660 | 546 661 | 550 662 | 553 663 | 556 664 | 558 665 | 558 666 | 560 667 | 564 668 | 565 669 | 565 670 | 561 671 | 556 672 | 548 673 | 540 674 | 531 675 | 519 676 | 508 677 | 497 678 | 486 679 | 475 680 | 465 681 | 457 682 | 450 683 | 444 684 | 438 685 | 435 686 | 432 687 | 431 688 | 432 689 | 434 690 | 439 691 | 444 692 | 450 693 | 454 694 | 459 695 | 465 696 | 470 697 | 475 698 | 481 699 | 487 700 | 490 701 | 494 702 | 497 703 | 496 704 | 500 705 | 501 706 | 502 707 | 504 708 | 505 709 | 504 710 | 503 711 | 502 712 | 501 713 | 499 714 | 498 715 | 496 716 | 495 717 | 492 718 | 492 719 | 490 720 | 490 721 | 490 722 | 491 723 | 492 724 | 493 725 | 493 726 | 494 727 | 494 728 | 495 729 | 496 730 | 496 731 | 495 732 | 495 733 | 496 734 | 497 735 | 497 736 | 500 737 | 510 738 | 530 739 | 559 740 | 593 741 | 630 742 | 667 743 | 703 744 | 735 745 | 759 746 | 774 747 | 782 748 | 781 749 | 771 750 | 753 751 | 728 752 | 597 753 | 562 754 | 528 755 | 497 756 | 411 757 | 399 758 | 389 759 | 385 760 | 433 761 | 450 762 | 458 763 | 459 764 | 463 765 | 467 766 | 469 767 | 471 768 | 474 769 | 475 770 | 478 771 | 480 772 | 483 773 | 485 774 | 488 775 | 491 776 | 492 777 | 493 778 | 495 779 | 498 780 | 501 781 | 502 782 | 504 783 | 505 784 | 508 785 | 508 786 | 510 787 | 512 788 | 515 789 | 520 790 | 535 791 | 536 792 | 540 793 | 544 794 | 546 795 | 550 796 | 553 797 | 556 798 | 558 799 | 558 800 | 560 801 | 564 802 | 565 803 | 565 804 | 561 805 | 556 806 | 548 807 | 540 808 | 531 809 | 519 810 | 508 811 | 497 812 | 486 813 | 475 814 | 465 815 | 457 816 | 450 817 | 444 818 | 438 819 | 435 820 | 432 821 | -------------------------------------------------------------------------------- /Dataset/data 2.csv: -------------------------------------------------------------------------------- 1 | hart 2 | 312 3 | 323 4 | 318 5 | 320 6 | 335 7 | 327 8 | 336 9 | 337 10 | 345 11 | 356 12 | 362 13 | 378 14 | 384 15 | 399 16 | 407 17 | 416 18 | 423 19 | 437 20 | 449 21 | 432 22 | 410 23 | 389 24 | 372 25 | 358 26 | 341 27 | 327 28 | 314 29 | 307 30 | 294 31 | 287 32 | 283 33 | 289 34 | 294 35 | 290 36 | 292 37 | 295 38 | 289 39 | 283 40 | 286 41 | 294 42 | 297 43 | 291 44 | 286 45 | 282 46 | 279 47 | 284 48 | 289 49 | 293 50 | 295 51 | 299 52 | 304 53 | 307 54 | 314 55 | 311 56 | 309 57 | 315 58 | 319 59 | 324 60 | 327 61 | 332 62 | 339 63 | 317 64 | 289 65 | 280 66 | 268 67 | 273 68 | 348 69 | 394 70 | 457 71 | 512 72 | 547 73 | 589 74 | 634 75 | 695 76 | 768 77 | 705 78 | 672 79 | 640 80 | 603 81 | 566 82 | 529 83 | 502 84 | 471 85 | 432 86 | 400 87 | 389 88 | 376 89 | 381 90 | 388 91 | 392 92 | 397 93 | 379 94 | 355 95 | 341 96 | 329 97 | 331 98 | 337 99 | 342 100 | 349 101 | 354 102 | 358 103 | 362 104 | 365 105 | 369 106 | 361 107 | 368 108 | 372 109 | 366 110 | 361 111 | 354 112 | 347 113 | 359 114 | 368 115 | 370 116 | 371 117 | 370 118 | 372 119 | 373 120 | 373 121 | 374 122 | 376 123 | 377 124 | 378 125 | 386 126 | 394 127 | 396 128 | 397 129 | 399 130 | 395 131 | 393 132 | 390 133 | 392 134 | 391 135 | 393 136 | 394 137 | 398 138 | 400 139 | 401 140 | 402 141 | 404 142 | 405 143 | 407 144 | 410 145 | 416 146 | 419 147 | 422 148 | 424 149 | 427 150 | 431 151 | 432 152 | 431 153 | 432 154 | 433 155 | 435 156 | 435 157 | 436 158 | 437 159 | 439 160 | 440 161 | 442 162 | 447 163 | 445 164 | 441 165 | 454 166 | 466 167 | 480 168 | 492 169 | 501 170 | 502 171 | 504 172 | 505 173 | 506 174 | 507 175 | 501 176 | 493 177 | 478 178 | 469 179 | 454 180 | 448 181 | 440 182 | 431 183 | 423 184 | 419 185 | 415 186 | 416 187 | 416 188 | 415 189 | 417 190 | 411 191 | 407 192 | 401 193 | 389 194 | 380 195 | 368 196 | 359 197 | 352 198 | 353 199 | 354 200 | 356 201 | 360 202 | 359 203 | 361 204 | 358 205 | 356 206 | 352 207 | 350 208 | 348 209 | 347 210 | 347 211 | 347 212 | 213 | 312 214 | 323 215 | 318 216 | 320 217 | 335 218 | 327 219 | 336 220 | 337 221 | 345 222 | 356 223 | 362 224 | 378 225 | 384 226 | 399 227 | 407 228 | 416 229 | 423 230 | 437 231 | 449 232 | 432 233 | 410 234 | 389 235 | 372 236 | 358 237 | 341 238 | 327 239 | 314 240 | 307 241 | 294 242 | 287 243 | 283 244 | 289 245 | 294 246 | 290 247 | 292 248 | 295 249 | 289 250 | 283 251 | 286 252 | 294 253 | 297 254 | 291 255 | 286 256 | 282 257 | 279 258 | 284 259 | 289 260 | 293 261 | 295 262 | 299 263 | 304 264 | 307 265 | 314 266 | 311 267 | 309 268 | 315 269 | 319 270 | 324 271 | 327 272 | 332 273 | 339 274 | 317 275 | 289 276 | 280 277 | 268 278 | 273 279 | 348 280 | 394 281 | 457 282 | 512 283 | 547 284 | 589 285 | 634 286 | 695 287 | 768 288 | 705 289 | 672 290 | 640 291 | 603 292 | 566 293 | 529 294 | 502 295 | 471 296 | 432 297 | 400 298 | 389 299 | 376 300 | 381 301 | 388 302 | 392 303 | 397 304 | 379 305 | 355 306 | 341 307 | 329 308 | 331 309 | 337 310 | 342 311 | 349 312 | 354 313 | 358 314 | 362 315 | 365 316 | 369 317 | 361 318 | 368 319 | 372 320 | 366 321 | 361 322 | 354 323 | 347 324 | 359 325 | 368 326 | 370 327 | 371 328 | 370 329 | 372 330 | 373 331 | 373 332 | 374 333 | 376 334 | 377 335 | 378 336 | 386 337 | 394 338 | 396 339 | 397 340 | 399 341 | 395 342 | 393 343 | 390 344 | 392 345 | 391 346 | 393 347 | 394 348 | 398 349 | 400 350 | 401 351 | 402 352 | 404 353 | 405 354 | 407 355 | 410 356 | 416 357 | 419 358 | 422 359 | 424 360 | 427 361 | 431 362 | 432 363 | 431 364 | 432 365 | 433 366 | 435 367 | 435 368 | 436 369 | 437 370 | 439 371 | 440 372 | 442 373 | 447 374 | 445 375 | 441 376 | 454 377 | 466 378 | 480 379 | 492 380 | 501 381 | 502 382 | 504 383 | 505 384 | 506 385 | 507 386 | 501 387 | 493 388 | 478 389 | 469 390 | 454 391 | 448 392 | 440 393 | 431 394 | 423 395 | 419 396 | 415 397 | 416 398 | 416 399 | 415 400 | 417 401 | 411 402 | 407 403 | 401 404 | 389 405 | 380 406 | 368 407 | 359 408 | 352 409 | 353 410 | 354 411 | 356 412 | 360 413 | 359 414 | 361 415 | 358 416 | 356 417 | 352 418 | 350 419 | 348 420 | 347 421 | 347 422 | 347 423 | 424 | 312 425 | 323 426 | 318 427 | 320 428 | 335 429 | 327 430 | 336 431 | 337 432 | 345 433 | 356 434 | 362 435 | 378 436 | 384 437 | 399 438 | 407 439 | 416 440 | 423 441 | 437 442 | 449 443 | 432 444 | 410 445 | 389 446 | 372 447 | 358 448 | 341 449 | 327 450 | 314 451 | 307 452 | 294 453 | 287 454 | 283 455 | 289 456 | 294 457 | 290 458 | 292 459 | 295 460 | 289 461 | 283 462 | 286 463 | 294 464 | 297 465 | 291 466 | 286 467 | 282 468 | 279 469 | 284 470 | 289 471 | 293 472 | 295 473 | 299 474 | 304 475 | 307 476 | 314 477 | 311 478 | 309 479 | 315 480 | 319 481 | 324 482 | 327 483 | 332 484 | 339 485 | 317 486 | 289 487 | 280 488 | 268 489 | 273 490 | 348 491 | 394 492 | 457 493 | 512 494 | 547 495 | 589 496 | 634 497 | 695 498 | 768 499 | 705 500 | 672 501 | 640 502 | 603 503 | 566 504 | 529 505 | 502 506 | 471 507 | 432 508 | 400 509 | 389 510 | 376 511 | 381 512 | 388 513 | 392 514 | 397 515 | 379 516 | 355 517 | 341 518 | 329 519 | 331 520 | 337 521 | 342 522 | 349 523 | 354 524 | 358 525 | 362 526 | 365 527 | 369 528 | 361 529 | 368 530 | 372 531 | 366 532 | 361 533 | 354 534 | 347 535 | 359 536 | 368 537 | 370 538 | 371 539 | 370 540 | 372 541 | 373 542 | 373 543 | 374 544 | 376 545 | 377 546 | 378 547 | 386 548 | 394 549 | 396 550 | 397 551 | 399 552 | 395 553 | 393 554 | 390 555 | 392 556 | 391 557 | 393 558 | 394 559 | 398 560 | 400 561 | 401 562 | 402 563 | 404 564 | 405 565 | 407 566 | 410 567 | 416 568 | 419 569 | 422 570 | 424 571 | 427 572 | 431 573 | 432 574 | 431 575 | 432 576 | 433 577 | 435 578 | 435 579 | 436 580 | 437 581 | 439 582 | 440 583 | 442 584 | 447 585 | 445 586 | 441 587 | 454 588 | 466 589 | 480 590 | 492 591 | 501 592 | 502 593 | 504 594 | 505 595 | 506 596 | 507 597 | 501 598 | 493 599 | 478 600 | 469 601 | 454 602 | 448 603 | 440 604 | 431 605 | 423 606 | 419 607 | 415 608 | 416 609 | 416 610 | 415 611 | 417 612 | 411 613 | 407 614 | 401 615 | 389 616 | 380 617 | 368 618 | 359 619 | 352 620 | 353 621 | 354 622 | 356 623 | 360 624 | 359 625 | 361 626 | 358 627 | 356 628 | 352 629 | 350 630 | 348 631 | 347 632 | 347 633 | 347 634 | 635 | 312 636 | 323 637 | 318 638 | 320 639 | 335 640 | 327 641 | 336 642 | 337 643 | 345 644 | 356 645 | 362 646 | 378 647 | 384 648 | 399 649 | 407 650 | 416 651 | 423 652 | 437 653 | 449 654 | 432 655 | 410 656 | 389 657 | 372 658 | 358 659 | 341 660 | 327 661 | 314 662 | 307 663 | 294 664 | 287 665 | 283 666 | 289 667 | 294 668 | 290 669 | 292 670 | 295 671 | 289 672 | 283 673 | 286 674 | 294 675 | 297 676 | 291 677 | 286 678 | 282 679 | 279 680 | 284 681 | 289 682 | 293 683 | 295 684 | 299 685 | 304 686 | 307 687 | 314 688 | 311 689 | 309 690 | 315 691 | 319 692 | 324 693 | 327 694 | 332 695 | 339 696 | 317 697 | 289 698 | 280 699 | 268 700 | 273 701 | 348 702 | 394 703 | 457 704 | 512 705 | 547 706 | 589 707 | 634 708 | 695 709 | 768 710 | 705 711 | 672 712 | 640 713 | 603 714 | 566 715 | 529 716 | 502 717 | 471 718 | 432 719 | 400 720 | 389 721 | 376 722 | 381 723 | 388 724 | 392 725 | 397 726 | 379 727 | 355 728 | 341 729 | 329 730 | 331 731 | 337 732 | 342 733 | 349 734 | 354 735 | 358 736 | 362 737 | 365 738 | 369 739 | 361 740 | 368 741 | 372 742 | 366 743 | 361 744 | 354 745 | 347 746 | 359 747 | 368 748 | 370 749 | 371 750 | 370 751 | 372 752 | 373 753 | 373 754 | 374 755 | 376 756 | 377 757 | 378 758 | 386 759 | 394 760 | 396 761 | 397 762 | 399 763 | 395 764 | 393 765 | 390 766 | 392 767 | 391 768 | 393 769 | 394 770 | 398 771 | 400 772 | 401 773 | 402 774 | 404 775 | 405 776 | 407 777 | 410 778 | 416 779 | 419 780 | 422 781 | 424 782 | 427 783 | 431 784 | 432 785 | 431 786 | 432 787 | 433 788 | 435 789 | 435 790 | 436 791 | 437 792 | 439 793 | 440 794 | 442 795 | 447 796 | 445 797 | 441 798 | 454 799 | 466 800 | 480 801 | 492 802 | 501 803 | 502 804 | 504 805 | 505 806 | 506 807 | 507 808 | 501 809 | 493 810 | 478 811 | 469 812 | 454 813 | 448 814 | 440 815 | 431 816 | 423 817 | 419 818 | 415 819 | 416 820 | 416 821 | 415 822 | 417 823 | 411 824 | 407 825 | 401 826 | 389 827 | 380 828 | 368 829 | 359 830 | 352 831 | 353 832 | 354 833 | 356 834 | 360 835 | 359 836 | 361 837 | 358 838 | 356 839 | 352 840 | 350 841 | 348 842 | 347 843 | 347 844 | 347 845 | 846 | 312 847 | 323 848 | 318 849 | 320 850 | 335 851 | 327 852 | 336 853 | 337 854 | 345 855 | 356 856 | 362 857 | 378 858 | 384 859 | 399 860 | 407 861 | 416 862 | 423 863 | 437 864 | 449 865 | 432 866 | 410 867 | 389 868 | 372 869 | 358 870 | 341 871 | 327 872 | 314 873 | 307 874 | 294 875 | 287 876 | 283 877 | 289 878 | 294 879 | 290 880 | 292 881 | 295 882 | 289 883 | 283 884 | 286 885 | 294 886 | 297 887 | 291 888 | 286 889 | 282 890 | 279 891 | 284 892 | 289 893 | 293 894 | 295 895 | 299 896 | 304 897 | 307 898 | 314 899 | 311 900 | 309 901 | 315 902 | 319 903 | 324 904 | 327 905 | 332 906 | 339 907 | 317 908 | 289 909 | 280 910 | 268 911 | 273 912 | 348 913 | 394 914 | 457 915 | 512 916 | 547 917 | 589 918 | 634 919 | 695 920 | 768 921 | 705 922 | 672 923 | 640 924 | 603 925 | 566 926 | 529 927 | 502 928 | 471 929 | 432 930 | 400 931 | 389 932 | 376 933 | 381 934 | 388 935 | 392 936 | 397 937 | 379 938 | 355 939 | 341 940 | 329 941 | 331 942 | 337 943 | 342 944 | 349 945 | 354 946 | 358 947 | 362 948 | 365 949 | 369 950 | 361 951 | 368 952 | 372 953 | 366 954 | 361 955 | 354 956 | 347 957 | 359 958 | 368 959 | 370 960 | 371 961 | 370 962 | 372 963 | 373 964 | 373 965 | 374 966 | 376 967 | 377 968 | 378 969 | 386 970 | 394 971 | 396 972 | 397 973 | 399 974 | 395 975 | 393 976 | 390 977 | 392 978 | 391 979 | 393 980 | 394 981 | 398 982 | 400 983 | 401 984 | 402 985 | 404 986 | 405 987 | 407 988 | 410 989 | 416 990 | 419 991 | 422 992 | 424 993 | 427 994 | 431 995 | 432 996 | 431 997 | 432 998 | 433 999 | 435 1000 | 435 1001 | 436 1002 | 437 1003 | 439 1004 | 440 1005 | 442 1006 | 447 1007 | 445 1008 | 441 1009 | 454 1010 | 466 1011 | 480 1012 | 492 1013 | 501 1014 | 502 1015 | 504 1016 | 505 1017 | 506 1018 | 507 1019 | 501 1020 | 493 1021 | 478 1022 | 469 1023 | 454 1024 | 448 1025 | 440 1026 | 431 1027 | 423 1028 | 419 1029 | 415 1030 | 416 1031 | 416 1032 | 415 1033 | 417 1034 | 411 1035 | 407 1036 | 401 1037 | 389 1038 | 380 1039 | 368 1040 | 359 1041 | 352 1042 | 353 1043 | 354 1044 | 356 1045 | 360 1046 | 359 1047 | 361 1048 | 358 1049 | 356 1050 | 352 1051 | 350 1052 | 348 1053 | 347 1054 | 347 1055 | 347 1056 | 1057 | 312 1058 | 323 1059 | 318 1060 | 320 1061 | 335 1062 | 327 1063 | 336 1064 | 337 1065 | 345 1066 | 356 1067 | 362 1068 | 378 1069 | 384 1070 | 399 1071 | 407 1072 | 416 1073 | 423 1074 | 437 1075 | 449 1076 | 432 1077 | 410 1078 | 389 1079 | 372 1080 | 358 1081 | 341 1082 | 327 1083 | 314 1084 | 307 1085 | 294 1086 | 287 1087 | 283 1088 | 289 1089 | 294 1090 | 290 1091 | 292 1092 | 295 1093 | 289 1094 | 283 1095 | 286 1096 | 294 1097 | 297 1098 | 291 1099 | 286 1100 | 282 1101 | 279 1102 | 284 1103 | 289 1104 | 293 1105 | 295 1106 | 299 1107 | 304 1108 | 307 1109 | 314 1110 | 311 1111 | 309 1112 | 315 1113 | 319 1114 | 324 1115 | 327 1116 | 332 1117 | 339 1118 | 317 1119 | 289 1120 | 280 1121 | 268 1122 | 273 1123 | 348 1124 | 394 1125 | 457 1126 | 512 1127 | 547 1128 | 589 1129 | 634 1130 | 695 1131 | 768 1132 | 705 1133 | 672 1134 | 640 1135 | 603 1136 | 566 1137 | 529 1138 | 502 1139 | 471 1140 | 432 1141 | 400 1142 | 389 1143 | 376 1144 | 381 1145 | 388 1146 | 392 1147 | 397 1148 | 379 1149 | 355 1150 | 341 1151 | 329 1152 | 331 1153 | 337 1154 | 342 1155 | 349 1156 | 354 1157 | 358 1158 | 362 1159 | 365 1160 | 369 1161 | 361 1162 | 368 1163 | 372 1164 | 366 1165 | 361 1166 | 354 1167 | 347 1168 | 359 1169 | 368 1170 | 370 1171 | 371 1172 | 370 1173 | 372 1174 | 373 1175 | 373 1176 | 374 1177 | 376 1178 | 377 1179 | 378 1180 | 386 1181 | 394 1182 | 396 1183 | 397 1184 | 399 1185 | 395 1186 | 393 1187 | 390 1188 | 392 1189 | 391 1190 | 393 1191 | 394 1192 | 398 1193 | 400 1194 | 401 1195 | 402 1196 | 404 1197 | 405 1198 | 407 1199 | 410 1200 | 416 1201 | 419 1202 | 422 1203 | 424 1204 | 427 1205 | 431 1206 | 432 1207 | 431 1208 | 432 1209 | 433 1210 | 435 1211 | 435 1212 | 436 1213 | 437 1214 | 439 1215 | 440 1216 | 442 1217 | 447 1218 | 445 1219 | 441 1220 | 454 1221 | 466 1222 | 480 1223 | 492 1224 | 501 1225 | 502 1226 | 504 1227 | 505 1228 | 506 1229 | 507 1230 | 501 1231 | 493 1232 | 478 1233 | 469 1234 | 454 1235 | 448 1236 | 440 1237 | 431 1238 | 423 1239 | 419 1240 | 415 1241 | 416 1242 | 416 1243 | 415 1244 | 417 1245 | 411 1246 | 407 1247 | 401 1248 | 389 1249 | 380 1250 | 368 1251 | 359 1252 | 352 1253 | 353 1254 | 354 1255 | 356 1256 | 360 1257 | 359 1258 | 361 1259 | 358 1260 | 356 1261 | 352 1262 | 350 1263 | 348 1264 | 347 1265 | 347 1266 | 347 1267 | -------------------------------------------------------------------------------- /Dataset/data 1.csv: -------------------------------------------------------------------------------- 1 | hart 2 | 530 3 | 518 4 | 506 5 | 494 6 | 483 7 | 472 8 | 462 9 | 454 10 | 446 11 | 440 12 | 434 13 | 430 14 | 428 15 | 431 16 | 431 17 | 432 18 | 434 19 | 439 20 | 444 21 | 450 22 | 454 23 | 459 24 | 465 25 | 470 26 | 475 27 | 481 28 | 487 29 | 490 30 | 494 31 | 497 32 | 496 33 | 500 34 | 501 35 | 502 36 | 504 37 | 505 38 | 504 39 | 503 40 | 502 41 | 501 42 | 499 43 | 498 44 | 496 45 | 495 46 | 492 47 | 492 48 | 490 49 | 490 50 | 490 51 | 491 52 | 492 53 | 493 54 | 493 55 | 494 56 | 494 57 | 495 58 | 496 59 | 496 60 | 495 61 | 495 62 | 496 63 | 497 64 | 497 65 | 500 66 | 510 67 | 530 68 | 559 69 | 593 70 | 630 71 | 667 72 | 703 73 | 735 74 | 759 75 | 774 76 | 782 77 | 728 78 | 597 79 | 497 80 | 433 81 | 459 82 | 463 83 | 467 84 | 471 85 | 474 86 | 474 87 | 475 88 | 89 | 480 90 | 483 91 | 92 | 488 93 | 94 | 492 95 | 96 | 495 97 | 98 | 501 99 | 502 100 | 101 | 505 102 | 508 103 | 104 | 512 105 | 515 106 | 520 107 | 535 108 | 536 109 | 540 110 | 544 111 | 546 112 | 550 113 | 553 114 | 556 115 | 558 116 | 558 117 | 560 118 | 564 119 | 565 120 | 565 121 | 561 122 | 556 123 | 548 124 | 540 125 | 531 126 | 519 127 | 508 128 | 497 129 | 486 130 | 475 131 | 465 132 | 457 133 | 450 134 | 444 135 | 438 136 | 435 137 | 432 138 | 431 139 | 431 140 | 432 141 | 434 142 | 439 143 | 444 144 | 450 145 | 454 146 | 459 147 | 465 148 | 470 149 | 475 150 | 481 151 | 487 152 | 490 153 | 494 154 | 497 155 | 496 156 | 500 157 | 501 158 | 502 159 | 504 160 | 505 161 | 504 162 | 503 163 | 502 164 | 501 165 | 499 166 | 498 167 | 496 168 | 495 169 | 492 170 | 492 171 | 490 172 | 490 173 | 490 174 | 491 175 | 492 176 | 493 177 | 493 178 | 494 179 | 494 180 | 495 181 | 496 182 | 496 183 | 495 184 | 495 185 | 496 186 | 497 187 | 497 188 | 500 189 | 510 190 | 530 191 | 559 192 | 593 193 | 630 194 | 667 195 | 703 196 | 735 197 | 759 198 | 774 199 | 782 200 | 781 201 | 771 202 | 562 203 | 411 204 | 433 205 | 459 206 | 467 207 | 469 208 | 474 209 | 475 210 | 211 | 480 212 | 483 213 | 214 | 488 215 | 216 | 492 217 | 218 | 495 219 | 220 | 501 221 | 502 222 | 223 | 505 224 | 508 225 | 226 | 510 227 | 512 228 | 515 229 | 520 230 | 535 231 | 232 | 540 233 | 234 | 546 235 | 236 | 553 237 | 238 | 558 239 | 558 240 | 560 241 | 564 242 | 565 243 | 565 244 | 561 245 | 556 246 | 548 247 | 540 248 | 531 249 | 519 250 | 508 251 | 497 252 | 486 253 | 475 254 | 465 255 | 457 256 | 450 257 | 444 258 | 438 259 | 435 260 | 432 261 | 433 262 | 435 263 | 437 264 | 441 265 | 444 266 | 450 267 | 454 268 | 459 269 | 465 270 | 470 271 | 475 272 | 481 273 | 487 274 | 490 275 | 494 276 | 497 277 | 496 278 | 500 279 | 503 280 | 505 281 | 507 282 | 509 283 | 504 284 | 503 285 | 502 286 | 501 287 | 499 288 | 498 289 | 496 290 | 495 291 | 492 292 | 492 293 | 490 294 | 490 295 | 493 296 | 495 297 | 497 298 | 495 299 | 494 300 | 496 301 | 496 302 | 495 303 | 496 304 | 496 305 | 495 306 | 495 307 | 496 308 | 497 309 | 497 310 | 500 311 | 510 312 | 530 313 | 559 314 | 593 315 | 630 316 | 670 317 | 705 318 | 740 319 | 763 320 | 777 321 | 790 322 | 323 | 324 | 760 325 | 326 | 327 | 562 328 | 329 | 330 | 411 331 | 332 | 389 333 | 334 | 433 335 | 336 | 337 | 338 | 463 339 | 340 | 341 | 471 342 | 343 | 480 344 | 345 | 346 | 347 | 490 348 | 349 | 495 350 | 493 351 | 352 | 495 353 | 498 354 | 501 355 | 356 | 504 357 | 505 358 | 359 | 508 360 | 510 361 | 362 | 515 363 | 520 364 | 535 365 | 366 | 540 367 | 544 368 | 546 369 | 550 370 | 553 371 | 556 372 | 558 373 | 558 374 | 560 375 | 564 376 | 570 377 | 570 378 | 565 379 | 560 380 | 553 381 | 540 382 | 531 383 | 519 384 | 508 385 | 497 386 | 486 387 | 475 388 | 465 389 | 457 390 | 450 391 | 444 392 | 438 393 | 435 394 | 432 395 | 431 396 | 432 397 | 434 398 | 439 399 | 444 400 | 450 401 | 454 402 | 459 403 | 465 404 | 470 405 | 475 406 | 481 407 | 487 408 | 490 409 | 494 410 | 497 411 | 496 412 | 500 413 | 501 414 | 502 415 | 504 416 | 505 417 | 504 418 | 503 419 | 502 420 | 501 421 | 499 422 | 498 423 | 496 424 | 495 425 | 492 426 | 492 427 | 490 428 | 490 429 | 490 430 | 491 431 | 492 432 | 493 433 | 493 434 | 494 435 | 494 436 | 495 437 | 496 438 | 496 439 | 495 440 | 495 441 | 496 442 | 497 443 | 497 444 | 500 445 | 510 446 | 530 447 | 559 448 | 593 449 | 630 450 | 667 451 | 703 452 | 735 453 | 759 454 | 774 455 | 782 456 | 457 | 458 | 753 459 | 460 | 461 | 562 462 | 463 | 464 | 411 465 | 466 | 389 467 | 468 | 469 | 450 470 | 471 | 472 | 463 473 | 474 | 469 475 | 471 476 | 477 | 478 | 478 479 | 480 480 | 481 | 485 482 | 488 483 | 484 | 492 485 | 486 | 495 487 | 498 488 | 501 489 | 490 | 504 491 | 505 492 | 493 | 508 494 | 510 495 | 496 | 515 497 | 520 498 | 499 | 536 500 | 540 501 | 502 | 546 503 | 550 504 | 505 | 556 506 | 558 507 | 558 508 | 560 509 | 564 510 | 565 511 | 565 512 | 561 513 | 556 514 | 548 515 | 540 516 | 531 517 | 519 518 | 508 519 | 497 520 | 486 521 | 475 522 | 465 523 | 457 524 | 450 525 | 444 526 | 438 527 | 435 528 | 432 529 | 433 530 | 435 531 | 437 532 | 441 533 | 444 534 | 450 535 | 454 536 | 459 537 | 465 538 | 470 539 | 475 540 | 481 541 | 487 542 | 490 543 | 494 544 | 497 545 | 496 546 | 500 547 | 503 548 | 505 549 | 510 550 | 511 551 | 507 552 | 505 553 | 499 554 | 497 555 | 498 556 | 496 557 | 495 558 | 492 559 | 492 560 | 490 561 | 490 562 | 493 563 | 495 564 | 497 565 | 495 566 | 494 567 | 496 568 | 496 569 | 495 570 | 496 571 | 496 572 | 495 573 | 495 574 | 496 575 | 497 576 | 497 577 | 500 578 | 503 579 | 515 580 | 535 581 | 559 582 | 593 583 | 630 584 | 670 585 | 705 586 | 740 587 | 763 588 | 777 589 | 590 | 591 | 773 592 | 593 | 731 594 | 595 | 562 596 | 597 | 497 598 | 599 | 600 | 601 | 385 602 | 603 | 604 | 458 605 | 606 | 607 | 467 608 | 609 | 471 610 | 611 | 475 612 | 613 | 480 614 | 483 615 | 616 | 488 617 | 491 618 | 619 | 493 620 | 621 | 498 622 | 501 623 | 624 | 504 625 | 626 | 508 627 | 628 | 510 629 | 512 630 | 631 | 520 632 | 633 | 536 634 | 635 | 544 636 | 637 | 550 638 | 639 | 556 640 | 558 641 | 642 | 560 643 | 564 644 | 565 645 | 565 646 | 561 647 | 556 648 | 548 649 | 540 650 | 531 651 | 519 652 | 508 653 | 497 654 | 486 655 | 475 656 | 465 657 | 457 658 | 450 659 | 444 660 | 438 661 | 435 662 | 432 663 | 431 664 | 432 665 | 434 666 | 439 667 | 444 668 | 450 669 | 454 670 | 459 671 | 465 672 | 470 673 | 475 674 | 481 675 | 487 676 | 490 677 | 494 678 | 497 679 | 496 680 | 500 681 | 501 682 | 502 683 | 504 684 | 505 685 | 504 686 | 503 687 | 502 688 | 501 689 | 499 690 | 498 691 | 496 692 | 495 693 | 492 694 | 492 695 | 490 696 | 490 697 | 490 698 | 491 699 | 492 700 | 493 701 | 493 702 | 494 703 | 494 704 | 495 705 | 496 706 | 496 707 | 495 708 | 495 709 | 496 710 | 497 711 | 497 712 | 500 713 | 510 714 | 530 715 | 559 716 | 593 717 | 630 718 | 667 719 | 703 720 | 735 721 | 759 722 | 774 723 | 782 724 | 725 | 726 | 727 | 728 728 | 729 | 562 730 | 731 | 497 732 | 411 733 | 734 | 735 | 385 736 | 737 | 738 | 739 | 459 740 | 741 | 467 742 | 743 | 744 | 474 745 | 475 746 | 747 | 480 748 | 749 | 485 750 | 751 | 491 752 | 753 | 754 | 495 755 | 498 756 | 501 757 | 758 | 504 759 | 760 | 761 | 508 762 | 510 763 | 764 | 515 765 | 766 | 535 767 | 536 768 | 540 769 | 544 770 | 546 771 | 550 772 | 553 773 | 556 774 | 558 775 | 558 776 | 560 777 | 564 778 | 565 779 | 565 780 | 561 781 | 556 782 | 548 783 | 540 784 | 531 785 | 519 786 | 508 787 | 497 788 | 486 789 | 475 790 | 465 791 | 457 792 | 450 793 | 444 794 | 438 795 | 435 796 | 432 797 | 434 798 | 430 799 | 428 800 | 431 801 | 431 802 | 432 803 | 434 804 | 439 805 | 444 806 | 450 807 | 454 808 | 459 809 | 465 810 | 470 811 | 475 812 | 481 813 | 487 814 | 490 815 | 494 816 | 497 817 | 496 818 | 500 819 | 501 820 | 502 821 | 504 822 | 505 823 | 504 824 | 503 825 | 502 826 | 501 827 | 499 828 | 498 829 | 496 830 | 495 831 | 492 832 | 492 833 | 490 834 | 490 835 | 490 836 | 491 837 | 492 838 | 493 839 | 493 840 | 494 841 | 494 842 | 495 843 | 496 844 | 496 845 | 495 846 | 495 847 | 496 848 | 497 849 | 497 850 | 500 851 | 510 852 | 530 853 | 559 854 | 593 855 | 630 856 | 667 857 | 703 858 | 735 859 | 759 860 | 774 861 | 782 862 | 728 863 | 597 864 | 497 865 | 433 866 | 459 867 | 463 868 | 467 869 | 471 870 | 474 871 | 474 872 | 475 873 | 874 | 480 875 | 483 876 | 877 | 488 878 | 879 | 492 880 | 881 | 495 882 | 883 | 501 884 | 502 885 | 886 | 505 887 | 508 888 | 889 | 512 890 | 515 891 | 520 892 | 535 893 | 536 894 | 540 895 | 544 896 | 546 897 | 550 898 | 553 899 | 556 900 | 558 901 | 558 902 | 560 903 | 564 904 | 565 905 | 565 906 | 561 907 | 556 908 | 548 909 | 540 910 | 531 911 | 519 912 | 508 913 | 497 914 | 486 915 | 475 916 | 465 917 | 457 918 | 450 919 | 444 920 | 438 921 | 435 922 | 432 923 | 431 924 | 431 925 | 432 926 | 434 927 | 439 928 | 444 929 | 450 930 | 454 931 | 459 932 | 465 933 | 470 934 | 475 935 | 481 936 | 487 937 | 490 938 | 494 939 | 497 940 | 496 941 | 500 942 | 501 943 | 502 944 | 504 945 | 505 946 | 504 947 | 503 948 | 502 949 | 501 950 | 499 951 | 498 952 | 496 953 | 495 954 | 492 955 | 492 956 | 490 957 | 490 958 | 490 959 | 491 960 | 492 961 | 493 962 | 493 963 | 494 964 | 494 965 | 495 966 | 496 967 | 496 968 | 495 969 | 495 970 | 496 971 | 497 972 | 497 973 | 500 974 | 510 975 | 530 976 | 559 977 | 593 978 | 630 979 | 667 980 | 703 981 | 735 982 | 759 983 | 774 984 | 782 985 | 781 986 | 771 987 | 562 988 | 411 989 | 433 990 | 459 991 | 467 992 | 469 993 | 474 994 | 475 995 | 996 | 480 997 | 483 998 | 999 | 488 1000 | 1001 | 492 1002 | 1003 | 495 1004 | 1005 | 501 1006 | 502 1007 | 1008 | 505 1009 | 508 1010 | 1011 | 510 1012 | 512 1013 | 515 1014 | 520 1015 | 535 1016 | 1017 | 540 1018 | 1019 | 546 1020 | 1021 | 553 1022 | 1023 | 558 1024 | 558 1025 | 560 1026 | 564 1027 | 565 1028 | 565 1029 | 561 1030 | 556 1031 | 548 1032 | 540 1033 | 531 1034 | 519 1035 | 508 1036 | 497 1037 | 486 1038 | 475 1039 | 465 1040 | 457 1041 | 450 1042 | 444 1043 | 438 1044 | 435 1045 | 432 1046 | 433 1047 | 435 1048 | 437 1049 | 441 1050 | 444 1051 | 450 1052 | 454 1053 | 459 1054 | 465 1055 | 470 1056 | 475 1057 | 481 1058 | 487 1059 | 490 1060 | 494 1061 | 497 1062 | 496 1063 | 500 1064 | 503 1065 | 505 1066 | 507 1067 | 509 1068 | 504 1069 | 503 1070 | 502 1071 | 501 1072 | 499 1073 | 498 1074 | 496 1075 | 495 1076 | 492 1077 | 492 1078 | 490 1079 | 490 1080 | 493 1081 | 495 1082 | 497 1083 | 495 1084 | 494 1085 | 496 1086 | 496 1087 | 495 1088 | 496 1089 | 496 1090 | 495 1091 | 495 1092 | 496 1093 | 497 1094 | 497 1095 | 500 1096 | 510 1097 | 530 1098 | 559 1099 | 593 1100 | 630 1101 | 670 1102 | 705 1103 | 740 1104 | 763 1105 | 777 1106 | 790 1107 | 1108 | 1109 | 760 1110 | 1111 | 1112 | 562 1113 | 1114 | 1115 | 411 1116 | 1117 | 389 1118 | 1119 | 433 1120 | 1121 | 1122 | 1123 | 463 1124 | 1125 | 1126 | 471 1127 | 1128 | 480 1129 | 1130 | 1131 | 1132 | 490 1133 | 1134 | 495 1135 | 493 1136 | 1137 | 495 1138 | 498 1139 | 501 1140 | 1141 | 504 1142 | 505 1143 | 1144 | 508 1145 | 510 1146 | 1147 | 515 1148 | 520 1149 | 535 1150 | 1151 | 540 1152 | 544 1153 | 546 1154 | 550 1155 | 553 1156 | 556 1157 | 558 1158 | 558 1159 | 560 1160 | 564 1161 | 570 1162 | 570 1163 | 565 1164 | 560 1165 | 553 1166 | 540 1167 | 531 1168 | 519 1169 | 508 1170 | 497 1171 | 486 1172 | 475 1173 | 465 1174 | 457 1175 | 450 1176 | 444 1177 | 438 1178 | 435 1179 | 432 1180 | 431 1181 | 432 1182 | 434 1183 | 439 1184 | 444 1185 | 450 1186 | 454 1187 | 459 1188 | 465 1189 | 470 1190 | 475 1191 | 481 1192 | 487 1193 | 490 1194 | 494 1195 | 497 1196 | 496 1197 | 500 1198 | 501 1199 | 502 1200 | 504 1201 | 505 1202 | 504 1203 | 503 1204 | 502 1205 | 501 1206 | 499 1207 | 498 1208 | 496 1209 | 495 1210 | 492 1211 | 492 1212 | 490 1213 | 490 1214 | 490 1215 | 491 1216 | 492 1217 | 493 1218 | 493 1219 | 494 1220 | 494 1221 | 495 1222 | 496 1223 | 496 1224 | 495 1225 | 495 1226 | 496 1227 | 497 1228 | 497 1229 | 500 1230 | 510 1231 | 530 1232 | 559 1233 | 593 1234 | 630 1235 | 667 1236 | 703 1237 | 735 1238 | 759 1239 | 774 1240 | 782 1241 | 1242 | 1243 | 753 1244 | 1245 | 1246 | 562 1247 | 1248 | 1249 | 411 1250 | 1251 | 389 1252 | 1253 | 1254 | 450 1255 | 1256 | 1257 | 463 1258 | 1259 | 469 1260 | 471 1261 | 1262 | 1263 | 478 1264 | 480 1265 | 1266 | 485 1267 | 488 1268 | 1269 | 492 1270 | 1271 | 495 1272 | 498 1273 | 501 1274 | 1275 | 504 1276 | 505 1277 | 1278 | 508 1279 | 510 1280 | 1281 | 515 1282 | 520 1283 | 1284 | 536 1285 | 540 1286 | 1287 | 546 1288 | 550 1289 | 1290 | 556 1291 | 558 1292 | 558 1293 | 560 1294 | 564 1295 | 565 1296 | 565 1297 | 561 1298 | 556 1299 | 548 1300 | 540 1301 | 531 1302 | 519 1303 | 508 1304 | 497 1305 | 486 1306 | 475 1307 | 465 1308 | 457 1309 | 450 1310 | 444 1311 | 438 1312 | 435 1313 | 432 1314 | 433 1315 | 435 1316 | 437 1317 | 441 1318 | 444 1319 | 450 1320 | 454 1321 | 459 1322 | 465 1323 | 470 1324 | 475 1325 | 481 1326 | 487 1327 | 490 1328 | 494 1329 | 497 1330 | 496 1331 | 500 1332 | 503 1333 | 505 1334 | 510 1335 | 511 1336 | 507 1337 | 505 1338 | 499 1339 | 497 1340 | 498 1341 | 496 1342 | 495 1343 | 492 1344 | 492 1345 | 490 1346 | 490 1347 | 493 1348 | 495 1349 | 497 1350 | 495 1351 | 494 1352 | 496 1353 | 496 1354 | 495 1355 | 496 1356 | 496 1357 | 495 1358 | 495 1359 | 496 1360 | 497 1361 | 497 1362 | 500 1363 | 503 1364 | 515 1365 | 535 1366 | 559 1367 | 593 1368 | 630 1369 | 670 1370 | 705 1371 | 740 1372 | 763 1373 | 777 1374 | 1375 | 1376 | 773 1377 | 1378 | 731 1379 | 1380 | 562 1381 | 1382 | 497 1383 | 1384 | 1385 | 1386 | 385 1387 | 1388 | 1389 | 458 1390 | 1391 | 1392 | 467 1393 | 1394 | 471 1395 | 1396 | 475 1397 | 1398 | 480 1399 | 483 1400 | 1401 | 488 1402 | 491 1403 | 1404 | 493 1405 | 1406 | 498 1407 | 501 1408 | 1409 | 504 1410 | 1411 | 508 1412 | 1413 | 510 1414 | 512 1415 | 1416 | 520 1417 | 1418 | 536 1419 | 1420 | 544 1421 | 1422 | 550 1423 | 1424 | 556 1425 | 558 1426 | 1427 | 560 1428 | 564 1429 | 565 1430 | 565 1431 | 561 1432 | 556 1433 | 548 1434 | 540 1435 | 531 1436 | 519 1437 | 508 1438 | 497 1439 | 486 1440 | 475 1441 | 465 1442 | 457 1443 | 450 1444 | 444 1445 | 438 1446 | 435 1447 | 432 1448 | 431 1449 | 432 1450 | 434 1451 | 439 1452 | 444 1453 | 450 1454 | 454 1455 | 459 1456 | 465 1457 | 470 1458 | 475 1459 | 481 1460 | 487 1461 | 490 1462 | 494 1463 | 497 1464 | 496 1465 | 500 1466 | 501 1467 | 502 1468 | 504 1469 | 505 1470 | 504 1471 | 503 1472 | 502 1473 | 501 1474 | 499 1475 | 498 1476 | 496 1477 | 495 1478 | 492 1479 | 492 1480 | 490 1481 | 490 1482 | 490 1483 | 491 1484 | 492 1485 | 493 1486 | 493 1487 | 494 1488 | 494 1489 | 495 1490 | 496 1491 | 496 1492 | 495 1493 | 495 1494 | 496 1495 | 497 1496 | 497 1497 | 500 1498 | 510 1499 | 530 1500 | 559 1501 | 593 1502 | 630 1503 | 667 1504 | 703 1505 | 735 1506 | 759 1507 | 774 1508 | 782 1509 | 1510 | 1511 | 1512 | 728 1513 | 1514 | 562 1515 | 1516 | 497 1517 | 411 1518 | 1519 | 1520 | 385 1521 | 1522 | 1523 | 1524 | 459 1525 | 1526 | 467 1527 | 1528 | 1529 | 474 1530 | 475 1531 | 1532 | 480 1533 | 1534 | 485 1535 | 1536 | 491 1537 | 1538 | 1539 | 495 1540 | 498 1541 | 501 1542 | 1543 | 504 1544 | 1545 | 1546 | 508 1547 | 510 1548 | 1549 | 515 1550 | 1551 | 535 1552 | 536 1553 | 540 1554 | 544 1555 | 546 1556 | 550 1557 | 553 1558 | 556 1559 | 558 1560 | 558 1561 | 560 1562 | 564 1563 | 565 1564 | 565 1565 | 561 1566 | 556 1567 | 548 1568 | 540 1569 | 531 1570 | 519 1571 | 508 1572 | 497 1573 | 486 1574 | 475 1575 | 465 1576 | 457 1577 | 450 1578 | 444 1579 | 438 1580 | 435 1581 | 432 1582 | --------------------------------------------------------------------------------
20 |21 |