http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/batch/gen-hive-data.sh ---------------------------------------------------------------------- diff --git a/data/batch/gen-hive-data.sh b/data/batch/gen-hive-data.sh new file mode 100755 index 0000000..6496eac --- /dev/null +++ b/data/batch/gen-hive-data.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +#create table +hive -f create-table.hql +echo "create table done" + +#current hour +./gen_demo_data.sh +cur_date=`date +%Y%m%d%H` +dt=${cur_date:0:8} +hour=${cur_date:8:2} +partition_date="dt='$dt',hour='$hour'" +sed s/PARTITION_DATE/$partition_date/ ./insert-data.hql.template > insert-data.hql +hive -f insert-data.hql +src_done_path=/griffin/data/batch/demo_src/dt=${dt}/hour=${hour}/_DONE +tgt_done_path=/griffin/data/batch/demo_tgt/dt=${dt}/hour=${hour}/_DONE +hadoop fs -touchz ${src_done_path} +hadoop fs -touchz ${tgt_done_path} +echo "insert data [$partition_date] done" + +#last hour +./gen_demo_data.sh +cur_date=`date -d '1 hour ago' +%Y%m%d%H` +dt=${cur_date:0:8} +hour=${cur_date:8:2} +partition_date="dt='$dt',hour='$hour'" +sed s/PARTITION_DATE/$partition_date/ ./insert-data.hql.template > insert-data.hql +hive -f insert-data.hql +src_done_path=/griffin/data/batch/demo_src/dt=${dt}/hour=${hour}/_DONE +tgt_done_path=/griffin/data/batch/demo_tgt/dt=${dt}/hour=${hour}/_DONE +hadoop fs -touchz ${src_done_path} +hadoop fs -touchz ${tgt_done_path} +echo "insert data [$partition_date] done" + +#next hours +set +e +while true +do + ./gen_demo_data.sh + cur_date=`date +%Y%m%d%H` + next_date=`date -d "+1hour" '+%Y%m%d%H'` + dt=${next_date:0:8} + hour=${next_date:8:2} + partition_date="dt='$dt',hour='$hour'" + sed s/PARTITION_DATE/$partition_date/ ./insert-data.hql.template > insert-data.hql + hive -f insert-data.hql + src_done_path=/griffin/data/batch/demo_src/dt=${dt}/hour=${hour}/_DONE + tgt_done_path=/griffin/data/batch/demo_tgt/dt=${dt}/hour=${hour}/_DONE + hadoop fs -touchz ${src_done_path} + hadoop fs -touchz ${tgt_done_path} + echo "insert data [$partition_date] done" + sleep 3600 +done +set -e
http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/batch/gen_delta_src.sh ---------------------------------------------------------------------- diff --git a/data/batch/gen_delta_src.sh b/data/batch/gen_delta_src.sh new file mode 100755 index 0000000..aeda259 --- /dev/null +++ b/data/batch/gen_delta_src.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +file=delta_src +id=124 + +rm ${file} + +for i in {1..1000} +do + idx=`shuf -i1-2000 -n1` + echo "${id}|${idx}|${idx}" >> ${file} +done + http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/batch/gen_demo_data.sh ---------------------------------------------------------------------- diff --git a/data/batch/gen_demo_data.sh b/data/batch/gen_demo_data.sh new file mode 100755 index 0000000..d85f306 --- /dev/null +++ b/data/batch/gen_demo_data.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +./gen_delta_src.sh + +src=demo_src +tgt=demo_tgt + +rm ${src} +cat demo_basic >> ${src} +cat delta_src >> ${src} + +rm ${tgt} +cat demo_basic >> ${tgt} +cat delta_tgt >> ${tgt} http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/batch/insert-data.hql.template ---------------------------------------------------------------------- diff --git a/data/batch/insert-data.hql.template b/data/batch/insert-data.hql.template new file mode 100644 index 0000000..4e4039a --- /dev/null +++ b/data/batch/insert-data.hql.template @@ -0,0 +1,2 @@ +LOAD DATA LOCAL INPATH 'demo_src' INTO TABLE demo_src PARTITION (PARTITION_DATE); +LOAD DATA LOCAL INPATH 'demo_tgt' INTO TABLE demo_tgt PARTITION (PARTITION_DATE); http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/create-table.hql ---------------------------------------------------------------------- diff --git a/data/create-table.hql b/data/create-table.hql deleted file mode 100644 index b3827aa..0000000 --- a/data/create-table.hql +++ /dev/null @@ -1,24 +0,0 @@ -CREATE EXTERNAL TABLE `demo_src`( - `id` bigint, - `age` int, - `desc` string) -PARTITIONED BY ( - `dt` string, - `hour` string) -ROW FORMAT DELIMITED - FIELDS TERMINATED BY '|' -LOCATION - 'hdfs:///griffin/data/batch/demo_src'; - -CREATE EXTERNAL TABLE `demo_tgt`( - `id` bigint, - `age` int, - `desc` string) -PARTITIONED BY ( - `dt` string, - `hour` string) -ROW FORMAT DELIMITED - FIELDS TERMINATED BY '|' -LOCATION - 'hdfs:///griffin/data/batch/demo_tgt'; - http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/delta_src ---------------------------------------------------------------------- diff --git a/data/delta_src b/data/delta_src deleted file mode 100644 index 2f90990..0000000 --- a/data/delta_src +++ /dev/null @@ -1,1000 +0,0 @@ -124|1|1 -124|2|2 -124|3|3 -124|4|4 -124|5|5 -124|6|6 -124|7|7 -124|8|8 -124|9|9 -124|10|10 -124|11|11 -124|12|12 -124|13|13 -124|14|14 -124|15|15 -124|16|16 -124|17|17 -124|18|18 -124|19|19 -124|20|20 -124|21|21 -124|22|22 -124|23|23 -124|24|24 -124|25|25 -124|26|26 -124|27|27 -124|28|28 -124|29|29 -124|30|30 -124|31|31 -124|32|32 -124|33|33 -124|34|34 -124|35|35 -124|36|36 -124|37|37 -124|38|38 -124|39|39 -124|40|40 -124|41|41 -124|42|42 -124|43|43 -124|44|44 -124|45|45 -124|46|46 -124|47|47 -124|48|48 -124|49|49 -124|50|50 -124|51|51 -124|52|52 -124|53|53 -124|54|54 -124|55|55 -124|56|56 -124|57|57 -124|58|58 -124|59|59 -124|60|60 -124|61|61 -124|62|62 -124|63|63 -124|64|64 -124|65|65 -124|66|66 -124|67|67 -124|68|68 -124|69|69 -124|70|70 -124|71|71 -124|72|72 -124|73|73 -124|74|74 -124|75|75 -124|76|76 -124|77|77 -124|78|78 -124|79|79 -124|80|80 -124|81|81 -124|82|82 -124|83|83 -124|84|84 -124|85|85 -124|86|86 -124|87|87 -124|88|88 -124|89|89 -124|90|90 -124|91|91 -124|92|92 -124|93|93 -124|94|94 -124|95|95 -124|96|96 -124|97|97 -124|98|98 -124|99|99 -124|100|100 -124|101|101 -124|102|102 -124|103|103 -124|104|104 -124|105|105 -124|106|106 -124|107|107 -124|108|108 -124|109|109 -124|110|110 -124|111|111 -124|112|112 -124|113|113 -124|114|114 -124|115|115 -124|116|116 -124|117|117 -124|118|118 -124|119|119 -124|120|120 -124|121|121 -124|122|122 -124|123|123 -124|124|124 -124|125|125 -124|126|126 -124|127|127 -124|128|128 -124|129|129 -124|130|130 -124|131|131 -124|132|132 -124|133|133 -124|134|134 -124|135|135 -124|136|136 -124|137|137 -124|138|138 -124|139|139 -124|140|140 -124|141|141 -124|142|142 -124|143|143 -124|144|144 -124|145|145 -124|146|146 -124|147|147 -124|148|148 -124|149|149 -124|150|150 -124|151|151 -124|152|152 -124|153|153 -124|154|154 -124|155|155 -124|156|156 -124|157|157 -124|158|158 -124|159|159 -124|160|160 -124|161|161 -124|162|162 -124|163|163 -124|164|164 -124|165|165 -124|166|166 -124|167|167 -124|168|168 -124|169|169 -124|170|170 -124|171|171 -124|172|172 -124|173|173 -124|174|174 -124|175|175 -124|176|176 -124|177|177 -124|178|178 -124|179|179 -124|180|180 -124|181|181 -124|182|182 -124|183|183 -124|184|184 -124|185|185 -124|186|186 -124|187|187 -124|188|188 -124|189|189 -124|190|190 -124|191|191 -124|192|192 -124|193|193 -124|194|194 -124|195|195 -124|196|196 -124|197|197 -124|198|198 -124|199|199 -124|200|200 -124|201|201 -124|202|202 -124|203|203 -124|204|204 -124|205|205 -124|206|206 -124|207|207 -124|208|208 -124|209|209 -124|210|210 -124|211|211 -124|212|212 -124|213|213 -124|214|214 -124|215|215 -124|216|216 -124|217|217 -124|218|218 -124|219|219 -124|220|220 -124|221|221 -124|222|222 -124|223|223 -124|224|224 -124|225|225 -124|226|226 -124|227|227 -124|228|228 -124|229|229 -124|230|230 -124|231|231 -124|232|232 -124|233|233 -124|234|234 -124|235|235 -124|236|236 -124|237|237 -124|238|238 -124|239|239 -124|240|240 -124|241|241 -124|242|242 -124|243|243 -124|244|244 -124|245|245 -124|246|246 -124|247|247 -124|248|248 -124|249|249 -124|250|250 -124|251|251 -124|252|252 -124|253|253 -124|254|254 -124|255|255 -124|256|256 -124|257|257 -124|258|258 -124|259|259 -124|260|260 -124|261|261 -124|262|262 -124|263|263 -124|264|264 -124|265|265 -124|266|266 -124|267|267 -124|268|268 -124|269|269 -124|270|270 -124|271|271 -124|272|272 -124|273|273 -124|274|274 -124|275|275 -124|276|276 -124|277|277 -124|278|278 -124|279|279 -124|280|280 -124|281|281 -124|282|282 -124|283|283 -124|284|284 -124|285|285 -124|286|286 -124|287|287 -124|288|288 -124|289|289 -124|290|290 -124|291|291 -124|292|292 -124|293|293 -124|294|294 -124|295|295 -124|296|296 -124|297|297 -124|298|298 -124|299|299 -124|300|300 -124|301|301 -124|302|302 -124|303|303 -124|304|304 -124|305|305 -124|306|306 -124|307|307 -124|308|308 -124|309|309 -124|310|310 -124|311|311 -124|312|312 -124|313|313 -124|314|314 -124|315|315 -124|316|316 -124|317|317 -124|318|318 -124|319|319 -124|320|320 -124|321|321 -124|322|322 -124|323|323 -124|324|324 -124|325|325 -124|326|326 -124|327|327 -124|328|328 -124|329|329 -124|330|330 -124|331|331 -124|332|332 -124|333|333 -124|334|334 -124|335|335 -124|336|336 -124|337|337 -124|338|338 -124|339|339 -124|340|340 -124|341|341 -124|342|342 -124|343|343 -124|344|344 -124|345|345 -124|346|346 -124|347|347 -124|348|348 -124|349|349 -124|350|350 -124|351|351 -124|352|352 -124|353|353 -124|354|354 -124|355|355 -124|356|356 -124|357|357 -124|358|358 -124|359|359 -124|360|360 -124|361|361 -124|362|362 -124|363|363 -124|364|364 -124|365|365 -124|366|366 -124|367|367 -124|368|368 -124|369|369 -124|370|370 -124|371|371 -124|372|372 -124|373|373 -124|374|374 -124|375|375 -124|376|376 -124|377|377 -124|378|378 -124|379|379 -124|380|380 -124|381|381 -124|382|382 -124|383|383 -124|384|384 -124|385|385 -124|386|386 -124|387|387 -124|388|388 -124|389|389 -124|390|390 -124|391|391 -124|392|392 -124|393|393 -124|394|394 -124|395|395 -124|396|396 -124|397|397 -124|398|398 -124|399|399 -124|400|400 -124|401|401 -124|402|402 -124|403|403 -124|404|404 -124|405|405 -124|406|406 -124|407|407 -124|408|408 -124|409|409 -124|410|410 -124|411|411 -124|412|412 -124|413|413 -124|414|414 -124|415|415 -124|416|416 -124|417|417 -124|418|418 -124|419|419 -124|420|420 -124|421|421 -124|422|422 -124|423|423 -124|424|424 -124|425|425 -124|426|426 -124|427|427 -124|428|428 -124|429|429 -124|430|430 -124|431|431 -124|432|432 -124|433|433 -124|434|434 -124|435|435 -124|436|436 -124|437|437 -124|438|438 -124|439|439 -124|440|440 -124|441|441 -124|442|442 -124|443|443 -124|444|444 -124|445|445 -124|446|446 -124|447|447 -124|448|448 -124|449|449 -124|450|450 -124|451|451 -124|452|452 -124|453|453 -124|454|454 -124|455|455 -124|456|456 -124|457|457 -124|458|458 -124|459|459 -124|460|460 -124|461|461 -124|462|462 -124|463|463 -124|464|464 -124|465|465 -124|466|466 -124|467|467 -124|468|468 -124|469|469 -124|470|470 -124|471|471 -124|472|472 -124|473|473 -124|474|474 -124|475|475 -124|476|476 -124|477|477 -124|478|478 -124|479|479 -124|480|480 -124|481|481 -124|482|482 -124|483|483 -124|484|484 -124|485|485 -124|486|486 -124|487|487 -124|488|488 -124|489|489 -124|490|490 -124|491|491 -124|492|492 -124|493|493 -124|494|494 -124|495|495 -124|496|496 -124|497|497 -124|498|498 -124|499|499 -124|500|500 -124|501|501 -124|502|502 -124|503|503 -124|504|504 -124|505|505 -124|506|506 -124|507|507 -124|508|508 -124|509|509 -124|510|510 -124|511|511 -124|512|512 -124|513|513 -124|514|514 -124|515|515 -124|516|516 -124|517|517 -124|518|518 -124|519|519 -124|520|520 -124|521|521 -124|522|522 -124|523|523 -124|524|524 -124|525|525 -124|526|526 -124|527|527 -124|528|528 -124|529|529 -124|530|530 -124|531|531 -124|532|532 -124|533|533 -124|534|534 -124|535|535 -124|536|536 -124|537|537 -124|538|538 -124|539|539 -124|540|540 -124|541|541 -124|542|542 -124|543|543 -124|544|544 -124|545|545 -124|546|546 -124|547|547 -124|548|548 -124|549|549 -124|550|550 -124|551|551 -124|552|552 -124|553|553 -124|554|554 -124|555|555 -124|556|556 -124|557|557 -124|558|558 -124|559|559 -124|560|560 -124|561|561 -124|562|562 -124|563|563 -124|564|564 -124|565|565 -124|566|566 -124|567|567 -124|568|568 -124|569|569 -124|570|570 -124|571|571 -124|572|572 -124|573|573 -124|574|574 -124|575|575 -124|576|576 -124|577|577 -124|578|578 -124|579|579 -124|580|580 -124|581|581 -124|582|582 -124|583|583 -124|584|584 -124|585|585 -124|586|586 -124|587|587 -124|588|588 -124|589|589 -124|590|590 -124|591|591 -124|592|592 -124|593|593 -124|594|594 -124|595|595 -124|596|596 -124|597|597 -124|598|598 -124|599|599 -124|600|600 -124|601|601 -124|602|602 -124|603|603 -124|604|604 -124|605|605 -124|606|606 -124|607|607 -124|608|608 -124|609|609 -124|610|610 -124|611|611 -124|612|612 -124|613|613 -124|614|614 -124|615|615 -124|616|616 -124|617|617 -124|618|618 -124|619|619 -124|620|620 -124|621|621 -124|622|622 -124|623|623 -124|624|624 -124|625|625 -124|626|626 -124|627|627 -124|628|628 -124|629|629 -124|630|630 -124|631|631 -124|632|632 -124|633|633 -124|634|634 -124|635|635 -124|636|636 -124|637|637 -124|638|638 -124|639|639 -124|640|640 -124|641|641 -124|642|642 -124|643|643 -124|644|644 -124|645|645 -124|646|646 -124|647|647 -124|648|648 -124|649|649 -124|650|650 -124|651|651 -124|652|652 -124|653|653 -124|654|654 -124|655|655 -124|656|656 -124|657|657 -124|658|658 -124|659|659 -124|660|660 -124|661|661 -124|662|662 -124|663|663 -124|664|664 -124|665|665 -124|666|666 -124|667|667 -124|668|668 -124|669|669 -124|670|670 -124|671|671 -124|672|672 -124|673|673 -124|674|674 -124|675|675 -124|676|676 -124|677|677 -124|678|678 -124|679|679 -124|680|680 -124|681|681 -124|682|682 -124|683|683 -124|684|684 -124|685|685 -124|686|686 -124|687|687 -124|688|688 -124|689|689 -124|690|690 -124|691|691 -124|692|692 -124|693|693 -124|694|694 -124|695|695 -124|696|696 -124|697|697 -124|698|698 -124|699|699 -124|700|700 -124|701|701 -124|702|702 -124|703|703 -124|704|704 -124|705|705 -124|706|706 -124|707|707 -124|708|708 -124|709|709 -124|710|710 -124|711|711 -124|712|712 -124|713|713 -124|714|714 -124|715|715 -124|716|716 -124|717|717 -124|718|718 -124|719|719 -124|720|720 -124|721|721 -124|722|722 -124|723|723 -124|724|724 -124|725|725 -124|726|726 -124|727|727 -124|728|728 -124|729|729 -124|730|730 -124|731|731 -124|732|732 -124|733|733 -124|734|734 -124|735|735 -124|736|736 -124|737|737 -124|738|738 -124|739|739 -124|740|740 -124|741|741 -124|742|742 -124|743|743 -124|744|744 -124|745|745 -124|746|746 -124|747|747 -124|748|748 -124|749|749 -124|750|750 -124|751|751 -124|752|752 -124|753|753 -124|754|754 -124|755|755 -124|756|756 -124|757|757 -124|758|758 -124|759|759 -124|760|760 -124|761|761 -124|762|762 -124|763|763 -124|764|764 -124|765|765 -124|766|766 -124|767|767 -124|768|768 -124|769|769 -124|770|770 -124|771|771 -124|772|772 -124|773|773 -124|774|774 -124|775|775 -124|776|776 -124|777|777 -124|778|778 -124|779|779 -124|780|780 -124|781|781 -124|782|782 -124|783|783 -124|784|784 -124|785|785 -124|786|786 -124|787|787 -124|788|788 -124|789|789 -124|790|790 -124|791|791 -124|792|792 -124|793|793 -124|794|794 -124|795|795 -124|796|796 -124|797|797 -124|798|798 -124|799|799 -124|800|800 -124|801|801 -124|802|802 -124|803|803 -124|804|804 -124|805|805 -124|806|806 -124|807|807 -124|808|808 -124|809|809 -124|810|810 -124|811|811 -124|812|812 -124|813|813 -124|814|814 -124|815|815 -124|816|816 -124|817|817 -124|818|818 -124|819|819 -124|820|820 -124|821|821 -124|822|822 -124|823|823 -124|824|824 -124|825|825 -124|826|826 -124|827|827 -124|828|828 -124|829|829 -124|830|830 -124|831|831 -124|832|832 -124|833|833 -124|834|834 -124|835|835 -124|836|836 -124|837|837 -124|838|838 -124|839|839 -124|840|840 -124|841|841 -124|842|842 -124|843|843 -124|844|844 -124|845|845 -124|846|846 -124|847|847 -124|848|848 -124|849|849 -124|850|850 -124|851|851 -124|852|852 -124|853|853 -124|854|854 -124|855|855 -124|856|856 -124|857|857 -124|858|858 -124|859|859 -124|860|860 -124|861|861 -124|862|862 -124|863|863 -124|864|864 -124|865|865 -124|866|866 -124|867|867 -124|868|868 -124|869|869 -124|870|870 -124|871|871 -124|872|872 -124|873|873 -124|874|874 -124|875|875 -124|876|876 -124|877|877 -124|878|878 -124|879|879 -124|880|880 -124|881|881 -124|882|882 -124|883|883 -124|884|884 -124|885|885 -124|886|886 -124|887|887 -124|888|888 -124|889|889 -124|890|890 -124|891|891 -124|892|892 -124|893|893 -124|894|894 -124|895|895 -124|896|896 -124|897|897 -124|898|898 -124|899|899 -124|900|900 -124|901|901 -124|902|902 -124|903|903 -124|904|904 -124|905|905 -124|906|906 -124|907|907 -124|908|908 -124|909|909 -124|910|910 -124|911|911 -124|912|912 -124|913|913 -124|914|914 -124|915|915 -124|916|916 -124|917|917 -124|918|918 -124|919|919 -124|920|920 -124|921|921 -124|922|922 -124|923|923 -124|924|924 -124|925|925 -124|926|926 -124|927|927 -124|928|928 -124|929|929 -124|930|930 -124|931|931 -124|932|932 -124|933|933 -124|934|934 -124|935|935 -124|936|936 -124|937|937 -124|938|938 -124|939|939 -124|940|940 -124|941|941 -124|942|942 -124|943|943 -124|944|944 -124|945|945 -124|946|946 -124|947|947 -124|948|948 -124|949|949 -124|950|950 -124|951|951 -124|952|952 -124|953|953 -124|954|954 -124|955|955 -124|956|956 -124|957|957 -124|958|958 -124|959|959 -124|960|960 -124|961|961 -124|962|962 -124|963|963 -124|964|964 -124|965|965 -124|966|966 -124|967|967 -124|968|968 -124|969|969 -124|970|970 -124|971|971 -124|972|972 -124|973|973 -124|974|974 -124|975|975 -124|976|976 -124|977|977 -124|978|978 -124|979|979 -124|980|980 -124|981|981 -124|982|982 -124|983|983 -124|984|984 -124|985|985 -124|986|986 -124|987|987 -124|988|988 -124|989|989 -124|990|990 -124|991|991 -124|992|992 -124|993|993 -124|994|994 -124|995|995 -124|996|996 -124|997|997 -124|998|998 -124|999|999 -124|1000|1000 \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-griffin-site/blob/0d4135a5/data/delta_tgt ---------------------------------------------------------------------- diff --git a/data/delta_tgt b/data/delta_tgt deleted file mode 100644 index 2f90990..0000000 --- a/data/delta_tgt +++ /dev/null @@ -1,1000 +0,0 @@ -124|1|1 -124|2|2 -124|3|3 -124|4|4 -124|5|5 -124|6|6 -124|7|7 -124|8|8 -124|9|9 -124|10|10 -124|11|11 -124|12|12 -124|13|13 -124|14|14 -124|15|15 -124|16|16 -124|17|17 -124|18|18 -124|19|19 -124|20|20 -124|21|21 -124|22|22 -124|23|23 -124|24|24 -124|25|25 -124|26|26 -124|27|27 -124|28|28 -124|29|29 -124|30|30 -124|31|31 -124|32|32 -124|33|33 -124|34|34 -124|35|35 -124|36|36 -124|37|37 -124|38|38 -124|39|39 -124|40|40 -124|41|41 -124|42|42 -124|43|43 -124|44|44 -124|45|45 -124|46|46 -124|47|47 -124|48|48 -124|49|49 -124|50|50 -124|51|51 -124|52|52 -124|53|53 -124|54|54 -124|55|55 -124|56|56 -124|57|57 -124|58|58 -124|59|59 -124|60|60 -124|61|61 -124|62|62 -124|63|63 -124|64|64 -124|65|65 -124|66|66 -124|67|67 -124|68|68 -124|69|69 -124|70|70 -124|71|71 -124|72|72 -124|73|73 -124|74|74 -124|75|75 -124|76|76 -124|77|77 -124|78|78 -124|79|79 -124|80|80 -124|81|81 -124|82|82 -124|83|83 -124|84|84 -124|85|85 -124|86|86 -124|87|87 -124|88|88 -124|89|89 -124|90|90 -124|91|91 -124|92|92 -124|93|93 -124|94|94 -124|95|95 -124|96|96 -124|97|97 -124|98|98 -124|99|99 -124|100|100 -124|101|101 -124|102|102 -124|103|103 -124|104|104 -124|105|105 -124|106|106 -124|107|107 -124|108|108 -124|109|109 -124|110|110 -124|111|111 -124|112|112 -124|113|113 -124|114|114 -124|115|115 -124|116|116 -124|117|117 -124|118|118 -124|119|119 -124|120|120 -124|121|121 -124|122|122 -124|123|123 -124|124|124 -124|125|125 -124|126|126 -124|127|127 -124|128|128 -124|129|129 -124|130|130 -124|131|131 -124|132|132 -124|133|133 -124|134|134 -124|135|135 -124|136|136 -124|137|137 -124|138|138 -124|139|139 -124|140|140 -124|141|141 -124|142|142 -124|143|143 -124|144|144 -124|145|145 -124|146|146 -124|147|147 -124|148|148 -124|149|149 -124|150|150 -124|151|151 -124|152|152 -124|153|153 -124|154|154 -124|155|155 -124|156|156 -124|157|157 -124|158|158 -124|159|159 -124|160|160 -124|161|161 -124|162|162 -124|163|163 -124|164|164 -124|165|165 -124|166|166 -124|167|167 -124|168|168 -124|169|169 -124|170|170 -124|171|171 -124|172|172 -124|173|173 -124|174|174 -124|175|175 -124|176|176 -124|177|177 -124|178|178 -124|179|179 -124|180|180 -124|181|181 -124|182|182 -124|183|183 -124|184|184 -124|185|185 -124|186|186 -124|187|187 -124|188|188 -124|189|189 -124|190|190 -124|191|191 -124|192|192 -124|193|193 -124|194|194 -124|195|195 -124|196|196 -124|197|197 -124|198|198 -124|199|199 -124|200|200 -124|201|201 -124|202|202 -124|203|203 -124|204|204 -124|205|205 -124|206|206 -124|207|207 -124|208|208 -124|209|209 -124|210|210 -124|211|211 -124|212|212 -124|213|213 -124|214|214 -124|215|215 -124|216|216 -124|217|217 -124|218|218 -124|219|219 -124|220|220 -124|221|221 -124|222|222 -124|223|223 -124|224|224 -124|225|225 -124|226|226 -124|227|227 -124|228|228 -124|229|229 -124|230|230 -124|231|231 -124|232|232 -124|233|233 -124|234|234 -124|235|235 -124|236|236 -124|237|237 -124|238|238 -124|239|239 -124|240|240 -124|241|241 -124|242|242 -124|243|243 -124|244|244 -124|245|245 -124|246|246 -124|247|247 -124|248|248 -124|249|249 -124|250|250 -124|251|251 -124|252|252 -124|253|253 -124|254|254 -124|255|255 -124|256|256 -124|257|257 -124|258|258 -124|259|259 -124|260|260 -124|261|261 -124|262|262 -124|263|263 -124|264|264 -124|265|265 -124|266|266 -124|267|267 -124|268|268 -124|269|269 -124|270|270 -124|271|271 -124|272|272 -124|273|273 -124|274|274 -124|275|275 -124|276|276 -124|277|277 -124|278|278 -124|279|279 -124|280|280 -124|281|281 -124|282|282 -124|283|283 -124|284|284 -124|285|285 -124|286|286 -124|287|287 -124|288|288 -124|289|289 -124|290|290 -124|291|291 -124|292|292 -124|293|293 -124|294|294 -124|295|295 -124|296|296 -124|297|297 -124|298|298 -124|299|299 -124|300|300 -124|301|301 -124|302|302 -124|303|303 -124|304|304 -124|305|305 -124|306|306 -124|307|307 -124|308|308 -124|309|309 -124|310|310 -124|311|311 -124|312|312 -124|313|313 -124|314|314 -124|315|315 -124|316|316 -124|317|317 -124|318|318 -124|319|319 -124|320|320 -124|321|321 -124|322|322 -124|323|323 -124|324|324 -124|325|325 -124|326|326 -124|327|327 -124|328|328 -124|329|329 -124|330|330 -124|331|331 -124|332|332 -124|333|333 -124|334|334 -124|335|335 -124|336|336 -124|337|337 -124|338|338 -124|339|339 -124|340|340 -124|341|341 -124|342|342 -124|343|343 -124|344|344 -124|345|345 -124|346|346 -124|347|347 -124|348|348 -124|349|349 -124|350|350 -124|351|351 -124|352|352 -124|353|353 -124|354|354 -124|355|355 -124|356|356 -124|357|357 -124|358|358 -124|359|359 -124|360|360 -124|361|361 -124|362|362 -124|363|363 -124|364|364 -124|365|365 -124|366|366 -124|367|367 -124|368|368 -124|369|369 -124|370|370 -124|371|371 -124|372|372 -124|373|373 -124|374|374 -124|375|375 -124|376|376 -124|377|377 -124|378|378 -124|379|379 -124|380|380 -124|381|381 -124|382|382 -124|383|383 -124|384|384 -124|385|385 -124|386|386 -124|387|387 -124|388|388 -124|389|389 -124|390|390 -124|391|391 -124|392|392 -124|393|393 -124|394|394 -124|395|395 -124|396|396 -124|397|397 -124|398|398 -124|399|399 -124|400|400 -124|401|401 -124|402|402 -124|403|403 -124|404|404 -124|405|405 -124|406|406 -124|407|407 -124|408|408 -124|409|409 -124|410|410 -124|411|411 -124|412|412 -124|413|413 -124|414|414 -124|415|415 -124|416|416 -124|417|417 -124|418|418 -124|419|419 -124|420|420 -124|421|421 -124|422|422 -124|423|423 -124|424|424 -124|425|425 -124|426|426 -124|427|427 -124|428|428 -124|429|429 -124|430|430 -124|431|431 -124|432|432 -124|433|433 -124|434|434 -124|435|435 -124|436|436 -124|437|437 -124|438|438 -124|439|439 -124|440|440 -124|441|441 -124|442|442 -124|443|443 -124|444|444 -124|445|445 -124|446|446 -124|447|447 -124|448|448 -124|449|449 -124|450|450 -124|451|451 -124|452|452 -124|453|453 -124|454|454 -124|455|455 -124|456|456 -124|457|457 -124|458|458 -124|459|459 -124|460|460 -124|461|461 -124|462|462 -124|463|463 -124|464|464 -124|465|465 -124|466|466 -124|467|467 -124|468|468 -124|469|469 -124|470|470 -124|471|471 -124|472|472 -124|473|473 -124|474|474 -124|475|475 -124|476|476 -124|477|477 -124|478|478 -124|479|479 -124|480|480 -124|481|481 -124|482|482 -124|483|483 -124|484|484 -124|485|485 -124|486|486 -124|487|487 -124|488|488 -124|489|489 -124|490|490 -124|491|491 -124|492|492 -124|493|493 -124|494|494 -124|495|495 -124|496|496 -124|497|497 -124|498|498 -124|499|499 -124|500|500 -124|501|501 -124|502|502 -124|503|503 -124|504|504 -124|505|505 -124|506|506 -124|507|507 -124|508|508 -124|509|509 -124|510|510 -124|511|511 -124|512|512 -124|513|513 -124|514|514 -124|515|515 -124|516|516 -124|517|517 -124|518|518 -124|519|519 -124|520|520 -124|521|521 -124|522|522 -124|523|523 -124|524|524 -124|525|525 -124|526|526 -124|527|527 -124|528|528 -124|529|529 -124|530|530 -124|531|531 -124|532|532 -124|533|533 -124|534|534 -124|535|535 -124|536|536 -124|537|537 -124|538|538 -124|539|539 -124|540|540 -124|541|541 -124|542|542 -124|543|543 -124|544|544 -124|545|545 -124|546|546 -124|547|547 -124|548|548 -124|549|549 -124|550|550 -124|551|551 -124|552|552 -124|553|553 -124|554|554 -124|555|555 -124|556|556 -124|557|557 -124|558|558 -124|559|559 -124|560|560 -124|561|561 -124|562|562 -124|563|563 -124|564|564 -124|565|565 -124|566|566 -124|567|567 -124|568|568 -124|569|569 -124|570|570 -124|571|571 -124|572|572 -124|573|573 -124|574|574 -124|575|575 -124|576|576 -124|577|577 -124|578|578 -124|579|579 -124|580|580 -124|581|581 -124|582|582 -124|583|583 -124|584|584 -124|585|585 -124|586|586 -124|587|587 -124|588|588 -124|589|589 -124|590|590 -124|591|591 -124|592|592 -124|593|593 -124|594|594 -124|595|595 -124|596|596 -124|597|597 -124|598|598 -124|599|599 -124|600|600 -124|601|601 -124|602|602 -124|603|603 -124|604|604 -124|605|605 -124|606|606 -124|607|607 -124|608|608 -124|609|609 -124|610|610 -124|611|611 -124|612|612 -124|613|613 -124|614|614 -124|615|615 -124|616|616 -124|617|617 -124|618|618 -124|619|619 -124|620|620 -124|621|621 -124|622|622 -124|623|623 -124|624|624 -124|625|625 -124|626|626 -124|627|627 -124|628|628 -124|629|629 -124|630|630 -124|631|631 -124|632|632 -124|633|633 -124|634|634 -124|635|635 -124|636|636 -124|637|637 -124|638|638 -124|639|639 -124|640|640 -124|641|641 -124|642|642 -124|643|643 -124|644|644 -124|645|645 -124|646|646 -124|647|647 -124|648|648 -124|649|649 -124|650|650 -124|651|651 -124|652|652 -124|653|653 -124|654|654 -124|655|655 -124|656|656 -124|657|657 -124|658|658 -124|659|659 -124|660|660 -124|661|661 -124|662|662 -124|663|663 -124|664|664 -124|665|665 -124|666|666 -124|667|667 -124|668|668 -124|669|669 -124|670|670 -124|671|671 -124|672|672 -124|673|673 -124|674|674 -124|675|675 -124|676|676 -124|677|677 -124|678|678 -124|679|679 -124|680|680 -124|681|681 -124|682|682 -124|683|683 -124|684|684 -124|685|685 -124|686|686 -124|687|687 -124|688|688 -124|689|689 -124|690|690 -124|691|691 -124|692|692 -124|693|693 -124|694|694 -124|695|695 -124|696|696 -124|697|697 -124|698|698 -124|699|699 -124|700|700 -124|701|701 -124|702|702 -124|703|703 -124|704|704 -124|705|705 -124|706|706 -124|707|707 -124|708|708 -124|709|709 -124|710|710 -124|711|711 -124|712|712 -124|713|713 -124|714|714 -124|715|715 -124|716|716 -124|717|717 -124|718|718 -124|719|719 -124|720|720 -124|721|721 -124|722|722 -124|723|723 -124|724|724 -124|725|725 -124|726|726 -124|727|727 -124|728|728 -124|729|729 -124|730|730 -124|731|731 -124|732|732 -124|733|733 -124|734|734 -124|735|735 -124|736|736 -124|737|737 -124|738|738 -124|739|739 -124|740|740 -124|741|741 -124|742|742 -124|743|743 -124|744|744 -124|745|745 -124|746|746 -124|747|747 -124|748|748 -124|749|749 -124|750|750 -124|751|751 -124|752|752 -124|753|753 -124|754|754 -124|755|755 -124|756|756 -124|757|757 -124|758|758 -124|759|759 -124|760|760 -124|761|761 -124|762|762 -124|763|763 -124|764|764 -124|765|765 -124|766|766 -124|767|767 -124|768|768 -124|769|769 -124|770|770 -124|771|771 -124|772|772 -124|773|773 -124|774|774 -124|775|775 -124|776|776 -124|777|777 -124|778|778 -124|779|779 -124|780|780 -124|781|781 -124|782|782 -124|783|783 -124|784|784 -124|785|785 -124|786|786 -124|787|787 -124|788|788 -124|789|789 -124|790|790 -124|791|791 -124|792|792 -124|793|793 -124|794|794 -124|795|795 -124|796|796 -124|797|797 -124|798|798 -124|799|799 -124|800|800 -124|801|801 -124|802|802 -124|803|803 -124|804|804 -124|805|805 -124|806|806 -124|807|807 -124|808|808 -124|809|809 -124|810|810 -124|811|811 -124|812|812 -124|813|813 -124|814|814 -124|815|815 -124|816|816 -124|817|817 -124|818|818 -124|819|819 -124|820|820 -124|821|821 -124|822|822 -124|823|823 -124|824|824 -124|825|825 -124|826|826 -124|827|827 -124|828|828 -124|829|829 -124|830|830 -124|831|831 -124|832|832 -124|833|833 -124|834|834 -124|835|835 -124|836|836 -124|837|837 -124|838|838 -124|839|839 -124|840|840 -124|841|841 -124|842|842 -124|843|843 -124|844|844 -124|845|845 -124|846|846 -124|847|847 -124|848|848 -124|849|849 -124|850|850 -124|851|851 -124|852|852 -124|853|853 -124|854|854 -124|855|855 -124|856|856 -124|857|857 -124|858|858 -124|859|859 -124|860|860 -124|861|861 -124|862|862 -124|863|863 -124|864|864 -124|865|865 -124|866|866 -124|867|867 -124|868|868 -124|869|869 -124|870|870 -124|871|871 -124|872|872 -124|873|873 -124|874|874 -124|875|875 -124|876|876 -124|877|877 -124|878|878 -124|879|879 -124|880|880 -124|881|881 -124|882|882 -124|883|883 -124|884|884 -124|885|885 -124|886|886 -124|887|887 -124|888|888 -124|889|889 -124|890|890 -124|891|891 -124|892|892 -124|893|893 -124|894|894 -124|895|895 -124|896|896 -124|897|897 -124|898|898 -124|899|899 -124|900|900 -124|901|901 -124|902|902 -124|903|903 -124|904|904 -124|905|905 -124|906|906 -124|907|907 -124|908|908 -124|909|909 -124|910|910 -124|911|911 -124|912|912 -124|913|913 -124|914|914 -124|915|915 -124|916|916 -124|917|917 -124|918|918 -124|919|919 -124|920|920 -124|921|921 -124|922|922 -124|923|923 -124|924|924 -124|925|925 -124|926|926 -124|927|927 -124|928|928 -124|929|929 -124|930|930 -124|931|931 -124|932|932 -124|933|933 -124|934|934 -124|935|935 -124|936|936 -124|937|937 -124|938|938 -124|939|939 -124|940|940 -124|941|941 -124|942|942 -124|943|943 -124|944|944 -124|945|945 -124|946|946 -124|947|947 -124|948|948 -124|949|949 -124|950|950 -124|951|951 -124|952|952 -124|953|953 -124|954|954 -124|955|955 -124|956|956 -124|957|957 -124|958|958 -124|959|959 -124|960|960 -124|961|961 -124|962|962 -124|963|963 -124|964|964 -124|965|965 -124|966|966 -124|967|967 -124|968|968 -124|969|969 -124|970|970 -124|971|971 -124|972|972 -124|973|973 -124|974|974 -124|975|975 -124|976|976 -124|977|977 -124|978|978 -124|979|979 -124|980|980 -124|981|981 -124|982|982 -124|983|983 -124|984|984 -124|985|985 -124|986|986 -124|987|987 -124|988|988 -124|989|989 -124|990|990 -124|991|991 -124|992|992 -124|993|993 -124|994|994 -124|995|995 -124|996|996 -124|997|997 -124|998|998 -124|999|999 -124|1000|1000 \ No newline at end of file