wukong 3.0.0.pre → 3.0.0.pre2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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