replyr 0.0.1

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 (117) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +3 -0
  3. data/Gemfile +14 -0
  4. data/MIT-LICENSE +20 -0
  5. data/README.md +94 -0
  6. data/Rakefile +32 -0
  7. data/lib/email_reply_parser/LICENSE +22 -0
  8. data/lib/email_reply_parser/email_reply_parser.rb +475 -0
  9. data/lib/generators/replyr/install_generator.rb +15 -0
  10. data/lib/generators/replyr/templates/mailman_daemon +12 -0
  11. data/lib/generators/replyr/templates/mailman_server +50 -0
  12. data/lib/generators/replyr/templates/replyr.rb.erb +8 -0
  13. data/lib/replyr/config.rb +22 -0
  14. data/lib/replyr/engine.rb +14 -0
  15. data/lib/replyr/handle_reply.rb +36 -0
  16. data/lib/replyr/reply_address.rb +111 -0
  17. data/lib/replyr/reply_email.rb +50 -0
  18. data/lib/replyr/version.rb +3 -0
  19. data/lib/replyr.rb +26 -0
  20. data/lib/tasks/replyr_tasks.rake +4 -0
  21. data/test/dummy/README.rdoc +28 -0
  22. data/test/dummy/Rakefile +6 -0
  23. data/test/dummy/app/assets/javascripts/application.js +13 -0
  24. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  25. data/test/dummy/app/controllers/application_controller.rb +5 -0
  26. data/test/dummy/app/helpers/application_helper.rb +2 -0
  27. data/test/dummy/app/models/comment.rb +7 -0
  28. data/test/dummy/app/models/user.rb +3 -0
  29. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  30. data/test/dummy/bin/bundle +3 -0
  31. data/test/dummy/bin/rails +4 -0
  32. data/test/dummy/bin/rake +4 -0
  33. data/test/dummy/config/application.rb +23 -0
  34. data/test/dummy/config/boot.rb +5 -0
  35. data/test/dummy/config/database.yml +8 -0
  36. data/test/dummy/config/environment.rb +5 -0
  37. data/test/dummy/config/environments/development.rb +29 -0
  38. data/test/dummy/config/environments/production.rb +80 -0
  39. data/test/dummy/config/environments/test.rb +36 -0
  40. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  41. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  42. data/test/dummy/config/initializers/inflections.rb +16 -0
  43. data/test/dummy/config/initializers/mime_types.rb +5 -0
  44. data/test/dummy/config/initializers/replyr.rb +2 -0
  45. data/test/dummy/config/initializers/secret_token.rb +12 -0
  46. data/test/dummy/config/initializers/session_store.rb +3 -0
  47. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  48. data/test/dummy/config/locales/en.yml +23 -0
  49. data/test/dummy/config/routes.rb +56 -0
  50. data/test/dummy/config.ru +4 -0
  51. data/test/dummy/db/test.sqlite3 +0 -0
  52. data/test/dummy/log/development.log +0 -0
  53. data/test/dummy/log/test.log +12557 -0
  54. data/test/dummy/public/404.html +58 -0
  55. data/test/dummy/public/422.html +58 -0
  56. data/test/dummy/public/500.html +57 -0
  57. data/test/dummy/public/favicon.ico +0 -0
  58. data/test/email_reply_parser/email_reply_parser_test.rb +488 -0
  59. data/test/email_reply_parser/emails/correct_sig.txt +4 -0
  60. data/test/email_reply_parser/emails/email_1_1.txt +13 -0
  61. data/test/email_reply_parser/emails/email_1_2.txt +51 -0
  62. data/test/email_reply_parser/emails/email_1_3.txt +55 -0
  63. data/test/email_reply_parser/emails/email_1_4.txt +5 -0
  64. data/test/email_reply_parser/emails/email_1_5.txt +15 -0
  65. data/test/email_reply_parser/emails/email_1_6.txt +15 -0
  66. data/test/email_reply_parser/emails/email_1_7.txt +12 -0
  67. data/test/email_reply_parser/emails/email_1_8.txt +6 -0
  68. data/test/email_reply_parser/emails/email_1_9.txt +9 -0
  69. data/test/email_reply_parser/emails/email_2_1.txt +25 -0
  70. data/test/email_reply_parser/emails/email_2_2.txt +10 -0
  71. data/test/email_reply_parser/emails/email_2_3.txt +14 -0
  72. data/test/email_reply_parser/emails/email_2_4.txt +14 -0
  73. data/test/email_reply_parser/emails/email_2_5.txt +15 -0
  74. data/test/email_reply_parser/emails/email_2_6.txt +11 -0
  75. data/test/email_reply_parser/emails/email_2_7.txt +5 -0
  76. data/test/email_reply_parser/emails/email_2_7_1.txt +5 -0
  77. data/test/email_reply_parser/emails/email_2_7_de.txt +5 -0
  78. data/test/email_reply_parser/emails/email_2_8.txt +3 -0
  79. data/test/email_reply_parser/emails/email_2_9.txt +9 -0
  80. data/test/email_reply_parser/emails/email_2nd_paragraph_starting_with_on.txt +12 -0
  81. data/test/email_reply_parser/emails/email_BlackBerry.txt +3 -0
  82. data/test/email_reply_parser/emails/email_bullets.txt +22 -0
  83. data/test/email_reply_parser/emails/email_from_address_in_quote_header.txt +12 -0
  84. data/test/email_reply_parser/emails/email_from_name_in_quote_header.txt +12 -0
  85. data/test/email_reply_parser/emails/email_hyphens.txt +5 -0
  86. data/test/email_reply_parser/emails/email_iPhone.txt +3 -0
  87. data/test/email_reply_parser/emails/email_iPhone_de.txt +3 -0
  88. data/test/email_reply_parser/emails/email_iPhone_de_2.txt +3 -0
  89. data/test/email_reply_parser/emails/email_mentions_own_email_address.txt +6 -0
  90. data/test/email_reply_parser/emails/email_mentions_own_name.txt +6 -0
  91. data/test/email_reply_parser/emails/email_multi_word_sent_from_my_mobile_device.txt +3 -0
  92. data/test/email_reply_parser/emails/email_multiline_quote_header_de_mx.txt +8 -0
  93. data/test/email_reply_parser/emails/email_multiline_quote_header_es_mx.txt +8 -0
  94. data/test/email_reply_parser/emails/email_multiline_quote_header_fr.txt +8 -0
  95. data/test/email_reply_parser/emails/email_multiline_quote_header_from_first.txt +11 -0
  96. data/test/email_reply_parser/emails/email_multiline_quote_header_from_replyto_date_to_subject.txt +12 -0
  97. data/test/email_reply_parser/emails/email_multiline_quote_header_from_to_date_subject.txt +11 -0
  98. data/test/email_reply_parser/emails/email_multiline_quote_header_none.txt +11 -0
  99. data/test/email_reply_parser/emails/email_multiline_quote_header_pt_br.txt +8 -0
  100. data/test/email_reply_parser/emails/email_multiline_quote_header_with_asterisks.txt +21 -0
  101. data/test/email_reply_parser/emails/email_multiline_quote_header_with_cc.txt +9 -0
  102. data/test/email_reply_parser/emails/email_multiline_quote_header_with_multiline_headers.txt +14 -0
  103. data/test/email_reply_parser/emails/email_no_signature_deliminator.txt +7 -0
  104. data/test/email_reply_parser/emails/email_no_signature_deliminator_adds_a_middle_initial.txt +7 -0
  105. data/test/email_reply_parser/emails/email_one_is_not_on.txt +10 -0
  106. data/test/email_reply_parser/emails/email_sent_from_my_not_signature.txt +3 -0
  107. data/test/email_reply_parser/emails/email_was_showing_as_nothing_visible.txt +13 -0
  108. data/test/email_reply_parser/emails/new_content/email_1_2.txt +28 -0
  109. data/test/replyr/handle_reply_test.rb +46 -0
  110. data/test/replyr/reply_address_test.rb +77 -0
  111. data/test/replyr/reply_email_test.rb +19 -0
  112. data/test/replyr_test.rb +7 -0
  113. data/test/support/emails/reply_multipart.eml +35 -0
  114. data/test/support/emails/reply_plain.eml +11 -0
  115. data/test/support/emails/reply_with_attachment.eml +466 -0
  116. data/test/test_helper.rb +23 -0
  117. metadata +228 -0
@@ -0,0 +1,466 @@
1
+ Return-Path: <phw@phw.fritz.box>
2
+ X-Original-To: phw
3
+ Delivered-To: phw@phw.fritz.box
4
+ Received: by phw.fritz.box (Postfix, from userid 501)
5
+ id BB90ABBD5AD; Wed, 13 Mar 2013 16:13:25 +0100 (CET)
6
+ To: to.be@replac.ed
7
+ Content-type: multipart/alternative;
8
+ boundary="Apple-Mail=_04D34D25-5195-4224-84AC-96CCCE06E016"
9
+ Subject: test
10
+ Message-Id: <20130313151325.BB90ABBD5AD@phw.fritz.box>
11
+ Date: Wed, 13 Mar 2013 16:13:25 +0100 (CET)
12
+ From: phw@phw.fritz.box (Philipp Wüllner)
13
+
14
+
15
+ --Apple-Mail=_04D34D25-5195-4224-84AC-96CCCE06E016
16
+ Content-Transfer-Encoding: 7bit
17
+ Content-Type: text/plain;
18
+ charset=us-ascii
19
+
20
+ hallo schatzi
21
+
22
+ --Apple-Mail=_04D34D25-5195-4224-84AC-96CCCE06E016
23
+ Content-Type: multipart/related;
24
+ type="text/html";
25
+ boundary="Apple-Mail=_1341EAF3-201C-4A76-AF64-D9D9B7898023"
26
+
27
+
28
+ --Apple-Mail=_1341EAF3-201C-4A76-AF64-D9D9B7898023
29
+ Content-Transfer-Encoding: 7bit
30
+ Content-Type: text/html;
31
+ charset=us-ascii
32
+
33
+ <html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">hallo schatzi<div><img apple-inline="yes" id="D1A77CBC-3773-487A-A27D-D00F317FDDBA" height="214" width="320" apple-width="yes" apple-height="yes" src="cid:36B5E489-B849-41FD-86E8-486D44691EEC@fritz.box"></div></body></html>
34
+ --Apple-Mail=_1341EAF3-201C-4A76-AF64-D9D9B7898023
35
+ Content-Transfer-Encoding: base64
36
+ Content-Disposition: inline;
37
+ filename=3776_81188039054_3850717_n.jpeg
38
+ Content-Type: image/jpg;
39
+ name="3776_81188039054_3850717_n.jpeg"
40
+ Content-Id: <36B5E489-B849-41FD-86E8-486D44691EEC@fritz.box>
41
+
42
+ /9j/4AAQSkZJRgABAQAAAQABAAD/4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdC
43
+ IFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAA
44
+ AADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFj
45
+ cHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAA
46
+ ABRnWFlaAAACLAAAABRiWFlaAAACQAAAABRkbW5kAAACVAAAAHBkbWRkAAACxAAAAIh2dWVkAAAD
47
+ TAAAAIZ2aWV3AAAD1AAAACRsdW1pAAAD+AAAABRtZWFzAAAEDAAAACR0ZWNoAAAEMAAAAAxyVFJD
48
+ AAAEPAAACAxnVFJDAAAEPAAACAxiVFJDAAAEPAAACAx0ZXh0AAAAAENvcHlyaWdodCAoYykgMTk5
49
+ OCBIZXdsZXR0LVBhY2thcmQgQ29tcGFueQAAZGVzYwAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEA
50
+ AAAAAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
51
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAWFlaIAAAAAAAAPNRAAEAAAABFsxYWVogAAAAAAAAAAAAAAAA
52
+ AAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAA
53
+ AA+EAAC2z2Rlc2MAAAAAAAAAFklFQyBodHRwOi8vd3d3LmllYy5jaAAAAAAAAAAAAAAAFklFQyBo
54
+ dHRwOi8vd3d3LmllYy5jaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
55
+ AAAAAABkZXNjAAAAAAAAAC5JRUMgNjE5NjYtMi4xIERlZmF1bHQgUkdCIGNvbG91ciBzcGFjZSAt
56
+ IHNSR0IAAAAAAAAAAAAAAC5JRUMgNjE5NjYtMi4xIERlZmF1bHQgUkdCIGNvbG91ciBzcGFjZSAt
57
+ IHNSR0IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAAAAAAsUmVmZXJlbmNlIFZpZXdpbmcg
58
+ Q29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAALFJlZmVyZW5jZSBWaWV3aW5nIENv
59
+ bmRpdGlvbiBpbiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHZpZXcAAAAA
60
+ ABOk/gAUXy4AEM8UAAPtzAAEEwsAA1yeAAAAAVhZWiAAAAAAAEwJVgBQAAAAVx/nbWVhcwAAAAAA
61
+ AAABAAAAAAAAAAAAAAAAAAAAAAAAAo8AAAACc2lnIAAAAABDUlQgY3VydgAAAAAAAAQAAAAABQAK
62
+ AA8AFAAZAB4AIwAoAC0AMgA3ADsAQABFAEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQAJUA
63
+ mgCfAKQAqQCuALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEBBwENARMBGQEfASUBKwEy
64
+ ATgBPgFFAUwBUgFZAWABZwFuAXUBfAGDAYsBkgGaAaEBqQGxAbkBwQHJAdEB2QHhAekB8gH6AgMC
65
+ DAIUAh0CJgIvAjgCQQJLAlQCXQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMAAwsDFgMh
66
+ Ay0DOANDA08DWgNmA3IDfgOKA5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUEYwRxBH4E
67
+ jASaBKgEtgTEBNME4QTwBP4FDQUcBSsFOgVJBVgFZwV3BYYFlgWmBbUFxQXVBeUF9gYGBhYGJwY3
68
+ BkgGWQZqBnsGjAadBq8GwAbRBuMG9QcHBxkHKwc9B08HYQd0B4YHmQesB78H0gflB/gICwgfCDII
69
+ RghaCG4IggiWCKoIvgjSCOcI+wkQCSUJOglPCWQJeQmPCaQJugnPCeUJ+woRCicKPQpUCmoKgQqY
70
+ Cq4KxQrcCvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5DBIMKgxDDFwMdQyODKcMwAzZDPMNDQ0mDUAN
71
+ Wg10DY4NqQ3DDd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8JDyUPQQ9eD3oPlg+zD88P7BAJECYQQxBh
72
+ EH4QmxC5ENcQ9RETETERTxFtEYwRqhHJEegSBxImEkUSZBKEEqMSwxLjEwMTIxNDE2MTgxOkE8UT
73
+ 5RQGFCcUSRRqFIsUrRTOFPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZsFo8WshbWFvoXHRdBF2UXiReu
74
+ F9IX9xgbGEAYZRiKGK8Y1Rj6GSAZRRlrGZEZtxndGgQaKhpRGncanhrFGuwbFBs7G2MbihuyG9oc
75
+ AhwqHFIcexyjHMwc9R0eHUcdcB2ZHcMd7B4WHkAeah6UHr4e6R8THz4faR+UH78f6iAVIEEgbCCY
76
+ IMQg8CEcIUghdSGhIc4h+yInIlUigiKvIt0jCiM4I2YjlCPCI/AkHyRNJHwkqyTaJQklOCVoJZcl
77
+ xyX3JicmVyaHJrcm6CcYJ0kneierJ9woDSg/KHEooijUKQYpOClrKZ0p0CoCKjUqaCqbKs8rAis2
78
+ K2krnSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5MLoIuty7uLyQvWi+RL8cv/jA1MGwwpDDbMRIx
79
+ SjGCMbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0njTYNRM1TTWHNcI1/TY3NnI2rjbpNyQ3YDec
80
+ N9c4FDhQOIw4yDkFOUI5fzm8Ofk6Njp0OrI67zstO2s7qjvoPCc8ZTykPOM9Ij1hPaE94D4gPmA+
81
+ oD7gPyE/YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9Q8BEA0RHRIpEzkUSRVVFmkXe
82
+ RiJGZ0arRvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxLU0uaS+JMKkxyTLpNAk1KTZNN
83
+ 3E4lTm5Ot08AT0lPk0/dUCdQcVC7UQZRUFGbUeZSMVJ8UsdTE1NfU6pT9lRCVI9U21UoVXVVwlYP
84
+ VlxWqVb3V0RXklfgWC9YfVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114XcleGl5sXr1f
85
+ D19hX7NgBWBXYKpg/GFPYaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm6Gc9Z5Nn6Wg/
86
+ aJZo7GlDaZpp8WpIap9q92tPa6dr/2xXbK9tCG1gbbluEm5rbsRvHm94b9FwK3CGcOBxOnGVcfBy
87
+ S3KmcwFzXXO4dBR0cHTMdSh1hXXhdj52m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtje8J8IXyB
88
+ fOF9QX2hfgF+Yn7CfyN/hH/lgEeAqIEKgWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6GcobXhzuH
89
+ n4gEiGmIzokziZmJ/opkisqLMIuWi/yMY4zKjTGNmI3/jmaOzo82j56QBpBukNaRP5GokhGSepLj
90
+ k02TtpQglIqU9JVflcmWNJaflwqXdZfgmEyYuJkkmZCZ/JpomtWbQpuvnByciZz3nWSd0p5Anq6f
91
+ HZ+Ln/qgaaDYoUehtqImopajBqN2o+akVqTHpTilqaYapoum/adup+CoUqjEqTepqaocqo+rAqt1
92
+ q+msXKzQrUStuK4trqGvFq+LsACwdbDqsWCx1rJLssKzOLOutCW0nLUTtYq2AbZ5tvC3aLfguFm4
93
+ 0blKucK6O7q1uy67p7whvJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hjwl/C28NYw9TEUcTOxUvFyMZG
94
+ xsPHQce/yD3IvMk6ybnKOMq3yzbLtsw1zLXNNc21zjbOts83z7jQOdC60TzRvtI/0sHTRNPG1EnU
95
+ y9VO1dHWVdbY11zX4Nhk2OjZbNnx2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A24L3hROHM4lPi2+Nj
96
+ 4+vkc+T85YTmDeaW5x/nqegy6LzpRunQ6lvq5etw6/vshu0R7ZzuKO6070DvzPBY8OXxcvH/8ozz
97
+ GfOn9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX+uf7d/wH/Jj9Kf26/kv+3P9t////2wBDAAICAgIC
98
+ AQICAgICAgIDAwYEAwMDAwcFBQQGCAcICAgHCAgJCg0LCQkMCggICw8LDA0ODg4OCQsQEQ8OEQ0O
99
+ Dg7/2wBDAQICAgMDAwYEBAYOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4O
100
+ Dg4ODg4ODg4ODg4ODg7/wAARCADWAUADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAEC
101
+ AwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0Kx
102
+ wRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1
103
+ dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ
104
+ 2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QA
105
+ tREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYk
106
+ NOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaH
107
+ iImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq
108
+ 8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9KreNSAccHmte3hO3H3R2wOlRWihlAXDHHYVuwxZcEqMj
109
+ pX+ZsYa3P6BxOIsNhh28FdvoPWtCOIhRwdvYZqSOE5B5UdwavLHtGRnPr6VvGKueJWr3Y2NGCrls
110
+ 8dxVgL833QcjrQgyM5Xrye1WVUgDH6dK05UefOY1Ub3P1qVU+bHc9aeq89cg08L+7AwGPrVKKRzS
111
+ mIuOgBP+elShOAdpOPalUYAzke1SqhJwScjpz1r0aOHvbqYykM29hg8j8KUKSD0OO+KkCEZ+vepg
112
+ pHJGcjtXoRwq3tYxcyADGOzfWpBGQxIw3tip1UYG4fmO9PEYKjAGM8V10sL3MnVIAgztYcmnMhLA
113
+ Z5/zmrCpuB5A57Uuzk/X1rpjh9vMz9pqQGPcpB/SmCP/AGj71b2kN05+lKUY44KgHuetWsMn0F7Q
114
+ rqCVxgCmFFAzkGre1uQDnB9aGjA7HPeq+q3V7C9oUiDyO4560hGDkHdj161Z2LtPH5cUwoQcAD6i
115
+ sJ0LbmincpsuQSPm9PaoyMnjb7jFWmQ8gYA+tMK/e+U1w16F3c1jMouPmB6EmomQ5OBuGfSrhX5O
116
+ QcdOTUbKckglew/xry6uHadzohPUosAQOv8AhULr6HHtmrrDr8pHPJxUJUlxj8DiuBnVGZkNHkkk
117
+ Csm6RgVxjp+tdM8fzAEHB/Ssq7j3ryBwOeBgVSiejhq1pI5xlbIJAz3rnL8iHxRYT7Bkl4249RnP
118
+ 6V2Dxkx89AK5vXrcG0imIBaOVSG788H+dS43du57VKrdlbW4jceF71eCvlN9OlRRjytKgYdCg47V
119
+ cJE3hqUkrnymzz7GqHzf2HaYJP7lT19q8vFRtFI9Kg7vlOV8WX62eiIN2HlbaoIySMEn9M1k6LBL
120
+ FoVv5oO6RTK6nsWO7H6j8qr+LLeS/wDGuj2e4+SsLM4HHLMBn2woNdQkX7mQ4wgGB0orNRpxgvVn
121
+ r4aPKnJnjXxBmzrlirMFgs4ZruTPJyFCKPzc/lXy/e2Uk1zpNs5JJWa6mGOgY4APr3r37xtcm+8W
122
+ 6tax/O58q1zk8AHcwz+K15JNCsviDVJoiPndbaEg/cSP72PTLEiv0DI5exo+Z8lmsfaVF2HaLbLN
123
+ 4It1x/qmeLIOSAGOB+WKw9T0/lsAFsnnH5V3Ph61KLq1o3CRzK659GGD+oqHULEEkbQTjqB+tf2t
124
+ whjPrWT0Kl/spfp+h+DZzhnRxlSPn/wT9BNHlW402CYFSrICCK6yEfdLBduO1ec+ES1n9q0qblrW
125
+ TamRxsPKn8j+lenwYZAe/TjgV/nxOCvdPQ/cce2palhEOQSuec+tWwo29xjvUacE54HXip1UEAnn
126
+ J/OqhvoeHOQKpA9TjB4qdQT0JJzTNuOR375/pUq9hg8f5/GtbaGMnckCnA9O9SBRtB6jPrQoHp26
127
+ GpQp2gnGPfpXXQoPe1zmkxm3C4C575zVpFJTGAc9qagy+PfrjirSqCuQCPevbw1DW5z1JjFQ7c4H
128
+ 41Ki98DNOUHbx82enSpUXkt8pNelSpnM6mhEAc8jP0FSY46L6GpTGrfM+CPQU/AwMZx14FddOg1b
129
+ sZOZFsUM2eAD9aUIAeADxznoKk43ZI47ZNO4A4K9MjjOa6I0ldkc5DtO8nkcckUvVe/vmsbXdd0/
130
+ w9pEd9qTyR2zzLFvRS2Cec4HOOK0rK7tdQ05LqyuY7iBxlZEcMp/KnGDvoi5U6ih7Rxdn16Ezukc
131
+ G5mVR33dBRngkjHvXknxg1ptP8CW+lW7Fbq+lyxDciNMMfzO0VW+HXxCOqQQ6DrkwGpKm22uGP8A
132
+ r8fwk/3/AOeKv2ep7NPIMVPLvr0VeN2rdbLr6HsDNtG4hcAZJzVSOWC5tkuIZVliZQyPGwKkeoNe
133
+ VfFfxe2maOPDunyH+0buMm4dDzBF07d25/DPqKx/g/4mkNvJ4XvZC3lq0lgTxx/En9R7ZrGrh5HR
134
+ Dh7FPLHjul9utu/oe3tgHCjr6mmFS2Q3HHOO1c74p8U6b4W0lp7thLdOD5FqhHmSn+gHc/8A6jW8
135
+ D+IpPFHgpdQnjiiuVmdJY0JKgg5GM+xFefUw00rtaHAsFiPq31jlfJe1/M6grmPPHPfFV2UbQOCf
136
+ pWhghSR6VDsGPc964K2HurGFOoZxXnpkVCydgSSB0FXpEwzEYOfSomHT7uP614eIoWdkdcZlBk4x
137
+ +VZs6HB4wCMcDmtl8YI4Bx196zZFDE4BOO3rXFY7aE9TFkiwGBwM9M+lYuowh9LnXBxsJGeMH/OK
138
+ 6VwAcAcVhamrf2bdlCQxjO38RVxWqPZw9TU4yS5FlpWpLKQFRWYMeRg//XqaaMLpcCtjCxgfTiuY
139
+ 1eZ7iJ7dXx52ow2w4+98wLforV1t6cW3ONo5rz8zpKMY+Z72FleSZyEtuJPFLXLkN5UCoiD1OST+
140
+ XH51D4i1W28O+CL/AFe6YRwWsBdgTycdAPcngfUVoqQL+8kYqsceCSxwBxyfavDfEuoT/EDxvplj
141
+ bF18KQXXmqR/y/eUckj/AGM4XPpnueIwlBVKnNJ2S3Z61Wb5Ukcn5VzZ+E7nXNW2i72PczEHKq75
142
+ YKD3xwPwri/D+nNMbbzcZZtzkkc9z17kknNdz8QrlrjUbXw7bMCPMD3ZXpxzgn/OKh8PWSyzMYse
143
+ VF+7XsGPdv6fhX1tCs6eFc5aOXTsuh4VaPPiEraIqafCi+M9TgQcG1Rjjjozc/5FOvbUMWJXj0Oa
144
+ swuifG28sgeTpgI47hx+Vad5Ap4wSe+e1f2D4Uz5+HKPlf8AM/EeLrxzSpp2/I+r7qM2fjDT9QX7
145
+ s2beY88ZyU6e+Rn3r0GzJaANzjnJHWuQv7YXmhTwqNsv3o89Qw5B/MVsaJfrd6TBMN3zqMrnO09w
146
+ celfwzB3pryP13FR5oXOtXBI+8anXG30J54qnG+VQ9SB2PFTpgtjlux56VUGrngzTLaA8j8galGM
147
+ DIxz3qJOQRnHPNSoef7v0FdFlYwmSqyjGBjjODU65OBuAzxUC42gj0qwuSqjivTwcWtzknsWF+90
148
+ +tWFU7B94kVWQjecsTgfSp1foBn2Fe7RaVr6HLO5Ovy9Qc9QfWn5HmDorUxWJ5wOO2KlB+YfMSfS
149
+ vQp8r2ZzSYozngg/QVJg7vUjpTewAyR7dadjOQc47+9dVNamdytd3dtZWMl1e3EVrbxn5pJGwoyc
150
+ DJNPgntbm2823mhuY2GQ8TBhg+hrnfGtj9r+FOvQAAn7IzKATnK/N/Svkq01TU9LuhJpmo3do+cN
151
+ 5EpUfiOh/GujRatH0+Q8LvNaE5wqcsovZ7dz3j4z3Gzwdo9v0aS93EeoVD/iK8T8O+I9Y8Maj5+m
152
+ 3JETEF7Zjujk+o9fcc0/W/E2t+IYbSLV7mK5S23eVIECk5x97HB6VkCMGPaozjuByMfyrO6cr3P1
153
+ DIciWHyxYXEpSu3fr/wxu+L/ABHceLNfiv5oEtgkSxrGHyFxyf1J/CuaVHWdSsjb1O4MpIweuR6Y
154
+ 9as7T14wR9KSM+Wob+I8gHjmqgrnv4bC0sPh1RpxtFdCG6lub3UXvLuaWa4lbMkkvJbAwDn24ptn
155
+ Nd6dqSXlpM0d1BIJInXggg9f1x71baMMinnfnB7/AK1VkAWYOx7Z68VcnodEFGVN07Llta1tPQsX
156
+ 95favrkl9qNw1xdsPnJ7DsAOw6cV6T8LNbg0jXdStdRuVtbGeHzA0rbVV046njkH9K8zIzCCACB3
157
+ NI43KANxycA8/wCfT1punzxs9jzMxyunisG8L8Meluh7l4g+LdlbM9voMH9oyg4FzJlYvwHVv0r0
158
+ fw9qMur+BNK1K5UG4nt1aQKMDd34+ua+Pwg8wNtGD2Pb/wDVX0n4M8Q6Lp/wi01b/VLW2eMOu2SQ
159
+ Bj857da4sThbU/dR+f8AE3DWHwOEpfVoNyvq929D0B1JXnGAeh/lVd+hwD9PWuZtvHfh/UvEltpe
160
+ nzz3M0rFQyREIOCc5OOOO2a6mTnPyg8V8vj8PKFnLsfGyoVaLSqRab7lR89OPaqUi71JzjHcCrjY
161
+ BPBOe1VZFAj5Y8ngdq+eW500nZGVKQqbsnAOePSse8XdG6HjPHt3rbmUeW/JwRjAHTtWFMcwqGOX
162
+ zzkd+laNaJns4V6nl/lufH9rZMuRHdz3hJHGCiqv45c/lXSXgYWq8ducjpWcTGvxHu5myzfY1A4P
163
+ QN/9al1HVIzDJ8pwqnI6c9q4MxTnUUfQ+kwkZNprY83voLvxHrOp6RIJ7Pw7DN/xMZR8rXmVBECH
164
+ smPvsOudo74wLe4hOqa1qcEKQwWwFjZhVwsSoMttA6ckD8Kv+IfEUmlfD4/2fC0ms6jOYrSPu0rs
165
+ QvPoByfYE1gaxGugfDe20xXkkZItrt3kcnLEnuWYk+tEFKdl0vb/AIJ7c7Ri2eT3bG61m7uuHyxW
166
+ IE575JJr0rw9aJaaAJH/AHcUacAfxHr+ZNcFZwCS6VGchIvnuGHQN/Cgr1Xy1sfBxlkHz7M4/ujH
167
+ T617ONr2jGmmeVQpq7k0eRWcrN8eRcSD55d8R29PukgfhjFehXcI5JAPHArzu0Ur4w0q9lbDz34A
168
+ I/2tw/qK9Uuo+Ox4496/rzwYxDnksoP7Lt+Gv4n4hxtS5Mffuj6W0+4WeKKWNt8cijDZzx26U3Rn
169
+ az8R3+nuAEDieEY/hfOR+DZ/OuL8HanPPaXFlfQva39nOY5IckhAeVKn+JcdD3HvnHT6nN9i1vTd
170
+ TJITd5ExHQq+MZ/4Fj86/i6mlGpbufsWKoNSce56REcgFsHHc1dQncCRjHQmsa0uPNiHCdMEitWN
171
+ /lxjtitIw5XY+YrwcbovBjtHIx7ipVfI44PXmqgbB6H1HPWpFb5yccn1rZPQ4pRuXF+XPSpVbDAk
172
+ dTxxVYbd2VPQ56dalQnvgEjmuijOSlY5pwLZbCjtz9KmRmAOep9Krodqkk4/Cp1IzjGAD6V7VGbk
173
+ 7nNMtJgH7uee3rU4ZARnaD2zVdcBMgAe1Sfqx65r16bajocsyfdgEEMe2Cea8o8T/Ey48L+NZ9Ku
174
+ NCW5iRVeORbnaXVhwcbfXI69q9QDfMQAT2PH8q8f+Luite+HrTWYkVZrZ/Km4/gY5BP0P8676M+Z
175
+ 6Hq8PUMJVx8KWJV4S03tZvbYpT/GXTr3Rru0k0S+j8+BkOJVIGRj2rwhQodgECEDKjPJHrj8hTdh
176
+ wVVug+8en+RVjBDElQDg9uvFdD1Wu5+35VkWDy3m+rprm31b2Hrt8vkFl/I1YiPyFc4JOBz/AJ61
177
+ XGOw3he2eg+lWTsEjKQVJyRjqeP/AK9TF3PQqEeWOAq5yerDHfik2/usuxJAztJqVsGbKHDYznP1
178
+ z/jSnYJyFXOcggHGR3q7Ec6K5+fauWXB4OPfrioypMhBOfrz+FWTtkZQG3KeME+n5GmOwGwHJOec
179
+ jkcmqavoXCT6AFIj2bd7E9Md+/0pzbmiGwYIOenQUqYSRMdDwTnFNDKVYoSQDwBjn/PWtIpPqQ3r
180
+ qM6sp+YsUyOcE5FMKfKhwAOmwc7vrjr/APWrp/D3h6+8R6i9pYiFPKjDymR9uBnjp17flXTeIfAB
181
+ 8O+C21R7/wC0To6qyIm1VB9yeecfnQ6kYy5W9Ty8RneEo4hUJy992svXb0KvwztUn+IhuG+YW1qx
182
+ A7AnC/nya+gHYc/K3Br5M0vxJqWhSSPpkggaUASb0DDgk4wf8muy0Tx34y1bxTY2CzWbCWVVb9wM
183
+ Bc/MePQZrw81y+rVqOaeiX5HyvEnD+MxOJniE1ypdXbRHvL/ADH/ABFVjlYyOtWG6c/Wqkp/eZyO
184
+ RjpXwV7yaPhqWpnudu4D5QenNczdzbLknPUbhXST/dLDqBnJNcJrVwsSW5Z+XUquW9wfzrak7ux7
185
+ eEVrnNzEN8QIEVwfNhdTk8nbzjrxyRXO+JHS20S5kDlQTlmc4GM/41urMh+ItjtbOyzkc+mWZVH/
186
+ AKCa8i+IF1qGs20HhDRGA1HUbnEs6f8ALtbhyZJT9AAB6kinWw6qVFfZLU9/CTkvd7nP6JcjxP8A
187
+ FKXXHdP7I0kmz0zd915QMSSD1AHyg/71O8b3Akvo4Eb5V53nn0xgDvk/pXTxaTYaVp+k22kxiKzs
188
+ /wB1EQN24AHLE/3ieSe5rgdVzqnj5opCwii/eTsOwzwPx6VyUKkalfmjpFbHt4mNo2LGh6WJJrSC
189
+ NQMt5kjdcn/PNdF4ul220WmpgEjL5/hFaulLFZ6Xc6ndBIYIoyQuPx5rhYXm1vV59QuGaOF2LKMf
190
+ w9vwxVe15qvP0RzW93luchrr/ZLzRAowEvI3+U4IAcfpXr80ZOOOfbPFeNeMJlZ5HXBEZXGOcYIN
191
+ e0jbLZwyj+OMNgn1ANf1h4FV+bBV6b6NP7z8X8Q6dsVCXkeo30y2esWeogFVZhBOR/dY/Ln6Nj/v
192
+ quivoF1Dwpc2xYqzxEKepVh90/gQK890TxZ4W8feCpLrwzrdhqtrLGQGhkBZG7ZHUHPr6V0vh3UD
193
+ d6JG0+VnQFJk6bWXgj86/kBwnS0kmmt7n7HiKex1fhTVxeeHrWVtyvt2OhGDuXg5/Ku3SchsnA9F
194
+ rxPR7s6T8SdR0p8rDc/6TalsbRuOHA9PmB/OvVoZfMwc9R0P8q9OaXxdz5zGYdOVzfSYPuP3jjp2
195
+ /GrS4B3MOfc1mRSAAYAzjJI4Aq0jnzOODngdeKiO1zx6lPXQ0wc42njt9PpVgNtHIAWqEbYJBO7A
196
+ 5I6mrKNkdOB61SqWZxziWsgkgj61YjfoRg5PJFVB0PUHr14qZW2/xDHp2r0qFezuzlnEuqwYZI68
197
+ 1PnkYb8fSqgcFR3Pp6U9ZdxA4x6jtXt0q9upxzieI+K/iJ4s0Txbc6Z9isLNVP7mXYz+Yp6NyQPw
198
+ rzrUvGPifWLZoNQ1aaSzYZaFVVUcehAHtmvoLx14Yh8S+Fy0QjXU7ZS9s5x83qpPof0NfLJ2xyLC
199
+ UVSjkMDjII4xX0WFnCcLo/WuDqeWYrDKUaKVSO+n3PUmRRzvGMg5461KNu58M23sW6jNNGW67vrw
200
+ M81MkB81t2WXoVC5I/rXRytvQ+3lJJasRch2KqTjuDVgIxbLGLPHQ/rUyDHyj06MRk8Y7/1pygpI
201
+ UkKqwbliARz6Z71ap+RyTq3IDAd7EcYHzZPJ9+PwpNoEqqCS2BnPAr03Tfh1q17brPcTw2ETnIBO
202
+ 9gOo4HA/Os3R9Lsbf46t4fv4EvrdZmRS4OGOzcCccfh71g6lK7szwnxDh5KpyPmcE27eRwwhkaOS
203
+ WONniVS0jIuVA9SR07/nXSeFvCN34ra4khubW3t4HAkMgLHJ5GFH496971vT7aP4d6tp9tbw28LW
204
+ sgCRoFX7pPavNfhHKPtWsW68B40lC9+CQf51ySxblScoLY8R8T18Rl1etSXLKLVuuj6nRWHwx0Kz
205
+ gV9Te41Jkwfnby4/wC/1NdS3g/wxJYtENHso0YYyiANz33Dn8c1i/EiA3HwpuNu4tFMkhw3UZwfw
206
+ 5qf4f373PwrsPOJZ4C0J5zwpOP0wK5HKfslUlI+OxFTG18J9blWbfNa3brf+kcb4Y0//AIRf4+3u
207
+ kLuNtPalomPJKkhhk+uQ35V3njWD7Z8MtZh3A4ty4+q4P9K4nxfcLpXxq8M6wchHXy5Mdhuwf0au
208
+ 88RATeAtXHJ3WUmMN/smor1n7SnO+jOvGTqTr4XEyeslG7807fofJTMT6sMEjjrXpPwzj0+PxLc3
209
+ l7PBDcxpsgikkALEn5mGT7EfjXmWcW27JODjAJI+v+fSommJibdu+U9zx9P6V7GMoe3pOCk1c/Yc
210
+ ywEsbhZUlLlufZTOMAnAHr1NU5ydp5BGOteKfDe31u61M3RvruPRrbKtE0hKSvzgYOenU49vWvY5
211
+ JMoQOWA471+cY/CrDVeXmTsfj+Oy/wCp4l0VJSt1X5epmTSD7PNkkNtIry/xVckXOkqDn/TNnXGM
212
+ rnP6GvRrpysjKMBjk8d+a8Z8aXDf25o1uMkPdg7c8DCt+XWqw0E6ljspLlhcqfbVg+IF/MWLCHTm
213
+ JGOwI9fXn86+fvA2tajrOtazdrL52p6pOYImVcC3t0J3tn3YkD1xXonirUVsE8Qzq2wnTCnAwfmf
214
+ Ax3PGea5vwDZWfh7wzHKYlW7lALAnG1T0Gf1+pp5hanh2lvI+gyeClLml0PQdXa00nw5gb0jt4uo
215
+ PU4615t4btZdQvpZnJzPL5spUc47D8B/Op/F2qS6lcRWMXMbyAYzneff2p11qCeGvCSWdrIDqk4w
216
+ SB0J/wD115FKHJT5esvyPZnFyav0GeLdYiuLmLQrd2+yxENcqgyWPZeKgE32XS4oAAJ3XKxZ6fWu
217
+ dtlMEgLfvrpm3TTPzkmt2KFMl/nZzwzHqa3ajGyMeW5xPiddujXB5YhSc45OeSfrXsejXAu/BOk3
218
+ CuSslpG2ev8ACK8e8Zkw6GykBGfk+uK9B+H96bz4M6JI3EkcJibA/ukr/QV/S/gTXvOvBvdL8D8e
219
+ 8R6dpU5ep4X4h+H9jceJ5tf8PSah4I8VkZGr6FOYXkP/AE1j+5KD7j8a9r+BGv8AjBLjUdA8b3Nl
220
+ faosnnW19bJsW8jPBYoc7XBHIHHIPeqXiDwxJYwvfRXMjwZGN+NwYnPPr/OuRh1m+0bUrXVwXzZS
221
+ Bz8xKtGeHGMnPHP1Ar+cXmVevR+r1feXRv4l6Pf5bH7ziIQrUHKG59M+OIZba307xBBgPZXKiduy
222
+ xtwc8+uD+deqaJqMV9pcMsbnaRzjrXm1lqFh4n8DujSLLDc25RwTwcg8g1jfD/Xmt7efQ72Rhd2E
223
+ zQtu4DYOAcj2xUUU5UXBrWJ8ZiI3l6n0ZBKofbleDySevFXldXYgEFT1I5rk7O8EtusituBAAIHB
224
+ +tbaTbohzj6Gsr20PGr0Hc34ZB8ox249varaNjGT+tYEcpMY/iOem6tSKTB7BSOO5OKbaPMq0mma
225
+ cb56dD3zUqksMZBIPPvVNXBII47njtUg2+YJACZBwD9f/wBVEajOKcTSVlYdST35rlfFviiXwxoa
226
+ 3UWlzXwfIEmdscZ7bj157DFb6yYwMnjjINPuI4LrT5YLmJJoHTDo44YH1Fe3gsZSjP31czpezhUi
227
+ 6keaPVHyzrPjbxDr7yJeXxhtd3+otsomO2ccn8a52MqFXa4clupPJJ7fSvRvG3gc6IjappLq+nM+
228
+ SjHDQn09xn8R7jmvNsMJA/UHvt719xhqsJ01KGx+55JUwNbCqWFiox7ea7mzplrealdLaWUM11dO
229
+ CVSMZwM9fYfWvUNL+GesTwo2oXUOnx7eijfIPwHGeneuS+HF2bf4q2EeMmVJEGRjquT/AOgivonW
230
+ zdP4S1NbVpBeNbt5JjYq27acYI5zn0rix2OlTnyRdrnxnFec43DYtYek1FNLXrqcxa/D3w/bKPPS
231
+ 4unAwzNKV/RcYrzbx74bt9AvrKewMy2t0WAjeQttcY6Z9R+WK9G8CWetWPhS4GsvO8kk26FJ5C7q
232
+ uAOvOMntXDfFDVLiXX9Osfsk6QwqzLJIMCRjjO0nsMdfeufB15vFOHPdHkZLiMZLNVSdbnjrfXRq
233
+ 3Q9l0O4a58G6ZOMHzLSNiSeSSoryHVj9j/agt5uVWSaFicjnI2/5+leheCrjzPhZo7ddsWzn2JH9
234
+ K4TxvakfFHSbtEZmkSPAUc5WT9etYUKiWIlB+Zw5RTVLHV6b6qaPZ59s1hNG3R0KnJ9RXgXw5uVs
235
+ /iZc224Jut3VlzkZUg/0Ne4PKscXmF8LglsnpivA/DEwT4uROu1Yp7iU8t2YMaxwdWdShVS7aF5D
236
+ S5sHi4Pbl/I9h8WRpf8Aw31iFfmc27HGO45/pWH8OYLuz8CSC8hkt99wzxBxgsCBzj8O9XL/AMRa
237
+ Hpszb9QhM46xRZdv06H61x8nj/VNUme28O6JfXMhO3zpEyP04/M1wYd4ydJwnDlu93oZYbCYqpg5
238
+ UYRtFu93p+ZX+Kl5FPqOl2qqGliVnYKeRuI2/wAjXXprtpefCDz7i8t45pbBoyruAd4BUjn3FeN6
239
+ 9pGv2NhNq2tPFHNPIv7lpg0pJ56dNo9vyrpPDPgOHWPDsWpapNPFFNzBFFgHaP4mJB6nNeviPq1P
240
+ D03Ofwvp18rH0mKwGBhl1Hnq6Qe61u92l/meUSEh2TozcDK8kAdP/wBdRbR9syxbbxuCcn/PtXQe
241
+ JdKTw/4ln08SfaIx80Tv1KkZ5965maWRRkbcEg5B5P1zXvQqRqU1JbM/SsJUjXoxnTekkfSPhbV9
242
+ An8N21nojoghj+a3YYkHqSPXPeteS6/eqVz1IZT/AIV84eGdF1rX/EKtpztZQQtiW+UkeX0+76t7
243
+ fnXuUsjDTtxLyfJy5PJI+nevzrN8NToYi8Z819z8xzjKKOFxTjCpzN6vun5k99MAzMGO7BwO1eK+
244
+ MplPinQh8qhJSwweOhr1G8uUa1BZsfLnOcc14z40uG/4S7SCeohdjz146e3X9KeXxvO3qcVWNqfK
245
+ eO+Mb8XnjVrDmVp7iPcgOPkjyx/UitGW+8qzUTfIFA+QY5+teWNr9pP8S9cvzcxhLWQ20KserD73
246
+ T8qurr51IusL73GMmQ/KAe4rTNKEpVUktIpH0WVwVOgr9Tpn1mK1umu5uZSNsSAZJPsKghYiaTVN
247
+ RRpbh+m852jsorCtZobe5NxIDeXJP+scZCew9K0oVuNWvQFjYRA/MQDXmzgoLQ9Fu7NvT0a+u/tU
248
+ 7hE6qqiumjijEJYdBnn1p1ppkFpZr5pKgL02iszU7+SRGt7ON2QcHatcSlzyIZ514xuFlEgZhtPG
249
+ R39q6f4UXLnwZqVlM7A294SEP8IdQ2P1rlNWMUG+e6Mc1woPl26HPzerH+lXPhOspj8SXrkrFPco
250
+ FJ4yQpzX9AeDFecczjCO1mfmPiFh74TnfRo7bwj478NeMvCPm2moxX1vJGUeMg9PQ1y/ijw9b2iv
251
+ f21zcR2R7x5ITJHXvj35rxO40n+zJF8Z/D2X7PfKN99pQk2xXY77f7svHHY9D61634U+Jui+NPBa
252
+ sJl8wqVlikQBlbowOehGMc9DX5BjcnUY/WMPdw694vs/8z9MoYudGdpP1Om+FPiLyobjRWvo7l7N
253
+ wY2Q5JQ/dPt0xz6Guk1i5fRPi3BqVuSsWoxYfj5WkTrgZ6kc/hXhUVgfCvxMtNf0y7lmtXfybuJ5
254
+ SdqsflcZ64J+uCa9o8TONV0ozWwAureIXEQBPUZyMDsRkYHtRypVoyW0lZ+p42OilJ223PfPDfiB
255
+ JlKGUs3QAngg4HU16Ta3ReHg88c5r5Q0DXjHDHPG0JRhndu7H+eDx9K9x0PXvOgTcWDEYIYjIP5m
256
+ vPxdD2cvI5Y/vFY9RimbdwTk98VqwyDfuzhsDr6VycFyXjGD95fzrVhulC7SCT3PP9a45PTU4a2G
257
+ OoEg3jox9u9Ww4JALAZ68VgxXG/HADDpk81fSbKDkZzjNZOXY8irQaZphgGwQQp6GsfXPE2m+H9L
258
+ 8+9kLyvxFAvLyH29B7nirXnc8A8dR61V1LSdJ1uyEOo2kVwF+4xGGU+qnqK6cJXpQrJ1dvIijTpK
259
+ rF1k+XrY+bNc8Taz4j1qSbU7lUtFkIt7SLhIx/7M2O/X8KojYoXaAeyjPP8An616P4h+G01qsl5p
260
+ F4l1bRjc0M5Cso5zg8A/jj615kjj5soDJyOMdMZ/pX6jl+Jw9Sj+4eiP2TKcXga2HX1TSMei0t6n
261
+ QeFZjb/ErRZi64F2qD1w2R/WvrAOOW68dhXx1psq23iCwuTgFbiNxuk/usPT/PFfXBuEA3MdqnnO
262
+ a+f4jbhVpu258Jx5R/2mnJdVb7mcv4a8Yx+JNa1C0W0ls5LfoJJAxYA4OcdCDjuetVPiPai8+HzS
263
+ CPMlvMrBguSB0b+f6V51o+s2fh/4v6rNLk2zvJGTH8x65H6gV10niLWvE9tc2mjaXClg67ZZrvle
264
+ ex7fhzRPBVKWJjUpq0VZ6/l6nDUymeDxsK9CNoLld27LXfXuV/h/4nsrbSpNIvpxblHLxPIcAg9R
265
+ k9Of513F94m0K2RZXvLeeYHCCAeY34Yz6V49rPg2+0rw9JqUs9rMseC4h3ZAJ6+/046muwgto/Df
266
+ wrbVrWJJ9VFurmSVAduSOg7AA9KWOp4KpP2sZP3nay2v5s0zLA4GrU9vRk25u1vP1M3xF4vv77TJ
267
+ LeKwvLGykbY8ksbAuuOg6cEehJrMHgi4fwedWiulV3iWSO3hTcXzjGT9D2FT6lrvifX/AIcTTHR7
268
+ WPTvs+6a4ZuXI5ygz7cdee9dl4c1Lb8GLO9bYZIbNsKxxkoCACfwp18ZUwlCMaKS96zS1udFStWw
269
+ OFSoRUXzWaTvf1OI8V2Wj+HPDVpZW1tHLrk8a+Zcy5baB1wM4GTn9a6HwL4tvNd1fULa7jghihiR
270
+ oUjj2gckMP5frXNeKPEPhDxF4Ohmnvfs2rKm63Eal5I27o2OMH6+4rzjQPEd7oGpTXVqsDvLGUxM
271
+ Dgcg9B9PWqjh62LwMqc1aa6vuerhsnlj8snGUH7VPd338vI0/HZki+KOr7i8oJVgS2cBlBxiu28P
272
+ /EjStP8AANraXouxd20fl7Y0yHxwMenv715Rq+qXWsapLqN6UNy2MgLjpgKMD0rEZl8rLYZDz8vt
273
+ XpVMthWoQp1dbdj67/Vyli8FSo4haxtt3tY39W1uXXfEl1qcoAeU/LGD91B0APesO4kHnMFJGQQT
274
+ n8z/APWqozHzDsbaOzdCf88UkMd3NeiG0t5bq4Y8RxKWJ/Lt9a60o0qdlokfRUcJSw9NRWkUj6F8
275
+ IeJbDUfDcVpYrBZT20YWe0XjH+0PVTz/AF7Vbu7pYoJ1PRZDjdxndyP5/pXn3g7wBqdtrEGt6nfN
276
+ YtGcrawtuZx3DnGMHuBXZa2Amo+WDjzI+/AGOM/rX5rjadGOKl7OV1v6H5TmdHB0sZJYeXMn+fbz
277
+ 9SpcXAGloxPzNyMHoB3zXgHxl8UQ+FvDN/4gu544PsmmSeTvOAZGKqo9uTXs1/dbWjhyrKD90Drj
278
+ 0NfBf7YMl3rut+DPAsKyPb6kzXF+oJ+aONlwOPVmH5V9Lwjl31/MqdHpL8jxcdU9lBzfSxwuif2a
279
+ PBUcMizXV8+Zp51kyryN8xO4D1NdFo01gl+rC8uoQDgxyrux9CO31rmfD3wsNrokNvpmoa1pK7eE
280
+ iuC8f4K2ak1b4bfEG1R5dN1bRtWx0W+t2jf/AL6Q1+kZl4d4znl7OakmdmGz2g4pS0sfRmj3Ph1L
281
+ dDLfWsjnG5Xz/hzXXR65oltADHKI4wMl4Y6+LLbwL8a7y3zBF4Rsj0VpNQmYn8MVUv8A4f8A7QVl
282
+ B5qTeCdQ4yEN3MpPtzXy8/CrMKkviS+Z6v8AbuDSu2fYN94r0xpSsQM/GQZZuT7bRXOTarqF/Ad1
283
+ x5doBnZAPLT6Ejk9K+EvE/if49+FtKn87QdFsZETIkgzMOOehavk/wARfGv4peJI5LbVPFuqQ2/R
284
+ re1byE+ny8n869rLPBPM6yvKpGK73v8Agjxcdx3gMK3FQbf4H6mz+KdA1n4pWfgvTtbs5tYny00U
285
+ LhzEo6lgP5Zr3+3ttN8LeDvIt2WK0t0LyyMfvHqWJ9a/Mz9jDwhqF98T9T8Y3Ecv2SKMxxzSAkSM
286
+ eWOT1+tfaHxo8TyWXg6LQrSUfbNSfa4HG2MdT+Nf0TwHwDhMljy0venLeT/RdD8a4r4qr5lJyn7s
287
+ Y7L+tzh9Y1Q+GviT5OVjsNR+e3OcBWGdy+3qB35r588QSeIPBnx1uNW8NCSe0uYhc39tF8wcEsN6
288
+ jpuUDnHWvcPGNpD4m8CmMSNHdRMJI3BwyMO49CP6V4zp3jE6Xr0Nj4nWW2voVK295GOJVI6jIx9V
289
+ 5r+bMhptUXOEeZtWlHufvM5wqSUZ6WPadC8b2/ijwzs3xTmSPaWfAIPv6HrXr/hjxIJrPTpJpI2u
290
+ UQ210I+fmXjPXuDnHtXxFrMt9oNzdeLNAlttb0zmS+s7ZPKnA7uFztY+oGDWr8NPjt4X8S/Fa10K
291
+ y1GaG71GJtttLa7FSWMZGSeCzAEfhWmJ4TqVaU62Hg3Fau2tml1PHxuOpU58nN6XPt3QbvZqF7pR
292
+ LrJFIWgbcR8h5H1Hbj0r13w9qkx0sSB1823OyYED5cHg4z+B6frXzIb64g1uyvonJOQknzHOCSVY
293
+ 475/nXqulatLba/bzvLts76PcTt4Vxjd/Q/ia+Gx+Edi8PW1sz6q0vVori2SbzQ+ecbyCD9Mdq66
294
+ yvkZR8xI3enfnn9K+ctN1f7LfAGWUwkbg+evfk16hpWroxUbsAjAcHj2HXr/AJ96+Yr0rHcoqa1P
295
+ V4bnLbQ3fOScmtCKfBYMxzntx+HFcRBqSsVHmKcjPB/P+db0FyvBPAwBnPNcLavY46+EOmjlDOfm
296
+ OCefrVwTJtJBAXPOe9c4koJHVh2PWrSt51q0bkkHjrg4P0o5rao8yrhmec/EHxeJ4n0HT5SIlP8A
297
+ pkkfOT/cHt0z+XrXk0cgZyULALgsuPvD379a9nuvh54duppJI2vLGR+WKy7x+O7PevPvFHhKLw7b
298
+ W1xFrBu/NkCpC8IVhwec5xx/Wv0XIs0wKjGhT0f5s/Q+HcbllKnHDU7qT7rd/I52WXdtCjG3Oe2R
299
+ nv8A4+9ev/2XrNz4ZXVvEXiKSPTvKV/Kt1JIBAxwMDP4GvFVlUuFO5gBuOD0P4V9CaXfbPgxa3UZ
300
+ VnisiQD8wJUEc/iK6s+xFWk6bprd22uVxUp0oUnBK7dr2118zA17w/4asPh817atdpPIq+VJM53O
301
+ TzjHAyRnsMV0t4wT4FpBYeZsWzSQLGpJc/KTnHOSc1y914w0i9+HP2O7l827ubciWOFM7H/vc8dc
302
+ GuPtfG2tWWgx2drPEEiwkbsgLKMcDJrzKWCx9eEX1jK+reqPEo5TmGKpx5k24TuuZ6dP8j1S/wBR
303
+ +zfAdV1LMd01kEEbcOW6AY65xisK28f6I3gKLTdWsrud0t1ilSIgLIAMA5yMcflXk+o6ne6jdNPd
304
+ 3ks8nOHkfjB9Ow7dKzfMBjZGDbuh4/z6V6NLIaXJao7u9z2sLwfRdJqs/ebvppbyR3mueNXvNAXR
305
+ tMsl0vSUTaIlO4uM9CT784/M1yMl9K2mLbyXUpt484i80lF69unrWVJIFfCSBQxwyk9fr/n0qBWb
306
+ zFXLqjD5twwCfrXp0cPTpx5II+mwWS4bDw5YRst+933v3HyOEyHIKkfLz1xwOcU8yiMbUX8j0PPO
307
+ aqyMd4Rw4ycY449/1qLexlP3sAgcZNaJdD3I0U0i09w/2ctuJx0wfU8e+PrVA3BeTYQSoPp/nNNe
308
+ QCMfOOOvP+eazmZ1lc4XYOMDHIobOvD4dasuPeqjNkgIeRjrV7QvEbaL4xtr4sBCx2ToehQ/1HUV
309
+ i6XbJqviq006a4e2huJAgl2glc+xxXuFl8NPDEJD3Iu9Qbr++lKL+S4rxM3zPD0Iezqq9+ljys8x
310
+ +BwkHRrptyWyR6LaXSna8T74pFDI4PDDrke3vXNa9cBNessMWZ1fhRnuvNbMdtbWVjb2tqixW0CB
311
+ I416KB0ArjPE8oXWNPcuApWQMW47CvzrAe/UcU9D8fqxjFOSMue6f7a+cMq8DH8q+Cf2gPF2naT+
312
+ 2Z4L0+7KI8ujOYy3HLTAY/Svtaa5CrhGyxXOQeRX5PftxHVLT48eDfF8O82FvA1oZOu2Tf5gGR7E
313
+ V+weFOF9pnUbdIv8jwOIcT7PDc3mj9DPDcdhc6fDtCkMBznGcit/W7aMaAyiNY9o4Kd6+a/gp46O
314
+ v/DXSbsyhnaFdxz3Awa+iNRvvtVkqhyAfev6JqRs9j5/DzvG6Zxmm3zG82sBtjzya6WZkeE52kY6
315
+ 9MetcQGMGqlSMrnAPrXXxSLJp5QqSCmNw5INc8Ukdarcx4b4/wBOju45VYHbnksODXxz4e/Zebx3
316
+ 8eNTuBqcFh4bhdZZ0B/esT2HoOvNfeHia0fy9obzWI4JHBx3ryPQ9Vbwr8X7K7XMdldkW90vG3BP
317
+ yk/Q/wA693KcS4ys+p8/n1B1KLkt0fQfhvw34f8AAfgSDRtGghs9Pto8FlH3gByTXyrr+sSeJ/iZ
318
+ qWtOd1ojmGz9FRT1H1617P8AFnxWdN8DJpdpL/xMdTPlx4PKp/Efyrwi3hFno8UW0DC9Qc54r9V4
319
+ dwPPJ1Hsj8f4gxiilTTOpS5SFzEHDxjgAYrmNQstF1FZLTVbe1njZsgSjAzn16jPqOeK3tVsLuCV
320
+ nUuVA4K4UAfWvArvxRpK/FXUbzWL9lsNLtwsMaMMPKckk9uOnfmv4UyHCTqpum3or6b+h/VOPxEa
321
+ bTelz0jxF8O9K0X4YXfijQ7zVDbRW5lkt2uMiAdwe+OK/LyPXrrTPiUPEWkymC9gvzcW7AYwdxP5
322
+ e3vXtXxQ+Nmta21/oekXktnokvySRpLueRc87iPX0r50XhjggYr944GyDFYLDVHi5czn07LzPzni
323
+ XOKeKqwVNfD18z9gvAnxAt/HXw3stWtZVeSe3DMncOCCynuCGBHHavddD1k6t4emtYI/9IgYXFqp
324
+ bJ3Acrx/eGfxx71+Nvwd+Jt98P8A4gWwmld9BuJQt1FuOEz/AMtFHqO/qK/TLRfEEVrd2d9aTP5E
325
+ 6q8TJJkMvDDHpg5/A1+T8b8IywFduC9yTvH/ACPfyjNFiKab3WjPpnTNdN7pMTSDZPGBvGcgj1GR
326
+ x/8AXNegeHvEoyIXn2KDhSxyPofbjt6c18svq89prgu4Ji9tOxxg/KjHloyPfGcj/GvRfD+qNNcJ
327
+ nIDEknkE84Ge45HSvyjGZe1Fu2n5H1NGvqkfU1vrsSZBdVJG4HPp1H8uMetd3o+uR3aJ5cu4HpgH
328
+ g/XH+c180prMzaaJMj7Tavhtw5Knoffjj8K0tO8S3FhrkUm4PaT4Y4fO1gfb+tfL1cLdO257EbS0
329
+ PqpbnhW564JP0rVhuUUqQ+Afl64/z6153o/iC31DRi0bRs+0PgDkEckfz966VZ/MiBDgnAOCcV5v
330
+ K4nJVwzfQ6F58ISXH4nJr558Z+JI9W8bMqMJre2BiiYNkZz8x69z+gFe4GYELncysOhqCOCyQkLa
331
+ W6knoIlH9K9LKc1hg6rm4cz29PM78nxNPA1vayp8ztprax84rc71YRndjAAxWquqXTaclpNcSG2j
332
+ OUjaTKr34HbnmvSfiBeW1v4EFskcUbzTAABQOBkn+QrxVbpCQQ3UZKnnHtX6RleYfXKKqONj9Ey2
333
+ qsxw/tZU7WenXY3C/Pz4Hf5hjjjj9KPMdJWDA4Iwwzn6VkmbvllYDscVLDOoRR6jnnnBNenzJ6Ho
334
+ vD2V2XlYPPk/fyeQOMY6flTWOI8M2F6kZ/OqokB+cBsbc9fbpj8qYHYxD94CzDJG6iWpapF1WV5w
335
+ zqEPcjg49vpURmMcu7nAI+U/561Re8iG7JLcZYjqPaqkmooJiwUnAHfj3qeY2hhZSeqLryqn3j8v
336
+ ReeB7571Wa6GRgbDnv0Hp/n2rHuZjISM5fPAzWezskRBYA/XGOlZyeh6dLA3Subst0CHIJcY4Pb8
337
+ arrHe38/2bT7Ke9uSmSkYycev69a52e/kiUvtnK5+8IztOPfpXafDC/il8c6hceZlFtOnuWH+Feb
338
+ mGOjRoTqR1sGPthcLOtCzcehDZeGfGkOrWdxFoF6rwypICzIOhB/vV9N288kcSmYiNzgMM9KoW92
339
+ rLuBIJ6c0+acglgwB9O3WvzTNc2qYuUZSSVux+UZvmtbMZRdWKVu1zTlkygKknHTHevO/GMyrb2c
340
+ mfnWbaOexU8fnXWvdAQLuLLkd+w71554yn83RS6gBklRlOAO4zWeUO+J0PnsZT5aTOZvLtxYmTh+
341
+ DkseM5/Wvk39pDwK3j/9ivxnLChk1LSb8XcHGT8qDIH4Zr6L1G6/0cKSDkchj7dap+HrWHV/hN4l
342
+ spcSQ3080bBh1+QL0r+hvB+g3nLdtos/O+MKqWES80fmF+yp40YeH73Q55Mz2c42ox5Kt/ga/Qy0
343
+ 1dJbCLLnqOh5596/G2C+uPhH+2ZrNjKWhso9ReCcHOPLLcH8K/Rnwz4qW60ePZMr/KNrKc5Hav3j
344
+ HUHGd0eFlVZVKduqPabibdfquBuLdO/rXSWV0PKKAgsRkgmvN5NQFxaRXAYAEZOeoroNOvxNbps+
345
+ UjqPf/CvNt3PXL3iGP8A4ljyJlcDPA/OvnLxdAxhdiy7gMemD2/rX01cOtxYIH8wEoVJHBFfPfjW
346
+ we1tXfzZroBCrO6jLe5q6D5Z6Crr2kNTzWHV9Q8R6+moary9lELaJc54Hf6mtdubkbgQg+Y/X6Vw
347
+ +g3jp4ov7YEbHQSLnjpwa7Uc9XIbv71/QvDM4VcBGUfmfzlxLTnSzCcX8ji/iB8XbOw0Saw0yWO4
348
+ uGPz3Eh+WPPU++PSvz58W+Km1XVLiG0mkltnl3POx+aU/h2/xqt4h8Waj4kuzbW6Nb2jMMQp8zSe
349
+ m49/oOKfeeFbjRPA8mpamojuZVHlQnqAe596/nXhjhTD5TT1XvM/dc6zqpjJWjokcIxy3JJBP45r
350
+ 0H4aeFpfF/xX0vS0i86N5R5oI4I7iuFtLWe91GO3to3lmY4VEBJJzX6Yfs3fCS38LeHofEWr24Oq
351
+ zANGGByor7pJPc+XlUsrnf8Aib9n3wDb/DdDaeHbSPUEt+ZETq2K8w8A67Jo+jWnhbUy7JDK0KSH
352
+ IaFlPyrn/dxj1/CvtmSVLvTpIThgy4wa+OfHGmL4d+Ln2uWNV06+/dyNt4SQco/4V8zxflEcbgWr
353
+ arVHdkWPdDErXRnvNreRnR7czTRiMnyJRnB45jcHGcgZ/L611fhu72asbWZ0a5+8OAQWBw2PqCp+
354
+ hNeB6DrkbaQ0ckoeQrgY55HIJ9uvIr0C31BCLG6j3ZKgDnI3r057Erx+Ar+YsdgJU3KLR+sUaydm
355
+ mfS9vdKs8Uw2mN18qaNwBxjn3yDg5rY0L7LJeizufLNuxLBeowDgk+4zn8q858Oa1Z6lYJBIVWc4
356
+ KuF+SX0PPQ4/Cn3OovZeJLiyO4TxsJ7cjADAjDqD9CPbivg3hJObg1qj3vaWipH0t4PuY7O8e3Yq
357
+ 0tvKYpCD1Hrz6/5616XDd7Y2UY2gkAE846dPyr5x8H62l14qlmEjhp4Y3bJ4VgCpHPfKn869jS+2
358
+ zR853L8uTznp+NfOZhSdOdjvoRU0d5BcKwMcm5W4xuPP6VOs5HAOCRxXGxXzLIJkZQf4uenvjPQ1
359
+ rLdRyhPm4Izg15jk0aSoq5neIfDX/CQ3VoZdTe2tYg2Y0iyWJxzknAH4d6hsvBHhyzKs8E19ID8x
360
+ nkwG/AY7/WuhjudoIbqTwOpNQzuWGwGQnHG09M12wzfFQpqnGTUUdkcZio0lSjNqPloeDa5NDY+L
361
+ 9RiQKiJcuqonQDJ4x261mRX3mpM4WVoxgOcEj8TXprfD+xn8TXeqateSXwmlMi26Dy0HsxByfzFa
362
+ WsabbL4LutNs7Vba38ksixx7QG/hPHvX2i4soR5IRV72uz7mHEOFjGlTgnJ6Jvb1PInv2EZcYAPI
363
+ Un/P+RVV71WcsGA5yT2z/k1Fo2kap4m1E21igS0Q/vrmQnZEP6n2rsfEvguHR/C0d5pplllgH+ll
364
+ mJZ1P8fpwT0Hb6V7lbOsNSrRpSlq/wBdj6Krj8DQrxoyl7z7dL7X9TkZbpVj3HA4wB2qnFcoVLMF
365
+ STPHFaXhfRZ/Eet7Tvj06AA3EuMZ9FHuefpXReLvBbWkH9qaHCxiVd01mAS2O7L/AIH8KivnmHpY
366
+ hUZvU0rZpg6GKWGlK0n16LyZw9tBqeranJa6bayXM6xlyqsBhfxrMuWuoZXtrqCS2uYvvxSqVYdf
367
+ Wvb/AId6S9r4UfU5VZbnUG3R7vlYRj7ox155P5V1mp6JpGqwxPqenw3YjIZGbgqQc9Rzj26V4mK4
368
+ qVPEzp8t4o8bFcZRoYudNQUoLS/mReHbOOy8DadZlVUrAvmq6kjJGSOeOuaJ7ewt5p5LSys7aUgb
369
+ 5IYVRmHXkgdKttMFkdsAA8bVHAFZE92rPsCkHuc8fSvi3UqVJybe/qfm9fEynOU292aUN4diRBsY
370
+ Hdufxq59slKhSOMeo/nXISzmPo6EBeQxyB7VAdWJckyE5bBBX9OlYeyvqzNeR1kt05bLBVA+7uOf
371
+ y/wrjPE0/m+Gr5vmbEJYBjjkdz+I7VLNqG5NzvkHvjiua1m8eTS7jDcOhBLNxz6e/WvUyumlXi/M
372
+ 48drSZ59f3SyWDOHO0jt198V0HhJ/s/w9txzmSSSQ7m67mP9K8xv9UxYBFYF9nO4cD3r0DTHNt4U
373
+ 06FuStumevXGTX9Q+DuEti61VrZfmfkfGVZezhHzPys/bf8AAUmi/HG38W2sLLZaon7xlHAcetct
374
+ 8D/ibLJpa+H7+4Iu7Zf3Ls3307fiK/Qr9ofwPb/EX4AanYhEe+t1Mts2OQw54r8SY59Q8NeMty74
375
+ L2zmKkdCcHBH41+54zDqasfI4HFOlJSTP2N0TVlvPDlpMrrIjjaw7DFdFZXz20rxlmAZsg5r5Q+D
376
+ /jtdb8GAeZudcNgnkeo/OvoOLUEnt4LhTksvUevevl6lJxbR9rTrRqU7p7ntFnqglgVchsnBbpjj
377
+ 9K4fxkiyaVO7Nz6qoOapafqpFyFeQAdCQcdfX1rS1No7rTJAzOjjgYHDCsE2mjZRvHU+Up7h9J+J
378
+ Vjc8pCz7JOOMN1r0uaJJkMkMojJ5DLyv4ivP/GFif9IXemVO5cfmK4XSfizZLfPput28+lXsTbFk
379
+ bmGUjuG/oa/XeCs5pU6UqNSVuqPx/jnJ5yrRrU437/I4fwb8LNN8LaD/AGnqxhvNb25GRlYfYA9/
380
+ evH/AIvaiHmt7RG4ZskV9RX12w06b5h0IXivib4h3hufGjR7i3lqc8+5FfCYVynVu2fZ4y0Kdke0
381
+ /s1eGrDVPG9xqd9EkotcGMOMjNfozY6hH5IiTEYXoAMAcdq+Gv2bIDaeEL29ZSPNfg19bW178o5A
382
+ 289cmvZs7Hh1NZWR6hbX+1wC/wBDnrXJ+PvDVr4n8KTxOh83bkHHOfaobXUFwoc4Ga3Yr5Xg27/l
383
+ PHNKS5k0zJaO6PjaS51Hwj4mS2v90cLqCJiCVZT39Bzx+Fek6L4kWTTZIhcONmHR4+RjHX3HavS9
384
+ c+Hdr488KX9lbrHHr2lzO9rv+7PG43eWx7AnIBHQ18n3Nvrng3XjaXltfaZErFVF0hBjPAK56Eej
385
+ DP1r+fcXHD4uvWw8tKsJNNfPRr1P1mhCdOjCrHWLW59g6BrB2xSw3BDnJD4HPtn8TXbapq32y10/
386
+ UVlIvIv3cyKeemOO/wCnb3r5Y8E+NQb/AOxzSQwzkjaGGM+h9MZr3X+1TPpbRziGXI4C8OMe/sfW
387
+ vz3NconQxKTR9BhcUqtLQ9x8B6o83iwfMFle3JG85GQ4PTHXkjA7Zr38XqS2QZANw5wOMEHp/wDW
388
+ r5H8A3DReJLWSQgnyCVZTxyR3PsBxXv8N7mbenylhn5WIH1+ozX53n+HUa9l2PosrlelqekW18xj
389
+ JLAKOWx0rctdQUZwQ27kKAcdO/415XFqqrKyiaKQ+pJ9v/r1uWV62NyvhT6c4P19/WvnKlF21PSP
390
+ TlvAYDtJVj1GMn9Kia6RSAWc5PJ24/D/APVXLw3QFsW+/wCoxwD68VWlvsP3YdgByf8ACub2buEX
391
+ bU7ePUA0ZYnZtHRhnp/n0q5HcRyKAyrJ2wVz/TpXAxXqoqlmKscY6A/pmti21GFJNhZgMcEnP6/1
392
+ rOVJqw09DqoobW3RYbKC2tosn5Io9q56nge9OkjWWDyrjY0b/KwI4wc5FZhviUbb8px25pjXq4OB
393
+ vOOGJ9eaqMZ3vfUSk736ktpYafo2mpaaZaxW9qjFgmepJ6nuT75q1HcSPy7R7B6d/r71h3F1mNgx
394
+ foOF9PrVI3blwVfIHTLYOfwrRxk9WwlJyd27s6KS6WPDnY390dcHPYcVnXN7uXYWUE9Bjp+JrKkv
395
+ cRPiRumRtHX+prIlumVskAL1yecCtIUtjOWxtSXax2rd+ygnPPPNYjXGGIBOF/hbpntVWa9Zkban
396
+ HZm6j2rGku83KliS4PTuf/rV3U6O5yzZr3F4UiZXZBwME+vp71jveNGWZWwR3zggVTlvM5OFZiTj
397
+ jArDnvkKn5gWxwe/403QudNPVG+2pSFWDMc9ST6fhWTf3xktWOHywwo6elZDXabQS2MZ7n169KzL
398
+ u9HlvumB+Ukleo+pr0MDRtVT7HJi2nTkeTarqinWYtOVxJNLdCEAdcF8fhxXskt3iMLyFC4A6Y4r
399
+ 59tDayftAqlwzSyRs88UZ+6mBgE+5J49hXqc2oBlJAwO1f2N4YZfGjl86iesn+SufhfFldyxKj0S
400
+ /M1bm6R4WSTlWBDD296/JH9qD4ejwx8YptasofLsNQYvlRhQ3NfqBPf53HqPevnf9oPw6niv4KXx
401
+ MSNc2wMkZ6kYr9Nep8tTk1I+AfhB4vPh7x/Da3ExW0uDtOTwM196aJryvZywFlKnJTB/OvywIktd
402
+ RI+5NG/OOCCK+wvhp4yGqaLaGZiZUAWUA9xwa8DH0LvmR9VlGI3g/U+u4L5luYtrYXbkg9/Suzt9
403
+ RS6s9xY7AmAehP8AhXiFvqwbEbvhlHH0x1rsNH1ARqkRLbMfKfX2NeHUWp9JCWlzI8Z2Q3i5UsY2
404
+ 4fcOv1/xr5j1+0jtPFDxvGjQzDKhhkV9iauItQ0aaIjzMg8eo9frXy/43sDHYGVYmSeCT5WBzx6V
405
+ 6WAm9m9zzcbHlal2KOsXwj05wDlSPWvjDxJci58b38gYFfMKrmvovxTrQh02Z9wAVSev6V8umTz9
406
+ QZy2WeTJP1Nerhadm2fN4upeyPuf4Mqtn8J7Rd20yHJGcV7nb3vygOoyOh6ZrwHwHOLf4d2EXIAT
407
+ 14NemWuoDaMnqO9ek2eZ1PSre/ZSCH4HUk81v29+3HK7Qegry6HUAG5YY7+9bUGoqAdrkDAOTSJs
408
+ rnqOk68NG8bWt2SfJuo/s7kHjd/B/UV0/wARNJ07xX8NJ7a8torkxKdkjDJz9a8RvLr7Ro8qBsOA
409
+ GjboQw5Uj3yBXpvhTxINZ8DoZPvOPLkBPIYZBBr+dfFXIJYXMqeZUVbm39V/wD9T4NzGNfCyws94
410
+ /kfJ994JNrBDLbyTeVGSY5Qf3sBHVc91+tdzoer6gtp9h1JSbmNcLOpwJV9/8/nXaajZ+XPcWYUF
411
+ Wnbbkdj15rlEQ27tG3zlMBHHBxzzXlLMXjKXLU1tt3PUeH9jO8XZHv8A4R1FnvFYbEEcCxlu+QBg
412
+ +hznvXrVtqO5UUlpOh+8ApB9SOK+cfCepC2BlO94xgOmRnjuPXHp716dHqJZUeCcSxEcshwF/wAM
413
+ fhivzTPcG3XbaPqctn+7uenDUC84dXjjCnJTH3vWussL5XB2znaRkhcEY9R6fyrx60vYXQb5MsT0
414
+ XrXa6ZfBIA6Y3o3zDdzj/wDVXy9bDNI9RT96x6X/AGmVhkVm+bGHy3QDj/GoEvfnDlxGrchiMDn0
415
+ rkLi+aPkPtOBgYzkf0/+tVaDUIzGZW3OxbHzDnj/AD24rhVC/Q1TR341CIMQGB92PJz6Gte01Isw
416
+ wzFsZXjqO4rzaHUctht+zt2B7/X+Va0WobgpDDIYD5uMGs50tNhWuenpf/KNzE+gx1qJr/LBtx5G
417
+ Tn+lchFfnOxnwR1BPSnPfsE42ZI+YjlT+lZqkw3Ola+2kZbPPQcfhzVGW+5JUDAGDk8frXPPeuXO
418
+ 0k4Pc8cVWlvSoJyCwxyGyM+vtV+xJ2Z0bXhdW5JweBjp/nNU5b5dhjzjpkk9PyrnGvVTJJZipyD1
419
+ /L86pS3pWVsMCCTkDqfxrop0UyZ6G5NfDyJCFz1HzHBNYc90vmZkYIc4GOTxWbcX6+Q+9jj+EkcD
420
+ /GsSXUGLBQPlC8jOTXo0aByzlY3Z73y0UF8Ajnbyf/rVhT6qV3ZI39wvUfhWNd6kFGRgFc8sM8/4
421
+ 1iTXu6Mh96seSy46VvHCMqFRPqb76oS5KLkgdBjFUby+JtCgbHmf3Tjn0rlGu1km2+ZLtzkfN0xz
422
+ VF9UJkZv+WajCvn0969HC4O09DLES9w595ktvizqt4MCcLF8wP8AD3/rXbTaiGGQeDggivI9SujH
423
+ 8RFPOJrUgtnqQf8A69cXrvxr8IeHr2XTNRvZxf242SxRxknNf014Z4tr2mHk+ia/I/HuLMFzezqx
424
+ WuqZ71NqJ24DDA/KuZ1Sdb/Srq1kGVlQg9818/3X7RXgkJhBqEpxwBCeK5i7/aO8O4Ig03UpV6Dg
425
+ DNfrfN5nxscJWv8ACfK/xN8PN4e+K2o2+CInlLJx61neC/Ekmg+KYmLEW8jAOD0HbNdP8VvHdj4x
426
+ 1CK8tdNltZEGCznJP5V4yLjONo4zmsalOM1budVOU6Mk3uj9BNK1kXVjHcRyAsCOQeT/APWr0zR9
427
+ SE6wy7jsYk575FfGPww8WGe1/s65l+dcDJb8jX0VoeqeVdmJiVj3ZGDXzGIockmrH1mHxKqQ5kz3
428
+ FrxxC6oFO3jPHB96818eWLNpJv40V0IxKucnvXVxTCaGRVLeWzA7l5wff2qHWI4G0loixZWAUnOM
429
+ 8d6yoO07nRiLSpn54+NdXZ7doFfmQ4P0rzmxCNq0IZgPnGSeOKsa5dtda2xJ4UcDNZkP+uUckk19
430
+ ZShywR8POXNI+wdI8QaTZ6DaxPqFqgEfI8weldFH4y0FBg6raqew35r4yDnAUk/XdUofuDjHcmr5
431
+ k+hqsNFvVn2zF468OpwdYtOucbuDWinxA8Mxxhv7aswvqWr4ZVwSPboSafuGMHDYpOoivqUO592x
432
+ /E/wquFbW7c/Q1peAviPpH/CyL3TdO1CO6iuV88KDjLDGcfoa+AhJ064xxWvoutXGheMNO1e04lt
433
+ pQ2AcB1zyPxFeFxFlMMzwU6Mlvt6o9PKqqwVeNWL239D9Qby5Vr7O8Etls47/wD664nUbj/SVfaA
434
+ 4GGA7+pqLRfEFprGjadfxMAkqrkE98ZwffNZeozsddlhU5/eHjHY96/nnB4KVKq4NWauvuP0mvWj
435
+ OCaPQNFu9sOTkhgOeMZx/wDW612FjfSQXZeN22N1AIwfTivL9Pu0jsYzuLcbT6jHQfSupgvFMmB8
436
+ wIGCx9/pXh5hh+abbR7OEqpQR6zpuo7tkx+UhsFtvPf/AD0rrbDUJIpWzJkHqc8en09P1ryqzvJj
437
+ jBQZXkHp/nvXS2d6HiIQrvTH3WycetfK4rB9TvjP3rnos2oggDfvPUEnv7VA9/kxjKLt+UbevNcV
438
+ cX+1fQgfKOoI98UyC+YOzMV8vpuPXn2/GvNWEsjq9oeowXaiNSXXIwVfk9f/AK1WDeoQ52t6/eyR
439
+ XA216FUAsxj25UqvU/4//Wq+NR+XJ3Nt5IPU5x05rinh9TR1Gd/b30igJhmUHuePwrT+3A8K24Ht
440
+ 0rzm31NixUHpxtLfpitVLxUBZmwo/wBrBX/OBWM8O7le0ujqpdQZGJHDDufpVb7c+1dz85GN3+Nc
441
+ lLfr5uTJgZ4CsQSOv5VC+oF8AE9ecn/69aQw7MpTR0013tXl+c4BA6D0z6VRlv8ACr86E9mJ61zV
442
+ 1dsGUFy5Y+orN/tEFmUYZQDy3b/Guunh32M6k76HSz3e9zjJXOMggflWHLetyFP1A5P1rLe8jMTk
443
+ HawyFwSADWS95sB2k89AD1969ShhH2OKrM1Lq8LSgKMbR1HUdz/SufurvadgbGfUEj9e9Vp70lCX
444
+ b6KO1c9d325D8hZ92MZr04YPYinU1sa8+obUMXmRqxxnJxWdJfKYCiyD5SeAa5+a7UHcgUMBluhz
445
+ VKS7CuAWbaeMZHNehh8HZpMqtUuinrl2E8QafOrDcGaNjnkgjpn8K+LvjQqp8Z5rnkCaBWJx1Ir6
446
+ u16Zme0ZlYMko2ge+c180/G20bfo+qAD5g0btjGe45r9c4JapY6m31TR8Fmk37KXk7nhhk+UA9Sc
447
+ 8VDuyWAOQOgPeq7vjgZyOvamFsHGDX7PY+VdVsSdfNhwQenFc6yMHwQM5PQ8V0BfO7jHPSsW5XbO
448
+ SMlc/nVwbTPOxSTtIvaLqMmk+IILtDgKcOM9RX1xoGtreaEl0kgLKQc9K+MD16Yrs7HxJq+n+Cxb
449
+ WszwRyyFfNBOcKAcA9jz2rHFYdVGmhYPFuknc+6m8eaH4b8BprOs3N0LZmEYjjiLs7kEgAdORnkk
450
+ DivBfEnx/wBd1KGW20PTLTSrLecPcZllb+Sr+VY/w61XT9e8C6j4O12Z3SdWNuCMsq5zkH+8rfMP
451
+ bNeW3Gg6hZ+LLnR7xoraW3mMckrNheOjD2III9jXPhsLTg3pqaV8fVmld2RwsjGWZ3Yktu5NSQdW
452
+ OTn1oor02rI877SLm7kYJ7VKpPrRRWSOmOjHbtrdT1qQMevQA9BRRQja7FU/MeTk+tSIxLqOnzUU
453
+ Up/Cyos+tfBuoT6fZWUW4yQzQrcKv91lwG/MV32pysviu4Kd9jLzjGV6UUV+H5pCKxbdj7vDNvDx
454
+ NLTb4ySlUMiHv0NdbaTvHFvdncK2FBP40UV8fj4q59Hg9jq7e/lwCjMDk8E5FdJZ3Xn2x2rtC/dU
455
+ 9qKK+ZxMVyo9Ok3dMne+k8jDjIJwMU62nZ5OGYNnr3P40UV5zil0O9Pc0o9QYIF+diSRk1NFfysi
456
+ gcc/yooricI9i5N6GnbXMr3OScOoxkHrWwl47koR2+b3oormnCN9hNvlZXkuXVGc42nHyj/Gqxu5
457
+ FjLk5GccAdxmiitIQjbYzTd2iCS7Ywsx54ySQCTnis152ORubJU5P6UUV1UopIX2jJe5fbKpdyBw
458
+ ffpVOe9dRzuI4wPTrRRXr0IqzPPrMy7y7MLlsMSBzzWFcXbebk5ck854oor0qMUc0W7mHcXWOGRT
459
+ ye1UXuZoACSrBunHIFFFd+GimVVk7HNa1eM9mCVxukXofevI/jMnm/DDTpCeVuMnPfiiivvOHdMX
460
+ h/V/kfHZj8NQ+WyTkgHimluTy3PPWiiv2xHx0noMZz95jk5qnc4aIE+5ooqluYVvhZQ7/hXQ6Uwu
461
+ dCvrFxgopuIWH8LKOR9CKKKctjhia/g1ZpPGVo8Mpgkh/feYBkgDqB7npX0F/YeneItYj17U7dJm
462
+ ECxRQAbU2rwNwH3j7miiuDGtqLaO/BxUppM//9k=
463
+
464
+ --Apple-Mail=_1341EAF3-201C-4A76-AF64-D9D9B7898023--
465
+
466
+ --Apple-Mail=_04D34D25-5195-4224-84AC-96CCCE06E016--
@@ -0,0 +1,23 @@
1
+ require 'rubygems'
2
+ require 'bundler/setup'
3
+ require 'minitest/autorun'
4
+ require 'minitest/pride'
5
+
6
+ # Configure Rails Environment
7
+ ENV["RAILS_ENV"] = "test"
8
+
9
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
10
+ require "rails/test_help"
11
+
12
+ Rails.backtrace_cleaner.remove_silencers!
13
+
14
+ # Load support files
15
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
16
+
17
+ def setup_database
18
+ ActiveRecord::Base.connection.execute("DROP TABLE IF EXISTS users")
19
+ ActiveRecord::Base.connection.execute("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)")
20
+
21
+ ActiveRecord::Base.connection.execute("DROP TABLE IF EXISTS comments")
22
+ ActiveRecord::Base.connection.execute("CREATE TABLE comments (id INTEGER PRIMARY KEY, body TEXT, user_id INTEGER)")
23
+ end