# HG changeset patch # User azomics # Date 1592858075 14400 # Node ID a3ae90eb123294f0bab20ccfcfc0bf5f2817b953 # Parent 59f859ea3122d0a16c32aab4c0d76ffc6423bae3 "planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944" diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pop/collapse_pops.py --- a/collapse_pop/collapse_pops.py Mon Feb 27 12:43:35 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,110 +0,0 @@ -#!/usr/bin/env python -###################################################################### -# Copyright (c) 2016 Northrop Grumman. -# All rights reserved. -###################################################################### - -from __future__ import print_function -import sys -import pandas as pd - -from argparse import ArgumentParser - - -def is_int(s): - try: - int(s) - return True - except ValueError: - return False - - -def collapse_populations(in_file, out_file, populations, collapse_in, exit_code): - df = pd.read_table(in_file, dtype={'Population': object}) - df['new_population'] = df.Population - - for i, sets_pop in enumerate(populations): - df.loc[df['Population'].isin(sets_pop), ['new_population']] = collapse_in[i] - - df.Population = df.new_population - df.drop(['new_population'], inplace=True, axis=1) - - df.to_csv(out_file, sep="\t", index=False) - - sys.exit(exit_code) - - -if __name__ == "__main__": - parser = ArgumentParser( - prog="ExtractPop", - description="Extract events associated to given population numbers.") - - parser.add_argument( - '-i', - dest="input_file", - required=True, - help="File location for the text file.") - - parser.add_argument( - '-p', - dest="pops", - required=True, - action='append', - help="List of populations to collapse.") - - parser.add_argument( - '-o', - dest="output_file", - required=True, - help="Name of the output file.") - - parser.add_argument( - '-c', - dest="collapse_pop", - required=True, - action='append', - help="What to collapse the populations in.") - - args = parser.parse_args() - - # check populations - default_values_pop = ["i.e.:2,3,11,25", "default", "Default"] - default_values_col = ["i.e.:4", "default", "Default"] - pops = [p for p in args.pops] - popc = [pc.strip() for pc in args.collapse_pop] - exit_code = 0 - # Check sets of pops to collapse - populations = [] - total_pops = [] - for pop_set in pops: - if pop_set not in default_values_pop: - tmp_pops = pop_set.split(",") - for popn in tmp_pops: - if not is_int(popn): - sys.exit(6) - else: - total_pops.append(int(popn)) - strp_pops = [p.strip() for p in tmp_pops] - populations.append(strp_pops) - else: - sys.exit(4) - if len(total_pops) != len(set(total_pops)): - sys.exit(7) - # Check pops to collapse in - collapse_in = [] - for col_pop in popc: - if col_pop not in default_values_col: - if not is_int(col_pop): - sys.exit(6) - else: - if int(col_pop) > 40: - exit_code = 2 - collapse_in.append(col_pop) - else: - sys.exit(6) - if len(collapse_in) != len(set(collapse_in)): - exit_code += 3 - - collapse_populations(args.input_file, args.output_file, populations, collapse_in, exit_code) - - sys.exit(0) diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pop/collapse_pops.xml --- a/collapse_pop/collapse_pops.xml Mon Feb 27 12:43:35 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,89 +0,0 @@ - - from FLOCK or Cross Sample analysis. - - pandas - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pop/static/images/flowtools/liz_colorcode.png Binary file collapse_pop/static/images/flowtools/liz_colorcode.png has changed diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pop/test-data/input.flowclr --- a/collapse_pop/test-data/input.flowclr Mon Feb 27 12:43:35 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1000 +0,0 @@ -FSC SSC CD4 CCR3 CD8 CCR7 Population -672 913 185 272 264 239 25 -369 193 0 208 32 600 4 -590 885 113 253 262 253 21 -369 83 534 288 586 454 8 -287 127 0 0 568 434 11 -400 112 545 2 680 498 3 -460 97 528 224 643 367 8 -592 226 572 278 639 364 13 -359 109 139 121 626 576 11 -665 1023 266 211 215 219 25 -669 928 149 211 228 185 21 -420 115 540 244 620 521 8 -543 296 478 69 242 208 22 -363 171 17 469 227 470 9 -715 1023 207 158 279 275 25 -828 1023 209 326 308 272 25 -347 91 483 87 570 528 3 -654 1023 104 265 289 242 25 -366 99 484 249 645 221 13 -315 137 70 148 104 471 4 -379 208 82 65 668 275 6 -385 142 526 220 652 310 8 -622 1023 145 241 216 266 21 -600 1023 151 150 284 206 21 -450 154 552 433 695 368 13 -405 225 85 211 163 547 4 -430 212 534 498 646 266 13 -729 1023 201 288 289 301 25 -391 127 134 127 496 624 11 -620 1023 164 301 217 267 25 -718 1023 220 273 292 165 25 -340 78 517 283 685 532 8 -1023 1023 519 526 592 406 19 -744 1023 174 243 223 146 25 -667 469 406 35 199 261 22 -356 127 489 142 641 532 3 -696 869 462 704 588 503 19 -367 138 72 113 650 545 11 -655 1023 202 296 198 171 21 -726 325 371 270 200 285 22 -412 206 156 45 201 564 4 -866 1023 181 312 333 192 25 -705 1023 125 177 215 233 25 -414 194 29 40 556 556 11 -358 93 508 116 601 488 3 -428 220 77 304 732 352 7 -417 191 4 175 645 549 11 -410 97 535 264 633 429 8 -595 974 186 252 246 206 21 -432 208 552 35 613 273 3 -737 1023 177 310 239 216 25 -729 1023 164 152 233 137 21 -268 116 0 0 52 447 4 -721 1015 163 218 254 189 25 -346 103 540 286 692 595 8 -429 118 33 75 655 566 11 -434 254 123 440 43 591 9 -750 388 533 32 252 643 22 -331 84 489 0 677 621 3 -398 117 528 89 618 534 3 -678 985 271 174 287 97 21 -375 92 531 128 637 549 3 -962 1023 429 352 298 339 26 -669 1021 141 259 272 250 25 -466 527 144 137 230 211 12 -428 89 495 450 621 342 13 -360 100 90 258 612 194 7 -335 140 528 160 656 570 8 -363 82 513 0 584 570 3 -341 167 106 278 183 515 4 -395 106 555 222 631 545 8 -299 84 483 222 643 496 8 -407 100 508 643 606 313 13 -460 149 560 416 644 278 13 -670 1023 200 332 295 265 25 -778 1003 133 232 263 230 25 -794 1023 166 294 255 222 25 -296 182 37 177 0 563 4 -449 175 528 262 601 262 13 -421 160 384 165 639 542 8 -343 107 484 181 659 541 8 -868 1023 203 252 252 246 25 -385 140 95 524 623 627 9 -428 350 83 623 0 302 16 -705 1023 177 252 283 266 25 -448 241 551 551 619 310 13 -322 136 492 263 638 456 8 -364 88 0 112 178 450 4 -670 1010 173 230 248 282 25 -601 923 142 228 230 186 21 -372 95 550 236 650 443 8 -617 1023 207 72 324 276 21 -636 467 354 190 289 272 22 -698 1023 161 263 288 261 25 -393 86 549 108 721 522 3 -305 99 472 490 619 448 13 -370 75 514 409 629 337 13 -360 128 106 234 600 425 7 -710 486 402 300 124 258 22 -671 1023 113 249 281 283 25 -739 1023 250 293 303 300 25 -367 179 25 348 573 399 7 -315 92 472 241 559 460 8 -323 82 510 367 646 463 8 -721 1023 192 244 277 281 25 -702 932 429 292 316 300 25 -328 75 419 554 556 464 13 -628 962 238 288 283 233 25 -337 120 531 216 671 580 8 -496 133 534 230 597 276 13 -402 119 487 376 563 350 13 -325 84 474 96 645 423 3 -764 518 393 157 302 291 22 -409 205 158 383 296 640 9 -327 101 516 57 677 602 3 -385 151 555 12 670 565 3 -609 1017 140 192 285 252 21 -563 971 225 221 260 162 21 -360 106 510 282 658 442 8 -306 126 0 278 4 544 4 -352 108 535 119 604 477 3 -722 1023 201 315 247 234 25 -375 156 69 423 201 646 9 -313 152 27 58 0 395 4 -397 108 550 258 680 528 8 -419 229 131 230 665 332 7 -391 191 143 320 564 330 7 -337 119 529 127 629 534 3 -262 106 0 161 71 452 4 -404 100 527 65 640 548 3 -647 1023 0 270 259 295 25 -400 140 44 0 559 616 11 -724 1023 200 267 279 267 25 -318 85 497 0 642 551 3 -783 1023 102 263 259 340 25 -305 79 462 114 655 555 3 -361 105 510 156 592 498 3 -391 118 549 122 648 514 3 -657 1023 158 186 265 50 21 -358 244 61 137 686 403 6 -694 433 494 263 258 273 22 -671 1023 200 223 278 266 25 -623 1001 166 295 287 218 21 -377 171 487 291 544 287 13 -343 134 512 125 644 306 3 -453 216 46 494 635 445 20 -410 103 547 0 613 461 3 -412 161 95 192 636 598 11 -457 136 558 369 616 291 13 -378 124 549 241 627 443 8 -604 1023 198 239 301 193 21 -427 257 136 549 238 235 16 -379 115 531 42 675 486 3 -853 1023 199 246 318 224 25 -356 92 517 43 672 575 3 -343 91 506 571 629 426 13 -522 180 602 294 664 365 13 -771 666 483 750 767 928 19 -561 1023 89 265 227 265 21 -396 71 509 0 585 311 3 -715 1023 77 319 281 200 25 -453 184 576 437 614 338 13 -729 988 159 250 230 276 25 -399 159 48 0 639 597 11 -314 58 489 28 632 523 3 -726 1023 231 253 241 300 25 -370 91 510 154 628 600 8 -404 105 517 202 625 472 8 -375 94 65 108 599 645 11 -588 999 195 186 265 262 21 -718 993 244 262 272 272 25 -332 94 524 366 662 484 8 -396 99 523 214 605 510 8 -653 415 406 157 225 327 22 -338 143 528 132 617 477 3 -714 986 165 214 283 209 25 -1023 1023 636 596 759 547 19 -420 1023 366 441 395 534 23 -513 1023 420 476 415 568 23 -359 173 111 63 638 610 11 -680 1023 111 218 267 194 21 -809 448 460 149 251 271 22 -369 99 507 72 616 469 3 -393 113 507 331 618 200 13 -396 230 119 78 637 325 6 -450 216 567 490 682 378 13 -362 90 514 292 642 531 8 -772 909 401 236 279 265 25 -661 1023 239 318 275 259 25 -818 1023 221 348 306 314 25 -651 244 349 292 17 639 9 -657 1023 390 495 389 549 23 -340 112 510 0 596 530 3 -740 990 157 233 245 218 25 -310 101 52 135 86 460 4 -612 1023 390 465 427 549 23 -691 992 115 260 226 112 21 -351 92 500 211 649 577 8 -408 166 530 341 653 283 13 -355 76 509 170 673 561 8 -428 302 141 256 145 271 12 -637 1023 221 250 255 218 21 -650 988 177 245 287 256 25 -657 1023 156 300 220 108 21 -391 112 522 351 663 374 13 -677 1023 238 360 326 286 25 -568 936 27 179 210 237 21 -648 1023 432 471 431 522 23 -365 109 490 198 634 463 8 -672 537 406 137 234 210 22 -372 91 512 589 642 474 13 -441 209 165 145 666 337 6 -380 203 44 168 653 407 11 -402 101 486 328 602 231 13 -283 121 485 85 667 584 3 -449 165 133 178 623 427 11 -739 1023 237 343 301 241 25 -754 1023 191 272 290 327 25 -404 121 567 0 684 545 3 -454 148 574 439 644 342 13 -354 138 530 196 637 556 8 -634 1023 220 295 308 237 25 -339 111 492 291 643 316 13 -457 166 560 476 672 321 13 -598 855 98 162 268 260 21 -410 610 126 168 196 235 12 -338 181 28 111 562 297 6 -398 120 530 0 658 522 3 -473 1023 348 472 346 530 23 -309 89 438 299 556 206 13 -431 163 73 147 590 595 11 -666 927 199 208 242 179 21 -688 1023 107 258 186 224 25 -290 86 197 0 464 361 6 -371 149 87 183 383 552 11 -373 160 93 162 623 340 6 -739 1023 135 299 335 337 25 -459 838 347 441 342 503 23 -450 237 118 322 204 287 12 -593 962 107 277 183 15 21 -359 148 56 182 623 264 6 -576 1023 167 227 254 233 21 -384 86 512 208 691 471 8 -656 1023 231 241 251 104 21 -718 1023 164 318 223 365 25 -311 137 502 0 590 572 3 -688 1023 140 301 252 295 25 -353 121 522 209 574 585 8 -670 1023 154 238 279 236 25 -431 107 524 297 580 191 13 -430 174 553 444 691 481 13 -339 121 26 54 581 600 11 -627 1023 140 235 222 96 21 -377 155 103 102 603 475 11 -313 71 426 317 622 203 13 -792 1023 123 264 283 305 25 -690 1023 171 303 324 188 25 -404 85 519 339 578 299 13 -423 158 148 380 675 785 9 -390 126 532 280 658 431 8 -829 945 212 289 282 225 25 -640 1023 165 227 195 308 25 -357 143 0 255 0 489 4 -596 935 171 272 278 301 25 -334 200 105 177 87 450 4 -1023 1023 390 433 381 349 26 -1023 1023 451 370 350 371 26 -616 933 168 265 322 302 25 -365 93 516 288 665 463 8 -690 994 96 286 232 311 25 -686 1023 160 265 198 235 25 -390 109 521 118 626 465 3 -355 103 498 319 659 546 8 -390 93 508 280 654 503 8 -904 1023 252 299 340 181 26 -658 1023 178 311 394 561 23 -555 257 145 236 48 563 4 -346 103 483 266 616 319 13 -654 931 169 259 334 220 25 -352 120 517 0 669 540 3 -408 204 104 68 711 506 11 -408 118 545 371 677 278 13 -342 130 107 0 553 533 11 -451 102 101 137 563 354 6 -395 95 572 183 600 380 8 -397 121 96 362 640 315 7 -363 123 506 474 598 271 13 -429 1023 333 438 352 519 23 -760 1023 187 350 314 254 25 -309 486 98 149 310 219 12 -560 270 337 187 174 568 4 -318 114 476 228 615 347 8 -420 105 566 192 676 502 8 -640 1023 147 218 263 111 21 -336 101 528 52 634 494 3 -367 138 499 255 643 316 13 -648 1023 242 184 298 292 25 -810 1023 212 306 283 285 25 -771 1023 232 340 296 267 25 -402 150 504 272 657 546 8 -408 94 106 216 610 606 11 -338 88 481 254 661 494 8 -568 926 127 274 245 253 21 -599 872 165 220 327 168 21 -406 156 93 40 596 579 11 -739 971 193 249 279 272 25 -450 284 176 0 619 348 6 -344 87 501 0 619 426 3 -456 125 560 409 637 317 13 -405 119 0 323 611 483 7 -631 1023 218 279 241 19 21 -527 1023 120 239 257 262 21 -431 181 78 353 633 345 7 -372 118 91 163 583 595 11 -745 1023 212 303 302 225 25 -347 74 496 359 590 324 13 -366 88 497 191 584 244 13 -405 110 68 117 585 549 11 -508 159 548 533 555 165 13 -391 125 99 274 543 636 11 -356 170 184 119 621 599 11 -727 1023 200 252 104 245 25 -386 106 509 297 716 565 8 -826 1023 215 285 273 249 25 -328 94 461 530 593 353 13 -301 132 0 0 193 434 4 -381 174 39 170 593 634 11 -643 1023 167 228 290 266 25 -643 966 209 290 249 234 25 -668 1023 197 227 312 234 25 -558 1023 370 448 370 507 23 -813 1023 179 303 272 183 25 -641 1023 202 201 251 212 21 -517 712 198 244 301 276 21 -467 229 104 457 663 332 20 -643 927 132 266 249 252 25 -354 97 523 236 684 461 8 -608 1023 105 278 144 52 21 -407 137 532 262 648 459 8 -391 130 523 203 601 499 8 -1023 1023 522 501 485 445 19 -550 1004 58 175 243 318 21 -444 138 64 313 592 524 11 -361 120 508 170 637 514 8 -634 486 221 502 264 293 16 -411 177 103 24 79 602 4 -541 896 90 192 294 261 21 -1023 986 484 354 349 319 26 -424 201 90 332 708 389 7 -642 1023 107 125 213 315 21 -658 1023 153 206 282 249 25 -728 1023 110 200 309 303 25 -476 206 122 439 312 691 9 -695 1023 252 288 276 165 25 -406 107 552 254 675 568 8 -325 99 509 70 618 546 3 -651 1023 115 293 266 266 25 -672 1023 144 215 284 214 21 -350 123 492 186 672 520 8 -353 189 509 139 630 448 3 -670 1023 246 294 312 185 25 -347 116 520 232 527 549 8 -417 123 564 36 666 540 3 -741 1023 242 315 314 285 25 -405 106 539 202 624 504 8 -362 69 520 139 637 585 3 -662 1023 204 192 220 317 25 -865 1023 267 320 300 349 26 -370 108 538 174 643 380 3 -638 875 178 160 219 183 21 -413 103 526 459 616 322 13 -333 147 0 0 540 555 11 -355 103 479 388 680 342 13 -392 193 550 363 633 389 13 -674 1023 18 142 246 255 21 -419 155 84 348 721 323 7 -379 96 489 162 633 373 3 -711 1023 189 302 295 371 25 -653 322 349 164 197 267 22 -760 1023 150 283 248 237 25 -445 165 514 750 648 275 13 -397 111 564 287 661 489 8 -670 1023 216 202 263 68 21 -612 1023 213 273 305 337 25 -620 1023 264 263 274 315 25 -416 212 137 178 625 345 6 -460 182 130 122 761 503 11 -739 1023 109 297 256 292 25 -501 209 540 602 675 251 13 -810 613 405 129 221 291 22 -634 1023 147 223 267 242 21 -408 113 560 57 586 328 3 -422 118 521 9 617 489 3 -446 222 94 163 231 612 4 -403 154 527 157 569 278 3 -380 136 534 213 647 506 8 -342 107 35 154 578 641 11 -644 1023 231 164 284 352 25 -360 134 506 0 611 190 3 -767 1023 182 284 283 278 25 -423 163 538 423 578 294 13 -696 541 398 245 268 238 22 -417 160 165 379 644 445 7 -410 117 528 143 652 599 3 -550 461 159 174 263 181 12 -369 85 485 282 560 309 13 -702 1023 169 241 246 278 25 -423 157 541 486 672 459 13 -317 68 499 67 636 491 3 -407 186 140 147 121 545 4 -396 99 218 110 611 592 11 -679 1023 188 215 243 227 25 -415 134 536 321 647 198 13 -367 179 116 225 0 598 4 -416 106 547 347 668 489 8 -521 224 572 552 579 240 13 -343 149 44 39 141 508 4 -380 100 552 129 698 477 3 -325 122 66 165 607 581 11 -347 68 498 91 647 510 3 -768 1023 185 279 259 224 25 -413 112 538 279 678 438 8 -667 1023 179 200 298 306 25 -399 101 523 389 677 606 8 -341 131 84 50 719 436 11 -320 181 47 51 660 318 6 -384 113 518 408 669 498 8 -637 1023 193 263 278 108 21 -294 228 100 337 693 350 7 -318 166 101 155 193 597 4 -344 72 494 56 668 342 3 -674 1023 119 213 280 347 25 -756 1023 191 302 246 223 25 -371 76 89 0 596 581 11 -736 340 389 198 224 85 24 -333 96 503 460 584 221 13 -564 1023 46 204 105 233 21 -598 1023 166 266 190 217 21 -402 129 553 113 662 516 3 -707 1023 156 288 231 306 25 -332 99 467 446 620 378 13 -333 81 501 167 626 538 8 -397 118 522 253 625 472 8 -347 121 94 154 557 577 11 -660 862 187 220 212 243 21 -341 147 89 36 583 265 6 -312 130 69 475 518 568 9 -741 1023 133 265 281 284 25 -397 91 159 220 545 491 11 -391 117 540 0 674 493 3 -593 1023 135 264 270 244 21 -686 1023 73 215 288 290 25 -424 168 154 462 561 568 9 -605 1023 164 280 314 271 25 -398 105 537 407 637 401 13 -565 184 530 499 673 232 13 -399 183 559 129 541 234 3 -649 1023 192 221 249 272 25 -377 101 505 7 621 274 3 -391 116 535 183 655 595 8 -485 138 551 483 595 235 13 -323 121 506 0 611 537 3 -615 806 105 105 215 250 21 -361 172 120 76 628 640 11 -363 212 82 120 598 325 6 -664 1023 206 300 235 235 25 -386 163 114 250 641 461 7 -607 287 340 202 249 248 22 -354 101 0 192 546 601 11 -370 90 38 245 587 583 11 -406 128 110 186 640 569 11 -613 1023 157 259 279 283 25 -322 113 489 169 671 432 3 -897 1023 195 277 299 235 25 -287 117 0 51 99 488 4 -361 212 96 335 630 364 7 -414 229 145 260 244 635 9 -356 92 490 109 627 586 3 -650 1023 150 258 300 274 25 -504 504 198 174 281 208 12 -632 843 177 276 181 212 21 -390 345 548 399 670 329 13 -637 1023 165 201 189 230 21 -631 1023 84 165 261 230 21 -690 1023 166 245 265 284 25 -407 111 117 0 544 356 6 -385 127 0 53 587 585 11 -741 505 390 233 253 91 24 -616 271 425 152 317 252 22 -382 83 519 75 599 499 3 -415 198 155 367 25 616 9 -361 101 485 63 629 535 3 -325 133 524 67 658 530 3 -644 1023 134 130 172 261 21 -1023 643 474 291 309 355 26 -393 103 557 118 644 538 3 -395 125 514 115 678 514 3 -400 204 74 150 184 616 4 -645 250 399 207 249 122 24 -397 198 489 421 584 257 13 -386 136 523 360 683 371 13 -339 128 5 115 92 164 5 -635 966 113 189 164 259 21 -830 1023 203 275 300 177 25 -318 364 339 463 395 343 13 -365 149 65 244 605 528 11 -575 864 116 246 233 0 21 -675 499 345 218 187 256 22 -752 753 109 246 287 199 25 -353 96 505 215 672 476 8 -403 128 41 27 649 356 6 -840 501 474 282 129 257 22 -993 655 472 313 357 356 26 -647 1023 47 175 256 98 21 -865 1023 181 284 288 280 25 -399 150 548 210 638 255 13 -566 949 169 205 250 270 21 -277 132 72 50 159 465 4 -380 146 551 0 656 569 3 -434 185 514 768 626 359 13 -905 1023 277 325 338 295 26 -383 156 40 104 628 601 11 -381 107 524 362 573 129 13 -332 95 480 161 619 460 3 -390 164 501 452 630 182 13 -394 183 79 309 615 296 7 -448 203 78 389 0 307 16 -443 211 146 0 228 493 4 -562 1023 84 257 242 271 21 -686 1023 201 283 266 326 25 -330 112 69 126 586 589 11 -369 174 151 100 637 613 11 -830 1023 206 245 271 199 25 -653 942 170 266 258 57 21 -640 1014 142 279 226 251 25 -303 103 22 188 91 374 4 -889 1023 233 253 287 109 25 -374 98 545 0 668 555 3 -687 1023 214 257 230 305 25 -379 105 534 506 601 300 13 -1023 1023 316 356 370 388 26 -563 1023 153 232 249 263 21 -572 1023 140 294 306 249 21 -326 148 461 233 626 379 8 -320 120 497 339 649 461 8 -379 179 102 110 662 372 6 -684 988 166 216 280 270 25 -694 1023 204 281 297 285 25 -441 166 110 286 463 490 11 -700 1023 206 306 262 324 25 -641 1023 185 198 267 223 21 -813 1023 227 245 244 160 25 -369 156 51 141 619 529 11 -336 112 41 286 195 440 4 -459 130 543 329 630 324 13 -404 113 45 0 568 605 11 -394 151 132 0 590 499 11 -404 188 61 117 633 261 6 -734 395 337 296 197 274 22 -427 164 509 470 583 184 13 -294 117 0 57 621 395 6 -714 470 413 229 229 301 22 -312 100 45 142 512 448 11 -369 132 506 0 645 549 3 -752 1023 99 285 305 205 25 -414 688 190 245 271 197 12 -415 139 108 380 582 299 7 -607 984 177 247 309 144 21 -302 69 423 187 558 462 8 -699 982 140 221 217 233 25 -684 1013 123 266 244 245 25 -368 188 94 280 658 393 7 -563 320 232 483 435 758 9 -698 461 394 236 213 254 22 -356 119 9 162 629 595 11 -672 1000 115 246 255 293 25 -346 108 494 10 647 474 3 -333 109 489 60 661 483 3 -370 78 472 129 660 446 3 -349 61 476 251 561 450 8 -406 189 149 195 658 611 11 -900 1023 193 232 294 280 26 -645 1023 172 257 276 225 25 -392 153 178 49 632 591 11 -554 913 106 206 218 88 21 -433 79 522 294 509 507 8 -561 1023 10 258 302 147 21 -430 113 552 135 658 502 3 -727 1023 211 261 291 293 25 -695 1023 168 243 285 128 21 -438 161 145 0 601 450 11 -417 106 548 420 608 352 13 -780 1023 148 262 328 276 25 -432 588 217 199 308 274 12 -640 1023 157 248 200 261 25 -673 1023 203 185 274 277 25 -617 1023 151 284 272 202 21 -682 1023 226 243 307 224 25 -810 968 125 67 258 191 25 -546 1017 145 202 280 226 21 -370 125 545 181 657 540 8 -734 916 421 653 599 412 19 -393 133 168 203 613 610 11 -309 98 506 0 639 491 3 -712 424 434 100 273 229 22 -655 963 109 137 237 264 21 -352 427 37 192 229 213 12 -291 83 451 279 611 279 13 -580 348 534 66 247 607 3 -403 109 542 38 638 236 3 -335 119 279 103 408 208 6 -615 1023 0 285 268 250 21 -297 122 9 62 0 462 4 -355 101 49 100 578 543 11 -499 657 254 266 297 300 22 -333 115 492 54 620 410 3 -730 1023 177 297 189 267 25 -820 1023 166 283 255 313 25 -804 1023 208 288 256 313 25 -779 1023 159 271 292 296 25 -392 176 529 142 538 184 13 -392 174 122 342 522 375 7 -663 495 392 103 171 247 22 -357 94 537 200 681 560 8 -388 153 531 517 605 278 13 -394 157 105 0 622 569 11 -947 1023 320 304 413 447 26 -426 183 108 298 587 255 7 -359 132 511 0 647 504 3 -905 629 285 299 294 340 26 -329 126 5 100 636 613 11 -365 189 66 424 335 634 9 -371 101 522 285 663 215 13 -379 91 531 213 656 584 8 -732 1023 181 224 288 275 25 -313 78 475 0 635 520 3 -354 131 495 37 669 515 3 -342 116 509 137 631 545 3 -499 771 40 169 125 152 21 -666 1023 202 283 256 260 25 -909 655 548 609 618 403 19 -368 126 514 196 641 514 8 -671 1023 215 275 316 277 25 -444 139 519 304 667 303 13 -631 1023 157 258 251 290 25 -971 1023 325 271 284 301 26 -487 137 560 176 629 284 3 -834 1023 166 277 621 547 26 -396 128 58 294 583 399 7 -624 559 459 224 261 233 22 -352 114 521 270 638 314 13 -619 1023 186 288 314 234 25 -434 240 116 193 664 361 7 -708 857 115 255 201 178 21 -731 454 403 44 303 237 22 -398 181 100 183 563 338 6 -612 981 157 215 103 290 21 -384 89 511 330 664 487 8 -355 87 489 356 618 637 8 -428 180 143 172 612 169 6 -362 92 529 441 660 489 8 -372 139 555 32 612 506 3 -350 182 134 113 561 581 11 -349 75 470 236 660 438 8 -635 1023 123 277 275 186 21 -406 215 141 273 141 600 4 -351 129 517 0 647 592 3 -372 101 88 403 605 437 7 -385 107 518 485 651 429 13 -626 1023 136 204 170 267 21 -334 83 496 68 599 288 3 -315 169 39 0 0 476 4 -603 1023 205 270 317 127 21 -381 98 524 0 649 461 3 -808 1023 373 459 412 323 26 -422 123 29 421 629 400 7 -1006 687 462 333 312 262 26 -845 1023 182 252 337 231 25 -420 202 56 78 634 629 11 -359 106 487 259 629 240 13 -407 151 87 194 614 620 11 -688 1023 226 321 255 294 25 -607 1023 24 235 271 188 21 -370 118 506 202 658 401 8 -667 1023 167 173 261 192 21 -405 197 47 206 627 522 11 -356 139 65 0 613 577 11 -760 1023 114 276 250 110 25 -495 216 236 280 210 592 9 -341 1023 385 508 385 545 23 -328 93 507 67 668 580 3 -377 99 517 383 664 597 8 -626 1023 136 283 180 248 21 -354 103 472 18 591 428 3 -619 1023 128 195 277 145 21 -362 101 522 241 662 521 8 -328 106 472 568 577 239 13 -283 71 435 85 581 514 3 -359 129 506 88 642 612 3 -627 1020 149 169 235 284 21 -666 1023 207 227 230 277 25 -413 177 553 0 518 546 3 -369 238 139 0 666 313 6 -420 180 70 73 317 600 4 -412 159 66 140 638 609 11 -358 114 510 569 485 530 13 -393 117 524 526 663 339 13 -293 85 451 0 639 538 3 -394 144 538 395 672 304 13 -379 89 497 288 660 548 8 -456 220 559 82 676 398 3 -519 185 596 572 600 194 13 -603 558 283 236 296 81 24 -708 310 54 211 23 645 4 -724 933 65 297 136 230 25 -745 1023 199 327 266 295 25 -728 1023 207 228 301 256 25 -389 186 112 123 607 195 6 -787 1023 157 310 264 197 25 -907 1023 235 340 267 243 26 -699 1023 140 270 297 188 25 -769 940 92 260 266 120 25 -529 117 566 426 618 213 13 -585 1023 180 158 266 290 21 -413 165 537 392 631 266 13 -368 95 517 81 628 500 3 -337 112 488 207 622 432 8 -388 130 516 353 700 630 8 -396 121 560 159 667 537 8 -939 639 504 284 228 336 26 -384 80 517 300 585 291 13 -379 176 98 192 602 324 6 -389 129 526 258 681 539 8 -728 482 369 271 262 357 22 -695 1023 234 297 225 277 25 -409 119 519 271 627 271 13 -754 1023 53 252 264 303 25 -651 300 147 47 239 628 4 -419 148 520 371 649 297 13 -299 79 469 578 570 320 13 -562 1023 385 489 384 532 23 -591 1023 156 262 229 221 21 -401 187 552 224 631 262 13 -361 127 528 0 633 460 3 -360 93 529 256 619 546 8 -441 122 79 224 597 305 7 -428 121 68 411 562 131 20 -561 827 170 119 270 222 21 -399 104 548 173 629 466 8 -311 56 203 164 423 260 6 -321 88 502 393 615 538 8 -419 107 551 169 604 539 8 -617 751 18 218 218 191 21 -651 958 134 311 212 179 21 -360 109 519 0 673 485 3 -695 1023 233 322 294 249 25 -388 753 159 395 532 290 7 -750 1023 192 266 249 256 25 -715 1023 219 249 276 273 25 -467 108 554 434 607 288 13 -392 117 526 155 661 488 3 -591 1023 173 258 298 271 21 -304 88 437 637 587 279 13 -1023 1023 251 358 346 390 26 -453 220 102 165 94 684 4 -416 151 554 366 635 302 13 -557 911 138 236 214 182 21 -721 1023 124 230 227 334 25 -387 135 492 700 594 280 13 -812 1023 183 211 276 204 25 -662 1023 180 304 234 111 21 -739 1023 197 263 288 293 25 -703 1023 123 229 191 204 25 -817 1023 193 337 304 201 25 -341 121 411 345 579 179 13 -379 138 497 440 575 268 13 -361 113 536 148 671 522 3 -661 1023 219 246 248 227 25 -574 982 128 108 253 250 21 -296 71 465 579 617 670 8 -583 878 123 277 262 236 21 -453 112 186 245 580 527 11 -389 181 133 210 443 544 11 -778 1023 143 257 308 196 25 -330 78 498 520 652 431 13 -865 1023 139 334 272 215 25 -773 393 163 510 127 618 9 -737 884 168 73 243 143 21 -309 65 461 242 628 379 8 -300 69 436 425 603 361 13 -678 1023 206 303 302 322 25 -347 128 508 215 688 623 8 -396 148 0 0 644 282 6 -560 180 560 428 631 346 13 -410 160 47 429 618 253 20 -583 955 94 227 244 245 21 -613 1023 111 285 219 280 21 -644 1023 201 231 195 270 25 -936 1023 319 414 334 266 26 -797 1023 224 236 304 289 25 -378 112 543 438 639 517 8 -459 129 531 515 562 205 13 -786 1023 120 274 264 247 25 -326 79 89 0 609 522 11 -352 99 546 63 596 496 3 -557 885 114 217 209 240 21 -460 206 146 105 648 552 11 -355 99 516 307 687 539 8 -384 577 85 249 176 227 12 -723 1023 146 298 298 300 25 -616 1023 207 203 252 202 21 -421 135 526 447 619 365 13 -428 152 499 471 626 317 13 -771 1023 176 274 268 99 25 -401 112 527 193 602 361 8 -661 306 379 279 308 354 22 -398 117 507 564 610 292 13 -643 1023 84 297 266 192 21 -283 78 429 0 659 565 3 -726 1008 126 204 275 235 25 -435 124 538 306 619 434 8 -338 187 0 179 0 569 4 -628 946 129 162 277 111 21 -673 979 115 198 310 270 25 -399 118 534 291 607 503 8 -400 87 521 271 314 442 8 -730 942 133 271 261 273 25 -372 108 529 145 542 443 3 -403 116 522 99 649 475 3 -380 222 123 101 246 571 4 -740 526 361 179 205 257 22 -686 1023 245 304 295 237 25 -679 1023 102 286 260 126 21 -394 129 0 346 670 391 7 -333 145 89 200 202 518 4 -679 1023 185 318 271 112 21 -400 90 538 85 623 540 3 -1023 1023 300 361 344 393 26 -713 1023 164 315 321 251 25 -519 253 320 258 277 274 22 -690 1023 188 259 281 319 25 -659 1023 85 215 224 262 21 -411 132 137 203 595 316 7 -370 118 522 336 631 339 13 -267 150 0 121 0 454 4 -536 1023 348 489 368 519 23 -394 146 550 36 645 481 3 -372 1023 364 554 533 420 23 -390 148 170 155 523 626 11 -383 133 552 258 689 604 8 -371 116 527 27 619 478 3 -406 81 526 295 566 423 8 -528 413 240 482 554 769 9 -417 125 96 147 627 615 11 -348 110 522 216 674 483 8 -687 526 338 171 309 238 22 -677 1023 172 283 244 219 25 -381 134 554 23 642 552 3 -419 258 37 317 686 360 7 -349 125 519 0 644 561 3 -400 184 38 130 629 627 11 -391 208 523 262 610 274 13 -503 886 204 207 223 292 21 -421 205 67 383 703 367 7 -357 122 506 334 632 516 8 -699 1023 193 308 266 232 25 -332 90 450 579 621 424 13 -365 188 45 0 662 387 6 -406 106 34 110 608 583 11 -382 205 81 60 96 551 4 -360 122 512 0 644 497 3 -649 276 359 0 173 231 22 -416 134 529 500 603 324 13 -632 1023 213 221 213 161 21 -375 88 529 151 658 577 3 -455 128 552 465 649 273 13 -402 138 121 220 598 604 11 -815 1023 156 324 318 319 25 -295 88 456 499 585 532 8 -393 574 0 246 142 193 12 -621 1023 255 288 314 215 25 -342 86 490 181 619 421 8 -343 117 531 75 652 563 3 -347 105 504 0 666 469 3 -615 1023 137 274 257 254 21 -319 66 450 512 645 420 13 -413 130 125 0 627 569 11 -384 92 499 0 597 439 3 -813 1023 137 296 245 160 25 -733 1023 160 304 298 220 25 -807 1023 147 220 228 278 25 -461 123 177 94 616 587 11 -339 56 470 78 645 471 3 -366 101 514 192 662 465 8 -597 1023 181 255 302 206 21 -429 174 63 78 579 625 11 -426 211 147 172 594 652 11 -679 944 79 237 266 189 21 -436 112 104 0 586 462 11 -353 123 507 160 524 485 3 -362 388 167 213 479 248 7 -800 1023 217 275 301 321 25 -357 102 534 162 623 496 3 -690 988 172 232 210 256 25 -416 191 156 207 641 402 7 -401 98 549 28 616 547 3 -350 106 521 214 622 519 8 -409 129 508 488 673 397 13 -435 219 50 220 138 588 4 -631 1023 174 41 249 248 21 -393 153 564 140 688 569 3 -663 1023 112 241 241 204 21 -438 123 559 6 663 520 3 -396 123 537 225 645 565 8 -774 1023 192 275 283 206 25 -332 204 96 73 629 278 6 -405 129 523 228 671 468 8 -908 1023 475 698 479 461 19 -411 120 551 90 688 572 3 -391 86 528 356 652 478 8 -706 788 94 258 220 146 21 -348 84 519 147 651 493 3 -405 238 133 192 144 598 4 -744 1023 166 261 271 241 25 -433 219 560 471 519 256 13 -657 1023 145 236 223 231 21 -373 170 188 201 666 675 11 -415 808 333 406 378 476 23 -377 141 557 353 677 460 8 -382 170 534 251 637 621 8 -355 236 170 358 514 464 7 -385 248 346 193 231 294 18 -419 119 563 328 675 472 8 -376 255 140 214 20 637 4 -613 1023 117 174 120 250 21 -709 635 405 212 277 310 22 -431 188 559 586 545 324 13 -367 110 54 103 586 579 11 -994 1023 391 321 351 336 26 -364 84 534 142 679 526 3 -402 110 515 385 623 356 13 -409 146 542 0 669 444 3 -727 1023 192 308 272 271 25 -499 798 183 250 246 293 21 -278 103 487 166 655 559 8 -412 110 562 296 655 522 8 -383 133 117 72 529 540 11 -346 119 215 167 589 524 11 -420 106 522 205 625 496 8 -409 157 133 165 580 290 6 -348 72 135 234 0 438 4 -646 1004 126 186 267 257 21 -779 499 428 213 203 150 24 -688 565 462 265 194 246 22 -432 176 509 374 569 244 13 -325 153 0 181 601 322 6 -709 1023 202 234 189 172 25 -331 67 492 0 599 521 3 -364 157 67 146 649 337 6 -722 1023 192 264 258 228 25 -654 1023 168 213 196 128 21 -690 1023 226 222 281 293 25 -769 1023 205 298 223 263 25 -276 119 0 256 95 505 4 -328 134 536 362 640 385 13 -414 182 98 210 612 521 11 -409 84 100 245 569 344 7 -357 111 505 163 667 507 8 -769 975 168 278 224 134 25 -522 1023 83 236 232 261 21 -730 1023 189 234 294 255 25 -371 188 125 89 623 306 6 -391 139 522 437 622 266 13 -424 261 153 440 742 731 9 -412 132 90 0 595 541 11 -612 554 374 266 210 323 22 -381 132 108 0 639 646 11 -360 126 530 71 641 501 3 -579 974 68 194 251 225 21 -807 1023 182 286 279 309 25 -826 1023 185 260 252 183 25 -374 93 547 240 657 514 8 -395 106 500 246 566 287 13 -732 1023 201 297 307 229 25 -397 134 542 95 687 598 3 -333 97 498 178 590 385 8 -459 243 95 327 678 466 7 -397 174 25 20 654 616 11 -723 1023 203 75 266 302 25 -507 158 526 485 550 190 13 -600 569 381 264 249 280 22 -410 120 64 97 583 602 11 -343 103 526 140 685 482 3 -362 99 511 191 571 558 8 -546 1023 181 286 234 244 21 -379 82 521 246 653 501 8 -439 165 551 463 703 352 13 -298 125 0 260 186 485 4 -693 1023 165 268 310 188 25 diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pop/test-data/output.flowclr --- a/collapse_pop/test-data/output.flowclr Mon Feb 27 12:43:35 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1000 +0,0 @@ -FSC SSC CD4 CCR3 CD8 CCR7 Population -672 913 185 272 264 239 25 -369 193 0 208 32 600 1 -590 885 113 253 262 253 21 -369 83 534 288 586 454 8 -287 127 0 0 568 434 11 -400 112 545 2 680 498 1 -460 97 528 224 643 367 8 -592 226 572 278 639 364 13 -359 109 139 121 626 576 11 -665 1023 266 211 215 219 25 -669 928 149 211 228 185 21 -420 115 540 244 620 521 8 -543 296 478 69 242 208 22 -363 171 17 469 227 470 9 -715 1023 207 158 279 275 25 -828 1023 209 326 308 272 25 -347 91 483 87 570 528 1 -654 1023 104 265 289 242 25 -366 99 484 249 645 221 13 -315 137 70 148 104 471 1 -379 208 82 65 668 275 6 -385 142 526 220 652 310 8 -622 1023 145 241 216 266 21 -600 1023 151 150 284 206 21 -450 154 552 433 695 368 13 -405 225 85 211 163 547 1 -430 212 534 498 646 266 13 -729 1023 201 288 289 301 25 -391 127 134 127 496 624 11 -620 1023 164 301 217 267 25 -718 1023 220 273 292 165 25 -340 78 517 283 685 532 8 -1023 1023 519 526 592 406 19 -744 1023 174 243 223 146 25 -667 469 406 35 199 261 22 -356 127 489 142 641 532 1 -696 869 462 704 588 503 19 -367 138 72 113 650 545 11 -655 1023 202 296 198 171 21 -726 325 371 270 200 285 22 -412 206 156 45 201 564 1 -866 1023 181 312 333 192 25 -705 1023 125 177 215 233 25 -414 194 29 40 556 556 11 -358 93 508 116 601 488 1 -428 220 77 304 732 352 7 -417 191 4 175 645 549 11 -410 97 535 264 633 429 8 -595 974 186 252 246 206 21 -432 208 552 35 613 273 1 -737 1023 177 310 239 216 25 -729 1023 164 152 233 137 21 -268 116 0 0 52 447 1 -721 1015 163 218 254 189 25 -346 103 540 286 692 595 8 -429 118 33 75 655 566 11 -434 254 123 440 43 591 9 -750 388 533 32 252 643 22 -331 84 489 0 677 621 1 -398 117 528 89 618 534 1 -678 985 271 174 287 97 21 -375 92 531 128 637 549 1 -962 1023 429 352 298 339 26 -669 1021 141 259 272 250 25 -466 527 144 137 230 211 12 -428 89 495 450 621 342 13 -360 100 90 258 612 194 7 -335 140 528 160 656 570 8 -363 82 513 0 584 570 1 -341 167 106 278 183 515 1 -395 106 555 222 631 545 8 -299 84 483 222 643 496 8 -407 100 508 643 606 313 13 -460 149 560 416 644 278 13 -670 1023 200 332 295 265 25 -778 1003 133 232 263 230 25 -794 1023 166 294 255 222 25 -296 182 37 177 0 563 1 -449 175 528 262 601 262 13 -421 160 384 165 639 542 8 -343 107 484 181 659 541 8 -868 1023 203 252 252 246 25 -385 140 95 524 623 627 9 -428 350 83 623 0 302 16 -705 1023 177 252 283 266 25 -448 241 551 551 619 310 13 -322 136 492 263 638 456 8 -364 88 0 112 178 450 1 -670 1010 173 230 248 282 25 -601 923 142 228 230 186 21 -372 95 550 236 650 443 8 -617 1023 207 72 324 276 21 -636 467 354 190 289 272 22 -698 1023 161 263 288 261 25 -393 86 549 108 721 522 1 -305 99 472 490 619 448 13 -370 75 514 409 629 337 13 -360 128 106 234 600 425 7 -710 486 402 300 124 258 22 -671 1023 113 249 281 283 25 -739 1023 250 293 303 300 25 -367 179 25 348 573 399 7 -315 92 472 241 559 460 8 -323 82 510 367 646 463 8 -721 1023 192 244 277 281 25 -702 932 429 292 316 300 25 -328 75 419 554 556 464 13 -628 962 238 288 283 233 25 -337 120 531 216 671 580 8 -496 133 534 230 597 276 13 -402 119 487 376 563 350 13 -325 84 474 96 645 423 1 -764 518 393 157 302 291 22 -409 205 158 383 296 640 9 -327 101 516 57 677 602 1 -385 151 555 12 670 565 1 -609 1017 140 192 285 252 21 -563 971 225 221 260 162 21 -360 106 510 282 658 442 8 -306 126 0 278 4 544 1 -352 108 535 119 604 477 1 -722 1023 201 315 247 234 25 -375 156 69 423 201 646 9 -313 152 27 58 0 395 1 -397 108 550 258 680 528 8 -419 229 131 230 665 332 7 -391 191 143 320 564 330 7 -337 119 529 127 629 534 1 -262 106 0 161 71 452 1 -404 100 527 65 640 548 1 -647 1023 0 270 259 295 25 -400 140 44 0 559 616 11 -724 1023 200 267 279 267 25 -318 85 497 0 642 551 1 -783 1023 102 263 259 340 25 -305 79 462 114 655 555 1 -361 105 510 156 592 498 1 -391 118 549 122 648 514 1 -657 1023 158 186 265 50 21 -358 244 61 137 686 403 6 -694 433 494 263 258 273 22 -671 1023 200 223 278 266 25 -623 1001 166 295 287 218 21 -377 171 487 291 544 287 13 -343 134 512 125 644 306 1 -453 216 46 494 635 445 20 -410 103 547 0 613 461 1 -412 161 95 192 636 598 11 -457 136 558 369 616 291 13 -378 124 549 241 627 443 8 -604 1023 198 239 301 193 21 -427 257 136 549 238 235 16 -379 115 531 42 675 486 1 -853 1023 199 246 318 224 25 -356 92 517 43 672 575 1 -343 91 506 571 629 426 13 -522 180 602 294 664 365 13 -771 666 483 750 767 928 19 -561 1023 89 265 227 265 21 -396 71 509 0 585 311 1 -715 1023 77 319 281 200 25 -453 184 576 437 614 338 13 -729 988 159 250 230 276 25 -399 159 48 0 639 597 11 -314 58 489 28 632 523 1 -726 1023 231 253 241 300 25 -370 91 510 154 628 600 8 -404 105 517 202 625 472 8 -375 94 65 108 599 645 11 -588 999 195 186 265 262 21 -718 993 244 262 272 272 25 -332 94 524 366 662 484 8 -396 99 523 214 605 510 8 -653 415 406 157 225 327 22 -338 143 528 132 617 477 1 -714 986 165 214 283 209 25 -1023 1023 636 596 759 547 19 -420 1023 366 441 395 534 23 -513 1023 420 476 415 568 23 -359 173 111 63 638 610 11 -680 1023 111 218 267 194 21 -809 448 460 149 251 271 22 -369 99 507 72 616 469 1 -393 113 507 331 618 200 13 -396 230 119 78 637 325 6 -450 216 567 490 682 378 13 -362 90 514 292 642 531 8 -772 909 401 236 279 265 25 -661 1023 239 318 275 259 25 -818 1023 221 348 306 314 25 -651 244 349 292 17 639 9 -657 1023 390 495 389 549 23 -340 112 510 0 596 530 1 -740 990 157 233 245 218 25 -310 101 52 135 86 460 1 -612 1023 390 465 427 549 23 -691 992 115 260 226 112 21 -351 92 500 211 649 577 8 -408 166 530 341 653 283 13 -355 76 509 170 673 561 8 -428 302 141 256 145 271 12 -637 1023 221 250 255 218 21 -650 988 177 245 287 256 25 -657 1023 156 300 220 108 21 -391 112 522 351 663 374 13 -677 1023 238 360 326 286 25 -568 936 27 179 210 237 21 -648 1023 432 471 431 522 23 -365 109 490 198 634 463 8 -672 537 406 137 234 210 22 -372 91 512 589 642 474 13 -441 209 165 145 666 337 6 -380 203 44 168 653 407 11 -402 101 486 328 602 231 13 -283 121 485 85 667 584 1 -449 165 133 178 623 427 11 -739 1023 237 343 301 241 25 -754 1023 191 272 290 327 25 -404 121 567 0 684 545 1 -454 148 574 439 644 342 13 -354 138 530 196 637 556 8 -634 1023 220 295 308 237 25 -339 111 492 291 643 316 13 -457 166 560 476 672 321 13 -598 855 98 162 268 260 21 -410 610 126 168 196 235 12 -338 181 28 111 562 297 6 -398 120 530 0 658 522 1 -473 1023 348 472 346 530 23 -309 89 438 299 556 206 13 -431 163 73 147 590 595 11 -666 927 199 208 242 179 21 -688 1023 107 258 186 224 25 -290 86 197 0 464 361 6 -371 149 87 183 383 552 11 -373 160 93 162 623 340 6 -739 1023 135 299 335 337 25 -459 838 347 441 342 503 23 -450 237 118 322 204 287 12 -593 962 107 277 183 15 21 -359 148 56 182 623 264 6 -576 1023 167 227 254 233 21 -384 86 512 208 691 471 8 -656 1023 231 241 251 104 21 -718 1023 164 318 223 365 25 -311 137 502 0 590 572 1 -688 1023 140 301 252 295 25 -353 121 522 209 574 585 8 -670 1023 154 238 279 236 25 -431 107 524 297 580 191 13 -430 174 553 444 691 481 13 -339 121 26 54 581 600 11 -627 1023 140 235 222 96 21 -377 155 103 102 603 475 11 -313 71 426 317 622 203 13 -792 1023 123 264 283 305 25 -690 1023 171 303 324 188 25 -404 85 519 339 578 299 13 -423 158 148 380 675 785 9 -390 126 532 280 658 431 8 -829 945 212 289 282 225 25 -640 1023 165 227 195 308 25 -357 143 0 255 0 489 1 -596 935 171 272 278 301 25 -334 200 105 177 87 450 1 -1023 1023 390 433 381 349 26 -1023 1023 451 370 350 371 26 -616 933 168 265 322 302 25 -365 93 516 288 665 463 8 -690 994 96 286 232 311 25 -686 1023 160 265 198 235 25 -390 109 521 118 626 465 1 -355 103 498 319 659 546 8 -390 93 508 280 654 503 8 -904 1023 252 299 340 181 26 -658 1023 178 311 394 561 23 -555 257 145 236 48 563 1 -346 103 483 266 616 319 13 -654 931 169 259 334 220 25 -352 120 517 0 669 540 1 -408 204 104 68 711 506 11 -408 118 545 371 677 278 13 -342 130 107 0 553 533 11 -451 102 101 137 563 354 6 -395 95 572 183 600 380 8 -397 121 96 362 640 315 7 -363 123 506 474 598 271 13 -429 1023 333 438 352 519 23 -760 1023 187 350 314 254 25 -309 486 98 149 310 219 12 -560 270 337 187 174 568 1 -318 114 476 228 615 347 8 -420 105 566 192 676 502 8 -640 1023 147 218 263 111 21 -336 101 528 52 634 494 1 -367 138 499 255 643 316 13 -648 1023 242 184 298 292 25 -810 1023 212 306 283 285 25 -771 1023 232 340 296 267 25 -402 150 504 272 657 546 8 -408 94 106 216 610 606 11 -338 88 481 254 661 494 8 -568 926 127 274 245 253 21 -599 872 165 220 327 168 21 -406 156 93 40 596 579 11 -739 971 193 249 279 272 25 -450 284 176 0 619 348 6 -344 87 501 0 619 426 1 -456 125 560 409 637 317 13 -405 119 0 323 611 483 7 -631 1023 218 279 241 19 21 -527 1023 120 239 257 262 21 -431 181 78 353 633 345 7 -372 118 91 163 583 595 11 -745 1023 212 303 302 225 25 -347 74 496 359 590 324 13 -366 88 497 191 584 244 13 -405 110 68 117 585 549 11 -508 159 548 533 555 165 13 -391 125 99 274 543 636 11 -356 170 184 119 621 599 11 -727 1023 200 252 104 245 25 -386 106 509 297 716 565 8 -826 1023 215 285 273 249 25 -328 94 461 530 593 353 13 -301 132 0 0 193 434 1 -381 174 39 170 593 634 11 -643 1023 167 228 290 266 25 -643 966 209 290 249 234 25 -668 1023 197 227 312 234 25 -558 1023 370 448 370 507 23 -813 1023 179 303 272 183 25 -641 1023 202 201 251 212 21 -517 712 198 244 301 276 21 -467 229 104 457 663 332 20 -643 927 132 266 249 252 25 -354 97 523 236 684 461 8 -608 1023 105 278 144 52 21 -407 137 532 262 648 459 8 -391 130 523 203 601 499 8 -1023 1023 522 501 485 445 19 -550 1004 58 175 243 318 21 -444 138 64 313 592 524 11 -361 120 508 170 637 514 8 -634 486 221 502 264 293 16 -411 177 103 24 79 602 1 -541 896 90 192 294 261 21 -1023 986 484 354 349 319 26 -424 201 90 332 708 389 7 -642 1023 107 125 213 315 21 -658 1023 153 206 282 249 25 -728 1023 110 200 309 303 25 -476 206 122 439 312 691 9 -695 1023 252 288 276 165 25 -406 107 552 254 675 568 8 -325 99 509 70 618 546 1 -651 1023 115 293 266 266 25 -672 1023 144 215 284 214 21 -350 123 492 186 672 520 8 -353 189 509 139 630 448 1 -670 1023 246 294 312 185 25 -347 116 520 232 527 549 8 -417 123 564 36 666 540 1 -741 1023 242 315 314 285 25 -405 106 539 202 624 504 8 -362 69 520 139 637 585 1 -662 1023 204 192 220 317 25 -865 1023 267 320 300 349 26 -370 108 538 174 643 380 1 -638 875 178 160 219 183 21 -413 103 526 459 616 322 13 -333 147 0 0 540 555 11 -355 103 479 388 680 342 13 -392 193 550 363 633 389 13 -674 1023 18 142 246 255 21 -419 155 84 348 721 323 7 -379 96 489 162 633 373 1 -711 1023 189 302 295 371 25 -653 322 349 164 197 267 22 -760 1023 150 283 248 237 25 -445 165 514 750 648 275 13 -397 111 564 287 661 489 8 -670 1023 216 202 263 68 21 -612 1023 213 273 305 337 25 -620 1023 264 263 274 315 25 -416 212 137 178 625 345 6 -460 182 130 122 761 503 11 -739 1023 109 297 256 292 25 -501 209 540 602 675 251 13 -810 613 405 129 221 291 22 -634 1023 147 223 267 242 21 -408 113 560 57 586 328 1 -422 118 521 9 617 489 1 -446 222 94 163 231 612 1 -403 154 527 157 569 278 1 -380 136 534 213 647 506 8 -342 107 35 154 578 641 11 -644 1023 231 164 284 352 25 -360 134 506 0 611 190 1 -767 1023 182 284 283 278 25 -423 163 538 423 578 294 13 -696 541 398 245 268 238 22 -417 160 165 379 644 445 7 -410 117 528 143 652 599 1 -550 461 159 174 263 181 12 -369 85 485 282 560 309 13 -702 1023 169 241 246 278 25 -423 157 541 486 672 459 13 -317 68 499 67 636 491 1 -407 186 140 147 121 545 1 -396 99 218 110 611 592 11 -679 1023 188 215 243 227 25 -415 134 536 321 647 198 13 -367 179 116 225 0 598 1 -416 106 547 347 668 489 8 -521 224 572 552 579 240 13 -343 149 44 39 141 508 1 -380 100 552 129 698 477 1 -325 122 66 165 607 581 11 -347 68 498 91 647 510 1 -768 1023 185 279 259 224 25 -413 112 538 279 678 438 8 -667 1023 179 200 298 306 25 -399 101 523 389 677 606 8 -341 131 84 50 719 436 11 -320 181 47 51 660 318 6 -384 113 518 408 669 498 8 -637 1023 193 263 278 108 21 -294 228 100 337 693 350 7 -318 166 101 155 193 597 1 -344 72 494 56 668 342 1 -674 1023 119 213 280 347 25 -756 1023 191 302 246 223 25 -371 76 89 0 596 581 11 -736 340 389 198 224 85 24 -333 96 503 460 584 221 13 -564 1023 46 204 105 233 21 -598 1023 166 266 190 217 21 -402 129 553 113 662 516 1 -707 1023 156 288 231 306 25 -332 99 467 446 620 378 13 -333 81 501 167 626 538 8 -397 118 522 253 625 472 8 -347 121 94 154 557 577 11 -660 862 187 220 212 243 21 -341 147 89 36 583 265 6 -312 130 69 475 518 568 9 -741 1023 133 265 281 284 25 -397 91 159 220 545 491 11 -391 117 540 0 674 493 1 -593 1023 135 264 270 244 21 -686 1023 73 215 288 290 25 -424 168 154 462 561 568 9 -605 1023 164 280 314 271 25 -398 105 537 407 637 401 13 -565 184 530 499 673 232 13 -399 183 559 129 541 234 1 -649 1023 192 221 249 272 25 -377 101 505 7 621 274 1 -391 116 535 183 655 595 8 -485 138 551 483 595 235 13 -323 121 506 0 611 537 1 -615 806 105 105 215 250 21 -361 172 120 76 628 640 11 -363 212 82 120 598 325 6 -664 1023 206 300 235 235 25 -386 163 114 250 641 461 7 -607 287 340 202 249 248 22 -354 101 0 192 546 601 11 -370 90 38 245 587 583 11 -406 128 110 186 640 569 11 -613 1023 157 259 279 283 25 -322 113 489 169 671 432 1 -897 1023 195 277 299 235 25 -287 117 0 51 99 488 1 -361 212 96 335 630 364 7 -414 229 145 260 244 635 9 -356 92 490 109 627 586 1 -650 1023 150 258 300 274 25 -504 504 198 174 281 208 12 -632 843 177 276 181 212 21 -390 345 548 399 670 329 13 -637 1023 165 201 189 230 21 -631 1023 84 165 261 230 21 -690 1023 166 245 265 284 25 -407 111 117 0 544 356 6 -385 127 0 53 587 585 11 -741 505 390 233 253 91 24 -616 271 425 152 317 252 22 -382 83 519 75 599 499 1 -415 198 155 367 25 616 9 -361 101 485 63 629 535 1 -325 133 524 67 658 530 1 -644 1023 134 130 172 261 21 -1023 643 474 291 309 355 26 -393 103 557 118 644 538 1 -395 125 514 115 678 514 1 -400 204 74 150 184 616 1 -645 250 399 207 249 122 24 -397 198 489 421 584 257 13 -386 136 523 360 683 371 13 -339 128 5 115 92 164 5 -635 966 113 189 164 259 21 -830 1023 203 275 300 177 25 -318 364 339 463 395 343 13 -365 149 65 244 605 528 11 -575 864 116 246 233 0 21 -675 499 345 218 187 256 22 -752 753 109 246 287 199 25 -353 96 505 215 672 476 8 -403 128 41 27 649 356 6 -840 501 474 282 129 257 22 -993 655 472 313 357 356 26 -647 1023 47 175 256 98 21 -865 1023 181 284 288 280 25 -399 150 548 210 638 255 13 -566 949 169 205 250 270 21 -277 132 72 50 159 465 1 -380 146 551 0 656 569 1 -434 185 514 768 626 359 13 -905 1023 277 325 338 295 26 -383 156 40 104 628 601 11 -381 107 524 362 573 129 13 -332 95 480 161 619 460 1 -390 164 501 452 630 182 13 -394 183 79 309 615 296 7 -448 203 78 389 0 307 16 -443 211 146 0 228 493 1 -562 1023 84 257 242 271 21 -686 1023 201 283 266 326 25 -330 112 69 126 586 589 11 -369 174 151 100 637 613 11 -830 1023 206 245 271 199 25 -653 942 170 266 258 57 21 -640 1014 142 279 226 251 25 -303 103 22 188 91 374 1 -889 1023 233 253 287 109 25 -374 98 545 0 668 555 1 -687 1023 214 257 230 305 25 -379 105 534 506 601 300 13 -1023 1023 316 356 370 388 26 -563 1023 153 232 249 263 21 -572 1023 140 294 306 249 21 -326 148 461 233 626 379 8 -320 120 497 339 649 461 8 -379 179 102 110 662 372 6 -684 988 166 216 280 270 25 -694 1023 204 281 297 285 25 -441 166 110 286 463 490 11 -700 1023 206 306 262 324 25 -641 1023 185 198 267 223 21 -813 1023 227 245 244 160 25 -369 156 51 141 619 529 11 -336 112 41 286 195 440 1 -459 130 543 329 630 324 13 -404 113 45 0 568 605 11 -394 151 132 0 590 499 11 -404 188 61 117 633 261 6 -734 395 337 296 197 274 22 -427 164 509 470 583 184 13 -294 117 0 57 621 395 6 -714 470 413 229 229 301 22 -312 100 45 142 512 448 11 -369 132 506 0 645 549 1 -752 1023 99 285 305 205 25 -414 688 190 245 271 197 12 -415 139 108 380 582 299 7 -607 984 177 247 309 144 21 -302 69 423 187 558 462 8 -699 982 140 221 217 233 25 -684 1013 123 266 244 245 25 -368 188 94 280 658 393 7 -563 320 232 483 435 758 9 -698 461 394 236 213 254 22 -356 119 9 162 629 595 11 -672 1000 115 246 255 293 25 -346 108 494 10 647 474 1 -333 109 489 60 661 483 1 -370 78 472 129 660 446 1 -349 61 476 251 561 450 8 -406 189 149 195 658 611 11 -900 1023 193 232 294 280 26 -645 1023 172 257 276 225 25 -392 153 178 49 632 591 11 -554 913 106 206 218 88 21 -433 79 522 294 509 507 8 -561 1023 10 258 302 147 21 -430 113 552 135 658 502 1 -727 1023 211 261 291 293 25 -695 1023 168 243 285 128 21 -438 161 145 0 601 450 11 -417 106 548 420 608 352 13 -780 1023 148 262 328 276 25 -432 588 217 199 308 274 12 -640 1023 157 248 200 261 25 -673 1023 203 185 274 277 25 -617 1023 151 284 272 202 21 -682 1023 226 243 307 224 25 -810 968 125 67 258 191 25 -546 1017 145 202 280 226 21 -370 125 545 181 657 540 8 -734 916 421 653 599 412 19 -393 133 168 203 613 610 11 -309 98 506 0 639 491 1 -712 424 434 100 273 229 22 -655 963 109 137 237 264 21 -352 427 37 192 229 213 12 -291 83 451 279 611 279 13 -580 348 534 66 247 607 1 -403 109 542 38 638 236 1 -335 119 279 103 408 208 6 -615 1023 0 285 268 250 21 -297 122 9 62 0 462 1 -355 101 49 100 578 543 11 -499 657 254 266 297 300 22 -333 115 492 54 620 410 1 -730 1023 177 297 189 267 25 -820 1023 166 283 255 313 25 -804 1023 208 288 256 313 25 -779 1023 159 271 292 296 25 -392 176 529 142 538 184 13 -392 174 122 342 522 375 7 -663 495 392 103 171 247 22 -357 94 537 200 681 560 8 -388 153 531 517 605 278 13 -394 157 105 0 622 569 11 -947 1023 320 304 413 447 26 -426 183 108 298 587 255 7 -359 132 511 0 647 504 1 -905 629 285 299 294 340 26 -329 126 5 100 636 613 11 -365 189 66 424 335 634 9 -371 101 522 285 663 215 13 -379 91 531 213 656 584 8 -732 1023 181 224 288 275 25 -313 78 475 0 635 520 1 -354 131 495 37 669 515 1 -342 116 509 137 631 545 1 -499 771 40 169 125 152 21 -666 1023 202 283 256 260 25 -909 655 548 609 618 403 19 -368 126 514 196 641 514 8 -671 1023 215 275 316 277 25 -444 139 519 304 667 303 13 -631 1023 157 258 251 290 25 -971 1023 325 271 284 301 26 -487 137 560 176 629 284 1 -834 1023 166 277 621 547 26 -396 128 58 294 583 399 7 -624 559 459 224 261 233 22 -352 114 521 270 638 314 13 -619 1023 186 288 314 234 25 -434 240 116 193 664 361 7 -708 857 115 255 201 178 21 -731 454 403 44 303 237 22 -398 181 100 183 563 338 6 -612 981 157 215 103 290 21 -384 89 511 330 664 487 8 -355 87 489 356 618 637 8 -428 180 143 172 612 169 6 -362 92 529 441 660 489 8 -372 139 555 32 612 506 1 -350 182 134 113 561 581 11 -349 75 470 236 660 438 8 -635 1023 123 277 275 186 21 -406 215 141 273 141 600 1 -351 129 517 0 647 592 1 -372 101 88 403 605 437 7 -385 107 518 485 651 429 13 -626 1023 136 204 170 267 21 -334 83 496 68 599 288 1 -315 169 39 0 0 476 1 -603 1023 205 270 317 127 21 -381 98 524 0 649 461 1 -808 1023 373 459 412 323 26 -422 123 29 421 629 400 7 -1006 687 462 333 312 262 26 -845 1023 182 252 337 231 25 -420 202 56 78 634 629 11 -359 106 487 259 629 240 13 -407 151 87 194 614 620 11 -688 1023 226 321 255 294 25 -607 1023 24 235 271 188 21 -370 118 506 202 658 401 8 -667 1023 167 173 261 192 21 -405 197 47 206 627 522 11 -356 139 65 0 613 577 11 -760 1023 114 276 250 110 25 -495 216 236 280 210 592 9 -341 1023 385 508 385 545 23 -328 93 507 67 668 580 1 -377 99 517 383 664 597 8 -626 1023 136 283 180 248 21 -354 103 472 18 591 428 1 -619 1023 128 195 277 145 21 -362 101 522 241 662 521 8 -328 106 472 568 577 239 13 -283 71 435 85 581 514 1 -359 129 506 88 642 612 1 -627 1020 149 169 235 284 21 -666 1023 207 227 230 277 25 -413 177 553 0 518 546 1 -369 238 139 0 666 313 6 -420 180 70 73 317 600 1 -412 159 66 140 638 609 11 -358 114 510 569 485 530 13 -393 117 524 526 663 339 13 -293 85 451 0 639 538 1 -394 144 538 395 672 304 13 -379 89 497 288 660 548 8 -456 220 559 82 676 398 1 -519 185 596 572 600 194 13 -603 558 283 236 296 81 24 -708 310 54 211 23 645 1 -724 933 65 297 136 230 25 -745 1023 199 327 266 295 25 -728 1023 207 228 301 256 25 -389 186 112 123 607 195 6 -787 1023 157 310 264 197 25 -907 1023 235 340 267 243 26 -699 1023 140 270 297 188 25 -769 940 92 260 266 120 25 -529 117 566 426 618 213 13 -585 1023 180 158 266 290 21 -413 165 537 392 631 266 13 -368 95 517 81 628 500 1 -337 112 488 207 622 432 8 -388 130 516 353 700 630 8 -396 121 560 159 667 537 8 -939 639 504 284 228 336 26 -384 80 517 300 585 291 13 -379 176 98 192 602 324 6 -389 129 526 258 681 539 8 -728 482 369 271 262 357 22 -695 1023 234 297 225 277 25 -409 119 519 271 627 271 13 -754 1023 53 252 264 303 25 -651 300 147 47 239 628 1 -419 148 520 371 649 297 13 -299 79 469 578 570 320 13 -562 1023 385 489 384 532 23 -591 1023 156 262 229 221 21 -401 187 552 224 631 262 13 -361 127 528 0 633 460 1 -360 93 529 256 619 546 8 -441 122 79 224 597 305 7 -428 121 68 411 562 131 20 -561 827 170 119 270 222 21 -399 104 548 173 629 466 8 -311 56 203 164 423 260 6 -321 88 502 393 615 538 8 -419 107 551 169 604 539 8 -617 751 18 218 218 191 21 -651 958 134 311 212 179 21 -360 109 519 0 673 485 1 -695 1023 233 322 294 249 25 -388 753 159 395 532 290 7 -750 1023 192 266 249 256 25 -715 1023 219 249 276 273 25 -467 108 554 434 607 288 13 -392 117 526 155 661 488 1 -591 1023 173 258 298 271 21 -304 88 437 637 587 279 13 -1023 1023 251 358 346 390 26 -453 220 102 165 94 684 1 -416 151 554 366 635 302 13 -557 911 138 236 214 182 21 -721 1023 124 230 227 334 25 -387 135 492 700 594 280 13 -812 1023 183 211 276 204 25 -662 1023 180 304 234 111 21 -739 1023 197 263 288 293 25 -703 1023 123 229 191 204 25 -817 1023 193 337 304 201 25 -341 121 411 345 579 179 13 -379 138 497 440 575 268 13 -361 113 536 148 671 522 1 -661 1023 219 246 248 227 25 -574 982 128 108 253 250 21 -296 71 465 579 617 670 8 -583 878 123 277 262 236 21 -453 112 186 245 580 527 11 -389 181 133 210 443 544 11 -778 1023 143 257 308 196 25 -330 78 498 520 652 431 13 -865 1023 139 334 272 215 25 -773 393 163 510 127 618 9 -737 884 168 73 243 143 21 -309 65 461 242 628 379 8 -300 69 436 425 603 361 13 -678 1023 206 303 302 322 25 -347 128 508 215 688 623 8 -396 148 0 0 644 282 6 -560 180 560 428 631 346 13 -410 160 47 429 618 253 20 -583 955 94 227 244 245 21 -613 1023 111 285 219 280 21 -644 1023 201 231 195 270 25 -936 1023 319 414 334 266 26 -797 1023 224 236 304 289 25 -378 112 543 438 639 517 8 -459 129 531 515 562 205 13 -786 1023 120 274 264 247 25 -326 79 89 0 609 522 11 -352 99 546 63 596 496 1 -557 885 114 217 209 240 21 -460 206 146 105 648 552 11 -355 99 516 307 687 539 8 -384 577 85 249 176 227 12 -723 1023 146 298 298 300 25 -616 1023 207 203 252 202 21 -421 135 526 447 619 365 13 -428 152 499 471 626 317 13 -771 1023 176 274 268 99 25 -401 112 527 193 602 361 8 -661 306 379 279 308 354 22 -398 117 507 564 610 292 13 -643 1023 84 297 266 192 21 -283 78 429 0 659 565 1 -726 1008 126 204 275 235 25 -435 124 538 306 619 434 8 -338 187 0 179 0 569 1 -628 946 129 162 277 111 21 -673 979 115 198 310 270 25 -399 118 534 291 607 503 8 -400 87 521 271 314 442 8 -730 942 133 271 261 273 25 -372 108 529 145 542 443 1 -403 116 522 99 649 475 1 -380 222 123 101 246 571 1 -740 526 361 179 205 257 22 -686 1023 245 304 295 237 25 -679 1023 102 286 260 126 21 -394 129 0 346 670 391 7 -333 145 89 200 202 518 1 -679 1023 185 318 271 112 21 -400 90 538 85 623 540 1 -1023 1023 300 361 344 393 26 -713 1023 164 315 321 251 25 -519 253 320 258 277 274 22 -690 1023 188 259 281 319 25 -659 1023 85 215 224 262 21 -411 132 137 203 595 316 7 -370 118 522 336 631 339 13 -267 150 0 121 0 454 1 -536 1023 348 489 368 519 23 -394 146 550 36 645 481 1 -372 1023 364 554 533 420 23 -390 148 170 155 523 626 11 -383 133 552 258 689 604 8 -371 116 527 27 619 478 1 -406 81 526 295 566 423 8 -528 413 240 482 554 769 9 -417 125 96 147 627 615 11 -348 110 522 216 674 483 8 -687 526 338 171 309 238 22 -677 1023 172 283 244 219 25 -381 134 554 23 642 552 1 -419 258 37 317 686 360 7 -349 125 519 0 644 561 1 -400 184 38 130 629 627 11 -391 208 523 262 610 274 13 -503 886 204 207 223 292 21 -421 205 67 383 703 367 7 -357 122 506 334 632 516 8 -699 1023 193 308 266 232 25 -332 90 450 579 621 424 13 -365 188 45 0 662 387 6 -406 106 34 110 608 583 11 -382 205 81 60 96 551 1 -360 122 512 0 644 497 1 -649 276 359 0 173 231 22 -416 134 529 500 603 324 13 -632 1023 213 221 213 161 21 -375 88 529 151 658 577 1 -455 128 552 465 649 273 13 -402 138 121 220 598 604 11 -815 1023 156 324 318 319 25 -295 88 456 499 585 532 8 -393 574 0 246 142 193 12 -621 1023 255 288 314 215 25 -342 86 490 181 619 421 8 -343 117 531 75 652 563 1 -347 105 504 0 666 469 1 -615 1023 137 274 257 254 21 -319 66 450 512 645 420 13 -413 130 125 0 627 569 11 -384 92 499 0 597 439 1 -813 1023 137 296 245 160 25 -733 1023 160 304 298 220 25 -807 1023 147 220 228 278 25 -461 123 177 94 616 587 11 -339 56 470 78 645 471 1 -366 101 514 192 662 465 8 -597 1023 181 255 302 206 21 -429 174 63 78 579 625 11 -426 211 147 172 594 652 11 -679 944 79 237 266 189 21 -436 112 104 0 586 462 11 -353 123 507 160 524 485 1 -362 388 167 213 479 248 7 -800 1023 217 275 301 321 25 -357 102 534 162 623 496 1 -690 988 172 232 210 256 25 -416 191 156 207 641 402 7 -401 98 549 28 616 547 1 -350 106 521 214 622 519 8 -409 129 508 488 673 397 13 -435 219 50 220 138 588 1 -631 1023 174 41 249 248 21 -393 153 564 140 688 569 1 -663 1023 112 241 241 204 21 -438 123 559 6 663 520 1 -396 123 537 225 645 565 8 -774 1023 192 275 283 206 25 -332 204 96 73 629 278 6 -405 129 523 228 671 468 8 -908 1023 475 698 479 461 19 -411 120 551 90 688 572 1 -391 86 528 356 652 478 8 -706 788 94 258 220 146 21 -348 84 519 147 651 493 1 -405 238 133 192 144 598 1 -744 1023 166 261 271 241 25 -433 219 560 471 519 256 13 -657 1023 145 236 223 231 21 -373 170 188 201 666 675 11 -415 808 333 406 378 476 23 -377 141 557 353 677 460 8 -382 170 534 251 637 621 8 -355 236 170 358 514 464 7 -385 248 346 193 231 294 18 -419 119 563 328 675 472 8 -376 255 140 214 20 637 1 -613 1023 117 174 120 250 21 -709 635 405 212 277 310 22 -431 188 559 586 545 324 13 -367 110 54 103 586 579 11 -994 1023 391 321 351 336 26 -364 84 534 142 679 526 1 -402 110 515 385 623 356 13 -409 146 542 0 669 444 1 -727 1023 192 308 272 271 25 -499 798 183 250 246 293 21 -278 103 487 166 655 559 8 -412 110 562 296 655 522 8 -383 133 117 72 529 540 11 -346 119 215 167 589 524 11 -420 106 522 205 625 496 8 -409 157 133 165 580 290 6 -348 72 135 234 0 438 1 -646 1004 126 186 267 257 21 -779 499 428 213 203 150 24 -688 565 462 265 194 246 22 -432 176 509 374 569 244 13 -325 153 0 181 601 322 6 -709 1023 202 234 189 172 25 -331 67 492 0 599 521 1 -364 157 67 146 649 337 6 -722 1023 192 264 258 228 25 -654 1023 168 213 196 128 21 -690 1023 226 222 281 293 25 -769 1023 205 298 223 263 25 -276 119 0 256 95 505 1 -328 134 536 362 640 385 13 -414 182 98 210 612 521 11 -409 84 100 245 569 344 7 -357 111 505 163 667 507 8 -769 975 168 278 224 134 25 -522 1023 83 236 232 261 21 -730 1023 189 234 294 255 25 -371 188 125 89 623 306 6 -391 139 522 437 622 266 13 -424 261 153 440 742 731 9 -412 132 90 0 595 541 11 -612 554 374 266 210 323 22 -381 132 108 0 639 646 11 -360 126 530 71 641 501 1 -579 974 68 194 251 225 21 -807 1023 182 286 279 309 25 -826 1023 185 260 252 183 25 -374 93 547 240 657 514 8 -395 106 500 246 566 287 13 -732 1023 201 297 307 229 25 -397 134 542 95 687 598 1 -333 97 498 178 590 385 8 -459 243 95 327 678 466 7 -397 174 25 20 654 616 11 -723 1023 203 75 266 302 25 -507 158 526 485 550 190 13 -600 569 381 264 249 280 22 -410 120 64 97 583 602 11 -343 103 526 140 685 482 1 -362 99 511 191 571 558 8 -546 1023 181 286 234 244 21 -379 82 521 246 653 501 8 -439 165 551 463 703 352 13 -298 125 0 260 186 485 1 -693 1023 165 268 310 188 25 diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pops.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/collapse_pops.py Mon Jun 22 16:34:35 2020 -0400 @@ -0,0 +1,108 @@ +#!/usr/bin/env python +###################################################################### +# Copyright (c) 2016 Northrop Grumman. +# All rights reserved. +###################################################################### + +from __future__ import print_function +import sys +import pandas as pd + +from argparse import ArgumentParser + + +def is_int(s): + try: + int(s) + return True + except ValueError: + return False + + +def collapse_populations(in_file, out_file, populations, collapse_in, exit_code): + df = pd.read_table(in_file, dtype={'Population': object}) + df['new_population'] = df.Population + + for i, sets_pop in enumerate(populations): + df.loc[df['Population'].isin(sets_pop), ['new_population']] = collapse_in[i] + + df.Population = df.new_population + df.drop(['new_population'], inplace=True, axis=1) + + df.to_csv(out_file, sep="\t", index=False) + + sys.exit(exit_code) + + +if __name__ == "__main__": + parser = ArgumentParser( + prog="ExtractPop", + description="Extract events associated to given population numbers.") + + parser.add_argument( + '-i', + dest="input_file", + required=True, + help="File location for the text file.") + + parser.add_argument( + '-p', + dest="pops", + required=True, + action='append', + help="List of populations to collapse.") + + parser.add_argument( + '-o', + dest="output_file", + required=True, + help="Name of the output file.") + + parser.add_argument( + '-c', + dest="collapse_pop", + required=True, + action='append', + help="What to collapse the populations in.") + + args = parser.parse_args() + + # check populations + default_values_pop = ["i.e.:2,3,11,25", "default", "Default"] + default_values_col = ["i.e.:4", "default", "Default"] + pops = [p for p in args.pops] + popc = [pc.strip() for pc in args.collapse_pop] + exit_code = 0 + # Check sets of pops to collapse + populations = [] + total_pops = [] + for pop_set in pops: + if pop_set not in default_values_pop: + tmp_pops = pop_set.split(",") + for popn in tmp_pops: + if not is_int(popn): + sys.exit(6) + else: + total_pops.append(int(popn)) + strp_pops = [p.strip() for p in tmp_pops] + populations.append(strp_pops) + else: + sys.exit(4) + if len(total_pops) != len(set(total_pops)): + sys.exit(7) + # Check pops to collapse in + collapse_in = [] + for col_pop in popc: + if col_pop not in default_values_col: + if not is_int(col_pop): + sys.exit(6) + else: + if int(col_pop) > 40: + exit_code = 2 + collapse_in.append(col_pop) + else: + sys.exit(6) + if len(collapse_in) != len(set(collapse_in)): + exit_code += 3 + + collapse_populations(args.input_file, args.output_file, populations, collapse_in, exit_code) diff -r 59f859ea3122 -r a3ae90eb1232 collapse_pops.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/collapse_pops.xml Mon Jun 22 16:34:35 2020 -0400 @@ -0,0 +1,91 @@ + + from FLOCK or Cross Sample analysis + + pandas + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 59f859ea3122 -r a3ae90eb1232 static/images/flowtools/liz_colorcode.png Binary file static/images/flowtools/liz_colorcode.png has changed diff -r 59f859ea3122 -r a3ae90eb1232 test-data/input.flowclr --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/input.flowclr Mon Jun 22 16:34:35 2020 -0400 @@ -0,0 +1,1000 @@ +FSC SSC CD4 CCR3 CD8 CCR7 Population +672 913 185 272 264 239 25 +369 193 0 208 32 600 4 +590 885 113 253 262 253 21 +369 83 534 288 586 454 8 +287 127 0 0 568 434 11 +400 112 545 2 680 498 3 +460 97 528 224 643 367 8 +592 226 572 278 639 364 13 +359 109 139 121 626 576 11 +665 1023 266 211 215 219 25 +669 928 149 211 228 185 21 +420 115 540 244 620 521 8 +543 296 478 69 242 208 22 +363 171 17 469 227 470 9 +715 1023 207 158 279 275 25 +828 1023 209 326 308 272 25 +347 91 483 87 570 528 3 +654 1023 104 265 289 242 25 +366 99 484 249 645 221 13 +315 137 70 148 104 471 4 +379 208 82 65 668 275 6 +385 142 526 220 652 310 8 +622 1023 145 241 216 266 21 +600 1023 151 150 284 206 21 +450 154 552 433 695 368 13 +405 225 85 211 163 547 4 +430 212 534 498 646 266 13 +729 1023 201 288 289 301 25 +391 127 134 127 496 624 11 +620 1023 164 301 217 267 25 +718 1023 220 273 292 165 25 +340 78 517 283 685 532 8 +1023 1023 519 526 592 406 19 +744 1023 174 243 223 146 25 +667 469 406 35 199 261 22 +356 127 489 142 641 532 3 +696 869 462 704 588 503 19 +367 138 72 113 650 545 11 +655 1023 202 296 198 171 21 +726 325 371 270 200 285 22 +412 206 156 45 201 564 4 +866 1023 181 312 333 192 25 +705 1023 125 177 215 233 25 +414 194 29 40 556 556 11 +358 93 508 116 601 488 3 +428 220 77 304 732 352 7 +417 191 4 175 645 549 11 +410 97 535 264 633 429 8 +595 974 186 252 246 206 21 +432 208 552 35 613 273 3 +737 1023 177 310 239 216 25 +729 1023 164 152 233 137 21 +268 116 0 0 52 447 4 +721 1015 163 218 254 189 25 +346 103 540 286 692 595 8 +429 118 33 75 655 566 11 +434 254 123 440 43 591 9 +750 388 533 32 252 643 22 +331 84 489 0 677 621 3 +398 117 528 89 618 534 3 +678 985 271 174 287 97 21 +375 92 531 128 637 549 3 +962 1023 429 352 298 339 26 +669 1021 141 259 272 250 25 +466 527 144 137 230 211 12 +428 89 495 450 621 342 13 +360 100 90 258 612 194 7 +335 140 528 160 656 570 8 +363 82 513 0 584 570 3 +341 167 106 278 183 515 4 +395 106 555 222 631 545 8 +299 84 483 222 643 496 8 +407 100 508 643 606 313 13 +460 149 560 416 644 278 13 +670 1023 200 332 295 265 25 +778 1003 133 232 263 230 25 +794 1023 166 294 255 222 25 +296 182 37 177 0 563 4 +449 175 528 262 601 262 13 +421 160 384 165 639 542 8 +343 107 484 181 659 541 8 +868 1023 203 252 252 246 25 +385 140 95 524 623 627 9 +428 350 83 623 0 302 16 +705 1023 177 252 283 266 25 +448 241 551 551 619 310 13 +322 136 492 263 638 456 8 +364 88 0 112 178 450 4 +670 1010 173 230 248 282 25 +601 923 142 228 230 186 21 +372 95 550 236 650 443 8 +617 1023 207 72 324 276 21 +636 467 354 190 289 272 22 +698 1023 161 263 288 261 25 +393 86 549 108 721 522 3 +305 99 472 490 619 448 13 +370 75 514 409 629 337 13 +360 128 106 234 600 425 7 +710 486 402 300 124 258 22 +671 1023 113 249 281 283 25 +739 1023 250 293 303 300 25 +367 179 25 348 573 399 7 +315 92 472 241 559 460 8 +323 82 510 367 646 463 8 +721 1023 192 244 277 281 25 +702 932 429 292 316 300 25 +328 75 419 554 556 464 13 +628 962 238 288 283 233 25 +337 120 531 216 671 580 8 +496 133 534 230 597 276 13 +402 119 487 376 563 350 13 +325 84 474 96 645 423 3 +764 518 393 157 302 291 22 +409 205 158 383 296 640 9 +327 101 516 57 677 602 3 +385 151 555 12 670 565 3 +609 1017 140 192 285 252 21 +563 971 225 221 260 162 21 +360 106 510 282 658 442 8 +306 126 0 278 4 544 4 +352 108 535 119 604 477 3 +722 1023 201 315 247 234 25 +375 156 69 423 201 646 9 +313 152 27 58 0 395 4 +397 108 550 258 680 528 8 +419 229 131 230 665 332 7 +391 191 143 320 564 330 7 +337 119 529 127 629 534 3 +262 106 0 161 71 452 4 +404 100 527 65 640 548 3 +647 1023 0 270 259 295 25 +400 140 44 0 559 616 11 +724 1023 200 267 279 267 25 +318 85 497 0 642 551 3 +783 1023 102 263 259 340 25 +305 79 462 114 655 555 3 +361 105 510 156 592 498 3 +391 118 549 122 648 514 3 +657 1023 158 186 265 50 21 +358 244 61 137 686 403 6 +694 433 494 263 258 273 22 +671 1023 200 223 278 266 25 +623 1001 166 295 287 218 21 +377 171 487 291 544 287 13 +343 134 512 125 644 306 3 +453 216 46 494 635 445 20 +410 103 547 0 613 461 3 +412 161 95 192 636 598 11 +457 136 558 369 616 291 13 +378 124 549 241 627 443 8 +604 1023 198 239 301 193 21 +427 257 136 549 238 235 16 +379 115 531 42 675 486 3 +853 1023 199 246 318 224 25 +356 92 517 43 672 575 3 +343 91 506 571 629 426 13 +522 180 602 294 664 365 13 +771 666 483 750 767 928 19 +561 1023 89 265 227 265 21 +396 71 509 0 585 311 3 +715 1023 77 319 281 200 25 +453 184 576 437 614 338 13 +729 988 159 250 230 276 25 +399 159 48 0 639 597 11 +314 58 489 28 632 523 3 +726 1023 231 253 241 300 25 +370 91 510 154 628 600 8 +404 105 517 202 625 472 8 +375 94 65 108 599 645 11 +588 999 195 186 265 262 21 +718 993 244 262 272 272 25 +332 94 524 366 662 484 8 +396 99 523 214 605 510 8 +653 415 406 157 225 327 22 +338 143 528 132 617 477 3 +714 986 165 214 283 209 25 +1023 1023 636 596 759 547 19 +420 1023 366 441 395 534 23 +513 1023 420 476 415 568 23 +359 173 111 63 638 610 11 +680 1023 111 218 267 194 21 +809 448 460 149 251 271 22 +369 99 507 72 616 469 3 +393 113 507 331 618 200 13 +396 230 119 78 637 325 6 +450 216 567 490 682 378 13 +362 90 514 292 642 531 8 +772 909 401 236 279 265 25 +661 1023 239 318 275 259 25 +818 1023 221 348 306 314 25 +651 244 349 292 17 639 9 +657 1023 390 495 389 549 23 +340 112 510 0 596 530 3 +740 990 157 233 245 218 25 +310 101 52 135 86 460 4 +612 1023 390 465 427 549 23 +691 992 115 260 226 112 21 +351 92 500 211 649 577 8 +408 166 530 341 653 283 13 +355 76 509 170 673 561 8 +428 302 141 256 145 271 12 +637 1023 221 250 255 218 21 +650 988 177 245 287 256 25 +657 1023 156 300 220 108 21 +391 112 522 351 663 374 13 +677 1023 238 360 326 286 25 +568 936 27 179 210 237 21 +648 1023 432 471 431 522 23 +365 109 490 198 634 463 8 +672 537 406 137 234 210 22 +372 91 512 589 642 474 13 +441 209 165 145 666 337 6 +380 203 44 168 653 407 11 +402 101 486 328 602 231 13 +283 121 485 85 667 584 3 +449 165 133 178 623 427 11 +739 1023 237 343 301 241 25 +754 1023 191 272 290 327 25 +404 121 567 0 684 545 3 +454 148 574 439 644 342 13 +354 138 530 196 637 556 8 +634 1023 220 295 308 237 25 +339 111 492 291 643 316 13 +457 166 560 476 672 321 13 +598 855 98 162 268 260 21 +410 610 126 168 196 235 12 +338 181 28 111 562 297 6 +398 120 530 0 658 522 3 +473 1023 348 472 346 530 23 +309 89 438 299 556 206 13 +431 163 73 147 590 595 11 +666 927 199 208 242 179 21 +688 1023 107 258 186 224 25 +290 86 197 0 464 361 6 +371 149 87 183 383 552 11 +373 160 93 162 623 340 6 +739 1023 135 299 335 337 25 +459 838 347 441 342 503 23 +450 237 118 322 204 287 12 +593 962 107 277 183 15 21 +359 148 56 182 623 264 6 +576 1023 167 227 254 233 21 +384 86 512 208 691 471 8 +656 1023 231 241 251 104 21 +718 1023 164 318 223 365 25 +311 137 502 0 590 572 3 +688 1023 140 301 252 295 25 +353 121 522 209 574 585 8 +670 1023 154 238 279 236 25 +431 107 524 297 580 191 13 +430 174 553 444 691 481 13 +339 121 26 54 581 600 11 +627 1023 140 235 222 96 21 +377 155 103 102 603 475 11 +313 71 426 317 622 203 13 +792 1023 123 264 283 305 25 +690 1023 171 303 324 188 25 +404 85 519 339 578 299 13 +423 158 148 380 675 785 9 +390 126 532 280 658 431 8 +829 945 212 289 282 225 25 +640 1023 165 227 195 308 25 +357 143 0 255 0 489 4 +596 935 171 272 278 301 25 +334 200 105 177 87 450 4 +1023 1023 390 433 381 349 26 +1023 1023 451 370 350 371 26 +616 933 168 265 322 302 25 +365 93 516 288 665 463 8 +690 994 96 286 232 311 25 +686 1023 160 265 198 235 25 +390 109 521 118 626 465 3 +355 103 498 319 659 546 8 +390 93 508 280 654 503 8 +904 1023 252 299 340 181 26 +658 1023 178 311 394 561 23 +555 257 145 236 48 563 4 +346 103 483 266 616 319 13 +654 931 169 259 334 220 25 +352 120 517 0 669 540 3 +408 204 104 68 711 506 11 +408 118 545 371 677 278 13 +342 130 107 0 553 533 11 +451 102 101 137 563 354 6 +395 95 572 183 600 380 8 +397 121 96 362 640 315 7 +363 123 506 474 598 271 13 +429 1023 333 438 352 519 23 +760 1023 187 350 314 254 25 +309 486 98 149 310 219 12 +560 270 337 187 174 568 4 +318 114 476 228 615 347 8 +420 105 566 192 676 502 8 +640 1023 147 218 263 111 21 +336 101 528 52 634 494 3 +367 138 499 255 643 316 13 +648 1023 242 184 298 292 25 +810 1023 212 306 283 285 25 +771 1023 232 340 296 267 25 +402 150 504 272 657 546 8 +408 94 106 216 610 606 11 +338 88 481 254 661 494 8 +568 926 127 274 245 253 21 +599 872 165 220 327 168 21 +406 156 93 40 596 579 11 +739 971 193 249 279 272 25 +450 284 176 0 619 348 6 +344 87 501 0 619 426 3 +456 125 560 409 637 317 13 +405 119 0 323 611 483 7 +631 1023 218 279 241 19 21 +527 1023 120 239 257 262 21 +431 181 78 353 633 345 7 +372 118 91 163 583 595 11 +745 1023 212 303 302 225 25 +347 74 496 359 590 324 13 +366 88 497 191 584 244 13 +405 110 68 117 585 549 11 +508 159 548 533 555 165 13 +391 125 99 274 543 636 11 +356 170 184 119 621 599 11 +727 1023 200 252 104 245 25 +386 106 509 297 716 565 8 +826 1023 215 285 273 249 25 +328 94 461 530 593 353 13 +301 132 0 0 193 434 4 +381 174 39 170 593 634 11 +643 1023 167 228 290 266 25 +643 966 209 290 249 234 25 +668 1023 197 227 312 234 25 +558 1023 370 448 370 507 23 +813 1023 179 303 272 183 25 +641 1023 202 201 251 212 21 +517 712 198 244 301 276 21 +467 229 104 457 663 332 20 +643 927 132 266 249 252 25 +354 97 523 236 684 461 8 +608 1023 105 278 144 52 21 +407 137 532 262 648 459 8 +391 130 523 203 601 499 8 +1023 1023 522 501 485 445 19 +550 1004 58 175 243 318 21 +444 138 64 313 592 524 11 +361 120 508 170 637 514 8 +634 486 221 502 264 293 16 +411 177 103 24 79 602 4 +541 896 90 192 294 261 21 +1023 986 484 354 349 319 26 +424 201 90 332 708 389 7 +642 1023 107 125 213 315 21 +658 1023 153 206 282 249 25 +728 1023 110 200 309 303 25 +476 206 122 439 312 691 9 +695 1023 252 288 276 165 25 +406 107 552 254 675 568 8 +325 99 509 70 618 546 3 +651 1023 115 293 266 266 25 +672 1023 144 215 284 214 21 +350 123 492 186 672 520 8 +353 189 509 139 630 448 3 +670 1023 246 294 312 185 25 +347 116 520 232 527 549 8 +417 123 564 36 666 540 3 +741 1023 242 315 314 285 25 +405 106 539 202 624 504 8 +362 69 520 139 637 585 3 +662 1023 204 192 220 317 25 +865 1023 267 320 300 349 26 +370 108 538 174 643 380 3 +638 875 178 160 219 183 21 +413 103 526 459 616 322 13 +333 147 0 0 540 555 11 +355 103 479 388 680 342 13 +392 193 550 363 633 389 13 +674 1023 18 142 246 255 21 +419 155 84 348 721 323 7 +379 96 489 162 633 373 3 +711 1023 189 302 295 371 25 +653 322 349 164 197 267 22 +760 1023 150 283 248 237 25 +445 165 514 750 648 275 13 +397 111 564 287 661 489 8 +670 1023 216 202 263 68 21 +612 1023 213 273 305 337 25 +620 1023 264 263 274 315 25 +416 212 137 178 625 345 6 +460 182 130 122 761 503 11 +739 1023 109 297 256 292 25 +501 209 540 602 675 251 13 +810 613 405 129 221 291 22 +634 1023 147 223 267 242 21 +408 113 560 57 586 328 3 +422 118 521 9 617 489 3 +446 222 94 163 231 612 4 +403 154 527 157 569 278 3 +380 136 534 213 647 506 8 +342 107 35 154 578 641 11 +644 1023 231 164 284 352 25 +360 134 506 0 611 190 3 +767 1023 182 284 283 278 25 +423 163 538 423 578 294 13 +696 541 398 245 268 238 22 +417 160 165 379 644 445 7 +410 117 528 143 652 599 3 +550 461 159 174 263 181 12 +369 85 485 282 560 309 13 +702 1023 169 241 246 278 25 +423 157 541 486 672 459 13 +317 68 499 67 636 491 3 +407 186 140 147 121 545 4 +396 99 218 110 611 592 11 +679 1023 188 215 243 227 25 +415 134 536 321 647 198 13 +367 179 116 225 0 598 4 +416 106 547 347 668 489 8 +521 224 572 552 579 240 13 +343 149 44 39 141 508 4 +380 100 552 129 698 477 3 +325 122 66 165 607 581 11 +347 68 498 91 647 510 3 +768 1023 185 279 259 224 25 +413 112 538 279 678 438 8 +667 1023 179 200 298 306 25 +399 101 523 389 677 606 8 +341 131 84 50 719 436 11 +320 181 47 51 660 318 6 +384 113 518 408 669 498 8 +637 1023 193 263 278 108 21 +294 228 100 337 693 350 7 +318 166 101 155 193 597 4 +344 72 494 56 668 342 3 +674 1023 119 213 280 347 25 +756 1023 191 302 246 223 25 +371 76 89 0 596 581 11 +736 340 389 198 224 85 24 +333 96 503 460 584 221 13 +564 1023 46 204 105 233 21 +598 1023 166 266 190 217 21 +402 129 553 113 662 516 3 +707 1023 156 288 231 306 25 +332 99 467 446 620 378 13 +333 81 501 167 626 538 8 +397 118 522 253 625 472 8 +347 121 94 154 557 577 11 +660 862 187 220 212 243 21 +341 147 89 36 583 265 6 +312 130 69 475 518 568 9 +741 1023 133 265 281 284 25 +397 91 159 220 545 491 11 +391 117 540 0 674 493 3 +593 1023 135 264 270 244 21 +686 1023 73 215 288 290 25 +424 168 154 462 561 568 9 +605 1023 164 280 314 271 25 +398 105 537 407 637 401 13 +565 184 530 499 673 232 13 +399 183 559 129 541 234 3 +649 1023 192 221 249 272 25 +377 101 505 7 621 274 3 +391 116 535 183 655 595 8 +485 138 551 483 595 235 13 +323 121 506 0 611 537 3 +615 806 105 105 215 250 21 +361 172 120 76 628 640 11 +363 212 82 120 598 325 6 +664 1023 206 300 235 235 25 +386 163 114 250 641 461 7 +607 287 340 202 249 248 22 +354 101 0 192 546 601 11 +370 90 38 245 587 583 11 +406 128 110 186 640 569 11 +613 1023 157 259 279 283 25 +322 113 489 169 671 432 3 +897 1023 195 277 299 235 25 +287 117 0 51 99 488 4 +361 212 96 335 630 364 7 +414 229 145 260 244 635 9 +356 92 490 109 627 586 3 +650 1023 150 258 300 274 25 +504 504 198 174 281 208 12 +632 843 177 276 181 212 21 +390 345 548 399 670 329 13 +637 1023 165 201 189 230 21 +631 1023 84 165 261 230 21 +690 1023 166 245 265 284 25 +407 111 117 0 544 356 6 +385 127 0 53 587 585 11 +741 505 390 233 253 91 24 +616 271 425 152 317 252 22 +382 83 519 75 599 499 3 +415 198 155 367 25 616 9 +361 101 485 63 629 535 3 +325 133 524 67 658 530 3 +644 1023 134 130 172 261 21 +1023 643 474 291 309 355 26 +393 103 557 118 644 538 3 +395 125 514 115 678 514 3 +400 204 74 150 184 616 4 +645 250 399 207 249 122 24 +397 198 489 421 584 257 13 +386 136 523 360 683 371 13 +339 128 5 115 92 164 5 +635 966 113 189 164 259 21 +830 1023 203 275 300 177 25 +318 364 339 463 395 343 13 +365 149 65 244 605 528 11 +575 864 116 246 233 0 21 +675 499 345 218 187 256 22 +752 753 109 246 287 199 25 +353 96 505 215 672 476 8 +403 128 41 27 649 356 6 +840 501 474 282 129 257 22 +993 655 472 313 357 356 26 +647 1023 47 175 256 98 21 +865 1023 181 284 288 280 25 +399 150 548 210 638 255 13 +566 949 169 205 250 270 21 +277 132 72 50 159 465 4 +380 146 551 0 656 569 3 +434 185 514 768 626 359 13 +905 1023 277 325 338 295 26 +383 156 40 104 628 601 11 +381 107 524 362 573 129 13 +332 95 480 161 619 460 3 +390 164 501 452 630 182 13 +394 183 79 309 615 296 7 +448 203 78 389 0 307 16 +443 211 146 0 228 493 4 +562 1023 84 257 242 271 21 +686 1023 201 283 266 326 25 +330 112 69 126 586 589 11 +369 174 151 100 637 613 11 +830 1023 206 245 271 199 25 +653 942 170 266 258 57 21 +640 1014 142 279 226 251 25 +303 103 22 188 91 374 4 +889 1023 233 253 287 109 25 +374 98 545 0 668 555 3 +687 1023 214 257 230 305 25 +379 105 534 506 601 300 13 +1023 1023 316 356 370 388 26 +563 1023 153 232 249 263 21 +572 1023 140 294 306 249 21 +326 148 461 233 626 379 8 +320 120 497 339 649 461 8 +379 179 102 110 662 372 6 +684 988 166 216 280 270 25 +694 1023 204 281 297 285 25 +441 166 110 286 463 490 11 +700 1023 206 306 262 324 25 +641 1023 185 198 267 223 21 +813 1023 227 245 244 160 25 +369 156 51 141 619 529 11 +336 112 41 286 195 440 4 +459 130 543 329 630 324 13 +404 113 45 0 568 605 11 +394 151 132 0 590 499 11 +404 188 61 117 633 261 6 +734 395 337 296 197 274 22 +427 164 509 470 583 184 13 +294 117 0 57 621 395 6 +714 470 413 229 229 301 22 +312 100 45 142 512 448 11 +369 132 506 0 645 549 3 +752 1023 99 285 305 205 25 +414 688 190 245 271 197 12 +415 139 108 380 582 299 7 +607 984 177 247 309 144 21 +302 69 423 187 558 462 8 +699 982 140 221 217 233 25 +684 1013 123 266 244 245 25 +368 188 94 280 658 393 7 +563 320 232 483 435 758 9 +698 461 394 236 213 254 22 +356 119 9 162 629 595 11 +672 1000 115 246 255 293 25 +346 108 494 10 647 474 3 +333 109 489 60 661 483 3 +370 78 472 129 660 446 3 +349 61 476 251 561 450 8 +406 189 149 195 658 611 11 +900 1023 193 232 294 280 26 +645 1023 172 257 276 225 25 +392 153 178 49 632 591 11 +554 913 106 206 218 88 21 +433 79 522 294 509 507 8 +561 1023 10 258 302 147 21 +430 113 552 135 658 502 3 +727 1023 211 261 291 293 25 +695 1023 168 243 285 128 21 +438 161 145 0 601 450 11 +417 106 548 420 608 352 13 +780 1023 148 262 328 276 25 +432 588 217 199 308 274 12 +640 1023 157 248 200 261 25 +673 1023 203 185 274 277 25 +617 1023 151 284 272 202 21 +682 1023 226 243 307 224 25 +810 968 125 67 258 191 25 +546 1017 145 202 280 226 21 +370 125 545 181 657 540 8 +734 916 421 653 599 412 19 +393 133 168 203 613 610 11 +309 98 506 0 639 491 3 +712 424 434 100 273 229 22 +655 963 109 137 237 264 21 +352 427 37 192 229 213 12 +291 83 451 279 611 279 13 +580 348 534 66 247 607 3 +403 109 542 38 638 236 3 +335 119 279 103 408 208 6 +615 1023 0 285 268 250 21 +297 122 9 62 0 462 4 +355 101 49 100 578 543 11 +499 657 254 266 297 300 22 +333 115 492 54 620 410 3 +730 1023 177 297 189 267 25 +820 1023 166 283 255 313 25 +804 1023 208 288 256 313 25 +779 1023 159 271 292 296 25 +392 176 529 142 538 184 13 +392 174 122 342 522 375 7 +663 495 392 103 171 247 22 +357 94 537 200 681 560 8 +388 153 531 517 605 278 13 +394 157 105 0 622 569 11 +947 1023 320 304 413 447 26 +426 183 108 298 587 255 7 +359 132 511 0 647 504 3 +905 629 285 299 294 340 26 +329 126 5 100 636 613 11 +365 189 66 424 335 634 9 +371 101 522 285 663 215 13 +379 91 531 213 656 584 8 +732 1023 181 224 288 275 25 +313 78 475 0 635 520 3 +354 131 495 37 669 515 3 +342 116 509 137 631 545 3 +499 771 40 169 125 152 21 +666 1023 202 283 256 260 25 +909 655 548 609 618 403 19 +368 126 514 196 641 514 8 +671 1023 215 275 316 277 25 +444 139 519 304 667 303 13 +631 1023 157 258 251 290 25 +971 1023 325 271 284 301 26 +487 137 560 176 629 284 3 +834 1023 166 277 621 547 26 +396 128 58 294 583 399 7 +624 559 459 224 261 233 22 +352 114 521 270 638 314 13 +619 1023 186 288 314 234 25 +434 240 116 193 664 361 7 +708 857 115 255 201 178 21 +731 454 403 44 303 237 22 +398 181 100 183 563 338 6 +612 981 157 215 103 290 21 +384 89 511 330 664 487 8 +355 87 489 356 618 637 8 +428 180 143 172 612 169 6 +362 92 529 441 660 489 8 +372 139 555 32 612 506 3 +350 182 134 113 561 581 11 +349 75 470 236 660 438 8 +635 1023 123 277 275 186 21 +406 215 141 273 141 600 4 +351 129 517 0 647 592 3 +372 101 88 403 605 437 7 +385 107 518 485 651 429 13 +626 1023 136 204 170 267 21 +334 83 496 68 599 288 3 +315 169 39 0 0 476 4 +603 1023 205 270 317 127 21 +381 98 524 0 649 461 3 +808 1023 373 459 412 323 26 +422 123 29 421 629 400 7 +1006 687 462 333 312 262 26 +845 1023 182 252 337 231 25 +420 202 56 78 634 629 11 +359 106 487 259 629 240 13 +407 151 87 194 614 620 11 +688 1023 226 321 255 294 25 +607 1023 24 235 271 188 21 +370 118 506 202 658 401 8 +667 1023 167 173 261 192 21 +405 197 47 206 627 522 11 +356 139 65 0 613 577 11 +760 1023 114 276 250 110 25 +495 216 236 280 210 592 9 +341 1023 385 508 385 545 23 +328 93 507 67 668 580 3 +377 99 517 383 664 597 8 +626 1023 136 283 180 248 21 +354 103 472 18 591 428 3 +619 1023 128 195 277 145 21 +362 101 522 241 662 521 8 +328 106 472 568 577 239 13 +283 71 435 85 581 514 3 +359 129 506 88 642 612 3 +627 1020 149 169 235 284 21 +666 1023 207 227 230 277 25 +413 177 553 0 518 546 3 +369 238 139 0 666 313 6 +420 180 70 73 317 600 4 +412 159 66 140 638 609 11 +358 114 510 569 485 530 13 +393 117 524 526 663 339 13 +293 85 451 0 639 538 3 +394 144 538 395 672 304 13 +379 89 497 288 660 548 8 +456 220 559 82 676 398 3 +519 185 596 572 600 194 13 +603 558 283 236 296 81 24 +708 310 54 211 23 645 4 +724 933 65 297 136 230 25 +745 1023 199 327 266 295 25 +728 1023 207 228 301 256 25 +389 186 112 123 607 195 6 +787 1023 157 310 264 197 25 +907 1023 235 340 267 243 26 +699 1023 140 270 297 188 25 +769 940 92 260 266 120 25 +529 117 566 426 618 213 13 +585 1023 180 158 266 290 21 +413 165 537 392 631 266 13 +368 95 517 81 628 500 3 +337 112 488 207 622 432 8 +388 130 516 353 700 630 8 +396 121 560 159 667 537 8 +939 639 504 284 228 336 26 +384 80 517 300 585 291 13 +379 176 98 192 602 324 6 +389 129 526 258 681 539 8 +728 482 369 271 262 357 22 +695 1023 234 297 225 277 25 +409 119 519 271 627 271 13 +754 1023 53 252 264 303 25 +651 300 147 47 239 628 4 +419 148 520 371 649 297 13 +299 79 469 578 570 320 13 +562 1023 385 489 384 532 23 +591 1023 156 262 229 221 21 +401 187 552 224 631 262 13 +361 127 528 0 633 460 3 +360 93 529 256 619 546 8 +441 122 79 224 597 305 7 +428 121 68 411 562 131 20 +561 827 170 119 270 222 21 +399 104 548 173 629 466 8 +311 56 203 164 423 260 6 +321 88 502 393 615 538 8 +419 107 551 169 604 539 8 +617 751 18 218 218 191 21 +651 958 134 311 212 179 21 +360 109 519 0 673 485 3 +695 1023 233 322 294 249 25 +388 753 159 395 532 290 7 +750 1023 192 266 249 256 25 +715 1023 219 249 276 273 25 +467 108 554 434 607 288 13 +392 117 526 155 661 488 3 +591 1023 173 258 298 271 21 +304 88 437 637 587 279 13 +1023 1023 251 358 346 390 26 +453 220 102 165 94 684 4 +416 151 554 366 635 302 13 +557 911 138 236 214 182 21 +721 1023 124 230 227 334 25 +387 135 492 700 594 280 13 +812 1023 183 211 276 204 25 +662 1023 180 304 234 111 21 +739 1023 197 263 288 293 25 +703 1023 123 229 191 204 25 +817 1023 193 337 304 201 25 +341 121 411 345 579 179 13 +379 138 497 440 575 268 13 +361 113 536 148 671 522 3 +661 1023 219 246 248 227 25 +574 982 128 108 253 250 21 +296 71 465 579 617 670 8 +583 878 123 277 262 236 21 +453 112 186 245 580 527 11 +389 181 133 210 443 544 11 +778 1023 143 257 308 196 25 +330 78 498 520 652 431 13 +865 1023 139 334 272 215 25 +773 393 163 510 127 618 9 +737 884 168 73 243 143 21 +309 65 461 242 628 379 8 +300 69 436 425 603 361 13 +678 1023 206 303 302 322 25 +347 128 508 215 688 623 8 +396 148 0 0 644 282 6 +560 180 560 428 631 346 13 +410 160 47 429 618 253 20 +583 955 94 227 244 245 21 +613 1023 111 285 219 280 21 +644 1023 201 231 195 270 25 +936 1023 319 414 334 266 26 +797 1023 224 236 304 289 25 +378 112 543 438 639 517 8 +459 129 531 515 562 205 13 +786 1023 120 274 264 247 25 +326 79 89 0 609 522 11 +352 99 546 63 596 496 3 +557 885 114 217 209 240 21 +460 206 146 105 648 552 11 +355 99 516 307 687 539 8 +384 577 85 249 176 227 12 +723 1023 146 298 298 300 25 +616 1023 207 203 252 202 21 +421 135 526 447 619 365 13 +428 152 499 471 626 317 13 +771 1023 176 274 268 99 25 +401 112 527 193 602 361 8 +661 306 379 279 308 354 22 +398 117 507 564 610 292 13 +643 1023 84 297 266 192 21 +283 78 429 0 659 565 3 +726 1008 126 204 275 235 25 +435 124 538 306 619 434 8 +338 187 0 179 0 569 4 +628 946 129 162 277 111 21 +673 979 115 198 310 270 25 +399 118 534 291 607 503 8 +400 87 521 271 314 442 8 +730 942 133 271 261 273 25 +372 108 529 145 542 443 3 +403 116 522 99 649 475 3 +380 222 123 101 246 571 4 +740 526 361 179 205 257 22 +686 1023 245 304 295 237 25 +679 1023 102 286 260 126 21 +394 129 0 346 670 391 7 +333 145 89 200 202 518 4 +679 1023 185 318 271 112 21 +400 90 538 85 623 540 3 +1023 1023 300 361 344 393 26 +713 1023 164 315 321 251 25 +519 253 320 258 277 274 22 +690 1023 188 259 281 319 25 +659 1023 85 215 224 262 21 +411 132 137 203 595 316 7 +370 118 522 336 631 339 13 +267 150 0 121 0 454 4 +536 1023 348 489 368 519 23 +394 146 550 36 645 481 3 +372 1023 364 554 533 420 23 +390 148 170 155 523 626 11 +383 133 552 258 689 604 8 +371 116 527 27 619 478 3 +406 81 526 295 566 423 8 +528 413 240 482 554 769 9 +417 125 96 147 627 615 11 +348 110 522 216 674 483 8 +687 526 338 171 309 238 22 +677 1023 172 283 244 219 25 +381 134 554 23 642 552 3 +419 258 37 317 686 360 7 +349 125 519 0 644 561 3 +400 184 38 130 629 627 11 +391 208 523 262 610 274 13 +503 886 204 207 223 292 21 +421 205 67 383 703 367 7 +357 122 506 334 632 516 8 +699 1023 193 308 266 232 25 +332 90 450 579 621 424 13 +365 188 45 0 662 387 6 +406 106 34 110 608 583 11 +382 205 81 60 96 551 4 +360 122 512 0 644 497 3 +649 276 359 0 173 231 22 +416 134 529 500 603 324 13 +632 1023 213 221 213 161 21 +375 88 529 151 658 577 3 +455 128 552 465 649 273 13 +402 138 121 220 598 604 11 +815 1023 156 324 318 319 25 +295 88 456 499 585 532 8 +393 574 0 246 142 193 12 +621 1023 255 288 314 215 25 +342 86 490 181 619 421 8 +343 117 531 75 652 563 3 +347 105 504 0 666 469 3 +615 1023 137 274 257 254 21 +319 66 450 512 645 420 13 +413 130 125 0 627 569 11 +384 92 499 0 597 439 3 +813 1023 137 296 245 160 25 +733 1023 160 304 298 220 25 +807 1023 147 220 228 278 25 +461 123 177 94 616 587 11 +339 56 470 78 645 471 3 +366 101 514 192 662 465 8 +597 1023 181 255 302 206 21 +429 174 63 78 579 625 11 +426 211 147 172 594 652 11 +679 944 79 237 266 189 21 +436 112 104 0 586 462 11 +353 123 507 160 524 485 3 +362 388 167 213 479 248 7 +800 1023 217 275 301 321 25 +357 102 534 162 623 496 3 +690 988 172 232 210 256 25 +416 191 156 207 641 402 7 +401 98 549 28 616 547 3 +350 106 521 214 622 519 8 +409 129 508 488 673 397 13 +435 219 50 220 138 588 4 +631 1023 174 41 249 248 21 +393 153 564 140 688 569 3 +663 1023 112 241 241 204 21 +438 123 559 6 663 520 3 +396 123 537 225 645 565 8 +774 1023 192 275 283 206 25 +332 204 96 73 629 278 6 +405 129 523 228 671 468 8 +908 1023 475 698 479 461 19 +411 120 551 90 688 572 3 +391 86 528 356 652 478 8 +706 788 94 258 220 146 21 +348 84 519 147 651 493 3 +405 238 133 192 144 598 4 +744 1023 166 261 271 241 25 +433 219 560 471 519 256 13 +657 1023 145 236 223 231 21 +373 170 188 201 666 675 11 +415 808 333 406 378 476 23 +377 141 557 353 677 460 8 +382 170 534 251 637 621 8 +355 236 170 358 514 464 7 +385 248 346 193 231 294 18 +419 119 563 328 675 472 8 +376 255 140 214 20 637 4 +613 1023 117 174 120 250 21 +709 635 405 212 277 310 22 +431 188 559 586 545 324 13 +367 110 54 103 586 579 11 +994 1023 391 321 351 336 26 +364 84 534 142 679 526 3 +402 110 515 385 623 356 13 +409 146 542 0 669 444 3 +727 1023 192 308 272 271 25 +499 798 183 250 246 293 21 +278 103 487 166 655 559 8 +412 110 562 296 655 522 8 +383 133 117 72 529 540 11 +346 119 215 167 589 524 11 +420 106 522 205 625 496 8 +409 157 133 165 580 290 6 +348 72 135 234 0 438 4 +646 1004 126 186 267 257 21 +779 499 428 213 203 150 24 +688 565 462 265 194 246 22 +432 176 509 374 569 244 13 +325 153 0 181 601 322 6 +709 1023 202 234 189 172 25 +331 67 492 0 599 521 3 +364 157 67 146 649 337 6 +722 1023 192 264 258 228 25 +654 1023 168 213 196 128 21 +690 1023 226 222 281 293 25 +769 1023 205 298 223 263 25 +276 119 0 256 95 505 4 +328 134 536 362 640 385 13 +414 182 98 210 612 521 11 +409 84 100 245 569 344 7 +357 111 505 163 667 507 8 +769 975 168 278 224 134 25 +522 1023 83 236 232 261 21 +730 1023 189 234 294 255 25 +371 188 125 89 623 306 6 +391 139 522 437 622 266 13 +424 261 153 440 742 731 9 +412 132 90 0 595 541 11 +612 554 374 266 210 323 22 +381 132 108 0 639 646 11 +360 126 530 71 641 501 3 +579 974 68 194 251 225 21 +807 1023 182 286 279 309 25 +826 1023 185 260 252 183 25 +374 93 547 240 657 514 8 +395 106 500 246 566 287 13 +732 1023 201 297 307 229 25 +397 134 542 95 687 598 3 +333 97 498 178 590 385 8 +459 243 95 327 678 466 7 +397 174 25 20 654 616 11 +723 1023 203 75 266 302 25 +507 158 526 485 550 190 13 +600 569 381 264 249 280 22 +410 120 64 97 583 602 11 +343 103 526 140 685 482 3 +362 99 511 191 571 558 8 +546 1023 181 286 234 244 21 +379 82 521 246 653 501 8 +439 165 551 463 703 352 13 +298 125 0 260 186 485 4 +693 1023 165 268 310 188 25 diff -r 59f859ea3122 -r a3ae90eb1232 test-data/output.flowclr --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/output.flowclr Mon Jun 22 16:34:35 2020 -0400 @@ -0,0 +1,1000 @@ +FSC SSC CD4 CCR3 CD8 CCR7 Population +672 913 185 272 264 239 25 +369 193 0 208 32 600 1 +590 885 113 253 262 253 21 +369 83 534 288 586 454 8 +287 127 0 0 568 434 11 +400 112 545 2 680 498 1 +460 97 528 224 643 367 8 +592 226 572 278 639 364 13 +359 109 139 121 626 576 11 +665 1023 266 211 215 219 25 +669 928 149 211 228 185 21 +420 115 540 244 620 521 8 +543 296 478 69 242 208 22 +363 171 17 469 227 470 9 +715 1023 207 158 279 275 25 +828 1023 209 326 308 272 25 +347 91 483 87 570 528 1 +654 1023 104 265 289 242 25 +366 99 484 249 645 221 13 +315 137 70 148 104 471 1 +379 208 82 65 668 275 6 +385 142 526 220 652 310 8 +622 1023 145 241 216 266 21 +600 1023 151 150 284 206 21 +450 154 552 433 695 368 13 +405 225 85 211 163 547 1 +430 212 534 498 646 266 13 +729 1023 201 288 289 301 25 +391 127 134 127 496 624 11 +620 1023 164 301 217 267 25 +718 1023 220 273 292 165 25 +340 78 517 283 685 532 8 +1023 1023 519 526 592 406 19 +744 1023 174 243 223 146 25 +667 469 406 35 199 261 22 +356 127 489 142 641 532 1 +696 869 462 704 588 503 19 +367 138 72 113 650 545 11 +655 1023 202 296 198 171 21 +726 325 371 270 200 285 22 +412 206 156 45 201 564 1 +866 1023 181 312 333 192 25 +705 1023 125 177 215 233 25 +414 194 29 40 556 556 11 +358 93 508 116 601 488 1 +428 220 77 304 732 352 7 +417 191 4 175 645 549 11 +410 97 535 264 633 429 8 +595 974 186 252 246 206 21 +432 208 552 35 613 273 1 +737 1023 177 310 239 216 25 +729 1023 164 152 233 137 21 +268 116 0 0 52 447 1 +721 1015 163 218 254 189 25 +346 103 540 286 692 595 8 +429 118 33 75 655 566 11 +434 254 123 440 43 591 9 +750 388 533 32 252 643 22 +331 84 489 0 677 621 1 +398 117 528 89 618 534 1 +678 985 271 174 287 97 21 +375 92 531 128 637 549 1 +962 1023 429 352 298 339 26 +669 1021 141 259 272 250 25 +466 527 144 137 230 211 12 +428 89 495 450 621 342 13 +360 100 90 258 612 194 7 +335 140 528 160 656 570 8 +363 82 513 0 584 570 1 +341 167 106 278 183 515 1 +395 106 555 222 631 545 8 +299 84 483 222 643 496 8 +407 100 508 643 606 313 13 +460 149 560 416 644 278 13 +670 1023 200 332 295 265 25 +778 1003 133 232 263 230 25 +794 1023 166 294 255 222 25 +296 182 37 177 0 563 1 +449 175 528 262 601 262 13 +421 160 384 165 639 542 8 +343 107 484 181 659 541 8 +868 1023 203 252 252 246 25 +385 140 95 524 623 627 9 +428 350 83 623 0 302 16 +705 1023 177 252 283 266 25 +448 241 551 551 619 310 13 +322 136 492 263 638 456 8 +364 88 0 112 178 450 1 +670 1010 173 230 248 282 25 +601 923 142 228 230 186 21 +372 95 550 236 650 443 8 +617 1023 207 72 324 276 21 +636 467 354 190 289 272 22 +698 1023 161 263 288 261 25 +393 86 549 108 721 522 1 +305 99 472 490 619 448 13 +370 75 514 409 629 337 13 +360 128 106 234 600 425 7 +710 486 402 300 124 258 22 +671 1023 113 249 281 283 25 +739 1023 250 293 303 300 25 +367 179 25 348 573 399 7 +315 92 472 241 559 460 8 +323 82 510 367 646 463 8 +721 1023 192 244 277 281 25 +702 932 429 292 316 300 25 +328 75 419 554 556 464 13 +628 962 238 288 283 233 25 +337 120 531 216 671 580 8 +496 133 534 230 597 276 13 +402 119 487 376 563 350 13 +325 84 474 96 645 423 1 +764 518 393 157 302 291 22 +409 205 158 383 296 640 9 +327 101 516 57 677 602 1 +385 151 555 12 670 565 1 +609 1017 140 192 285 252 21 +563 971 225 221 260 162 21 +360 106 510 282 658 442 8 +306 126 0 278 4 544 1 +352 108 535 119 604 477 1 +722 1023 201 315 247 234 25 +375 156 69 423 201 646 9 +313 152 27 58 0 395 1 +397 108 550 258 680 528 8 +419 229 131 230 665 332 7 +391 191 143 320 564 330 7 +337 119 529 127 629 534 1 +262 106 0 161 71 452 1 +404 100 527 65 640 548 1 +647 1023 0 270 259 295 25 +400 140 44 0 559 616 11 +724 1023 200 267 279 267 25 +318 85 497 0 642 551 1 +783 1023 102 263 259 340 25 +305 79 462 114 655 555 1 +361 105 510 156 592 498 1 +391 118 549 122 648 514 1 +657 1023 158 186 265 50 21 +358 244 61 137 686 403 6 +694 433 494 263 258 273 22 +671 1023 200 223 278 266 25 +623 1001 166 295 287 218 21 +377 171 487 291 544 287 13 +343 134 512 125 644 306 1 +453 216 46 494 635 445 20 +410 103 547 0 613 461 1 +412 161 95 192 636 598 11 +457 136 558 369 616 291 13 +378 124 549 241 627 443 8 +604 1023 198 239 301 193 21 +427 257 136 549 238 235 16 +379 115 531 42 675 486 1 +853 1023 199 246 318 224 25 +356 92 517 43 672 575 1 +343 91 506 571 629 426 13 +522 180 602 294 664 365 13 +771 666 483 750 767 928 19 +561 1023 89 265 227 265 21 +396 71 509 0 585 311 1 +715 1023 77 319 281 200 25 +453 184 576 437 614 338 13 +729 988 159 250 230 276 25 +399 159 48 0 639 597 11 +314 58 489 28 632 523 1 +726 1023 231 253 241 300 25 +370 91 510 154 628 600 8 +404 105 517 202 625 472 8 +375 94 65 108 599 645 11 +588 999 195 186 265 262 21 +718 993 244 262 272 272 25 +332 94 524 366 662 484 8 +396 99 523 214 605 510 8 +653 415 406 157 225 327 22 +338 143 528 132 617 477 1 +714 986 165 214 283 209 25 +1023 1023 636 596 759 547 19 +420 1023 366 441 395 534 23 +513 1023 420 476 415 568 23 +359 173 111 63 638 610 11 +680 1023 111 218 267 194 21 +809 448 460 149 251 271 22 +369 99 507 72 616 469 1 +393 113 507 331 618 200 13 +396 230 119 78 637 325 6 +450 216 567 490 682 378 13 +362 90 514 292 642 531 8 +772 909 401 236 279 265 25 +661 1023 239 318 275 259 25 +818 1023 221 348 306 314 25 +651 244 349 292 17 639 9 +657 1023 390 495 389 549 23 +340 112 510 0 596 530 1 +740 990 157 233 245 218 25 +310 101 52 135 86 460 1 +612 1023 390 465 427 549 23 +691 992 115 260 226 112 21 +351 92 500 211 649 577 8 +408 166 530 341 653 283 13 +355 76 509 170 673 561 8 +428 302 141 256 145 271 12 +637 1023 221 250 255 218 21 +650 988 177 245 287 256 25 +657 1023 156 300 220 108 21 +391 112 522 351 663 374 13 +677 1023 238 360 326 286 25 +568 936 27 179 210 237 21 +648 1023 432 471 431 522 23 +365 109 490 198 634 463 8 +672 537 406 137 234 210 22 +372 91 512 589 642 474 13 +441 209 165 145 666 337 6 +380 203 44 168 653 407 11 +402 101 486 328 602 231 13 +283 121 485 85 667 584 1 +449 165 133 178 623 427 11 +739 1023 237 343 301 241 25 +754 1023 191 272 290 327 25 +404 121 567 0 684 545 1 +454 148 574 439 644 342 13 +354 138 530 196 637 556 8 +634 1023 220 295 308 237 25 +339 111 492 291 643 316 13 +457 166 560 476 672 321 13 +598 855 98 162 268 260 21 +410 610 126 168 196 235 12 +338 181 28 111 562 297 6 +398 120 530 0 658 522 1 +473 1023 348 472 346 530 23 +309 89 438 299 556 206 13 +431 163 73 147 590 595 11 +666 927 199 208 242 179 21 +688 1023 107 258 186 224 25 +290 86 197 0 464 361 6 +371 149 87 183 383 552 11 +373 160 93 162 623 340 6 +739 1023 135 299 335 337 25 +459 838 347 441 342 503 23 +450 237 118 322 204 287 12 +593 962 107 277 183 15 21 +359 148 56 182 623 264 6 +576 1023 167 227 254 233 21 +384 86 512 208 691 471 8 +656 1023 231 241 251 104 21 +718 1023 164 318 223 365 25 +311 137 502 0 590 572 1 +688 1023 140 301 252 295 25 +353 121 522 209 574 585 8 +670 1023 154 238 279 236 25 +431 107 524 297 580 191 13 +430 174 553 444 691 481 13 +339 121 26 54 581 600 11 +627 1023 140 235 222 96 21 +377 155 103 102 603 475 11 +313 71 426 317 622 203 13 +792 1023 123 264 283 305 25 +690 1023 171 303 324 188 25 +404 85 519 339 578 299 13 +423 158 148 380 675 785 9 +390 126 532 280 658 431 8 +829 945 212 289 282 225 25 +640 1023 165 227 195 308 25 +357 143 0 255 0 489 1 +596 935 171 272 278 301 25 +334 200 105 177 87 450 1 +1023 1023 390 433 381 349 26 +1023 1023 451 370 350 371 26 +616 933 168 265 322 302 25 +365 93 516 288 665 463 8 +690 994 96 286 232 311 25 +686 1023 160 265 198 235 25 +390 109 521 118 626 465 1 +355 103 498 319 659 546 8 +390 93 508 280 654 503 8 +904 1023 252 299 340 181 26 +658 1023 178 311 394 561 23 +555 257 145 236 48 563 1 +346 103 483 266 616 319 13 +654 931 169 259 334 220 25 +352 120 517 0 669 540 1 +408 204 104 68 711 506 11 +408 118 545 371 677 278 13 +342 130 107 0 553 533 11 +451 102 101 137 563 354 6 +395 95 572 183 600 380 8 +397 121 96 362 640 315 7 +363 123 506 474 598 271 13 +429 1023 333 438 352 519 23 +760 1023 187 350 314 254 25 +309 486 98 149 310 219 12 +560 270 337 187 174 568 1 +318 114 476 228 615 347 8 +420 105 566 192 676 502 8 +640 1023 147 218 263 111 21 +336 101 528 52 634 494 1 +367 138 499 255 643 316 13 +648 1023 242 184 298 292 25 +810 1023 212 306 283 285 25 +771 1023 232 340 296 267 25 +402 150 504 272 657 546 8 +408 94 106 216 610 606 11 +338 88 481 254 661 494 8 +568 926 127 274 245 253 21 +599 872 165 220 327 168 21 +406 156 93 40 596 579 11 +739 971 193 249 279 272 25 +450 284 176 0 619 348 6 +344 87 501 0 619 426 1 +456 125 560 409 637 317 13 +405 119 0 323 611 483 7 +631 1023 218 279 241 19 21 +527 1023 120 239 257 262 21 +431 181 78 353 633 345 7 +372 118 91 163 583 595 11 +745 1023 212 303 302 225 25 +347 74 496 359 590 324 13 +366 88 497 191 584 244 13 +405 110 68 117 585 549 11 +508 159 548 533 555 165 13 +391 125 99 274 543 636 11 +356 170 184 119 621 599 11 +727 1023 200 252 104 245 25 +386 106 509 297 716 565 8 +826 1023 215 285 273 249 25 +328 94 461 530 593 353 13 +301 132 0 0 193 434 1 +381 174 39 170 593 634 11 +643 1023 167 228 290 266 25 +643 966 209 290 249 234 25 +668 1023 197 227 312 234 25 +558 1023 370 448 370 507 23 +813 1023 179 303 272 183 25 +641 1023 202 201 251 212 21 +517 712 198 244 301 276 21 +467 229 104 457 663 332 20 +643 927 132 266 249 252 25 +354 97 523 236 684 461 8 +608 1023 105 278 144 52 21 +407 137 532 262 648 459 8 +391 130 523 203 601 499 8 +1023 1023 522 501 485 445 19 +550 1004 58 175 243 318 21 +444 138 64 313 592 524 11 +361 120 508 170 637 514 8 +634 486 221 502 264 293 16 +411 177 103 24 79 602 1 +541 896 90 192 294 261 21 +1023 986 484 354 349 319 26 +424 201 90 332 708 389 7 +642 1023 107 125 213 315 21 +658 1023 153 206 282 249 25 +728 1023 110 200 309 303 25 +476 206 122 439 312 691 9 +695 1023 252 288 276 165 25 +406 107 552 254 675 568 8 +325 99 509 70 618 546 1 +651 1023 115 293 266 266 25 +672 1023 144 215 284 214 21 +350 123 492 186 672 520 8 +353 189 509 139 630 448 1 +670 1023 246 294 312 185 25 +347 116 520 232 527 549 8 +417 123 564 36 666 540 1 +741 1023 242 315 314 285 25 +405 106 539 202 624 504 8 +362 69 520 139 637 585 1 +662 1023 204 192 220 317 25 +865 1023 267 320 300 349 26 +370 108 538 174 643 380 1 +638 875 178 160 219 183 21 +413 103 526 459 616 322 13 +333 147 0 0 540 555 11 +355 103 479 388 680 342 13 +392 193 550 363 633 389 13 +674 1023 18 142 246 255 21 +419 155 84 348 721 323 7 +379 96 489 162 633 373 1 +711 1023 189 302 295 371 25 +653 322 349 164 197 267 22 +760 1023 150 283 248 237 25 +445 165 514 750 648 275 13 +397 111 564 287 661 489 8 +670 1023 216 202 263 68 21 +612 1023 213 273 305 337 25 +620 1023 264 263 274 315 25 +416 212 137 178 625 345 6 +460 182 130 122 761 503 11 +739 1023 109 297 256 292 25 +501 209 540 602 675 251 13 +810 613 405 129 221 291 22 +634 1023 147 223 267 242 21 +408 113 560 57 586 328 1 +422 118 521 9 617 489 1 +446 222 94 163 231 612 1 +403 154 527 157 569 278 1 +380 136 534 213 647 506 8 +342 107 35 154 578 641 11 +644 1023 231 164 284 352 25 +360 134 506 0 611 190 1 +767 1023 182 284 283 278 25 +423 163 538 423 578 294 13 +696 541 398 245 268 238 22 +417 160 165 379 644 445 7 +410 117 528 143 652 599 1 +550 461 159 174 263 181 12 +369 85 485 282 560 309 13 +702 1023 169 241 246 278 25 +423 157 541 486 672 459 13 +317 68 499 67 636 491 1 +407 186 140 147 121 545 1 +396 99 218 110 611 592 11 +679 1023 188 215 243 227 25 +415 134 536 321 647 198 13 +367 179 116 225 0 598 1 +416 106 547 347 668 489 8 +521 224 572 552 579 240 13 +343 149 44 39 141 508 1 +380 100 552 129 698 477 1 +325 122 66 165 607 581 11 +347 68 498 91 647 510 1 +768 1023 185 279 259 224 25 +413 112 538 279 678 438 8 +667 1023 179 200 298 306 25 +399 101 523 389 677 606 8 +341 131 84 50 719 436 11 +320 181 47 51 660 318 6 +384 113 518 408 669 498 8 +637 1023 193 263 278 108 21 +294 228 100 337 693 350 7 +318 166 101 155 193 597 1 +344 72 494 56 668 342 1 +674 1023 119 213 280 347 25 +756 1023 191 302 246 223 25 +371 76 89 0 596 581 11 +736 340 389 198 224 85 24 +333 96 503 460 584 221 13 +564 1023 46 204 105 233 21 +598 1023 166 266 190 217 21 +402 129 553 113 662 516 1 +707 1023 156 288 231 306 25 +332 99 467 446 620 378 13 +333 81 501 167 626 538 8 +397 118 522 253 625 472 8 +347 121 94 154 557 577 11 +660 862 187 220 212 243 21 +341 147 89 36 583 265 6 +312 130 69 475 518 568 9 +741 1023 133 265 281 284 25 +397 91 159 220 545 491 11 +391 117 540 0 674 493 1 +593 1023 135 264 270 244 21 +686 1023 73 215 288 290 25 +424 168 154 462 561 568 9 +605 1023 164 280 314 271 25 +398 105 537 407 637 401 13 +565 184 530 499 673 232 13 +399 183 559 129 541 234 1 +649 1023 192 221 249 272 25 +377 101 505 7 621 274 1 +391 116 535 183 655 595 8 +485 138 551 483 595 235 13 +323 121 506 0 611 537 1 +615 806 105 105 215 250 21 +361 172 120 76 628 640 11 +363 212 82 120 598 325 6 +664 1023 206 300 235 235 25 +386 163 114 250 641 461 7 +607 287 340 202 249 248 22 +354 101 0 192 546 601 11 +370 90 38 245 587 583 11 +406 128 110 186 640 569 11 +613 1023 157 259 279 283 25 +322 113 489 169 671 432 1 +897 1023 195 277 299 235 25 +287 117 0 51 99 488 1 +361 212 96 335 630 364 7 +414 229 145 260 244 635 9 +356 92 490 109 627 586 1 +650 1023 150 258 300 274 25 +504 504 198 174 281 208 12 +632 843 177 276 181 212 21 +390 345 548 399 670 329 13 +637 1023 165 201 189 230 21 +631 1023 84 165 261 230 21 +690 1023 166 245 265 284 25 +407 111 117 0 544 356 6 +385 127 0 53 587 585 11 +741 505 390 233 253 91 24 +616 271 425 152 317 252 22 +382 83 519 75 599 499 1 +415 198 155 367 25 616 9 +361 101 485 63 629 535 1 +325 133 524 67 658 530 1 +644 1023 134 130 172 261 21 +1023 643 474 291 309 355 26 +393 103 557 118 644 538 1 +395 125 514 115 678 514 1 +400 204 74 150 184 616 1 +645 250 399 207 249 122 24 +397 198 489 421 584 257 13 +386 136 523 360 683 371 13 +339 128 5 115 92 164 5 +635 966 113 189 164 259 21 +830 1023 203 275 300 177 25 +318 364 339 463 395 343 13 +365 149 65 244 605 528 11 +575 864 116 246 233 0 21 +675 499 345 218 187 256 22 +752 753 109 246 287 199 25 +353 96 505 215 672 476 8 +403 128 41 27 649 356 6 +840 501 474 282 129 257 22 +993 655 472 313 357 356 26 +647 1023 47 175 256 98 21 +865 1023 181 284 288 280 25 +399 150 548 210 638 255 13 +566 949 169 205 250 270 21 +277 132 72 50 159 465 1 +380 146 551 0 656 569 1 +434 185 514 768 626 359 13 +905 1023 277 325 338 295 26 +383 156 40 104 628 601 11 +381 107 524 362 573 129 13 +332 95 480 161 619 460 1 +390 164 501 452 630 182 13 +394 183 79 309 615 296 7 +448 203 78 389 0 307 16 +443 211 146 0 228 493 1 +562 1023 84 257 242 271 21 +686 1023 201 283 266 326 25 +330 112 69 126 586 589 11 +369 174 151 100 637 613 11 +830 1023 206 245 271 199 25 +653 942 170 266 258 57 21 +640 1014 142 279 226 251 25 +303 103 22 188 91 374 1 +889 1023 233 253 287 109 25 +374 98 545 0 668 555 1 +687 1023 214 257 230 305 25 +379 105 534 506 601 300 13 +1023 1023 316 356 370 388 26 +563 1023 153 232 249 263 21 +572 1023 140 294 306 249 21 +326 148 461 233 626 379 8 +320 120 497 339 649 461 8 +379 179 102 110 662 372 6 +684 988 166 216 280 270 25 +694 1023 204 281 297 285 25 +441 166 110 286 463 490 11 +700 1023 206 306 262 324 25 +641 1023 185 198 267 223 21 +813 1023 227 245 244 160 25 +369 156 51 141 619 529 11 +336 112 41 286 195 440 1 +459 130 543 329 630 324 13 +404 113 45 0 568 605 11 +394 151 132 0 590 499 11 +404 188 61 117 633 261 6 +734 395 337 296 197 274 22 +427 164 509 470 583 184 13 +294 117 0 57 621 395 6 +714 470 413 229 229 301 22 +312 100 45 142 512 448 11 +369 132 506 0 645 549 1 +752 1023 99 285 305 205 25 +414 688 190 245 271 197 12 +415 139 108 380 582 299 7 +607 984 177 247 309 144 21 +302 69 423 187 558 462 8 +699 982 140 221 217 233 25 +684 1013 123 266 244 245 25 +368 188 94 280 658 393 7 +563 320 232 483 435 758 9 +698 461 394 236 213 254 22 +356 119 9 162 629 595 11 +672 1000 115 246 255 293 25 +346 108 494 10 647 474 1 +333 109 489 60 661 483 1 +370 78 472 129 660 446 1 +349 61 476 251 561 450 8 +406 189 149 195 658 611 11 +900 1023 193 232 294 280 26 +645 1023 172 257 276 225 25 +392 153 178 49 632 591 11 +554 913 106 206 218 88 21 +433 79 522 294 509 507 8 +561 1023 10 258 302 147 21 +430 113 552 135 658 502 1 +727 1023 211 261 291 293 25 +695 1023 168 243 285 128 21 +438 161 145 0 601 450 11 +417 106 548 420 608 352 13 +780 1023 148 262 328 276 25 +432 588 217 199 308 274 12 +640 1023 157 248 200 261 25 +673 1023 203 185 274 277 25 +617 1023 151 284 272 202 21 +682 1023 226 243 307 224 25 +810 968 125 67 258 191 25 +546 1017 145 202 280 226 21 +370 125 545 181 657 540 8 +734 916 421 653 599 412 19 +393 133 168 203 613 610 11 +309 98 506 0 639 491 1 +712 424 434 100 273 229 22 +655 963 109 137 237 264 21 +352 427 37 192 229 213 12 +291 83 451 279 611 279 13 +580 348 534 66 247 607 1 +403 109 542 38 638 236 1 +335 119 279 103 408 208 6 +615 1023 0 285 268 250 21 +297 122 9 62 0 462 1 +355 101 49 100 578 543 11 +499 657 254 266 297 300 22 +333 115 492 54 620 410 1 +730 1023 177 297 189 267 25 +820 1023 166 283 255 313 25 +804 1023 208 288 256 313 25 +779 1023 159 271 292 296 25 +392 176 529 142 538 184 13 +392 174 122 342 522 375 7 +663 495 392 103 171 247 22 +357 94 537 200 681 560 8 +388 153 531 517 605 278 13 +394 157 105 0 622 569 11 +947 1023 320 304 413 447 26 +426 183 108 298 587 255 7 +359 132 511 0 647 504 1 +905 629 285 299 294 340 26 +329 126 5 100 636 613 11 +365 189 66 424 335 634 9 +371 101 522 285 663 215 13 +379 91 531 213 656 584 8 +732 1023 181 224 288 275 25 +313 78 475 0 635 520 1 +354 131 495 37 669 515 1 +342 116 509 137 631 545 1 +499 771 40 169 125 152 21 +666 1023 202 283 256 260 25 +909 655 548 609 618 403 19 +368 126 514 196 641 514 8 +671 1023 215 275 316 277 25 +444 139 519 304 667 303 13 +631 1023 157 258 251 290 25 +971 1023 325 271 284 301 26 +487 137 560 176 629 284 1 +834 1023 166 277 621 547 26 +396 128 58 294 583 399 7 +624 559 459 224 261 233 22 +352 114 521 270 638 314 13 +619 1023 186 288 314 234 25 +434 240 116 193 664 361 7 +708 857 115 255 201 178 21 +731 454 403 44 303 237 22 +398 181 100 183 563 338 6 +612 981 157 215 103 290 21 +384 89 511 330 664 487 8 +355 87 489 356 618 637 8 +428 180 143 172 612 169 6 +362 92 529 441 660 489 8 +372 139 555 32 612 506 1 +350 182 134 113 561 581 11 +349 75 470 236 660 438 8 +635 1023 123 277 275 186 21 +406 215 141 273 141 600 1 +351 129 517 0 647 592 1 +372 101 88 403 605 437 7 +385 107 518 485 651 429 13 +626 1023 136 204 170 267 21 +334 83 496 68 599 288 1 +315 169 39 0 0 476 1 +603 1023 205 270 317 127 21 +381 98 524 0 649 461 1 +808 1023 373 459 412 323 26 +422 123 29 421 629 400 7 +1006 687 462 333 312 262 26 +845 1023 182 252 337 231 25 +420 202 56 78 634 629 11 +359 106 487 259 629 240 13 +407 151 87 194 614 620 11 +688 1023 226 321 255 294 25 +607 1023 24 235 271 188 21 +370 118 506 202 658 401 8 +667 1023 167 173 261 192 21 +405 197 47 206 627 522 11 +356 139 65 0 613 577 11 +760 1023 114 276 250 110 25 +495 216 236 280 210 592 9 +341 1023 385 508 385 545 23 +328 93 507 67 668 580 1 +377 99 517 383 664 597 8 +626 1023 136 283 180 248 21 +354 103 472 18 591 428 1 +619 1023 128 195 277 145 21 +362 101 522 241 662 521 8 +328 106 472 568 577 239 13 +283 71 435 85 581 514 1 +359 129 506 88 642 612 1 +627 1020 149 169 235 284 21 +666 1023 207 227 230 277 25 +413 177 553 0 518 546 1 +369 238 139 0 666 313 6 +420 180 70 73 317 600 1 +412 159 66 140 638 609 11 +358 114 510 569 485 530 13 +393 117 524 526 663 339 13 +293 85 451 0 639 538 1 +394 144 538 395 672 304 13 +379 89 497 288 660 548 8 +456 220 559 82 676 398 1 +519 185 596 572 600 194 13 +603 558 283 236 296 81 24 +708 310 54 211 23 645 1 +724 933 65 297 136 230 25 +745 1023 199 327 266 295 25 +728 1023 207 228 301 256 25 +389 186 112 123 607 195 6 +787 1023 157 310 264 197 25 +907 1023 235 340 267 243 26 +699 1023 140 270 297 188 25 +769 940 92 260 266 120 25 +529 117 566 426 618 213 13 +585 1023 180 158 266 290 21 +413 165 537 392 631 266 13 +368 95 517 81 628 500 1 +337 112 488 207 622 432 8 +388 130 516 353 700 630 8 +396 121 560 159 667 537 8 +939 639 504 284 228 336 26 +384 80 517 300 585 291 13 +379 176 98 192 602 324 6 +389 129 526 258 681 539 8 +728 482 369 271 262 357 22 +695 1023 234 297 225 277 25 +409 119 519 271 627 271 13 +754 1023 53 252 264 303 25 +651 300 147 47 239 628 1 +419 148 520 371 649 297 13 +299 79 469 578 570 320 13 +562 1023 385 489 384 532 23 +591 1023 156 262 229 221 21 +401 187 552 224 631 262 13 +361 127 528 0 633 460 1 +360 93 529 256 619 546 8 +441 122 79 224 597 305 7 +428 121 68 411 562 131 20 +561 827 170 119 270 222 21 +399 104 548 173 629 466 8 +311 56 203 164 423 260 6 +321 88 502 393 615 538 8 +419 107 551 169 604 539 8 +617 751 18 218 218 191 21 +651 958 134 311 212 179 21 +360 109 519 0 673 485 1 +695 1023 233 322 294 249 25 +388 753 159 395 532 290 7 +750 1023 192 266 249 256 25 +715 1023 219 249 276 273 25 +467 108 554 434 607 288 13 +392 117 526 155 661 488 1 +591 1023 173 258 298 271 21 +304 88 437 637 587 279 13 +1023 1023 251 358 346 390 26 +453 220 102 165 94 684 1 +416 151 554 366 635 302 13 +557 911 138 236 214 182 21 +721 1023 124 230 227 334 25 +387 135 492 700 594 280 13 +812 1023 183 211 276 204 25 +662 1023 180 304 234 111 21 +739 1023 197 263 288 293 25 +703 1023 123 229 191 204 25 +817 1023 193 337 304 201 25 +341 121 411 345 579 179 13 +379 138 497 440 575 268 13 +361 113 536 148 671 522 1 +661 1023 219 246 248 227 25 +574 982 128 108 253 250 21 +296 71 465 579 617 670 8 +583 878 123 277 262 236 21 +453 112 186 245 580 527 11 +389 181 133 210 443 544 11 +778 1023 143 257 308 196 25 +330 78 498 520 652 431 13 +865 1023 139 334 272 215 25 +773 393 163 510 127 618 9 +737 884 168 73 243 143 21 +309 65 461 242 628 379 8 +300 69 436 425 603 361 13 +678 1023 206 303 302 322 25 +347 128 508 215 688 623 8 +396 148 0 0 644 282 6 +560 180 560 428 631 346 13 +410 160 47 429 618 253 20 +583 955 94 227 244 245 21 +613 1023 111 285 219 280 21 +644 1023 201 231 195 270 25 +936 1023 319 414 334 266 26 +797 1023 224 236 304 289 25 +378 112 543 438 639 517 8 +459 129 531 515 562 205 13 +786 1023 120 274 264 247 25 +326 79 89 0 609 522 11 +352 99 546 63 596 496 1 +557 885 114 217 209 240 21 +460 206 146 105 648 552 11 +355 99 516 307 687 539 8 +384 577 85 249 176 227 12 +723 1023 146 298 298 300 25 +616 1023 207 203 252 202 21 +421 135 526 447 619 365 13 +428 152 499 471 626 317 13 +771 1023 176 274 268 99 25 +401 112 527 193 602 361 8 +661 306 379 279 308 354 22 +398 117 507 564 610 292 13 +643 1023 84 297 266 192 21 +283 78 429 0 659 565 1 +726 1008 126 204 275 235 25 +435 124 538 306 619 434 8 +338 187 0 179 0 569 1 +628 946 129 162 277 111 21 +673 979 115 198 310 270 25 +399 118 534 291 607 503 8 +400 87 521 271 314 442 8 +730 942 133 271 261 273 25 +372 108 529 145 542 443 1 +403 116 522 99 649 475 1 +380 222 123 101 246 571 1 +740 526 361 179 205 257 22 +686 1023 245 304 295 237 25 +679 1023 102 286 260 126 21 +394 129 0 346 670 391 7 +333 145 89 200 202 518 1 +679 1023 185 318 271 112 21 +400 90 538 85 623 540 1 +1023 1023 300 361 344 393 26 +713 1023 164 315 321 251 25 +519 253 320 258 277 274 22 +690 1023 188 259 281 319 25 +659 1023 85 215 224 262 21 +411 132 137 203 595 316 7 +370 118 522 336 631 339 13 +267 150 0 121 0 454 1 +536 1023 348 489 368 519 23 +394 146 550 36 645 481 1 +372 1023 364 554 533 420 23 +390 148 170 155 523 626 11 +383 133 552 258 689 604 8 +371 116 527 27 619 478 1 +406 81 526 295 566 423 8 +528 413 240 482 554 769 9 +417 125 96 147 627 615 11 +348 110 522 216 674 483 8 +687 526 338 171 309 238 22 +677 1023 172 283 244 219 25 +381 134 554 23 642 552 1 +419 258 37 317 686 360 7 +349 125 519 0 644 561 1 +400 184 38 130 629 627 11 +391 208 523 262 610 274 13 +503 886 204 207 223 292 21 +421 205 67 383 703 367 7 +357 122 506 334 632 516 8 +699 1023 193 308 266 232 25 +332 90 450 579 621 424 13 +365 188 45 0 662 387 6 +406 106 34 110 608 583 11 +382 205 81 60 96 551 1 +360 122 512 0 644 497 1 +649 276 359 0 173 231 22 +416 134 529 500 603 324 13 +632 1023 213 221 213 161 21 +375 88 529 151 658 577 1 +455 128 552 465 649 273 13 +402 138 121 220 598 604 11 +815 1023 156 324 318 319 25 +295 88 456 499 585 532 8 +393 574 0 246 142 193 12 +621 1023 255 288 314 215 25 +342 86 490 181 619 421 8 +343 117 531 75 652 563 1 +347 105 504 0 666 469 1 +615 1023 137 274 257 254 21 +319 66 450 512 645 420 13 +413 130 125 0 627 569 11 +384 92 499 0 597 439 1 +813 1023 137 296 245 160 25 +733 1023 160 304 298 220 25 +807 1023 147 220 228 278 25 +461 123 177 94 616 587 11 +339 56 470 78 645 471 1 +366 101 514 192 662 465 8 +597 1023 181 255 302 206 21 +429 174 63 78 579 625 11 +426 211 147 172 594 652 11 +679 944 79 237 266 189 21 +436 112 104 0 586 462 11 +353 123 507 160 524 485 1 +362 388 167 213 479 248 7 +800 1023 217 275 301 321 25 +357 102 534 162 623 496 1 +690 988 172 232 210 256 25 +416 191 156 207 641 402 7 +401 98 549 28 616 547 1 +350 106 521 214 622 519 8 +409 129 508 488 673 397 13 +435 219 50 220 138 588 1 +631 1023 174 41 249 248 21 +393 153 564 140 688 569 1 +663 1023 112 241 241 204 21 +438 123 559 6 663 520 1 +396 123 537 225 645 565 8 +774 1023 192 275 283 206 25 +332 204 96 73 629 278 6 +405 129 523 228 671 468 8 +908 1023 475 698 479 461 19 +411 120 551 90 688 572 1 +391 86 528 356 652 478 8 +706 788 94 258 220 146 21 +348 84 519 147 651 493 1 +405 238 133 192 144 598 1 +744 1023 166 261 271 241 25 +433 219 560 471 519 256 13 +657 1023 145 236 223 231 21 +373 170 188 201 666 675 11 +415 808 333 406 378 476 23 +377 141 557 353 677 460 8 +382 170 534 251 637 621 8 +355 236 170 358 514 464 7 +385 248 346 193 231 294 18 +419 119 563 328 675 472 8 +376 255 140 214 20 637 1 +613 1023 117 174 120 250 21 +709 635 405 212 277 310 22 +431 188 559 586 545 324 13 +367 110 54 103 586 579 11 +994 1023 391 321 351 336 26 +364 84 534 142 679 526 1 +402 110 515 385 623 356 13 +409 146 542 0 669 444 1 +727 1023 192 308 272 271 25 +499 798 183 250 246 293 21 +278 103 487 166 655 559 8 +412 110 562 296 655 522 8 +383 133 117 72 529 540 11 +346 119 215 167 589 524 11 +420 106 522 205 625 496 8 +409 157 133 165 580 290 6 +348 72 135 234 0 438 1 +646 1004 126 186 267 257 21 +779 499 428 213 203 150 24 +688 565 462 265 194 246 22 +432 176 509 374 569 244 13 +325 153 0 181 601 322 6 +709 1023 202 234 189 172 25 +331 67 492 0 599 521 1 +364 157 67 146 649 337 6 +722 1023 192 264 258 228 25 +654 1023 168 213 196 128 21 +690 1023 226 222 281 293 25 +769 1023 205 298 223 263 25 +276 119 0 256 95 505 1 +328 134 536 362 640 385 13 +414 182 98 210 612 521 11 +409 84 100 245 569 344 7 +357 111 505 163 667 507 8 +769 975 168 278 224 134 25 +522 1023 83 236 232 261 21 +730 1023 189 234 294 255 25 +371 188 125 89 623 306 6 +391 139 522 437 622 266 13 +424 261 153 440 742 731 9 +412 132 90 0 595 541 11 +612 554 374 266 210 323 22 +381 132 108 0 639 646 11 +360 126 530 71 641 501 1 +579 974 68 194 251 225 21 +807 1023 182 286 279 309 25 +826 1023 185 260 252 183 25 +374 93 547 240 657 514 8 +395 106 500 246 566 287 13 +732 1023 201 297 307 229 25 +397 134 542 95 687 598 1 +333 97 498 178 590 385 8 +459 243 95 327 678 466 7 +397 174 25 20 654 616 11 +723 1023 203 75 266 302 25 +507 158 526 485 550 190 13 +600 569 381 264 249 280 22 +410 120 64 97 583 602 11 +343 103 526 140 685 482 1 +362 99 511 191 571 558 8 +546 1023 181 286 234 244 21 +379 82 521 246 653 501 8 +439 165 551 463 703 352 13 +298 125 0 260 186 485 1 +693 1023 165 268 310 188 25