wukong 3.0.0.pre → 3.0.0.pre2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (476) hide show
  1. data/.gitignore +46 -33
  2. data/.gitmodules +3 -0
  3. data/.rspec +1 -1
  4. data/.travis.yml +8 -1
  5. data/.yardopts +0 -13
  6. data/Guardfile +4 -6
  7. data/{LICENSE.textile → LICENSE.md} +43 -55
  8. data/README-old.md +422 -0
  9. data/README.md +279 -418
  10. data/Rakefile +21 -5
  11. data/TODO.md +6 -6
  12. data/bin/wu-clean-encoding +31 -0
  13. data/bin/wu-lign +2 -2
  14. data/bin/wu-local +69 -0
  15. data/bin/wu-server +70 -0
  16. data/examples/Gemfile +38 -0
  17. data/examples/README.md +9 -0
  18. data/examples/dataflow/apache_log_line.rb +64 -25
  19. data/examples/dataflow/fibonacci_series.rb +101 -0
  20. data/examples/dataflow/parse_apache_logs.rb +37 -7
  21. data/examples/{dataflow.rb → dataflow/scraper_macro_flow.rb} +0 -0
  22. data/examples/dataflow/simple.rb +4 -4
  23. data/examples/geo.rb +4 -0
  24. data/examples/geo/geo_grids.numbers +0 -0
  25. data/examples/geo/geolocated.rb +331 -0
  26. data/examples/geo/quadtile.rb +69 -0
  27. data/examples/geo/spec/geolocated_spec.rb +247 -0
  28. data/examples/geo/tile_fetcher.rb +77 -0
  29. data/examples/graph/minimum_spanning_tree.rb +61 -61
  30. data/examples/jabberwocky.txt +36 -0
  31. data/examples/models/wikipedia.rb +20 -0
  32. data/examples/munging/Gemfile +8 -0
  33. data/examples/munging/airline_flights/airline.rb +57 -0
  34. data/examples/munging/airline_flights/airline_flights.rake +83 -0
  35. data/{lib/wukong/settings.rb → examples/munging/airline_flights/airplane.rb} +0 -0
  36. data/examples/munging/airline_flights/airport.rb +211 -0
  37. data/examples/munging/airline_flights/airport_id_unification.rb +129 -0
  38. data/examples/munging/airline_flights/airport_ok_chars.rb +4 -0
  39. data/examples/munging/airline_flights/flight.rb +156 -0
  40. data/examples/munging/airline_flights/models.rb +4 -0
  41. data/examples/munging/airline_flights/parse.rb +26 -0
  42. data/examples/munging/airline_flights/reconcile_airports.rb +142 -0
  43. data/examples/munging/airline_flights/route.rb +35 -0
  44. data/examples/munging/airline_flights/tasks.rake +83 -0
  45. data/examples/munging/airline_flights/timezone_fixup.rb +62 -0
  46. data/examples/munging/airline_flights/topcities.rb +167 -0
  47. data/examples/munging/airports/40_wbans.txt +40 -0
  48. data/examples/munging/airports/filter_weather_reports.rb +37 -0
  49. data/examples/munging/airports/join.pig +31 -0
  50. data/examples/munging/airports/to_tsv.rb +33 -0
  51. data/examples/munging/airports/usa_wbans.pig +19 -0
  52. data/examples/munging/airports/usa_wbans.txt +2157 -0
  53. data/examples/munging/airports/wbans.pig +19 -0
  54. data/examples/munging/airports/wbans.txt +2310 -0
  55. data/examples/munging/geo/geo_json.rb +54 -0
  56. data/examples/munging/geo/geo_models.rb +69 -0
  57. data/examples/munging/geo/geonames_models.rb +78 -0
  58. data/examples/munging/geo/iso_codes.rb +172 -0
  59. data/examples/munging/geo/reconcile_countries.rb +124 -0
  60. data/examples/munging/geo/tasks.rake +71 -0
  61. data/examples/munging/rake_helper.rb +62 -0
  62. data/examples/munging/weather/.gitignore +1 -0
  63. data/examples/munging/weather/Gemfile +4 -0
  64. data/examples/munging/weather/Rakefile +28 -0
  65. data/examples/munging/weather/extract_ish.rb +13 -0
  66. data/examples/munging/weather/models/weather.rb +119 -0
  67. data/examples/munging/weather/utils/noaa_downloader.rb +46 -0
  68. data/examples/munging/wikipedia/README.md +34 -0
  69. data/examples/munging/wikipedia/Rakefile +193 -0
  70. data/examples/munging/wikipedia/articles/extract_articles-parsed.rb +79 -0
  71. data/examples/munging/wikipedia/articles/extract_articles-templated.rb +136 -0
  72. data/examples/munging/wikipedia/articles/textualize_articles.rb +54 -0
  73. data/examples/munging/wikipedia/articles/verify_structure.rb +43 -0
  74. data/examples/munging/wikipedia/articles/wp2txt-LICENSE.txt +22 -0
  75. data/examples/munging/wikipedia/articles/wp2txt_article.rb +259 -0
  76. data/examples/munging/wikipedia/articles/wp2txt_utils.rb +452 -0
  77. data/examples/munging/wikipedia/dbpedia/dbpedia_common.rb +4 -0
  78. data/examples/munging/wikipedia/dbpedia/dbpedia_extract_geocoordinates.rb +78 -0
  79. data/examples/munging/wikipedia/dbpedia/extract_links.rb +193 -0
  80. data/examples/munging/wikipedia/dbpedia/sameas_extractor.rb +20 -0
  81. data/examples/munging/wikipedia/n1_subuniverse/n1_nodes.pig +18 -0
  82. data/examples/munging/wikipedia/page_metadata/extract_page_metadata.rb +21 -0
  83. data/examples/munging/wikipedia/page_metadata/extract_page_metadata.rb.old +27 -0
  84. data/examples/munging/wikipedia/pagelinks/augment_pagelinks.pig +29 -0
  85. data/examples/munging/wikipedia/pagelinks/extract_pagelinks.rb +14 -0
  86. data/examples/munging/wikipedia/pagelinks/extract_pagelinks.rb.old +25 -0
  87. data/examples/munging/wikipedia/pagelinks/undirect_pagelinks.pig +29 -0
  88. data/examples/munging/wikipedia/pageviews/augment_pageviews.pig +32 -0
  89. data/examples/munging/wikipedia/pageviews/extract_pageviews.rb +85 -0
  90. data/examples/munging/wikipedia/pig_style_guide.md +25 -0
  91. data/examples/munging/wikipedia/redirects/redirects_page_metadata.pig +19 -0
  92. data/examples/munging/wikipedia/subuniverse/sub_articles.pig +23 -0
  93. data/examples/munging/wikipedia/subuniverse/sub_page_metadata.pig +24 -0
  94. data/examples/munging/wikipedia/subuniverse/sub_pagelinks_from.pig +22 -0
  95. data/examples/munging/wikipedia/subuniverse/sub_pagelinks_into.pig +22 -0
  96. data/examples/munging/wikipedia/subuniverse/sub_pagelinks_within.pig +26 -0
  97. data/examples/munging/wikipedia/subuniverse/sub_pageviews.pig +29 -0
  98. data/examples/munging/wikipedia/subuniverse/sub_undirected_pagelinks_within.pig +24 -0
  99. data/examples/munging/wikipedia/utils/get_namespaces.rb +86 -0
  100. data/examples/munging/wikipedia/utils/munging_utils.rb +68 -0
  101. data/examples/munging/wikipedia/utils/namespaces.json +1 -0
  102. data/examples/rake_helper.rb +85 -0
  103. data/examples/server_logs/geo_ip_mapping/munge_geolite.rb +82 -0
  104. data/examples/server_logs/logline.rb +95 -0
  105. data/examples/server_logs/models.rb +66 -0
  106. data/examples/server_logs/page_counts.pig +48 -0
  107. data/examples/server_logs/server_logs-01-parse-script.rb +13 -0
  108. data/examples/server_logs/server_logs-02-histograms-full.rb +33 -0
  109. data/examples/server_logs/server_logs-02-histograms-mapper.rb +14 -0
  110. data/{old/examples/server_logs/breadcrumbs.rb → examples/server_logs/server_logs-03-breadcrumbs-full.rb} +26 -30
  111. data/examples/server_logs/server_logs-04-page_page_edges-full.rb +40 -0
  112. data/examples/string_reverser.rb +26 -0
  113. data/examples/text/pig_latin.rb +2 -2
  114. data/examples/text/regional_flavor/README.md +14 -0
  115. data/examples/text/regional_flavor/article_wordbags.pig +39 -0
  116. data/examples/text/regional_flavor/j01-article_wordbags.rb +4 -0
  117. data/examples/text/regional_flavor/simple_pig_script.pig +27 -0
  118. data/examples/word_count/accumulator.rb +26 -0
  119. data/examples/word_count/tokenizer.rb +13 -0
  120. data/examples/word_count/word_count.rb +6 -0
  121. data/examples/workflow/cherry_pie.dot +97 -0
  122. data/examples/workflow/cherry_pie.png +0 -0
  123. data/examples/workflow/cherry_pie.rb +61 -26
  124. data/lib/hanuman.rb +34 -7
  125. data/lib/hanuman/graph.rb +55 -31
  126. data/lib/hanuman/graphvizzer.rb +199 -178
  127. data/lib/hanuman/graphvizzer/gv_models.rb +161 -0
  128. data/lib/hanuman/graphvizzer/gv_presenter.rb +97 -0
  129. data/lib/hanuman/link.rb +35 -0
  130. data/lib/hanuman/registry.rb +46 -0
  131. data/lib/hanuman/stage.rb +76 -32
  132. data/lib/wukong.rb +23 -24
  133. data/lib/wukong/boot.rb +87 -0
  134. data/lib/wukong/configuration.rb +8 -0
  135. data/lib/wukong/dataflow.rb +45 -78
  136. data/lib/wukong/driver.rb +99 -0
  137. data/lib/wukong/emitter.rb +22 -0
  138. data/lib/wukong/model/faker.rb +24 -24
  139. data/lib/wukong/model/flatpack_parser/flat.rb +60 -0
  140. data/lib/wukong/model/flatpack_parser/flatpack.rb +4 -0
  141. data/lib/wukong/model/flatpack_parser/lang.rb +46 -0
  142. data/lib/wukong/model/flatpack_parser/parser.rb +55 -0
  143. data/lib/wukong/model/flatpack_parser/tokens.rb +130 -0
  144. data/lib/wukong/processor.rb +60 -114
  145. data/lib/wukong/spec_helpers.rb +81 -0
  146. data/lib/wukong/spec_helpers/integration_driver.rb +144 -0
  147. data/lib/wukong/spec_helpers/integration_driver_matchers.rb +219 -0
  148. data/lib/wukong/spec_helpers/processor_helpers.rb +95 -0
  149. data/lib/wukong/spec_helpers/processor_methods.rb +108 -0
  150. data/lib/wukong/spec_helpers/shared_examples.rb +15 -0
  151. data/lib/wukong/spec_helpers/spec_driver.rb +28 -0
  152. data/lib/wukong/spec_helpers/spec_driver_matchers.rb +195 -0
  153. data/lib/wukong/version.rb +2 -1
  154. data/lib/wukong/widget/filters.rb +311 -0
  155. data/lib/wukong/widget/processors.rb +156 -0
  156. data/lib/wukong/widget/reducers.rb +7 -0
  157. data/lib/wukong/widget/reducers/accumulator.rb +73 -0
  158. data/lib/wukong/widget/reducers/bin.rb +318 -0
  159. data/lib/wukong/widget/reducers/count.rb +61 -0
  160. data/lib/wukong/widget/reducers/group.rb +85 -0
  161. data/lib/wukong/widget/reducers/group_concat.rb +70 -0
  162. data/lib/wukong/widget/reducers/moments.rb +72 -0
  163. data/lib/wukong/widget/reducers/sort.rb +130 -0
  164. data/lib/wukong/widget/serializers.rb +287 -0
  165. data/lib/wukong/widget/sink.rb +10 -52
  166. data/lib/wukong/widget/source.rb +7 -113
  167. data/lib/wukong/widget/utils.rb +46 -0
  168. data/lib/wukong/widgets.rb +6 -0
  169. data/spec/examples/dataflow/fibonacci_series_spec.rb +18 -0
  170. data/spec/examples/dataflow/parsing_spec.rb +12 -11
  171. data/spec/examples/dataflow/simple_spec.rb +32 -6
  172. data/spec/examples/dataflow/telegram_spec.rb +36 -36
  173. data/spec/examples/graph/minimum_spanning_tree_spec.rb +30 -31
  174. data/spec/examples/munging/airline_flights/identifiers_spec.rb +16 -0
  175. data/spec/examples/munging/airline_flights_spec.rb +202 -0
  176. data/spec/examples/text/pig_latin_spec.rb +13 -16
  177. data/spec/examples/workflow/cherry_pie_spec.rb +34 -4
  178. data/spec/hanuman/graph_spec.rb +27 -2
  179. data/spec/hanuman/hanuman_spec.rb +10 -0
  180. data/spec/hanuman/registry_spec.rb +123 -0
  181. data/spec/hanuman/stage_spec.rb +61 -7
  182. data/spec/spec_helper.rb +29 -19
  183. data/spec/support/hanuman_test_helpers.rb +14 -12
  184. data/spec/support/shared_context_for_reducers.rb +37 -0
  185. data/spec/support/shared_examples_for_builders.rb +101 -0
  186. data/spec/support/shared_examples_for_shortcuts.rb +57 -0
  187. data/spec/support/wukong_test_helpers.rb +37 -11
  188. data/spec/wukong/dataflow_spec.rb +77 -55
  189. data/spec/wukong/local_runner_spec.rb +24 -24
  190. data/spec/wukong/model/faker_spec.rb +132 -131
  191. data/spec/wukong/runner_spec.rb +8 -8
  192. data/spec/wukong/widget/filters_spec.rb +61 -0
  193. data/spec/wukong/widget/processors_spec.rb +126 -0
  194. data/spec/wukong/widget/reducers/bin_spec.rb +92 -0
  195. data/spec/wukong/widget/reducers/count_spec.rb +11 -0
  196. data/spec/wukong/widget/reducers/group_spec.rb +20 -0
  197. data/spec/wukong/widget/reducers/moments_spec.rb +36 -0
  198. data/spec/wukong/widget/reducers/sort_spec.rb +26 -0
  199. data/spec/wukong/widget/serializers_spec.rb +92 -0
  200. data/spec/wukong/widget/sink_spec.rb +15 -15
  201. data/spec/wukong/widget/source_spec.rb +65 -41
  202. data/spec/wukong/wukong_spec.rb +10 -0
  203. data/wukong.gemspec +17 -10
  204. metadata +359 -335
  205. data/.document +0 -5
  206. data/VERSION +0 -1
  207. data/bin/hdp-bin +0 -44
  208. data/bin/hdp-bzip +0 -23
  209. data/bin/hdp-cat +0 -3
  210. data/bin/hdp-catd +0 -3
  211. data/bin/hdp-cp +0 -3
  212. data/bin/hdp-du +0 -86
  213. data/bin/hdp-get +0 -3
  214. data/bin/hdp-kill +0 -3
  215. data/bin/hdp-kill-task +0 -3
  216. data/bin/hdp-ls +0 -11
  217. data/bin/hdp-mkdir +0 -2
  218. data/bin/hdp-mkdirp +0 -12
  219. data/bin/hdp-mv +0 -3
  220. data/bin/hdp-parts_to_keys.rb +0 -77
  221. data/bin/hdp-ps +0 -3
  222. data/bin/hdp-put +0 -3
  223. data/bin/hdp-rm +0 -32
  224. data/bin/hdp-sort +0 -40
  225. data/bin/hdp-stream +0 -40
  226. data/bin/hdp-stream-flat +0 -22
  227. data/bin/hdp-stream2 +0 -39
  228. data/bin/hdp-sync +0 -17
  229. data/bin/hdp-wc +0 -67
  230. data/bin/wu-flow +0 -10
  231. data/bin/wu-map +0 -17
  232. data/bin/wu-red +0 -17
  233. data/bin/wukong +0 -17
  234. data/data/CREDITS.md +0 -355
  235. data/data/graph/airfares.tsv +0 -2174
  236. data/data/text/gift_of_the_magi.txt +0 -225
  237. data/data/text/jabberwocky.txt +0 -36
  238. data/data/text/rectification_of_names.txt +0 -33
  239. data/data/twitter/a_atsigns_b.tsv +0 -64
  240. data/data/twitter/a_follows_b.tsv +0 -53
  241. data/data/twitter/tweet.tsv +0 -167
  242. data/data/twitter/twitter_user.tsv +0 -55
  243. data/data/wikipedia/dbpedia-sentences.tsv +0 -1000
  244. data/docpages/INSTALL.textile +0 -92
  245. data/docpages/LICENSE.textile +0 -107
  246. data/docpages/README-elastic_map_reduce.textile +0 -377
  247. data/docpages/README-performance.textile +0 -90
  248. data/docpages/README-wulign.textile +0 -65
  249. data/docpages/UsingWukong-part1-get_ready.textile +0 -17
  250. data/docpages/UsingWukong-part2-ThinkingBigData.textile +0 -75
  251. data/docpages/UsingWukong-part3-parsing.textile +0 -138
  252. data/docpages/_config.yml +0 -39
  253. data/docpages/avro/avro_notes.textile +0 -56
  254. data/docpages/avro/performance.textile +0 -36
  255. data/docpages/avro/tethering.textile +0 -19
  256. data/docpages/bigdata-tips.textile +0 -143
  257. data/docpages/code/api_response_example.txt +0 -20
  258. data/docpages/code/parser_skeleton.rb +0 -38
  259. data/docpages/diagrams/MapReduceDiagram.graffle +0 -0
  260. data/docpages/favicon.ico +0 -0
  261. data/docpages/gem.css +0 -16
  262. data/docpages/hadoop-tips.textile +0 -83
  263. data/docpages/index.textile +0 -92
  264. data/docpages/intro.textile +0 -8
  265. data/docpages/moreinfo.textile +0 -174
  266. data/docpages/news.html +0 -24
  267. data/docpages/pig/PigLatinExpressionsList.txt +0 -122
  268. data/docpages/pig/PigLatinReferenceManual.txt +0 -1640
  269. data/docpages/pig/commandline_params.txt +0 -26
  270. data/docpages/pig/cookbook.html +0 -481
  271. data/docpages/pig/images/hadoop-logo.jpg +0 -0
  272. data/docpages/pig/images/instruction_arrow.png +0 -0
  273. data/docpages/pig/images/pig-logo.gif +0 -0
  274. data/docpages/pig/piglatin_ref1.html +0 -1103
  275. data/docpages/pig/piglatin_ref2.html +0 -14340
  276. data/docpages/pig/setup.html +0 -505
  277. data/docpages/pig/skin/basic.css +0 -166
  278. data/docpages/pig/skin/breadcrumbs.js +0 -237
  279. data/docpages/pig/skin/fontsize.js +0 -166
  280. data/docpages/pig/skin/getBlank.js +0 -40
  281. data/docpages/pig/skin/getMenu.js +0 -45
  282. data/docpages/pig/skin/images/chapter.gif +0 -0
  283. data/docpages/pig/skin/images/chapter_open.gif +0 -0
  284. data/docpages/pig/skin/images/current.gif +0 -0
  285. data/docpages/pig/skin/images/external-link.gif +0 -0
  286. data/docpages/pig/skin/images/header_white_line.gif +0 -0
  287. data/docpages/pig/skin/images/page.gif +0 -0
  288. data/docpages/pig/skin/images/pdfdoc.gif +0 -0
  289. data/docpages/pig/skin/images/rc-b-l-15-1body-2menu-3menu.png +0 -0
  290. data/docpages/pig/skin/images/rc-b-r-15-1body-2menu-3menu.png +0 -0
  291. data/docpages/pig/skin/images/rc-b-r-5-1header-2tab-selected-3tab-selected.png +0 -0
  292. data/docpages/pig/skin/images/rc-t-l-5-1header-2searchbox-3searchbox.png +0 -0
  293. data/docpages/pig/skin/images/rc-t-l-5-1header-2tab-selected-3tab-selected.png +0 -0
  294. data/docpages/pig/skin/images/rc-t-l-5-1header-2tab-unselected-3tab-unselected.png +0 -0
  295. data/docpages/pig/skin/images/rc-t-r-15-1body-2menu-3menu.png +0 -0
  296. data/docpages/pig/skin/images/rc-t-r-5-1header-2searchbox-3searchbox.png +0 -0
  297. data/docpages/pig/skin/images/rc-t-r-5-1header-2tab-selected-3tab-selected.png +0 -0
  298. data/docpages/pig/skin/images/rc-t-r-5-1header-2tab-unselected-3tab-unselected.png +0 -0
  299. data/docpages/pig/skin/print.css +0 -54
  300. data/docpages/pig/skin/profile.css +0 -181
  301. data/docpages/pig/skin/screen.css +0 -587
  302. data/docpages/pig/tutorial.html +0 -1059
  303. data/docpages/pig/udf.html +0 -1509
  304. data/docpages/tutorial.textile +0 -283
  305. data/docpages/usage.textile +0 -195
  306. data/docpages/wutils.textile +0 -263
  307. data/examples/dataflow/complex.rb +0 -11
  308. data/examples/dataflow/donuts.rb +0 -13
  309. data/examples/tiny_count/jabberwocky_output.tsv +0 -92
  310. data/examples/word_count.rb +0 -48
  311. data/examples/workflow/fiddle.rb +0 -24
  312. data/lib/away/escapement.rb +0 -129
  313. data/lib/away/exe.rb +0 -11
  314. data/lib/away/experimental.rb +0 -5
  315. data/lib/away/from_file.rb +0 -52
  316. data/lib/away/job.rb +0 -56
  317. data/lib/away/job/rake_compat.rb +0 -17
  318. data/lib/away/registry.rb +0 -79
  319. data/lib/away/runner.rb +0 -276
  320. data/lib/away/runner/execute.rb +0 -121
  321. data/lib/away/script.rb +0 -161
  322. data/lib/away/script/hadoop_command.rb +0 -240
  323. data/lib/away/source/file_list_source.rb +0 -15
  324. data/lib/away/source/looper.rb +0 -18
  325. data/lib/away/task.rb +0 -219
  326. data/lib/hanuman/action.rb +0 -21
  327. data/lib/hanuman/chain.rb +0 -4
  328. data/lib/hanuman/graphviz.rb +0 -74
  329. data/lib/hanuman/resource.rb +0 -6
  330. data/lib/hanuman/slot.rb +0 -87
  331. data/lib/hanuman/slottable.rb +0 -220
  332. data/lib/wukong/bad_record.rb +0 -15
  333. data/lib/wukong/event.rb +0 -44
  334. data/lib/wukong/local_runner.rb +0 -55
  335. data/lib/wukong/mapred.rb +0 -3
  336. data/lib/wukong/universe.rb +0 -48
  337. data/lib/wukong/widget/filter.rb +0 -81
  338. data/lib/wukong/widget/gibberish.rb +0 -123
  339. data/lib/wukong/widget/monitor.rb +0 -26
  340. data/lib/wukong/widget/reducer.rb +0 -66
  341. data/lib/wukong/widget/stringifier.rb +0 -50
  342. data/lib/wukong/workflow.rb +0 -22
  343. data/lib/wukong/workflow/command.rb +0 -42
  344. data/old/config/emr-example.yaml +0 -48
  345. data/old/examples/README.txt +0 -17
  346. data/old/examples/contrib/jeans/README.markdown +0 -165
  347. data/old/examples/contrib/jeans/data/normalized_sizes +0 -3
  348. data/old/examples/contrib/jeans/data/orders.tsv +0 -1302
  349. data/old/examples/contrib/jeans/data/sizes +0 -3
  350. data/old/examples/contrib/jeans/normalize.rb +0 -20
  351. data/old/examples/contrib/jeans/sizes.rb +0 -55
  352. data/old/examples/corpus/bnc_word_freq.rb +0 -44
  353. data/old/examples/corpus/bucket_counter.rb +0 -47
  354. data/old/examples/corpus/dbpedia_abstract_to_sentences.rb +0 -86
  355. data/old/examples/corpus/sentence_bigrams.rb +0 -53
  356. data/old/examples/corpus/sentence_coocurrence.rb +0 -66
  357. data/old/examples/corpus/stopwords.rb +0 -138
  358. data/old/examples/corpus/words_to_bigrams.rb +0 -53
  359. data/old/examples/emr/README.textile +0 -110
  360. data/old/examples/emr/dot_wukong_dir/credentials.json +0 -7
  361. data/old/examples/emr/dot_wukong_dir/emr.yaml +0 -69
  362. data/old/examples/emr/dot_wukong_dir/emr_bootstrap.sh +0 -33
  363. data/old/examples/emr/elastic_mapreduce_example.rb +0 -28
  364. data/old/examples/network_graph/adjacency_list.rb +0 -74
  365. data/old/examples/network_graph/breadth_first_search.rb +0 -72
  366. data/old/examples/network_graph/gen_2paths.rb +0 -68
  367. data/old/examples/network_graph/gen_multi_edge.rb +0 -112
  368. data/old/examples/network_graph/gen_symmetric_links.rb +0 -64
  369. data/old/examples/pagerank/README.textile +0 -6
  370. data/old/examples/pagerank/gen_initial_pagerank_graph.pig +0 -57
  371. data/old/examples/pagerank/pagerank.rb +0 -72
  372. data/old/examples/pagerank/pagerank_initialize.rb +0 -42
  373. data/old/examples/pagerank/run_pagerank.sh +0 -21
  374. data/old/examples/sample_records.rb +0 -33
  375. data/old/examples/server_logs/apache_log_parser.rb +0 -15
  376. data/old/examples/server_logs/nook.rb +0 -48
  377. data/old/examples/server_logs/nook/faraday_dummy_adapter.rb +0 -94
  378. data/old/examples/server_logs/user_agent.rb +0 -40
  379. data/old/examples/simple_word_count.rb +0 -82
  380. data/old/examples/size.rb +0 -61
  381. data/old/examples/stats/avg_value_frequency.rb +0 -86
  382. data/old/examples/stats/binning_percentile_estimator.rb +0 -140
  383. data/old/examples/stats/data/avg_value_frequency.tsv +0 -3
  384. data/old/examples/stats/rank_and_bin.rb +0 -173
  385. data/old/examples/stupidly_simple_filter.rb +0 -40
  386. data/old/examples/word_count.rb +0 -75
  387. data/old/graph/graphviz_builder.rb +0 -580
  388. data/old/graph_easy/Attributes.pm +0 -4181
  389. data/old/graph_easy/Graphviz.pm +0 -2232
  390. data/old/wukong.rb +0 -18
  391. data/old/wukong/and_pig.rb +0 -38
  392. data/old/wukong/bad_record.rb +0 -18
  393. data/old/wukong/datatypes.rb +0 -24
  394. data/old/wukong/datatypes/enum.rb +0 -127
  395. data/old/wukong/datatypes/fake_types.rb +0 -17
  396. data/old/wukong/decorator.rb +0 -28
  397. data/old/wukong/encoding/asciize.rb +0 -108
  398. data/old/wukong/extensions.rb +0 -16
  399. data/old/wukong/extensions/array.rb +0 -18
  400. data/old/wukong/extensions/blank.rb +0 -93
  401. data/old/wukong/extensions/class.rb +0 -189
  402. data/old/wukong/extensions/date_time.rb +0 -53
  403. data/old/wukong/extensions/emittable.rb +0 -69
  404. data/old/wukong/extensions/enumerable.rb +0 -79
  405. data/old/wukong/extensions/hash.rb +0 -167
  406. data/old/wukong/extensions/hash_keys.rb +0 -16
  407. data/old/wukong/extensions/hash_like.rb +0 -150
  408. data/old/wukong/extensions/hashlike_class.rb +0 -47
  409. data/old/wukong/extensions/module.rb +0 -2
  410. data/old/wukong/extensions/pathname.rb +0 -27
  411. data/old/wukong/extensions/string.rb +0 -65
  412. data/old/wukong/extensions/struct.rb +0 -17
  413. data/old/wukong/extensions/symbol.rb +0 -11
  414. data/old/wukong/filename_pattern.rb +0 -74
  415. data/old/wukong/helper.rb +0 -7
  416. data/old/wukong/helper/stopwords.rb +0 -195
  417. data/old/wukong/helper/tokenize.rb +0 -35
  418. data/old/wukong/logger.rb +0 -38
  419. data/old/wukong/periodic_monitor.rb +0 -72
  420. data/old/wukong/schema.rb +0 -269
  421. data/old/wukong/script.rb +0 -286
  422. data/old/wukong/script/avro_command.rb +0 -5
  423. data/old/wukong/script/cassandra_loader_script.rb +0 -40
  424. data/old/wukong/script/emr_command.rb +0 -168
  425. data/old/wukong/script/hadoop_command.rb +0 -237
  426. data/old/wukong/script/local_command.rb +0 -41
  427. data/old/wukong/store.rb +0 -10
  428. data/old/wukong/store/base.rb +0 -27
  429. data/old/wukong/store/cassandra.rb +0 -10
  430. data/old/wukong/store/cassandra/streaming.rb +0 -75
  431. data/old/wukong/store/cassandra/struct_loader.rb +0 -21
  432. data/old/wukong/store/cassandra_model.rb +0 -91
  433. data/old/wukong/store/chh_chunked_flat_file_store.rb +0 -37
  434. data/old/wukong/store/chunked_flat_file_store.rb +0 -48
  435. data/old/wukong/store/conditional_store.rb +0 -57
  436. data/old/wukong/store/factory.rb +0 -8
  437. data/old/wukong/store/flat_file_store.rb +0 -89
  438. data/old/wukong/store/key_store.rb +0 -51
  439. data/old/wukong/store/null_store.rb +0 -15
  440. data/old/wukong/store/read_thru_store.rb +0 -22
  441. data/old/wukong/store/tokyo_tdb_key_store.rb +0 -33
  442. data/old/wukong/store/tyrant_rdb_key_store.rb +0 -57
  443. data/old/wukong/store/tyrant_tdb_key_store.rb +0 -20
  444. data/old/wukong/streamer.rb +0 -30
  445. data/old/wukong/streamer/accumulating_reducer.rb +0 -83
  446. data/old/wukong/streamer/base.rb +0 -126
  447. data/old/wukong/streamer/counting_reducer.rb +0 -25
  448. data/old/wukong/streamer/filter.rb +0 -20
  449. data/old/wukong/streamer/instance_streamer.rb +0 -15
  450. data/old/wukong/streamer/json_streamer.rb +0 -21
  451. data/old/wukong/streamer/line_streamer.rb +0 -12
  452. data/old/wukong/streamer/list_reducer.rb +0 -31
  453. data/old/wukong/streamer/rank_and_bin_reducer.rb +0 -145
  454. data/old/wukong/streamer/record_streamer.rb +0 -14
  455. data/old/wukong/streamer/reducer.rb +0 -11
  456. data/old/wukong/streamer/set_reducer.rb +0 -14
  457. data/old/wukong/streamer/struct_streamer.rb +0 -48
  458. data/old/wukong/streamer/summing_reducer.rb +0 -29
  459. data/old/wukong/streamer/uniq_by_last_reducer.rb +0 -51
  460. data/old/wukong/typed_struct.rb +0 -12
  461. data/spec/away/encoding_spec.rb +0 -32
  462. data/spec/away/exe_spec.rb +0 -20
  463. data/spec/away/flow_spec.rb +0 -82
  464. data/spec/away/graph_spec.rb +0 -6
  465. data/spec/away/job_spec.rb +0 -15
  466. data/spec/away/rake_compat_spec.rb +0 -9
  467. data/spec/away/script_spec.rb +0 -81
  468. data/spec/hanuman/graphviz_spec.rb +0 -29
  469. data/spec/hanuman/slot_spec.rb +0 -2
  470. data/spec/support/examples_helper.rb +0 -10
  471. data/spec/support/streamer_test_helpers.rb +0 -6
  472. data/spec/support/wukong_widget_helpers.rb +0 -66
  473. data/spec/wukong/processor_spec.rb +0 -109
  474. data/spec/wukong/widget/filter_spec.rb +0 -99
  475. data/spec/wukong/widget/stringifier_spec.rb +0 -51
  476. data/spec/wukong/workflow/command_spec.rb +0 -5
@@ -0,0 +1,19 @@
1
+ // Outputs a list of WBAN IDs assigned to airports
2
+
3
+ mshr = LOAD '/Users/dlaw/Desktop/stations/mshr_enhanced.tsv' AS
4
+ (source_id:chararray, source:chararray, begin_date:chararray, end_date:chararray, station_status:chararray,
5
+ ncdcstn_id:chararray, icao_id:chararray, wban_id:chararray, faa_id:chararray, nwsli_id:chararray, wmo_id:chararray,
6
+ coop_id:chararray, transmittal_id:chararray, ghcnd_id:chararray, name_principal:chararray, name_principal_short:chararray,
7
+ name_coop:chararray, name_coop_short:chararray, name_publication:chararray, name_alias:chararray, nws_clim_div:chararray,
8
+ nws_clim_div_name:chararray, state_prov:chararray, county:chararray, nws_st_code:chararray, fips_country_code:chararray,
9
+ fips_country_name:chararray, nws_region:chararray, nws_wfo:chararray, elev_ground:chararray, elev_ground_unit:chararray,
10
+ elev_barom:chararray, elev_barom_unit:chararray, elev_air:chararray, elev_air_unit:chararray, elev_zerodat:chararray,
11
+ elev_zerodat_unit:chararray, elev_unk:chararray, elev_unk_unit:chararray, lat_dec:chararray, lon_dec:chararray,
12
+ lat_lon_precision:chararray, relocation:chararray, utc_offset:chararray, obs_env:chararray, platform:chararray);
13
+
14
+ mshr_grouped = GROUP mshr BY (icao_id, wban_id, faa_id);
15
+ mshr_flattened = FOREACH mshr_grouped GENERATE FLATTEN(group) AS (wban_id, icao_id, faa_id);
16
+ mshr_filtered = FILTER mshr_flattened BY (icao_id is not null and wban_id is not null);
17
+
18
+ mshr_final = FOREACH mshr_filtered GENERATE wban_id;
19
+ STORE mshr_final INTO '/Users/dlaw/Desktop/stations/wbans';
@@ -0,0 +1,2310 @@
1
+ 16201
2
+ 24295
3
+ 94153
4
+ 25212
5
+ 14633
6
+ 94234
7
+ 25112
8
+ 94795
9
+ 94241
10
+ 25146
11
+ 25166
12
+ 24290
13
+ 94110
14
+ 14631
15
+ 25149
16
+ 25113
17
+ 24299
18
+ 25305
19
+ 25238
20
+ 25248
21
+ 25108
22
+ 25142
23
+ 24293
24
+ 25141
25
+ 14648
26
+ 25131
27
+ 25232
28
+ 24294
29
+ 14673
30
+ 25116
31
+ 25155
32
+ 25220
33
+ 25125
34
+ 94151
35
+ 25222
36
+ 25105
37
+ 25241
38
+ 25129
39
+ 25151
40
+ 04706
41
+ 25013
42
+ 24298
43
+ 94243
44
+ 25101
45
+ 25345
46
+ 25251
47
+ 25143
48
+ 25148
49
+ 25252
50
+ 25119
51
+ 94810
52
+ 94108
53
+ 14625
54
+ 24292
55
+ 25115
56
+ 14509
57
+ 14646
58
+ 25224
59
+ 15908
60
+ 25121
61
+ 25120
62
+ 25150
63
+ 25122
64
+ 04715
65
+ 94792
66
+ 25123
67
+ 24287
68
+ 14996
69
+ 25247
70
+ 25111
71
+ 25118
72
+ 25231
73
+ 25206
74
+ 25229
75
+ 24288
76
+ 25110
77
+ 25225
78
+ 25218
79
+ 94116
80
+ 24297
81
+ 94111
82
+ 94791
83
+ 25153
84
+ 25253
85
+ 25346
86
+ 25223
87
+ 25124
88
+ 15613
89
+ 14636
90
+ 25255
91
+ 94646
92
+ 94149
93
+ 25165
94
+ 15044
95
+ 50101
96
+ 70701
97
+ 03069
98
+ 94119
99
+ 04204
100
+ 94991
101
+ 53928
102
+ 54779
103
+ 03196
104
+ 63844
105
+ 63875
106
+ 53929
107
+ 64773
108
+ 04201
109
+ 94076
110
+ 04849
111
+ 63834
112
+ 94037
113
+ 63839
114
+ 63876
115
+ 63877
116
+ 03051
117
+ 63878
118
+ 12981
119
+ 12971
120
+ 53866
121
+ 53904
122
+ 12978
123
+ 53862
124
+ 94061
125
+ 63848
126
+ 63879
127
+ 63847
128
+ 53990
129
+ 53966
130
+ 53972
131
+ 03053
132
+ 94298
133
+ 03032
134
+ 63827
135
+ 92807
136
+ 92807
137
+ 03064
138
+ 93226
139
+ 63880
140
+ 94993
141
+ 53964
142
+ 94623
143
+ 94070
144
+ 94943
145
+ 04862
146
+ 12832
147
+ 03974
148
+ 94299
149
+ 14737
150
+ 13962
151
+ 23050
152
+ 14929
153
+ 14929
154
+ 03019
155
+ 13869
156
+ 04863
157
+ 14756
158
+ 53991
159
+ 54916
160
+ 13959
161
+ 24283
162
+ 93730
163
+ 94997
164
+ 04847
165
+ 53930
166
+ 93940
167
+ 03970
168
+ 03043
169
+ 94998
170
+ 13705
171
+ 03034
172
+ 03064
173
+ 94968
174
+ 93915
175
+ 93065
176
+ 04827
177
+ 04993
178
+ 54770
179
+ 53909
180
+ 14762
181
+ 12804
182
+ 03820
183
+ 13873
184
+ 24044
185
+ 04828
186
+ 04864
187
+ 14930
188
+ 94999
189
+ 53931
190
+ 63853
191
+ 53175
192
+ 53870
193
+ 24015
194
+ 93773
195
+ 93773
196
+ 14813
197
+ 14735
198
+ 12932
199
+ 53146
200
+ 93097
201
+ 03958
202
+ 94910
203
+ 23061
204
+ 24160
205
+ 63833
206
+ 23047
207
+ 23047
208
+ 13870
209
+ 53989
210
+ 54816
211
+ 94989
212
+ 12899
213
+ 13871
214
+ 93846
215
+ 94974
216
+ 14847
217
+ 94975
218
+ 04850
219
+ 14736
220
+ 93067
221
+ 93227
222
+ 12897
223
+ 13701
224
+ 94849
225
+ 04837
226
+ 04837
227
+ 53983
228
+ 54917
229
+ 53932
230
+ 03949
231
+ 54768
232
+ 53915
233
+ 94889
234
+ 93991
235
+ 12953
236
+ 04808
237
+ 94790
238
+ 04865
239
+ 94987
240
+ 53865
241
+ 93073
242
+ 03973
243
+ 54754
244
+ 93796
245
+ 94224
246
+ 54809
247
+ 94929
248
+ 13874
249
+ 03035
250
+ 13958
251
+ 04825
252
+ 94287
253
+ 14946
254
+ 14605
255
+ 04901
256
+ 04902
257
+ 23224
258
+ 03892
259
+ 13904
260
+ 13958
261
+ 14897
262
+ 93797
263
+ 53933
264
+ 03812
265
+ 14777
266
+ 23191
267
+ 04903
268
+ 94190
269
+ 53959
270
+ 04205
271
+ 04904
272
+ 14910
273
+ 63901
274
+ 04779
275
+ 13861
276
+ 53129
277
+ 94815
278
+ 54772
279
+ 93216
280
+ 13944
281
+ 14775
282
+ 13803
283
+ 24119
284
+ 24119
285
+ 54817
286
+ 12971
287
+ 54904
288
+ 93942
289
+ 94946
290
+ 93240
291
+ 53881
292
+ 23159
293
+ 12803
294
+ 94961
295
+ 14816
296
+ 03036
297
+ 14740
298
+ 94702
299
+ 14702
300
+ 94871
301
+ 04751
302
+ 24028
303
+ 24234
304
+ 23155
305
+ 13838
306
+ 04905
307
+ 03024
308
+ 53882
309
+ 04725
310
+ 04725
311
+ 14606
312
+ 23005
313
+ 14616
314
+ 94055
315
+ 13876
316
+ 94289
317
+ 94793
318
+ 94947
319
+ 23157
320
+ 63835
321
+ 24033
322
+ 24011
323
+ 24011
324
+ 04839
325
+ 13820
326
+ 03065
327
+ 93068
328
+ 14958
329
+ 04842
330
+ 53145
331
+ 53988
332
+ 24130
333
+ 23036
334
+ 04853
335
+ 12982
336
+ 13726
337
+ 12818
338
+ 03872
339
+ 94902
340
+ 03859
341
+ 23158
342
+ 24217
343
+ 54760
344
+ 23225
345
+ 13802
346
+ 94046
347
+ 24180
348
+ 03893
349
+ 54831
350
+ 94700
351
+ 03999
352
+ 53823
353
+ 13897
354
+ 25312
355
+ 94185
356
+ 04906
357
+ 24131
358
+ 24267
359
+ 14739
360
+ 12809
361
+ 54765
362
+ 03044
363
+ 24164
364
+ 53918
365
+ 12917
366
+ 53883
367
+ 53992
368
+ 94938
369
+ 14931
370
+ 12919
371
+ 12919
372
+ 13904
373
+ 14815
374
+ 24135
375
+ 64705
376
+ 13970
377
+ 14742
378
+ 14964
379
+ 14733
380
+ 14733
381
+ 23156
382
+ 23152
383
+ 04866
384
+ 93783
385
+ 04813
386
+ 54921
387
+ 03959
388
+ 94282
389
+ 53934
390
+ 54733
391
+ 93943
392
+ 93808
393
+ 93721
394
+ 54922
395
+ 94054
396
+ 13814
397
+ 24133
398
+ 03182
399
+ 92804
400
+ 12981
401
+ 24132
402
+ 04867
403
+ 04839
404
+ 04868
405
+ 14817
406
+ 13883
407
+ 13883
408
+ 24046
409
+ 14895
410
+ 23051
411
+ 14607
412
+ 04907
413
+ 03732
414
+ 04908
415
+ 04909
416
+ 03037
417
+ 13825
418
+ 94625
419
+ 04101
420
+ 53884
421
+ 23254
422
+ 03038
423
+ 54764
424
+ 14966
425
+ 93129
426
+ 94977
427
+ 53916
428
+ 24017
429
+ 23007
430
+ 54743
431
+ 24286
432
+ 14703
433
+ 53850
434
+ 13884
435
+ 93069
436
+ 54901
437
+ 54828
438
+ 93967
439
+ 04805
440
+ 03935
441
+ 94866
442
+ 03914
443
+ 13882
444
+ 53128
445
+ 53935
446
+ 93736
447
+ 13880
448
+ 93203
449
+ 14990
450
+ 04910
451
+ 93809
452
+ 04869
453
+ 93798
454
+ 03802
455
+ 04911
456
+ 03881
457
+ 04912
458
+ 54920
459
+ 03894
460
+ 14820
461
+ 14820
462
+ 54832
463
+ 13999
464
+ 03904
465
+ 94266
466
+ 13881
467
+ 53845
468
+ 23136
469
+ 14821
470
+ 94870
471
+ 14858
472
+ 94940
473
+ 54923
474
+ 04913
475
+ 13984
476
+ 23086
477
+ 93033
478
+ 03179
479
+ 13981
480
+ 93075
481
+ 24045
482
+ 24136
483
+ 12867
484
+ 14745
485
+ 04914
486
+ 93037
487
+ 12947
488
+ 03945
489
+ 13983
490
+ 93799
491
+ 03701
492
+ 24089
493
+ 03960
494
+ 53981
495
+ 03039
496
+ 53936
497
+ 03027
498
+ 54905
499
+ 93134
500
+ 94199
501
+ 94624
502
+ 93718
503
+ 53860
504
+ 12924
505
+ 12924
506
+ 03177
507
+ 53912
508
+ 13866
509
+ 12879
510
+ 93842
511
+ 03932
512
+ 04915
513
+ 03847
514
+ 24137
515
+ 12833
516
+ 03727
517
+ 53867
518
+ 53993
519
+ 63840
520
+ 94032
521
+ 93814
522
+ 23077
523
+ 24202
524
+ 23008
525
+ 04870
526
+ 94890
527
+ 13941
528
+ 94979
529
+ 53902
530
+ 54774
531
+ 14751
532
+ 24018
533
+ 24018
534
+ 94204
535
+ 03164
536
+ 94056
537
+ 93728
538
+ 12834
539
+ 23161
540
+ 13960
541
+ 13728
542
+ 54791
543
+ 93235
544
+ 93815
545
+ 63881
546
+ 94908
547
+ 13743
548
+ 53852
549
+ 13985
550
+ 13985
551
+ 54781
552
+ 03887
553
+ 04916
554
+ 03017
555
+ 23062
556
+ 53925
557
+ 14822
558
+ 94119
559
+ 25515
560
+ 04851
561
+ 03927
562
+ 22015
563
+ 94057
564
+ 13839
565
+ 93843
566
+ 93042
567
+ 04135
568
+ 24012
569
+ 93771
570
+ 04871
571
+ 14747
572
+ 03073
573
+ 22001
574
+ 14913
575
+ 14913
576
+ 54833
577
+ 24138
578
+ 24219
579
+ 23109
580
+ 93784
581
+ 23078
582
+ 03994
583
+ 03724
584
+ 94984
585
+ 63903
586
+ 13837
587
+ 53885
588
+ 04917
589
+ 94891
590
+ 13707
591
+ 93770
592
+ 94878
593
+ 94892
594
+ 24103
595
+ 03702
596
+ 63842
597
+ 03160
598
+ 03976
599
+ 54844
600
+ 93005
601
+ 22010
602
+ 14933
603
+ 94704
604
+ 23162
605
+ 94962
606
+ 53905
607
+ 03991
608
+ 53853
609
+ 94847
610
+ 04830
611
+ 53937
612
+ 53938
613
+ 93026
614
+ 04872
615
+ 04787
616
+ 03070
617
+ 94928
618
+ 94982
619
+ 94982
620
+ 54924
621
+ 03184
622
+ 53910
623
+ 54734
624
+ 04918
625
+ 54786
626
+ 03809
627
+ 13910
628
+ 04919
629
+ 03987
630
+ 53965
631
+ 03049
632
+ 14905
633
+ 94239
634
+ 14991
635
+ 03983
636
+ 03983
637
+ 12983
638
+ 04920
639
+ 13786
640
+ 13787
641
+ 73805
642
+ 23098
643
+ 03703
644
+ 03197
645
+ 23114
646
+ 23179
647
+ 94721
648
+ 94050
649
+ 53864
650
+ 12906
651
+ 54758
652
+ 04873
653
+ 23063
654
+ 03844
655
+ 54838
656
+ 93076
657
+ 63843
658
+ 53886
659
+ 24213
660
+ 04806
661
+ 13729
662
+ 24121
663
+ 63882
664
+ 93992
665
+ 03977
666
+ 14748
667
+ 24220
668
+ 94964
669
+ 23044
670
+ 23154
671
+ 54757
672
+ 24165
673
+ 13989
674
+ 03165
675
+ 03704
676
+ 53112
677
+ 13909
678
+ 53887
679
+ 24193
680
+ 04845
681
+ 54766
682
+ 53876
683
+ 04921
684
+ 53851
685
+ 24141
686
+ 14608
687
+ 03020
688
+ 53872
689
+ 14860
690
+ 25318
691
+ 12961
692
+ 04874
693
+ 14824
694
+ 94853
695
+ 13935
696
+ 03756
697
+ 94971
698
+ 53110
699
+ 04875
700
+ 04922
701
+ 63872
702
+ 24221
703
+ 94195
704
+ 92808
705
+ 04923
706
+ 93817
707
+ 04111
708
+ 53825
709
+ 94726
710
+ 53939
711
+ 93719
712
+ 14734
713
+ 12971
714
+ 53888
715
+ 53842
716
+ 03705
717
+ 12836
718
+ 53114
719
+ 03706
720
+ 53969
721
+ 53907
722
+ 93735
723
+ 93996
724
+ 14914
725
+ 93193
726
+ 93740
727
+ 93737
728
+ 94969
729
+ 24146
730
+ 23167
731
+ 24047
732
+ 94963
733
+ 94015
734
+ 53831
735
+ 13730
736
+ 03981
737
+ 03981
738
+ 03022
739
+ 14825
740
+ 04876
741
+ 04924
742
+ 94006
743
+ 03736
744
+ 53819
745
+ 53819
746
+ 04925
747
+ 94966
748
+ 13840
749
+ 53841
750
+ 03185
751
+ 04926
752
+ 94276
753
+ 03124
754
+ 54792
755
+ 04780
756
+ 04927
757
+ 94868
758
+ 13763
759
+ 54818
760
+ 04840
761
+ 03103
762
+ 12849
763
+ 13744
764
+ 03918
765
+ 13921
766
+ 93733
767
+ 14704
768
+ 23090
769
+ 12835
770
+ 94957
771
+ 94035
772
+ 94062
773
+ 14826
774
+ 53889
775
+ 23256
776
+ 94933
777
+ 13920
778
+ 14719
779
+ 04928
780
+ 04877
781
+ 12895
782
+ 53890
783
+ 54787
784
+ 13947
785
+ 94948
786
+ 14944
787
+ 14944
788
+ 04929
789
+ 13945
790
+ 13964
791
+ 23091
792
+ 04930
793
+ 53113
794
+ 03018
795
+ 13807
796
+ 13961
797
+ 03888
798
+ 03166
799
+ 04836
800
+ 03707
801
+ 14827
802
+ 53891
803
+ 54793
804
+ 03985
805
+ 03985
806
+ 12885
807
+ 03734
808
+ 93993
809
+ 54773
810
+ 03896
811
+ 13975
812
+ 93764
813
+ 12993
814
+ 13940
815
+ 94959
816
+ 03148
817
+ 23168
818
+ 94023
819
+ 23064
820
+ 53940
821
+ 03195
822
+ 04999
823
+ 53977
824
+ 23055
825
+ 24087
826
+ 13764
827
+ 24157
828
+ 53126
829
+ 53892
830
+ 24048
831
+ 53866
832
+ 24112
833
+ 14916
834
+ 14750
835
+ 03901
836
+ 14976
837
+ 94008
838
+ 94008
839
+ 64774
840
+ 04931
841
+ 12876
842
+ 23066
843
+ 03025
844
+ 04843
845
+ 53907
846
+ 23065
847
+ 23065
848
+ 93929
849
+ 13939
850
+ 04854
851
+ 12923
852
+ 53941
853
+ 13886
854
+ 94992
855
+ 03056
856
+ 24142
857
+ 12990
858
+ 94626
859
+ 93057
860
+ 12816
861
+ 53913
862
+ 14707
863
+ 04878
864
+ 24146
865
+ 53984
866
+ 93874
867
+ 94919
868
+ 14898
869
+ 14898
870
+ 53874
871
+ 24201
872
+ 14935
873
+ 03902
874
+ 03992
875
+ 94860
876
+ 94860
877
+ 13713
878
+ 14829
879
+ 13723
880
+ 03870
881
+ 03870
882
+ 14715
883
+ 24143
884
+ 53893
885
+ 53942
886
+ 93007
887
+ 23081
888
+ 94833
889
+ 03030
890
+ 53838
891
+ 13926
892
+ 03929
893
+ 13978
894
+ 03708
895
+ 53837
896
+ 24051
897
+ 53979
898
+ 63889
899
+ 53967
900
+ 04932
901
+ 03186
902
+ 54762
903
+ 04807
904
+ 53820
905
+ 54850
906
+ 53855
907
+ 13833
908
+ 03709
909
+ 93986
910
+ 12994
911
+ 04933
912
+ 04934
913
+ 03908
914
+ 04935
915
+ 94025
916
+ 12962
917
+ 03023
918
+ 03710
919
+ 53894
920
+ 94038
921
+ 63873
922
+ 03961
923
+ 14752
924
+ 93747
925
+ 93706
926
+ 93218
927
+ 03980
928
+ 93046
929
+ 03167
930
+ 94931
931
+ 54728
932
+ 24101
933
+ 94261
934
+ 04998
935
+ 53119
936
+ 53869
937
+ 13927
938
+ 03810
939
+ 93990
940
+ 14894
941
+ 24144
942
+ 03933
943
+ 53895
944
+ 23002
945
+ 94187
946
+ 53896
947
+ 53127
948
+ 04936
949
+ 53111
950
+ 03711
951
+ 93034
952
+ 14936
953
+ 13806
954
+ 03962
955
+ 12918
956
+ 94745
957
+ 94745
958
+ 53839
959
+ 94225
960
+ 63836
961
+ 53970
962
+ 04113
963
+ 03712
964
+ 12904
965
+ 13971
966
+ 03852
967
+ 63852
968
+ 53897
969
+ 93729
970
+ 94949
971
+ 93757
972
+ 12826
973
+ 03856
974
+ 94814
975
+ 64761
976
+ 03860
977
+ 53857
978
+ 63883
979
+ 03868
980
+ 93823
981
+ 14609
982
+ 12927
983
+ 26522
984
+ 13986
985
+ 23170
986
+ 14758
987
+ 94012
988
+ 93228
989
+ 92809
990
+ 54790
991
+ 63837
992
+ 94720
993
+ 12979
994
+ 94973
995
+ 03968
996
+ 04829
997
+ 04997
998
+ 04857
999
+ 53842
1000
+ 63884
1001
+ 03923
1002
+ 93738
1003
+ 04724
1004
+ 12960
1005
+ 94073
1006
+ 04937
1007
+ 94990
1008
+ 03928
1009
+ 03928
1010
+ 53118
1011
+ 24145
1012
+ 64706
1013
+ 94039
1014
+ 53943
1015
+ 53135
1016
+ 93167
1017
+ 04879
1018
+ 93785
1019
+ 04989
1020
+ 53898
1021
+ 54767
1022
+ 53944
1023
+ 04880
1024
+ 25626
1025
+ 04938
1026
+ 03972
1027
+ 13781
1028
+ 13748
1029
+ 13841
1030
+ 13841
1031
+ 04833
1032
+ 04833
1033
+ 24091
1034
+ 94893
1035
+ 93819
1036
+ 93819
1037
+ 53972
1038
+ 23040
1039
+ 14918
1040
+ 23141
1041
+ 93807
1042
+ 23194
1043
+ 03984
1044
+ 14937
1045
+ 53899
1046
+ 03144
1047
+ 14778
1048
+ 14938
1049
+ 54827
1050
+ 92813
1051
+ 94014
1052
+ 93726
1053
+ 04781
1054
+ 04881
1055
+ 04826
1056
+ 94761
1057
+ 03026
1058
+ 23104
1059
+ 23104
1060
+ 94926
1061
+ 94623
1062
+ 12969
1063
+ 04844
1064
+ 93909
1065
+ 93194
1066
+ 93244
1067
+ 54772
1068
+ 24166
1069
+ 03940
1070
+ 53945
1071
+ 13889
1072
+ 13889
1073
+ 03953
1074
+ 13973
1075
+ 53978
1076
+ 94051
1077
+ 03963
1078
+ 04110
1079
+ 94789
1080
+ 03730
1081
+ 53824
1082
+ 04720
1083
+ 63885
1084
+ 04939
1085
+ 03889
1086
+ 03889
1087
+ 13987
1088
+ 04940
1089
+ 14919
1090
+ 03713
1091
+ 14834
1092
+ 63801
1093
+ 53971
1094
+ 04726
1095
+ 53946
1096
+ 94854
1097
+ 53947
1098
+ 53966
1099
+ 53982
1100
+ 14833
1101
+ 54906
1102
+ 63846
1103
+ 04882
1104
+ 03714
1105
+ 14989
1106
+ 25314
1107
+ 24223
1108
+ 53995
1109
+ 03013
1110
+ 14835
1111
+ 12883
1112
+ 93091
1113
+ 14836
1114
+ 24022
1115
+ 23169
1116
+ 03950
1117
+ 23174
1118
+ 23042
1119
+ 23042
1120
+ 54735
1121
+ 24023
1122
+ 23020
1123
+ 53963
1124
+ 13776
1125
+ 12976
1126
+ 54925
1127
+ 03937
1128
+ 03937
1129
+ 54736
1130
+ 13812
1131
+ 04883
1132
+ 94765
1133
+ 12819
1134
+ 94709
1135
+ 93820
1136
+ 13702
1137
+ 93987
1138
+ 13976
1139
+ 14732
1140
+ 23129
1141
+ 03821
1142
+ 24148
1143
+ 94128
1144
+ 53973
1145
+ 53844
1146
+ 03875
1147
+ 23067
1148
+ 03731
1149
+ 93010
1150
+ 13963
1151
+ 53813
1152
+ 53813
1153
+ 14623
1154
+ 04941
1155
+ 03715
1156
+ 94285
1157
+ 04114
1158
+ 53919
1159
+ 94236
1160
+ 53975
1161
+ 24021
1162
+ 14939
1163
+ 14886
1164
+ 04809
1165
+ 63802
1166
+ 14921
1167
+ 54737
1168
+ 94049
1169
+ 24172
1170
+ 64752
1171
+ 53861
1172
+ 04831
1173
+ 04831
1174
+ 13810
1175
+ 03849
1176
+ 23243
1177
+ 04849
1178
+ 12907
1179
+ 03930
1180
+ 04942
1181
+ 93041
1182
+ 04108
1183
+ 14920
1184
+ 13829
1185
+ 23112
1186
+ 03982
1187
+ 03982
1188
+ 13902
1189
+ 93774
1190
+ 53964
1191
+ 23111
1192
+ 93812
1193
+ 04995
1194
+ 12975
1195
+ 23285
1196
+ 24150
1197
+ 04943
1198
+ 23054
1199
+ 53827
1200
+ 54826
1201
+ 53801
1202
+ 03997
1203
+ 94991
1204
+ 94723
1205
+ 24149
1206
+ 24036
1207
+ 13809
1208
+ 93767
1209
+ 04944
1210
+ 14994
1211
+ 53879
1212
+ 93009
1213
+ 13733
1214
+ 54926
1215
+ 03952
1216
+ 03952
1217
+ 63803
1218
+ 63851
1219
+ 93242
1220
+ 23023
1221
+ 23023
1222
+ 03818
1223
+ 03817
1224
+ 94296
1225
+ 94052
1226
+ 94894
1227
+ 14845
1228
+ 94048
1229
+ 93919
1230
+ 23208
1231
+ 54820
1232
+ 23257
1233
+ 12810
1234
+ 03947
1235
+ 94040
1236
+ 03813
1237
+ 12815
1238
+ 14940
1239
+ 03071
1240
+ 93810
1241
+ 63804
1242
+ 14711
1243
+ 14819
1244
+ 54911
1245
+ 93782
1246
+ 24152
1247
+ 13865
1248
+ 13893
1249
+ 23203
1250
+ 53996
1251
+ 14891
1252
+ 12959
1253
+ 94985
1254
+ 24225
1255
+ 03716
1256
+ 13864
1257
+ 04945
1258
+ 04789
1259
+ 13895
1260
+ 04884
1261
+ 53817
1262
+ 13736
1263
+ 53859
1264
+ 94950
1265
+ 03936
1266
+ 23206
1267
+ 24215
1268
+ 14710
1269
+ 03183
1270
+ 93768
1271
+ 12839
1272
+ 94011
1273
+ 94960
1274
+ 94895
1275
+ 13735
1276
+ 94988
1277
+ 04946
1278
+ 13988
1279
+ 14839
1280
+ 14840
1281
+ 63805
1282
+ 03811
1283
+ 53997
1284
+ 93953
1285
+ 14954
1286
+ 04834
1287
+ 12838
1288
+ 12838
1289
+ 93950
1290
+ 24151
1291
+ 04992
1292
+ 23176
1293
+ 14923
1294
+ 63886
1295
+ 24154
1296
+ 24037
1297
+ 14610
1298
+ 13942
1299
+ 03181
1300
+ 54788
1301
+ 94976
1302
+ 94887
1303
+ 03858
1304
+ 54738
1305
+ 94273
1306
+ 03040
1307
+ 94896
1308
+ 04855
1309
+ 13894
1310
+ 13894
1311
+ 23258
1312
+ 04885
1313
+ 24013
1314
+ 26621
1315
+ 04948
1316
+ 54789
1317
+ 94705
1318
+ 94983
1319
+ 04947
1320
+ 04949
1321
+ 14753
1322
+ 13766
1323
+ 94850
1324
+ 94850
1325
+ 13827
1326
+ 13734
1327
+ 93035
1328
+ 93765
1329
+ 54907
1330
+ 63859
1331
+ 53832
1332
+ 23259
1333
+ 13896
1334
+ 14837
1335
+ 24153
1336
+ 14922
1337
+ 94725
1338
+ 54746
1339
+ 04103
1340
+ 12916
1341
+ 14804
1342
+ 12896
1343
+ 93013
1344
+ 93744
1345
+ 53802
1346
+ 54780
1347
+ 63806
1348
+ 94897
1349
+ 04104
1350
+ 54723
1351
+ 24106
1352
+ 04950
1353
+ 93236
1354
+ 04951
1355
+ 54771
1356
+ 93894
1357
+ 94986
1358
+ 94724
1359
+ 03865
1360
+ 94869
1361
+ 24110
1362
+ 63807
1363
+ 93985
1364
+ 04952
1365
+ 14755
1366
+ 63887
1367
+ 93136
1368
+ 53921
1369
+ 13821
1370
+ 04953
1371
+ 53826
1372
+ 03131
1373
+ 94182
1374
+ 03041
1375
+ 13717
1376
+ 93205
1377
+ 04954
1378
+ 94852
1379
+ 93831
1380
+ 93901
1381
+ 12958
1382
+ 14855
1383
+ 93727
1384
+ 53847
1385
+ 14780
1386
+ 63890
1387
+ 53917
1388
+ 13762
1389
+ 03154
1390
+ 53848
1391
+ 93102
1392
+ 13911
1393
+ 12926
1394
+ 13750
1395
+ 12946
1396
+ 23239
1397
+ 13721
1398
+ 14611
1399
+ 93104
1400
+ 93837
1401
+ 12925
1402
+ 93776
1403
+ 23199
1404
+ 93743
1405
+ 53849
1406
+ 13754
1407
+ 03190
1408
+ 53115
1409
+ 93107
1410
+ 23110
1411
+ 03866
1412
+ 12974
1413
+ 24228
1414
+ 03855
1415
+ 93839
1416
+ 93839
1417
+ 12928
1418
+ 12850
1419
+ 94297
1420
+ 03853
1421
+ 23240
1422
+ 93115
1423
+ 93841
1424
+ 93116
1425
+ 93111
1426
+ 93114
1427
+ 13769
1428
+ 93117
1429
+ 03757
1430
+ 23244
1431
+ 24255
1432
+ 12973
1433
+ 93121
1434
+ 14793
1435
+ 94728
1436
+ 13773
1437
+ 03145
1438
+ 93832
1439
+ 93101
1440
+ 14790
1441
+ 93112
1442
+ 94299
1443
+ 93241
1444
+ 93753
1445
+ 23230
1446
+ 93217
1447
+ 94980
1448
+ 12861
1449
+ 53948
1450
+ 03741
1451
+ 03031
1452
+ 94958
1453
+ 04886
1454
+ 54912
1455
+ 14949
1456
+ 14941
1457
+ 93775
1458
+ 94063
1459
+ 53854
1460
+ 24126
1461
+ 26632
1462
+ 53833
1463
+ 03967
1464
+ 53121
1465
+ 13967
1466
+ 54807
1467
+ 53949
1468
+ 03717
1469
+ 94703
1470
+ 14622
1471
+ 94017
1472
+ 24227
1473
+ 03196
1474
+ 94951
1475
+ 63808
1476
+ 53822
1477
+ 04955
1478
+ 14942
1479
+ 03718
1480
+ 94197
1481
+ 92822
1482
+ 04956
1483
+ 04957
1484
+ 93040
1485
+ 24162
1486
+ 24285
1487
+ 03102
1488
+ 03737
1489
+ 54819
1490
+ 54919
1491
+ 12882
1492
+ 63809
1493
+ 53868
1494
+ 54752
1495
+ 04958
1496
+ 04959
1497
+ 94846
1498
+ 54756
1499
+ 13737
1500
+ 53998
1501
+ 94746
1502
+ 12841
1503
+ 04224
1504
+ 53962
1505
+ 14808
1506
+ 94855
1507
+ 04804
1508
+ 94927
1509
+ 24284
1510
+ 14950
1511
+ 04106
1512
+ 03948
1513
+ 93210
1514
+ 04960
1515
+ 94994
1516
+ 04961
1517
+ 53803
1518
+ 54704
1519
+ 93786
1520
+ 64707
1521
+ 93110
1522
+ 04962
1523
+ 03850
1524
+ 04887
1525
+ 03957
1526
+ 03163
1527
+ 54813
1528
+ 94898
1529
+ 94899
1530
+ 94173
1531
+ 03170
1532
+ 04109
1533
+ 04856
1534
+ 12968
1535
+ 24222
1536
+ 03816
1537
+ 03816
1538
+ 13846
1539
+ 23289
1540
+ 27506
1541
+ 93988
1542
+ 04742
1543
+ 64776
1544
+ 54913
1545
+ 12844
1546
+ 04832
1547
+ 92824
1548
+ 54852
1549
+ 04963
1550
+ 53863
1551
+ 24155
1552
+ 24155
1553
+ 24229
1554
+ 04964
1555
+ 54778
1556
+ 03058
1557
+ 54927
1558
+ 03882
1559
+ 03162
1560
+ 12812
1561
+ 13783
1562
+ 04852
1563
+ 93741
1564
+ 13739
1565
+ 04888
1566
+ 24024
1567
+ 23183
1568
+ 14842
1569
+ 53808
1570
+ 12873
1571
+ 24156
1572
+ 12957
1573
+ 24025
1574
+ 94823
1575
+ 03804
1576
+ 94967
1577
+ 14962
1578
+ 12986
1579
+ 94733
1580
+ 14841
1581
+ 23182
1582
+ 25625
1583
+ 92805
1584
+ 94086
1585
+ 13969
1586
+ 94732
1587
+ 54914
1588
+ 13899
1589
+ 04889
1590
+ 13923
1591
+ 13714
1592
+ 03180
1593
+ 03931
1594
+ 03993
1595
+ 03975
1596
+ 14757
1597
+ 03052
1598
+ 03998
1599
+ 53950
1600
+ 14604
1601
+ 53858
1602
+ 04965
1603
+ 93209
1604
+ 23184
1605
+ 63810
1606
+ 63874
1607
+ 25330
1608
+ 93955
1609
+ 14761
1610
+ 24163
1611
+ 14763
1612
+ 13868
1613
+ 04743
1614
+ 93983
1615
+ 93138
1616
+ 12935
1617
+ 93714
1618
+ 26526
1619
+ 94817
1620
+ 12936
1621
+ 93978
1622
+ 23149
1623
+ 54782
1624
+ 93058
1625
+ 93141
1626
+ 94129
1627
+ 03021
1628
+ 64708
1629
+ 14765
1630
+ 53951
1631
+ 24174
1632
+ 23097
1633
+ 03954
1634
+ 54915
1635
+ 53952
1636
+ 04838
1637
+ 14764
1638
+ 94263
1639
+ 54769
1640
+ 03045
1641
+ 54825
1642
+ 04134
1643
+ 32416
1644
+ 31502
1645
+ 33209
1646
+ 33602
1647
+ 94818
1648
+ 03171
1649
+ 14806
1650
+ 24090
1651
+ 12995
1652
+ 93772
1653
+ 03971
1654
+ 24231
1655
+ 24216
1656
+ 12984
1657
+ 24006
1658
+ 54928
1659
+ 03738
1660
+ 24257
1661
+ 14712
1662
+ 14767
1663
+ 04966
1664
+ 24230
1665
+ 94925
1666
+ 13722
1667
+ 23021
1668
+ 94022
1669
+ 94107
1670
+ 94822
1671
+ 04967
1672
+ 53104
1673
+ 04803
1674
+ 63811
1675
+ 93232
1676
+ 13740
1677
+ 03846
1678
+ 03016
1679
+ 23069
1680
+ 23119
1681
+ 24061
1682
+ 24061
1683
+ 94601
1684
+ 12972
1685
+ 53953
1686
+ 24027
1687
+ 53834
1688
+ 14717
1689
+ 64775
1690
+ 93801
1691
+ 03735
1692
+ 54821
1693
+ 12911
1694
+ 04968
1695
+ 23043
1696
+ 53120
1697
+ 23185
1698
+ 54824
1699
+ 94248
1700
+ 13741
1701
+ 14768
1702
+ 53954
1703
+ 04969
1704
+ 23009
1705
+ 04970
1706
+ 54909
1707
+ 53965
1708
+ 04890
1709
+ 14864
1710
+ 03029
1711
+ 53999
1712
+ 92802
1713
+ 04891
1714
+ 04971
1715
+ 93997
1716
+ 53958
1717
+ 14925
1718
+ 63841
1719
+ 12894
1720
+ 23052
1721
+ 94288
1722
+ 53920
1723
+ 63812
1724
+ 94737
1725
+ 53908
1726
+ 14992
1727
+ 93759
1728
+ 24057
1729
+ 23901
1730
+ 94194
1731
+ 54834
1732
+ 63813
1733
+ 04972
1734
+ 93781
1735
+ 04113
1736
+ 23232
1737
+ 93084
1738
+ 23049
1739
+ 23188
1740
+ 63814
1741
+ 12921
1742
+ 03822
1743
+ 94836
1744
+ 54910
1745
+ 23190
1746
+ 23122
1747
+ 04841
1748
+ 14848
1749
+ 93206
1750
+ 94033
1751
+ 93720
1752
+ 04741
1753
+ 23237
1754
+ 04973
1755
+ 23187
1756
+ 93821
1757
+ 03192
1758
+ 03178
1759
+ 94028
1760
+ 24233
1761
+ 03172
1762
+ 53143
1763
+ 14770
1764
+ 03969
1765
+ 53904
1766
+ 94290
1767
+ 12854
1768
+ 94990
1769
+ 94176
1770
+ 64709
1771
+ 23234
1772
+ 03719
1773
+ 04107
1774
+ 04996
1775
+ 64710
1776
+ 13995
1777
+ 13995
1778
+ 63888
1779
+ 92814
1780
+ 12977
1781
+ 04974
1782
+ 13925
1783
+ 23186
1784
+ 93760
1785
+ 04975
1786
+ 94227
1787
+ 24029
1788
+ 13957
1789
+ 13957
1790
+ 03763
1791
+ 24259
1792
+ 23293
1793
+ 23293
1794
+ 93027
1795
+ 23034
1796
+ 23034
1797
+ 04892
1798
+ 24114
1799
+ 12909
1800
+ 03012
1801
+ 14846
1802
+ 04976
1803
+ 24127
1804
+ 24232
1805
+ 53955
1806
+ 04893
1807
+ 53141
1808
+ 94740
1809
+ 03919
1810
+ 93998
1811
+ 03879
1812
+ 93937
1813
+ 63815
1814
+ 93225
1815
+ 24196
1816
+ 93197
1817
+ 24237
1818
+ 54785
1819
+ 23273
1820
+ 93184
1821
+ 03050
1822
+ 93911
1823
+ 23233
1824
+ 04112
1825
+ 24030
1826
+ 03059
1827
+ 03720
1828
+ 03101
1829
+ 53117
1830
+ 93804
1831
+ 04201
1832
+ 03028
1833
+ 92806
1834
+ 93822
1835
+ 13966
1836
+ 14972
1837
+ 04894
1838
+ 93231
1839
+ 53985
1840
+ 23902
1841
+ 12871
1842
+ 93083
1843
+ 53906
1844
+ 13849
1845
+ 12970
1846
+ 13878
1847
+ 14847
1848
+ 14926
1849
+ 04895
1850
+ 13993
1851
+ 13994
1852
+ 14927
1853
+ 23213
1854
+ 23274
1855
+ 92815
1856
+ 04824
1857
+ 94161
1858
+ 03966
1859
+ 03721
1860
+ 23202
1861
+ 54908
1862
+ 14943
1863
+ 93063
1864
+ 24258
1865
+ 63816
1866
+ 13824
1867
+ 14714
1868
+ 03965
1869
+ 23033
1870
+ 24235
1871
+ 54930
1872
+ 14771
1873
+ 13930
1874
+ 04129
1875
+ 12975
1876
+ 12957
1877
+ 03044
1878
+ 12984
1879
+ 12980
1880
+ 23070
1881
+ 54777
1882
+ 63817
1883
+ 03938
1884
+ 63818
1885
+ 92801
1886
+ 23048
1887
+ 93806
1888
+ 24207
1889
+ 93045
1890
+ 03722
1891
+ 24241
1892
+ 04848
1893
+ 94741
1894
+ 54822
1895
+ 03011
1896
+ 04102
1897
+ 93778
1898
+ 94087
1899
+ 13919
1900
+ 04896
1901
+ 94274
1902
+ 12898
1903
+ 54931
1904
+ 53914
1905
+ 54953
1906
+ 93805
1907
+ 93805
1908
+ 03979
1909
+ 12888
1910
+ 63819
1911
+ 04977
1912
+ 03191
1913
+ 03122
1914
+ 04978
1915
+ 03878
1916
+ 94830
1917
+ 13996
1918
+ 94053
1919
+ 12842
1920
+ 92825
1921
+ 23153
1922
+ 93984
1923
+ 94978
1924
+ 53956
1925
+ 13877
1926
+ 93201
1927
+ 53911
1928
+ 03104
1929
+ 03723
1930
+ 24242
1931
+ 54823
1932
+ 14792
1933
+ 12886
1934
+ 13968
1935
+ 73804
1936
+ 93862
1937
+ 23160
1938
+ 14850
1939
+ 94956
1940
+ 93230
1941
+ 03996
1942
+ 94178
1943
+ 04979
1944
+ 03986
1945
+ 13977
1946
+ 13972
1947
+ 13891
1948
+ 54776
1949
+ 63825
1950
+ 94194
1951
+ 04114
1952
+ 04116
1953
+ 04110
1954
+ 94184
1955
+ 94281
1956
+ 94794
1957
+ 63820
1958
+ 03742
1959
+ 94047
1960
+ 04897
1961
+ 94981
1962
+ 14880
1963
+ 94240
1964
+ 93989
1965
+ 63821
1966
+ 23275
1967
+ 64753
1968
+ 04980
1969
+ 03946
1970
+ 53901
1971
+ 04898
1972
+ 54739
1973
+ 53806
1974
+ 23903
1975
+ 53903
1976
+ 14787
1977
+ 12985
1978
+ 53871
1979
+ 13857
1980
+ 53856
1981
+ 93780
1982
+ 93214
1983
+ 03978
1984
+ 93234
1985
+ 93241
1986
+ 12912
1987
+ 23131
1988
+ 92816
1989
+ 63822
1990
+ 94030
1991
+ 53123
1992
+ 13997
1993
+ 93144
1994
+ 53818
1995
+ 93999
1996
+ 03838
1997
+ 93845
1998
+ 54829
1999
+ 03995
2000
+ 23130
2001
+ 94930
2002
+ 53873
2003
+ 13858
2004
+ 04846
2005
+ 63823
2006
+ 12843
2007
+ 54740
2008
+ 04858
2009
+ 04981
2010
+ 24032
2011
+ 03042
2012
+ 53101
2013
+ 63824
2014
+ 94298
2015
+ 92817
2016
+ 93795
2017
+ 04982
2018
+ 04983
2019
+ 63845
2020
+ 04899
2021
+ 63832
2022
+ 04221
2023
+ 93775
2024
+ 03725
2025
+ 26618
2026
+ 93739
2027
+ 53986
2028
+ 04820
2029
+ 03832
2030
+ 24198
2031
+ 53130
2032
+ 03159
2033
+ 13932
2034
+ 24128
2035
+ 94923
2036
+ 13860
2037
+ 14706
2038
+ 24062
2039
+ 94613
2040
+ 14794
2041
+ 23277
2042
+ 14615
2043
+ 03726
2044
+ 53957
2045
+ 25267
2046
+ 94163
2047
+ 92802
2048
+ 53976
2049
+ 12868
2050
+ 53922
2051
+ 04984
2052
+ 14853
2053
+ 24243
2054
+ 94911
2055
+ 14852
2056
+ 23195
2057
+ 53116
2058
+ 93044
2059
+ 93824
2060
+ 13025
2061
+ 33126
2062
+ 34108
2063
+ 34113
2064
+ 13201
2065
+ 11715
2066
+ 11706
2067
+ 11813
2068
+ 12717
2069
+ 61705
2070
+ 87601
2071
+ 32401
2072
+ 33311
2073
+ 25708
2074
+ 25715
2075
+ 25348
2076
+ 25375
2077
+ 25331
2078
+ 27401
2079
+ 26615
2080
+ 26415
2081
+ 26645
2082
+ 46402
2083
+ 27502
2084
+ 26533
2085
+ 26497
2086
+ 25316
2087
+ 25624
2088
+ 26418
2089
+ 25361
2090
+ 26410
2091
+ 26445
2092
+ 26633
2093
+ 26646
2094
+ 26643
2095
+ 26649
2096
+ 25704
2097
+ 25513
2098
+ 25501
2099
+ 26486
2100
+ 25616
2101
+ 26641
2102
+ 96401
2103
+ 26401
2104
+ 26422
2105
+ 25623
2106
+ 26407
2107
+ 25357
2108
+ 26650
2109
+ 26650
2110
+ 26523
2111
+ 26554
2112
+ 26411
2113
+ 26498
2114
+ 25369
2115
+ 26555
2116
+ 26551
2117
+ 26519
2118
+ 26501
2119
+ 26501
2120
+ 26509
2121
+ 26465
2122
+ 26513
2123
+ 26425
2124
+ 26628
2125
+ 26703
2126
+ 25310
2127
+ 25322
2128
+ 25335
2129
+ 26521
2130
+ 26548
2131
+ 26548
2132
+ 26552
2133
+ 25323
2134
+ 25507
2135
+ 26651
2136
+ 26522
2137
+ 26499
2138
+ 25376
2139
+ 25521
2140
+ 25404
2141
+ 25519
2142
+ 25506
2143
+ 26535
2144
+ 46403
2145
+ 25518
2146
+ 25309
2147
+ 96402
2148
+ 25503
2149
+ 26602
2150
+ 25503
2151
+ 26542
2152
+ 25325
2153
+ 27408
2154
+ 26502
2155
+ 25367
2156
+ 26652
2157
+ 26491
2158
+ 26546
2159
+ 27517
2160
+ 26480
2161
+ 26631
2162
+ 26557
2163
+ 26510
2164
+ 25402
2165
+ 25403
2166
+ 26512
2167
+ 26524
2168
+ 25377
2169
+ 26621
2170
+ 26635
2171
+ 26409
2172
+ 46404
2173
+ 26622
2174
+ 26451
2175
+ 26516
2176
+ 26435
2177
+ 25308
2178
+ 26644
2179
+ 25378
2180
+ 26617
2181
+ 26653
2182
+ 26412
2183
+ 26616
2184
+ 25628
2185
+ 26639
2186
+ 24690
2187
+ 25329
2188
+ 25508
2189
+ 25604
2190
+ 25613
2191
+ 26623
2192
+ 27515
2193
+ 46405
2194
+ 26654
2195
+ 26561
2196
+ 26704
2197
+ 27406
2198
+ 25617
2199
+ 26625
2200
+ 25333
2201
+ 26558
2202
+ 26553
2203
+ 26647
2204
+ 25713
2205
+ 25516
2206
+ 26439
2207
+ 25341
2208
+ 26414
2209
+ 26534
2210
+ 26514
2211
+ 26559
2212
+ 45715
2213
+ 26529
2214
+ 26634
2215
+ 25629
2216
+ 26528
2217
+ 26536
2218
+ 26492
2219
+ 26492
2220
+ 27518
2221
+ 46406
2222
+ 26508
2223
+ 26627
2224
+ 26560
2225
+ 26442
2226
+ 26479
2227
+ 26642
2228
+ 26442
2229
+ 26438
2230
+ 25338
2231
+ 27503
2232
+ 27503
2233
+ 26630
2234
+ 26648
2235
+ 26444
2236
+ 26443
2237
+ 26445
2238
+ 26484
2239
+ 25339
2240
+ 46407
2241
+ 26413
2242
+ 41419
2243
+ 41418
2244
+ 41414
2245
+ 41417
2246
+ 41406
2247
+ 41415
2248
+ 41420
2249
+ 22501
2250
+ 22508
2251
+ 22552
2252
+ 22551
2253
+ 22548
2254
+ 22550
2255
+ 21510
2256
+ 22536
2257
+ 22534
2258
+ 22547
2259
+ 22539
2260
+ 22514
2261
+ 22519
2262
+ 22521
2263
+ 22517
2264
+ 22524
2265
+ 22516
2266
+ 22526
2267
+ 21508
2268
+ 21504
2269
+ 22513
2270
+ 21603
2271
+ 40710
2272
+ 40604
2273
+ 22701
2274
+ 27403
2275
+ 26624
2276
+ 26638
2277
+ 40505
2278
+ 40309
2279
+ 40310
2280
+ 40504
2281
+ 40308
2282
+ 41606
2283
+ 42218
2284
+ 43285
2285
+ 43324
2286
+ 44402
2287
+ 43319
2288
+ 43323
2289
+ 43313
2290
+ 43219
2291
+ 43216
2292
+ 42204
2293
+ 42219
2294
+ 42215
2295
+ 41231
2296
+ 54702
2297
+ 11814
2298
+ 51601
2299
+ 51701
2300
+ 11640
2301
+ 11624
2302
+ 11603
2303
+ 11653
2304
+ 11630
2305
+ 11630
2306
+ 11641
2307
+ 11655
2308
+ 11649
2309
+ 11634
2310
+ 13601