cb_nitride 0.0.5

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 (46) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +14 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +10 -0
  7. data/cb_nitride.gemspec +23 -0
  8. data/lib/cb_nitride/category_sorter.rb +70 -0
  9. data/lib/cb_nitride/configuration.rb +15 -0
  10. data/lib/cb_nitride/diamond_item.rb +95 -0
  11. data/lib/cb_nitride/diamond_login.rb +45 -0
  12. data/lib/cb_nitride/diamond_number_generator.rb +52 -0
  13. data/lib/cb_nitride/exceptions.rb +3 -0
  14. data/lib/cb_nitride/hasher_methods.rb +20 -0
  15. data/lib/cb_nitride/module_methods.rb +17 -0
  16. data/lib/cb_nitride/private_hasher.rb +72 -0
  17. data/lib/cb_nitride/public_hasher.rb +83 -0
  18. data/lib/cb_nitride/version.rb +3 -0
  19. data/lib/cb_nitride.rb +43 -0
  20. data/test/cassettes/test_that_it_can_log_in_cassette.yml +880 -0
  21. data/test/cassettes/test_that_it_fails_with_bad_information_cassette.yml +294 -0
  22. data/test/cassettes/test_that_it_resets_the_agent_cassette.yml +2188 -0
  23. data/test/cassettes/test_that_the_private_diamond_item_contains_the_right_fields_cassette.yml +660 -0
  24. data/test/cassettes/test_that_the_private_hash_contains_the_right_fields_cassette.yml +708 -0
  25. data/test/cassettes/test_that_the_private_hash_identifies_collection_cassette.yml +714 -0
  26. data/test/cassettes/test_that_the_private_hash_identifies_invalid_diamond_codes_cassette.yml +636 -0
  27. data/test/cassettes/test_that_the_private_hash_identifies_issues_cassette.yml +707 -0
  28. data/test/cassettes/test_that_the_private_hash_identifies_merchandise_cassette.yml +705 -0
  29. data/test/cassettes/test_that_the_private_hash_identifies_variants_cassette.yml +708 -0
  30. data/test/cassettes/test_that_the_private_hash_produces_a_diamond_item_cassette.yml +660 -0
  31. data/test/cassettes/test_that_the_public_diamond_item_contains_the_right_fields_cassette.yml +196 -0
  32. data/test/cassettes/test_that_the_public_hash_contains_the_right_fields_cassette.yml +208 -0
  33. data/test/cassettes/test_that_the_public_hash_identifies_collection_cassette.yml +212 -0
  34. data/test/cassettes/test_that_the_public_hash_identifies_invalid_diamond_codes_cassette.yml +570 -0
  35. data/test/cassettes/test_that_the_public_hash_identifies_issues_cassette.yml +208 -0
  36. data/test/cassettes/test_that_the_public_hash_identifies_merchandise_cassette.yml +207 -0
  37. data/test/cassettes/test_that_the_public_hash_identifies_variants_cassette.yml +209 -0
  38. data/test/cassettes/test_that_the_public_hash_produces_a_diamond_item_cassette.yml +599 -0
  39. data/test/test_helper.rb +67 -0
  40. data/test/unit/configuration_test.rb +19 -0
  41. data/test/unit/diamond_item_test.rb +42 -0
  42. data/test/unit/diamond_login_test.rb +42 -0
  43. data/test/unit/private_hasher_test.rb +67 -0
  44. data/test/unit/public_hasher_test.rb +59 -0
  45. data/test/unit/pull_test.rb +8 -0
  46. metadata +142 -0
@@ -0,0 +1,599 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.previewsworld.com/Home/1/1/71/952?stockItemID=APR130131
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip,deflate,identity
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Mechanize/2.7.1 Ruby/2.0.0p0 (http://github.com/sparklemotion/mechanize/)
16
+ Accept-Charset:
17
+ - ISO-8859-1,utf-8;q=0.7,*;q=0.7
18
+ Accept-Language:
19
+ - en-us,en;q=0.5
20
+ Host:
21
+ - www.previewsworld.com
22
+ Connection:
23
+ - keep-alive
24
+ Keep-Alive:
25
+ - 300
26
+ response:
27
+ status:
28
+ code: 200
29
+ message: OK
30
+ headers:
31
+ Cache-Control:
32
+ - private
33
+ Content-Type:
34
+ - text/html; charset=utf-8
35
+ Server:
36
+ - Microsoft-IIS/7.5
37
+ X-Aspnetmvc-Version:
38
+ - '3.0'
39
+ X-Aspnet-Version:
40
+ - 4.0.30319
41
+ X-Powered-By:
42
+ - ASP.NET
43
+ Date:
44
+ - Wed, 24 Jul 2013 01:35:40 GMT
45
+ Content-Length:
46
+ - '24602'
47
+ body:
48
+ encoding: ASCII-8BIT
49
+ string: !binary |-
50
+ DQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sPg0KCTxoZWFkPg0KDQoJCTxtZXRh
51
+ IHByb3BlcnR5PSJkZXNjcmlwdGlvbiIgY29udGVudD0iR1JFRU4gQVJST1cg
52
+ IzIxIiAvPg0KCQk8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9
53
+ IkdSRUVOIEFSUk9XICMyMSIgLz4NCgkJPG1ldGEgcHJvcGVydHk9Im9nOmlt
54
+ YWdlIiBjb250ZW50PSJodHRwOi8vd3d3LnByZXZpZXdzd29ybGQuY29tL1N0
55
+ b2NrY29kZVRodW1ibmFpbEltYWdlL0FQUjEzMDEzMSIgLz4NCgkJPG1ldGEg
56
+ cHJvcGVydHk9Im9nOnVybCIgY29udGVudD0iaHR0cDovL3d3dy5wcmV2aWV3
57
+ c3dvcmxkLmNvbS9Ib21lLzEvMS83MS85NTI/c3RvY2tJdGVtSUQ9QVBSMTMw
58
+ MTMxIiAvPg0KCQk8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0i
59
+ d2Vic2l0ZSIgLz4NCiA8bWV0YSBwcm9wZXJ0eT0iZmI6YWRtaW5zIiBjb250
60
+ ZW50PSIxNDIzNDk2MDkxNDUzOTQiIC8+IA0KIDxtZXRhIG5hbWU9IktleXdv
61
+ cmRzIiBjb250ZW50PSJQcmV2aWV3cywgUHJldmlld3MgQ2F0YWxvZywgdXBj
62
+ b21pbmcgcmVsZWFzZXMsIG5ldyByZWxlYXNlcywgc2hpcHBpbmcgbGlzdHMs
63
+ IGNvbWljIGJvb2sgcmVsZWFzZSBkYXRlcywgY29taWMgc2hvcOKAmXMgY2F0
64
+ YWxvZywgZ3JhcGhpYyBub3ZlbHMsIGdyYXBoaWMgbm92ZWwsIERpYW1vbmQg
65
+ Q29taWMgRGlzdHJpYnV0b3JzLCBjb21pYyBib29rIGJlc3RzZWxsZXJzLCBn
66
+ cmFwaGljIG5vdmVsIGJlc3RzZWxsZXJzLCBjb21pY3MsIGNvbWljLCBjb21p
67
+ YyBib29rLCBtYW5nYSwgZGlnaXRhbCBjb21pY3MsIGRpZ2l0YWwgY29taWMg
68
+ Ym9va3MsIERpYW1vbmQgRGlnaXRhbCwgUHJldmlld3MgRGlnaXRhbCwgY29t
69
+ aWMgYm9vayBzZWFyY2giIC8+ICA8bWV0YSBuYW1lPSJnb29nbGUtc2l0ZS12
70
+ ZXJpZmljYXRpb24iIGNvbnRlbnQ9InRvUTJ0Z2dnNGVBZWF3OUx4Z3NLMGg3
71
+ ZHM3WGRNbFE2UmRfTVgwOUhGRTgiIC8+IA0KPG1ldGEgbmFtZT0iUk9CT1RT
72
+ IiBjb250ZW50PSJJTkRFWCwgRk9MTE9XIiAvPg0KPG1ldGEgaHR0cC1lcXVp
73
+ dj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1FZGdlIi8+DQoJCTx0
74
+ aXRsZT4NClBSRVZJRVdTd29ybGQgLSBHUkVFTiBBUlJPVyAjMjEJCTwvdGl0
75
+ bGU+DQoNCgkJPGxpbmsgaHJlZj0iL0NvbnRlbnQvQ29udGVudFNpdGVHbG9i
76
+ YWwuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiAvPg0K
77
+ CQk8bGluayBocmVmPSIvQ29udGVudC9jc2xzLmNzcyIgcmVsPSJzdHlsZXNo
78
+ ZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLz4NCgkJPGxpbmsgaHJlZj0iL0NvbnRl
79
+ bnQvUHJldmlld3NXb3JsZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0i
80
+ dGV4dC9jc3MiIC8+DQoJCTxsaW5rIGhyZWY9Ii9TY3JpcHRzL0ZhbmN5Qm94
81
+ L2pxdWVyeS5mYW5jeWJveC0xLjMuNC5jc3MiIHJlbD0iU3R5bGVzaGVldCIg
82
+ dHlwZT0idGV4dC9jc3MiIC8+DQoJCTxzY3JpcHQgc3JjPSIvU2NyaXB0cy9q
83
+ cXVlcnktMS43LjEubWluLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwv
84
+ c2NyaXB0Pg0KCQk8c2NyaXB0IHNyYz0iL1NjcmlwdHMvRmFuY3lCb3gvanF1
85
+ ZXJ5Lm1vdXNld2hlZWwtMy4wLjQucGFjay5qcyIgdHlwZT0idGV4dC9qYXZh
86
+ c2NyaXB0Ij48L3NjcmlwdD4NCgkJPHNjcmlwdCBzcmM9Ii9TY3JpcHRzL0Zh
87
+ bmN5Qm94L2pxdWVyeS5lYXNpbmctMS4zLnBhY2suanMiIHR5cGU9InRleHQv
88
+ amF2YXNjcmlwdCI+PC9zY3JpcHQ+DQoJCTxzY3JpcHQgc3JjPSIvU2NyaXB0
89
+ cy9GYW5jeUJveC9qcXVlcnkuZmFuY3lib3gtMS4zLjQucGFjay5qcyIgdHlw
90
+ ZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCgkJPHNjcmlwdCBzcmM9
91
+ Ii9TY3JpcHRzL0dhbGxlcmlhL2dhbGxlcmlhLTEuMi42Lm1pbi5qcyIgdHlw
92
+ ZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4NCgkJPHNjcmlwdCBzcmM9
93
+ Ii9TY3JpcHRzL2pzX2Z1bmN0aW9ucy5qcyIgdHlwZT0idGV4dC9qYXZhc2Ny
94
+ aXB0Ij48L3NjcmlwdD4NCgkJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
95
+ cHQiPg0KCQkJJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgew0KCQkJ
96
+ CUdhbGxlcmlhLmxvYWRUaGVtZSgnL1NjcmlwdHMvR2FsbGVyaWEvVGhlbWVz
97
+ L1R3ZWx2ZS9nYWxsZXJpYS50d2VsdmUubWluLmpzJyk7DQoJCQl9KTsNCgkJ
98
+ PC9zY3JpcHQ+DQoJCTxzY3JpcHQgc3JjPSIvU2NyaXB0cy9DaGFuZ2VTdGF0
99
+ dXMuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQoJCTxz
100
+ Y3JpcHQgc3JjPSIvU2NyaXB0cy9qcXVlcnkuc2Nyb2xsVG8tbWluLmpzIiB0
101
+ eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0Pg0KCQk8c2NyaXB0IHNy
102
+ Yz0iL1NjcmlwdHMvSW5saW5lU2xpZGVTaG93L2pxdWVyeS5kaWFtb25kY29t
103
+ aWNzLmlubGluZXNsaWRlc2hvdy0xLjAuanMiIHR5cGU9InRleHQvamF2YXNj
104
+ cmlwdCI+PC9zY3JpcHQ+DQoJCTxzY3JpcHQgc3JjPSIvU2NyaXB0cy9qcXVl
105
+ cnktd2F0ZXJtYXJrLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2Ny
106
+ aXB0Pg0KCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQoJCQkk
107
+ KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7DQoJCQkJJCgiLkZhbmN5
108
+ UG9wdXAiKS5mYW5jeWJveCh7DQoJCQkJCSd0cmFuc2l0aW9uSW4nOiAnZWxh
109
+ c3RpYycsDQoJCQkJCSd0cmFuc2l0aW9uT3V0JzogJ2VsYXN0aWMnLA0KCQkJ
110
+ CQknY2VudGVyT25TY3JvbGwnOiAndHJ1ZScsDQoJCQkJCSd0eXBlJzogJ2lm
111
+ cmFtZScsDQoJCQkJCSd0aXRsZVBvc2l0aW9uJzogJ292ZXInLA0KCQkJCQkn
112
+ b25Db21wbGV0ZSc6IGZ1bmN0aW9uKCkgew0KCQkJCQkJJCgiI2ZhbmN5Ym94
113
+ LXRpdGxlIikuY3NzKHsndG9wJzonMHB4JywgJ2JvdHRvbSc6J2F1dG8nfSk7
114
+ IA0KCQkJCQkJfSwNCgkJCQkJJ3dpZHRoJzogJzc1JScsDQoJCQkJCSdoZWln
115
+ aHQnOiAnNjAwJw0KCQkJCX0pOw0KCQkJfSk7DQoJCQkkKGRvY3VtZW50KS5y
116
+ ZWFkeShmdW5jdGlvbiAoKSB7DQoJCQkJJCgiLkZhbmN5UG9wdXBJbWFnZSIp
117
+ LmZhbmN5Ym94KHsNCgkJCQkJJ3RyYW5zaXRpb25Jbic6ICdlbGFzdGljJywN
118
+ CgkJCQkJJ3RyYW5zaXRpb25PdXQnOiAnZWxhc3RpYycsDQoJCQkJCSdjZW50
119
+ ZXJPblNjcm9sbCc6ICd0cnVlJywNCgkJCQkJJ3R5cGUnOiAnaW1hZ2UnLA0K
120
+ CQkJCQkndGl0bGVQb3NpdGlvbic6ICdvdmVyJywNCgkJCQkJJ29uQ29tcGxl
121
+ dGUnOiBmdW5jdGlvbiAoKSB7DQoJCQkJCQkkKCIjZmFuY3lib3gtdGl0bGUi
122
+ KS5jc3MoeyAndG9wJzogJzBweCcsICdib3R0b20nOiAnYXV0bycgfSk7DQoJ
123
+ CQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KCQkJJChkb2N1bWVudCkucmVhZHko
124
+ ZnVuY3Rpb24gKCkgew0KCQkJCSQoJy5IdG1sQ29udGVudCBhW2hyZWZePSIj
125
+ Il0nKS5jbGljayhmdW5jdGlvbiAoKSB7DQoJCQkJCXZhciBpdGVtID0gJCh0
126
+ aGlzKS5hdHRyKCJocmVmIik7DQoJCQkJCWl0ZW0gPSBpdGVtLnN1YnN0cmlu
127
+ ZygxKTsNCgkJCQkJdmFyIGFpdGVtID0gJCgiW25hbWU9JyIgKyBpdGVtICsg
128
+ IiddIikNCgkJCQkJJC5zY3JvbGxUbyhhaXRlbSk7DQoJCQkJCXJldHVybiBm
129
+ YWxzZTsNCgkJCQl9KTsNCgkJCX0pOw0KLy8JCQkkKGRvY3VtZW50KS5yZWFk
130
+ eShmdW5jdGlvbiAoKSB7DQovLwkJCQkkKCdkaXZbY2xhc3NePUdvb2dsZUFk
131
+ dmVydGlzZW1lbnRdJykuZWFjaChmdW5jdGlvbiAoKSB7DQovLwkJCQkJLy9p
132
+ ZiAoJCh0aGlzKS5jaGlsZHJlbigiZGl2W2lkXj0nZ29vZ2xlX2Fkc19kaXZd
133
+ IikubGVuZ3RoID09IDApIHsNCi8vCQkJCQlhbGVydCgkKHRoaXMpLnRleHQo
134
+ KSk7DQovLwkJCQkJaWYgKCQodGhpcykubGVuZ3RoKCkgPT0gMCkgew0KLy8J
135
+ CQkJCQkkKHRoaXMpLmhpZGUoKTsNCi8vCQkJCQl9DQovLwkJCQl9KQ0KLy8J
136
+ CQl9KTsNCg0KCQkJZnVuY3Rpb24gQ2xvc2VGYW5jeWJveCgpIHsgJC5mYW5j
137
+ eWJveC5jbG9zZSgpOyB9DQoJCTwvc2NyaXB0Pg0KCQk8c2NyaXB0IHR5cGU9
138
+ InRleHQvamF2YXNjcmlwdCI+R2FsbGVyaWEubG9hZFRoZW1lKCcvU2NyaXB0
139
+ cy9HYWxsZXJpYS9UaGVtZXMvQ2xhc3NpYy9nYWxsZXJpYS5jbGFzc2ljLm1p
140
+ bi5qcycpOzwvc2NyaXB0Pg0KCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
141
+ cmlwdCIgc3JjPSJodHRwOi8vd2lkZ2V0cy50d2ltZy5jb20vai8yL3dpZGdl
142
+ dC5qcyI+PC9zY3JpcHQ+DQoJCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
143
+ aXB0IiBzcmM9Imh0dHA6Ly9wYXJ0bmVyLmdvb2dsZWFkc2VydmljZXMuY29t
144
+ L2dhbXBhZC9nb29nbGVfc2VydmljZS5qcyI+PC9zY3JpcHQ+DQoJCTxzY3Jp
145
+ cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCgkJCUdTX2dvb2dsZUFkZEFk
146
+ U2Vuc2VTZXJ2aWNlKCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIpOw0KCQkJ
147
+ R1NfZ29vZ2xlRW5hYmxlQWxsU2VydmljZXMoKTsNCgkJPC9zY3JpcHQ+DQoJ
148
+ CTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vCQkJR1NfZ29v
149
+ Z2xlQWRkQWRTZW5zZVNlcnZpY2UoImNhLXB1Yi05MzE0MTU5ODg2MTE4MDkx
150
+ Iik7DQovLwkJCUdTX2dvb2dsZUVuYWJsZUFsbFNlcnZpY2VzKCk7DQoJCQlH
151
+ QV9nb29nbGVBZGRTbG90KCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJS
152
+ Vi1Ib21lcy1GdWxsLUJhbm5lci1MZWFkIik7DQoJCQlHQV9nb29nbGVBZGRT
153
+ bG90KCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJSVi1Ib21lcy1CdXR0
154
+ b24tMSIpOw0KCQkJR0FfZ29vZ2xlQWRkU2xvdCgiY2EtcHViLTkzMTQxNTk4
155
+ ODYxMTgwOTEiLCAiUlYtSG9tZXMtQnV0dG9uLTEtTnVtYmVyLTIiKTsNCgkJ
156
+ CUdBX2dvb2dsZUFkZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2MTE4MDkxIiwg
157
+ IlJWLUhvbWVzLUJ1dHRvbi0yIik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJj
158
+ YS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJSVi1Ib21lcy1Ta3lzY3JhcGVy
159
+ Iik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJjYS1wdWItOTMxNDE1OTg4NjEx
160
+ ODA5MSIsICJSVi1Ib21lcy1WZXJ0aWNhbC1CYW5uZXIiKTsNCgkJCUdBX2dv
161
+ b2dsZUFkZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2MTE4MDkxIiwgIlBXLUhv
162
+ bWUtRnVsbC1CYW5uZXItTGVhZCIpOw0KCQkJR0FfZ29vZ2xlQWRkU2xvdCgi
163
+ Y2EtcHViLTkzMTQxNTk4ODYxMTgwOTEiLCAiUFctSG9tZS1CdXR0b24tMSIp
164
+ Ow0KCQkJR0FfZ29vZ2xlQWRkU2xvdCgiY2EtcHViLTkzMTQxNTk4ODYxMTgw
165
+ OTEiLCAiUFctSG9tZS1CdXR0b24tMS1OdW1iZXIyIik7DQoJCQlHQV9nb29n
166
+ bGVBZGRTbG90KCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJQVy1Ib21l
167
+ LUJ1dHRvbi0yIik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJjYS1wdWItOTMx
168
+ NDE1OTg4NjExODA5MSIsICJQVy1Ib21lLVZlcnRpY2FsLUJhbm5lciIpOw0K
169
+ CQkJR0FfZ29vZ2xlQWRkU2xvdCgiY2EtcHViLTkzMTQxNTk4ODYxMTgwOTEi
170
+ LCAiUFctSG9tZS1Ta3lzY3JhcGVyIik7DQoJCQlHQV9nb29nbGVBZGRTbG90
171
+ KCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJQVy1Ib21lLVNreXNjcmFw
172
+ ZXItMiIpOw0KCQkJR0FfZ29vZ2xlQWRkU2xvdCgiY2EtcHViLTkzMTQxNTk4
173
+ ODYxMTgwOTEiLCAiUFctSG9tZS1Ta3lzY3JhcGVyLTMiKTsNCgkJCUdBX2dv
174
+ b2dsZUFkZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2MTE4MDkxIiwgIkJvb2tz
175
+ aGVsZi1GdWxsLUJhbm5lci1MZWFkIik7DQoJCQlHQV9nb29nbGVBZGRTbG90
176
+ KCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJCb29rc2hlbGYtQnV0dG9u
177
+ LTIiKTsNCgkJCUdBX2dvb2dsZUFkZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2
178
+ MTE4MDkxIiwgIkJvb2tzaGVsZi1Ta3lzY3JhcGVyIik7DQoJCQlHQV9nb29n
179
+ bGVBZGRTbG90KCJjYS1wdWItOTMxNDE1OTg4NjExODA5MSIsICJCb29rc2hl
180
+ bGYtU2t5c2NyYXBlci0yIik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJjYS1w
181
+ dWItOTMxNDE1OTg4NjExODA5MSIsICJCb29rc2hlbGYtVmVydGljYWwtQmFu
182
+ bmVyIik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJjYS1wdWItOTMxNDE1OTg4
183
+ NjExODA5MSIsICJEQkQtRnVsbC1MZWFkZXJib2FyZCIpOw0KCQkJR0FfZ29v
184
+ Z2xlQWRkU2xvdCgiY2EtcHViLTkzMTQxNTk4ODYxMTgwOTEiLCAiRkNCRC1G
185
+ dWxsLUxlYWRlcmJvYXJkIik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJjYS1w
186
+ dWItOTMxNDE1OTg4NjExODA5MSIsICJGQ0JEX1JJR0hUX0NPTDEiKTsNCgkJ
187
+ CUdBX2dvb2dsZUFkZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2MTE4MDkxIiwg
188
+ IkZDQkRfUklHSFRfQ09MMiIpOw0KCQkJR0FfZ29vZ2xlQWRkU2xvdCgiY2Et
189
+ cHViLTkzMTQxNTk4ODYxMTgwOTEiLCAiVENOLUZ1bGwtTGVhZGVyYm9hcmQi
190
+ KTsNCgkJCUdBX2dvb2dsZUFkZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2MTE4
191
+ MDkxIiwgIlRDTi1WZXJ0aWNhbC1CYW5uZXIiKTsNCgkJCUdBX2dvb2dsZUFk
192
+ ZFNsb3QoImNhLXB1Yi05MzE0MTU5ODg2MTE4MDkxIiwgIlRDTi1Ta3lzY3Jh
193
+ cGVyIik7DQoJCQlHQV9nb29nbGVBZGRTbG90KCJjYS1wdWItOTMxNDE1OTg4
194
+ NjExODA5MSIsICJUQ04tTG93ZXItU2t5c2NyYXBlciIpOw0KCQkJR0FfZ29v
195
+ Z2xlRmV0Y2hBZHMoKTsNCgkJPC9zY3JpcHQ+DQoJCQ0KCQk8c2NyaXB0IHR5
196
+ cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvU2NyaXB0cy9RdWFudGNhc3Qv
197
+ UXVhbnRjYXN0QXN5bmNHZW5lcmljLmpzIj48L3NjcmlwdD4NCgkJPHNjcmlw
198
+ dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPl9xZXZlbnRzLnB1c2goeyBxYWNj
199
+ dDogInAtZjdjeVpSdmdzQzlLMiIgfSk7PC9zY3JpcHQ+DQoJCTxub3Njcmlw
200
+ dD48ZGl2IHN0eWxlPSJkaXNwbGF5OiBub25lOyI+PGltZyBzcmM9Imh0dHA6
201
+ Ly9waXhlbC5xdWFudHNlcnZlLmNvbS9waXhlbC9wLWY3Y3laUnZnc0M5SzIu
202
+ Z2lmIiBoZWlnaHQ9IjEiIHdpZHRoPSIxIiBhbHQ9IlF1YW50Y2FzdCIvPjwv
203
+ ZGl2Pjwvbm9zY3JpcHQ+DQoNCgkJPHNjcmlwdCBzcmM9Ii9TY3JpcHRzL1dl
204
+ YkxvZ0V4cGVydC93bGVfdHJhY2tlci5qcyIgdHlwZT0idGV4dC9qYXZhc2Ny
205
+ aXB0Ij48L3NjcmlwdD4NCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
206
+ cHQiPg0KCXZhciBfZ2FxID0gX2dhcSB8fCBbXTsNCglfZ2FxLnB1c2goWydf
207
+ c2V0QWNjb3VudCcsICdVQS0yOTcyNTY2NS0yJ10pOw0KCV9nYXEucHVzaChb
208
+ J19zZXREb21haW5OYW1lJywgJ3ByZXZpZXdzd29ybGQuY29tJ10pOw0KCV9n
209
+ YXEucHVzaChbJ190cmFja1BhZ2V2aWV3J10pOw0KDQoJKGZ1bmN0aW9uICgp
210
+ IHsNCgkJdmFyIGdhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0
211
+ Jyk7IGdhLnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JzsgZ2EuYXN5bmMgPSB0
212
+ cnVlOw0KCQlnYS5zcmMgPSAoJ2h0dHBzOicgPT0gZG9jdW1lbnQubG9jYXRp
213
+ b24ucHJvdG9jb2wgPyAnaHR0cHM6Ly9zc2wnIDogJ2h0dHA6Ly93d3cnKSAr
214
+ ICcuZ29vZ2xlLWFuYWx5dGljcy5jb20vZ2EuanMnOw0KCQl2YXIgcyA9IGRv
215
+ Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTsgcy5w
216
+ YXJlbnROb2RlLmluc2VydEJlZm9yZShnYSwgcyk7DQoJfSkoKTsNCjwvc2Ny
217
+ aXB0Pg0KCTwvaGVhZD4NCg0KCTxib2R5Pg0KCQk8ZGl2IGlkPSJMYXlvdXRD
218
+ b250YWluZXIiPg0KCQkJPGRpdiBpZD0iSGVhZGVyIj4NCg0KDQo8ZGl2IGNs
219
+ YXNzPSJIZWFkZXJMb2dvIj4NCg0KPGRpdiBjbGFzcz0iQWR2ZXJ0aXNlbWVu
220
+ dCI+PGEgaHJlZj0iL0hvbWUvUmVkaXJlY3QvOTQ5IiB0YXJnZXQ9Il9zZWxm
221
+ IiBsYW5ndWFnZT0iamF2YXNjcmlwdCIgb25Nb3VzZU92ZXI9ImNoYW5nZVN0
222
+ YXR1cygnJyk7cmV0dXJuIHRydWUiPjxpbWcgc3JjPSIvQWRzLzk0OS5qcGci
223
+ IGJvcmRlcj0iMCIgYWx0PSJTaXRlIExvZ28gUHJldmlld3MiPjwvYT48L2Rp
224
+ dj48L2Rpdj4NCg0KPGRpdiBjbGFzcz0iR29vZ2xlQWR2ZXJ0aXNlbWVudCI+
225
+ PHNjcmlwdD5HQV9nb29nbGVGaWxsU2xvdCgiUFctSG9tZS1GdWxsLUJhbm5l
226
+ ci1MZWFkIik7PC9zY3JpcHQ+PC9kaXY+CQkJCTxkaXYgY2xhc3M9IkRhdGVU
227
+ aW1lQmFyIj4NCgkJCQkJPGRpdiBjbGFzcz0iRGF0ZVRpbWVEaXNwbGF5Ij4N
228
+ CgkJCQkJCVR1ZXNkYXksIEp1bHkgMjMsIDIwMTMNCgkJCQkJPC9kaXY+DQoJ
229
+ CQkJCTxkaXYgY2xhc3M9IlNsb2dhbiI+DQoJCQkJCQkNCgkJCQkJPC9kaXY+
230
+ DQoJCQkJPC9kaXY+DQoJCQkJPGRpdiBpZD0iU2l0ZUxpbmtzTWluaUJhciI+
231
+ DQoNCjxhIGhyZWY9Ii8iPjxzdHJvbmc+SG9tZTwvc3Ryb25nPjwvYT4NCg0K
232
+ PHRleHQ+fDwvdGV4dD4gPGEgaHJlZj0iaHR0cDovL3d3dy5kaWFtb25kY29t
233
+ aWNzLmNvbSI+RGlhbW9uZENvbWljczwvYT4NCjx0ZXh0Pnw8L3RleHQ+IDxh
234
+ IGhyZWY9Imh0dHA6Ly93d3cudG95Y2hlc3RuZXdzLmNvbSI+VG95Q2hlc3RO
235
+ ZXdzPC9hPg0KPHRleHQ+fDwvdGV4dD4gPGEgaHJlZj0iaHR0cDovL3d3dy5n
236
+ YW1ldHJhZGVtYWdhemluZS5jb20iPkdhbWVUcmFkZU1hZ2F6aW5lPC9hPg0K
237
+ PHRleHQ+fDwvdGV4dD4gPGEgaHJlZj0iaHR0cDovL3d3dy5raWRzY29taWNz
238
+ LmNvbSI+a2lkc0NvbWljczwvYT4NCjx0ZXh0Pnw8L3RleHQ+IDxhIGhyZWY9
239
+ Imh0dHA6Ly93d3cuZGlhbW9uZGJvb2tzaGVsZi5jb20iPkRpYW1vbmRCb29r
240
+ U2hlbGY8L2E+DQo8dGV4dD58PC90ZXh0PiA8YSBocmVmPSJodHRwOi8vcmV0
241
+ YWlsZXIuZGlhbW9uZGNvbWljcy5jb20iPlJldGFpbGVyczwvYT4NCjx0ZXh0
242
+ Pnw8L3RleHQ+IDxhIGhyZWY9Imh0dHA6Ly92ZW5kb3IuZGlhbW9uZGNvbWlj
243
+ cy5jb20iPlZlbmRvcnM8L2E+CQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJDQoJ
244
+ CQk8ZGl2IGlkPSJDb250ZW50QXJlYUhlYWRlciI+DQoJCQkJPGRpdiBjbGFz
245
+ cz0iTmF2aWdhdGlvbiI+PC9kaXY+DQoJCQkJPGRpdiBjbGFzcz0iU2lkZUJh
246
+ ciI+PC9kaXY+DQoJCQkJPGRpdiBjbGFzcz0iTWFpbkNvbnRlbnQiPjwvZGl2
247
+ Pg0KCQkJPC9kaXY+DQoJDQoJCQk8ZGl2IGlkPSJDb250ZW50QXJlYSI+DQoJ
248
+ CQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbiI+DQoJCQkJCTxkaXYgY2xhc3M9
249
+ Ik5hdmlnYXRpb25Db250ZW50Ij4NCg0KDQo8ZGl2IGNsYXNzPSJBZHZlcnRp
250
+ c2VtZW50Ij48YSBocmVmPSIvSG9tZS9SZWRpcmVjdC8zNzI1IiB0YXJnZXQ9
251
+ Il9zZWxmIiBsYW5ndWFnZT0iamF2YXNjcmlwdCIgb25Nb3VzZU92ZXI9ImNo
252
+ YW5nZVN0YXR1cygnJyk7cmV0dXJuIHRydWUiPjxpbWcgc3JjPSIvQWRzLzM3
253
+ MjUuanBnIiBib3JkZXI9IjAiIHdpZHRoPSIxNDQiIGFsdD0iUHJldmlld3Mg
254
+ Q292ZXItQXVndXN0IDEzIEJhY2siPjwvYT48L2Rpdj4JCSAgIA0KPGRpdiBj
255
+ bGFzcz0iU29jaWFsTmV0d29ya2luZ0ljb25zIj4NCgkJPGEgaHJlZj0iaHR0
256
+ cDovL3d3dy5mYWNlYm9vay5jb20vcHJldmlld3N3b3JsZCIgdGFyZ2V0PSJf
257
+ YmxhbmsiPjxpbWcgc3JjPSIvR2VuZXJpY0ltYWdlcy9mYWNlYm9vay1pY29u
258
+ LnBuZyIgYWx0PSJGYWNlYm9vayBJY29uIiAvPjwvYT4NCg0KCQk8YSBocmVm
259
+ PSJodHRwOi8vdHdpdHRlci5jb20vUFJFVklFV1N3b3JsZCIgdGFyZ2V0PSJf
260
+ YmxhbmsiPjxpbWcgc3JjPSIvR2VuZXJpY0ltYWdlcy90d2l0dGVyLWljb24u
261
+ cG5nIiBhbHQ9IlR3aXR0ZXIgSWNvbiIgLz48L2E+DQoNCg0KDQoNCgkJPGEg
262
+ aHJlZj0iL0hvbWUvMS8xLzcxLzk0OC8iIHRhcmdldD0iX3NlbGYiPjxpbWcg
263
+ c3JjPSIvR2VuZXJpY0ltYWdlcy9yc3MtZmVlZHMucG5nIiBhbHQ9IlJzcyBG
264
+ ZWVkIiAvPjwvYT4NCg0KCQk8YSBocmVmPSIvSG9tZS8xLzEvNzEvOTM2IiB0
265
+ YXJnZXQ9Il9zZWxmIj48aW1nIHNyYz0iL0dlbmVyaWNJbWFnZXMvZW1haWwt
266
+ aWNvbi5wbmciIGFsdD0iRW1haWwiIC8+PC9hPg0KCQ0KCQk8YSBocmVmPSJo
267
+ dHRwOi8vd3d3LnlvdXR1YmUuY29tL3ByZXZpZXdzd29ybGQiIHRhcmdldD0i
268
+ X2JsYW5rIj48aW1nIHNyYz0iL0dlbmVyaWNJbWFnZXMveW91dHViZS1pY29u
269
+ LXRyYW5zcGFyZW50LnBuZyIgYWx0PSJZb3VUdWJlIEljb24iIC8+PC9hPg0K
270
+ PC9kaXY+DQoNCg0KCTxkaXYgY2xhc3M9IlNlY3Rpb25Hcm91cCI+DQoJCTxk
271
+ aXYgY2xhc3M9IlNlY3Rpb25Hcm91cE5hbWUiPlByZW1pZXI8L2Rpdj4NCgkJ
272
+ PGhyIGNsYXNzPSJTZWN0aW9uR3JvdXBSdWxlIiAvPg0KDQoJCQk8ZGl2IGNs
273
+ YXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdh
274
+ dGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5h
275
+ dmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcx
276
+ LzkxNCI+RGFyayBIb3JzZTwvYT4NCgkJCQk8L2Rpdj4NCgkJCTwvZGl2Pg0K
277
+ CQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xh
278
+ c3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2
279
+ IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9I
280
+ b21lLzEvMS83MS85MTUiPkRDIENvbWljczwvYT4NCgkJCQk8L2Rpdj4NCgkJ
281
+ CTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJ
282
+ CTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkN
283
+ CgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxh
284
+ IGhyZWY9Ii9Ib21lLzEvMS83MS85MTYiPklEVzwvYT4NCgkJCQk8L2Rpdj4N
285
+ CgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0K
286
+ CQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0K
287
+ CQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJ
288
+ CTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85MTciPkltYWdlPC9hPg0KCQkJCTwv
289
+ ZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRl
290
+ bSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9k
291
+ aXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJ
292
+ CQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcxLzkxOCI+TWFydmVsPC9hPg0K
293
+ CQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJPC9kaXY+DQoNCg0KCTxkaXYgY2xh
294
+ c3M9IlNlY3Rpb25Hcm91cCI+DQoJCTxkaXYgY2xhc3M9IlNlY3Rpb25Hcm91
295
+ cE5hbWUiPlNlY3Rpb25zPC9kaXY+DQoJCTxociBjbGFzcz0iU2VjdGlvbkdy
296
+ b3VwUnVsZSIgLz4NCg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0i
297
+ Pg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2
298
+ Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJ
299
+ CQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85MjAiPkNvbWljcyAmYW1wOyBH
300
+ cmFwaGljIE5vdmVsczwvYT4NCgkJCQk8L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJ
301
+ PGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xhc3M9
302
+ Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2IGNs
303
+ YXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9Ib21l
304
+ LzEvMS83MS85MjEiPkJvb2tzICZhbXA7IE1hZ2F6aW5lczwvYT4NCgkJCQk8
305
+ L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0
306
+ ZW0iPg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwv
307
+ ZGl2Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJ
308
+ CQkJCQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85MjQiPlRyYWRpbmcgQ2Fy
309
+ ZHM8L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rpdj4NCgkJCTxkaXYgY2xhc3M9
310
+ Ik5hdmlnYXRpb25JdGVtIj4NCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9u
311
+ SW1nIj4NCgkJCQk8L2Rpdj4NCgkJDQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdh
312
+ dGlvbkxpbmsiPg0KCQkJCQkJCQk8YSBocmVmPSIvSG9tZS8xLzEvNzEvOTI1
313
+ Ij5BcHBhcmVsPC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2
314
+ IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2
315
+ aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9
316
+ Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8x
317
+ LzcxLzkyNiI+VG95cyBTdGF0dWVzICZhbXA7IE1vZGVsczwvYT4NCgkJCQk8
318
+ L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0
319
+ ZW0iPg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwv
320
+ ZGl2Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJ
321
+ CQkJCQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85MjgiPkltcG9ydCBUb3lz
322
+ PC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJO
323
+ YXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbklt
324
+ ZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRp
325
+ b25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcxLzkyOSI+
326
+ Q29sbGVjdGlibGVzICZhbXA7IE5vdmVsdGllczwvYT4NCgkJCQk8L2Rpdj4N
327
+ CgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0K
328
+ CQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0K
329
+ CQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJ
330
+ CTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85MzAiPkdhbWVzPC9hPg0KCQkJCTwv
331
+ ZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRl
332
+ bSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9k
333
+ aXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJ
334
+ CQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcxLzkzMSI+RFZEcyAmYW1wOyBE
335
+ aWdpdGFsIE1lZGlhPC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJCQk8
336
+ ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0i
337
+ TmF2aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xh
338
+ c3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUv
339
+ MS8xLzcxLzkzMiI+UFJFVklFV1MgVUs8L2E+DQoJCQkJPC9kaXY+DQoJCQk8
340
+ L2Rpdj4NCgkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JdGVtIj4NCgkJCQk8
341
+ ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSW1nIj4NCgkJCQk8L2Rpdj4NCgkJDQoJ
342
+ CQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkxpbmsiPg0KCQkJCQkJCQk8YSBo
343
+ cmVmPSIvUHJldmlld3NQbHVzLzEvMS83MS85MzMiPlBSRVZJRVdTIFBsdXM8
344
+ L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rpdj4NCgkJCTxkaXYgY2xhc3M9Ik5h
345
+ dmlnYXRpb25JdGVtIj4NCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSW1n
346
+ Ij4NCgkJCQk8L2Rpdj4NCgkJDQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlv
347
+ bkxpbmsiPg0KCQkJCQkJCQk8YSBocmVmPSIvSG9tZS8xLzEvNzEvOTM3Ij5Q
348
+ UkVWSUVXUyBQdWJsaWNhdGlvbnM8L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rp
349
+ dj4NCgk8L2Rpdj4NCg0KDQoJPGRpdiBjbGFzcz0iU2VjdGlvbkdyb3VwIj4N
350
+ CgkJPGRpdiBjbGFzcz0iU2VjdGlvbkdyb3VwTmFtZSI+RGVwYXJ0bWVudHM8
351
+ L2Rpdj4NCgkJPGhyIGNsYXNzPSJTZWN0aW9uR3JvdXBSdWxlIiAvPg0KDQoJ
352
+ CQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFz
353
+ cz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYg
354
+ Y2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hv
355
+ bWUvMS8xLzcxLzk0MSI+U3RhZmYgUGlja3M8L2E+DQoJCQkJPC9kaXY+DQoJ
356
+ CQk8L2Rpdj4NCgkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JdGVtIj4NCgkJ
357
+ CQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSW1nIj4NCgkJCQk8L2Rpdj4NCgkJ
358
+ DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkxpbmsiPg0KCQkJCQkJCQk8
359
+ YSBocmVmPSIvSG9tZS8xLzEvNzEvOTQyIj5JbmRpZSBFZGdlPC9hPg0KCQkJ
360
+ CTwvZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9u
361
+ SXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJ
362
+ PC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4N
363
+ CgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcxLzk0Mz9hcnRpY2xlSUQ9
364
+ MTIzMDYiPkNlcnRpZmllZCBDb29sPC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9k
365
+ aXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRp
366
+ diBjbGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJ
367
+ CTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJl
368
+ Zj0iL0hvbWUvMS8xLzcxLzk0NCI+TmV3IFNlcmllczwvYT4NCgkJCQk8L2Rp
369
+ dj4NCgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0i
370
+ Pg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2
371
+ Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJ
372
+ CQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85NDUiPkJlc3RzZWxsZXJzPC9h
373
+ Pg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZp
374
+ Z2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkltZyI+
375
+ DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25M
376
+ aW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcxLzk0NiI+RXZl
377
+ bnQgQ2FsZW5kYXI8L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rpdj4NCgk8L2Rp
378
+ dj4NCg0KDQoJPGRpdiBjbGFzcz0iU2VjdGlvbkdyb3VwIj4NCgkJPGRpdiBj
379
+ bGFzcz0iU2VjdGlvbkdyb3VwTmFtZSI+UmVzb3VyY2VzPC9kaXY+DQoJCTxo
380
+ ciBjbGFzcz0iU2VjdGlvbkdyb3VwUnVsZSIgLz4NCg0KCQkJPGRpdiBjbGFz
381
+ cz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRp
382
+ b25JbWciPg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZp
383
+ Z2F0aW9uTGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85
384
+ MzYiPlN1YnNjcmliZTwvYT4NCgkJCQk8L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJ
385
+ PGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xhc3M9
386
+ Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2IGNs
387
+ YXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9Ib21l
388
+ LzEvMS83MS85NDciPk9yZGVyIEZvcm1zPC9hPg0KCQkJCTwvZGl2Pg0KCQkJ
389
+ PC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJ
390
+ PGRpdiBjbGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0K
391
+ CQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEg
392
+ aHJlZj0iL0hvbWUvMS8xLzcxLzk0OCI+UlNTIEZlZWRzPC9hPg0KCQkJCTwv
393
+ ZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRl
394
+ bSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9k
395
+ aXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJ
396
+ CQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcxLzk0OSI+VXNlcnMgR3VpZGU8
397
+ L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rpdj4NCgkJCTxkaXYgY2xhc3M9Ik5h
398
+ dmlnYXRpb25JdGVtIj4NCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSW1n
399
+ Ij4NCgkJCQk8L2Rpdj4NCgkJDQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlv
400
+ bkxpbmsiPg0KCQkJCQkJCQk8YSBocmVmPSIvSG9tZS8xLzEvNzEvOTUwIj5B
401
+ cmNoaXZlczwvYT4NCgkJCQk8L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJPGRpdiBj
402
+ bGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmln
403
+ YXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJO
404
+ YXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83
405
+ MS85NTEiPkNvbnRhY3QgVXM8L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rpdj4N
406
+ Cgk8L2Rpdj4NCg0KDQoJPGRpdiBjbGFzcz0iU2VjdGlvbkdyb3VwIj4NCgkJ
407
+ PGRpdiBjbGFzcz0iU2VjdGlvbkdyb3VwTmFtZSI+UmVsZWFzZSBJbmZvPC9k
408
+ aXY+DQoJCTxociBjbGFzcz0iU2VjdGlvbkdyb3VwUnVsZSIgLz4NCg0KCQkJ
409
+ PGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xhc3M9
410
+ Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2IGNs
411
+ YXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9Ib21l
412
+ LzEvMS83MS85NTIiPk5ldyBSZWxlYXNlczwvYT4NCgkJCQk8L2Rpdj4NCgkJ
413
+ CTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0ZW0iPg0KCQkJ
414
+ CTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwvZGl2Pg0KCQkN
415
+ CgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJCQkJCQkJCTxh
416
+ IGhyZWY9Ii9Ib21lLzEvMS83MS85NTMiPkZlYXR1cmVkIFRoaXMgV2Vlazwv
417
+ YT4NCgkJCQk8L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2
418
+ aWdhdGlvbkl0ZW0iPg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWci
419
+ Pg0KCQkJCTwvZGl2Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9u
420
+ TGluayI+DQoJCQkJCQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85NTQiPlVw
421
+ Y29taW5nIFJlbGVhc2VzPC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJ
422
+ CQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFz
423
+ cz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYg
424
+ Y2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hv
425
+ bWUvMS8xLzcxLzExNjU/YXJ0aWNsZUlEPTAiPkRpZ2l0YWwgQ29taWNzIFJl
426
+ bGVhc2VzPC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNs
427
+ YXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdh
428
+ dGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxkaXYgY2xhc3M9Ik5h
429
+ dmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0iL0hvbWUvMS8xLzcx
430
+ Lzk1NSI+TmV3IFByaW50aW5ncyAmYW1wOyBWYXJpYW50czwvYT4NCgkJCQk8
431
+ L2Rpdj4NCgkJCTwvZGl2Pg0KCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbkl0
432
+ ZW0iPg0KCQkJCTxkaXYgY2xhc3M9Ik5hdmlnYXRpb25JbWciPg0KCQkJCTwv
433
+ ZGl2Pg0KCQkNCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uTGluayI+DQoJ
434
+ CQkJCQkJCTxhIGhyZWY9Ii9Ib21lLzEvMS83MS85NTYiPkNhbmNlbGxhdGlv
435
+ bnM8L2E+DQoJCQkJPC9kaXY+DQoJCQk8L2Rpdj4NCgkJCTxkaXYgY2xhc3M9
436
+ Ik5hdmlnYXRpb25JdGVtIj4NCgkJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9u
437
+ SW1nIj4NCgkJCQk8L2Rpdj4NCgkJDQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdh
438
+ dGlvbkxpbmsiPg0KCQkJCQkJCQk8YSBocmVmPSIvSG9tZS8xLzEvNzEvOTU3
439
+ Ij5TaGlwcGluZyBVcGRhdGVzPC9hPg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+
440
+ DQoJCQk8ZGl2IGNsYXNzPSJOYXZpZ2F0aW9uSXRlbSI+DQoJCQkJPGRpdiBj
441
+ bGFzcz0iTmF2aWdhdGlvbkltZyI+DQoJCQkJPC9kaXY+DQoJCQ0KCQkJCTxk
442
+ aXYgY2xhc3M9Ik5hdmlnYXRpb25MaW5rIj4NCgkJCQkJCQkJPGEgaHJlZj0i
443
+ L0hvbWUvMS8xLzcxLzk1OCI+UHJvZHVjdCBDaGFuZ2VzPC9hPg0KCQkJCTwv
444
+ ZGl2Pg0KCQkJPC9kaXY+DQoJPC9kaXY+DQoNCg0KDQoNCgkJCQkJPC9kaXY+
445
+ DQoJCQkJCTxkaXYgY2xhc3M9IlNvY2lhbE5ldHdvcmtpbmdMaXZlRmVlZHMi
446
+ Pg0KCQkgICANCgk8c2NyaXB0IHNyYz0iL1NjcmlwdHMvVHdpdHRlci9QcmV2
447
+ aWV3c1dvcmxkLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0
448
+ Pg0KCQkJCQk8L2Rpdj4NCgkJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvblBv
449
+ bGxzIj4NCg0KCQkJCQk8L2Rpdj4NCgkJCQk8L2Rpdj4NCgkNCgkJCQk8ZGl2
450
+ IGNsYXNzPSJTaWRlQmFyIj4NCgkJCQkJPGRpdiBjbGFzcz0iU2lkZUJhckNv
451
+ bnRlbnQiPg0KDQoNCg0KPGRpdiBjbGFzcz0iSW5ob3VzZUFkdmVydGlzZW1l
452
+ bnQiPg0KDQo8L2Rpdj4NCg0KPGRpdiBjbGFzcz0iR29vZ2xlQWR2ZXJ0aXNl
453
+ bWVudCIgc3R5bGU9InBhZGRpbmctdG9wOiAwcHg7IHBhZGRpbmctYm90dG9t
454
+ OiAwcHg7Ij4NCgk8ZGl2IGNsYXNzPSJDc2xzQWQiPjxzY3JpcHQgdHlwZT0i
455
+ dGV4dC9qYXZhc2NyaXB0Ij5HQV9nb29nbGVGaWxsU2xvdCgiUFctSG9tZS1C
456
+ dXR0b24tMSIpOzwvc2NyaXB0PjwvZGl2Pg0KPC9kaXY+DQo8ZGl2IGNsYXNz
457
+ PSJHb29nbGVBZHZlcnRpc2VtZW50Ij48c2NyaXB0IHR5cGU9InRleHQvamF2
458
+ YXNjcmlwdCI+R0FfZ29vZ2xlRmlsbFNsb3QoIlBXLUhvbWUtQnV0dG9uLTEt
459
+ TnVtYmVyMiIpOzwvc2NyaXB0PjwvZGl2Pg0KPGRpdiBjbGFzcz0iR29vZ2xl
460
+ QWR2ZXJ0aXNlbWVudCI+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
461
+ PkdBX2dvb2dsZUZpbGxTbG90KCJQVy1Ib21lLUJ1dHRvbi0yIik7PC9zY3Jp
462
+ cHQ+PC9kaXY+DQo8ZGl2IGNsYXNzPSJHb29nbGVBZHZlcnRpc2VtZW50Ij48
463
+ c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+R0FfZ29vZ2xlRmlsbFNs
464
+ b3QoIlBXLUhvbWUtVmVydGljYWwtQmFubmVyIik7PC9zY3JpcHQ+PC9kaXY+
465
+ DQo8ZGl2IGNsYXNzPSJHb29nbGVBZHZlcnRpc2VtZW50Ij48c2NyaXB0IHR5
466
+ cGU9InRleHQvamF2YXNjcmlwdCI+R0FfZ29vZ2xlRmlsbFNsb3QoIlBXLUhv
467
+ bWUtU2t5c2NyYXBlciIpOzwvc2NyaXB0PjwvZGl2Pg0KPGRpdiBjbGFzcz0i
468
+ R29vZ2xlQWR2ZXJ0aXNlbWVudCI+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
469
+ Y3JpcHQiPkdBX2dvb2dsZUZpbGxTbG90KCJQVy1Ib21lLVNreXNjcmFwZXIt
470
+ MiIpOzwvc2NyaXB0PjwvZGl2Pg0KPGRpdiBjbGFzcz0iR29vZ2xlQWR2ZXJ0
471
+ aXNlbWVudCI+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPkdBX2dv
472
+ b2dsZUZpbGxTbG90KCJQVy1Ib21lLVNreXNjcmFwZXItMyIpOzwvc2NyaXB0
473
+ PjwvZGl2Pg0KDQoNCgkJCQkJPC9kaXY+DQoJCQkJPC9kaXY+DQoJDQoJCQkJ
474
+ PGRpdiBjbGFzcz0iTWFpbkNvbnRlbnQiPg0KCQkJCQkNCg0KDQo8ZGl2IGNs
475
+ YXNzPSJBZHZlcnRpc2VtZW50Ij48YSBocmVmPSIvSG9tZS9SZWRpcmVjdC8z
476
+ NzI3IiB0YXJnZXQ9Il9zZWxmIiBsYW5ndWFnZT0iamF2YXNjcmlwdCIgb25N
477
+ b3VzZU92ZXI9ImNoYW5nZVN0YXR1cygnJyk7cmV0dXJuIHRydWUiPjxpbWcg
478
+ c3JjPSIvQWRzLzM3MjcuanBnIiBib3JkZXI9IjAiIHdpZHRoPSI0NjgiIGhl
479
+ aWdodD0iNjAiIGFsdD0iSW1hZ2UgUFJFVklFV1N3b3JsZCBDZW50ZXIgQWQg
480
+ SnVseSAxMyI+PC9hPjwvZGl2Pg0KDQoNCg0KPGRpdiBjbGFzcz0iTWFpblNl
481
+ Y3Rpb24iPg0KCQk8ZGl2IGNsYXNzPSJTZWN0aW9uQmFubmVyIj4NCgkJCQkJ
482
+ PGRpdiBjbGFzcz0iU2VjdGlvbkJhbm5lckltYWdlIj4NCgkJCQkJCQk8aW1n
483
+ IHNyYz0iL25ld3NfaW1hZ2VzL21lbnVfaW1hZ2VzLzk1Ml9TZWN0aW9uQmFu
484
+ bmVySW1hZ2UuanBnIiBhbHQ9Ik5ldyBSZWxlYXNlcyIgdGl0bGU9Ik5ldyBS
485
+ ZWxlYXNlcyIgY2xhc3M9ImJhbm5lcl9pbWFnZSIgLz4NCgkJCQkJCQk8cD48
486
+ L3A+DQoJCQkJCTwvZGl2Pg0KCQk8L2Rpdj4NCg0KDQoNCg0KDQoNCg0KDQoN
487
+ CgkJPGRpdiBjbGFzcz0iU3RvY2tJdGVtcyI+DQoJPGRpdiBjbGFzcz0iTWFp
488
+ blN0b2NrQ29kZSI+DQoNCjxkaXYgY2xhc3M9IlN0b2NrQ29kZSI+DQoJPGRp
489
+ diBjbGFzcz0iU3RvY2tDb2RlRGVzY3JpcHRpb24iPjxhIGhyZWY9Ii9Ib21l
490
+ LzEvMS83MS85NTI/c3RvY2tJdGVtSUQ9U1RLNjExMTY5Ij5HUkVFTiBBUlJP
491
+ VyAjMjE8L2E+PC9kaXY+DQoNCgkJPGRpdiBjbGFzcz0iU3RvY2tDb2RlSW1h
492
+ Z2UiPg0KCQkJPGEgY2xhc3M9IkZhbmN5UG9wdXBJbWFnZSIgaHJlZj0iL2Nh
493
+ dGFsb2dpbWFnZXMvU1RLX0lNQUdFUy9TVEs2MDAwMDEtNjIwMDAwL1NUSzYx
494
+ MTE2OS5qcGciPg0KCQkJCTxpbWcgc3JjPSIvY2F0YWxvZ2ltYWdlcy9TVEtf
495
+ SU1BR0VTL1NUSzYwMDAwMS02MjAwMDAvU1RLNjExMTY5LmpwZyIgYWx0PSJT
496
+ VEs2MTExNjkgSW1hZ2UiIC8+DQoJCQk8L2E+DQoJCTwvZGl2Pg0KDQoJCTxk
497
+ aXYgY2xhc3M9IlN0b2NrQ29kZVB1Ymxpc2hlciI+PHN0cm9uZz5QdWJsaXNo
498
+ ZXI6Jm5ic3A7PC9zdHJvbmc+REMgQ09NSUNTPC9kaXY+DQoJCTxkaXYgY2xh
499
+ c3M9IlN0b2NrQ29kZUNyZWF0b3JzIj4oVykgSmVmZiBMZW1pcmUgKEEvQ0Ep
500
+ IEFuZHJlYSBTb3JyZW50aW5vPC9kaXY+DQoJCTxkaXYgY2xhc3M9IlByZXZp
501
+ ZXdzSHRtbCI+T2xsaWUgcmV0dXJucyB0byB0aGUgaXNsYW5kIHdoZXJlIGhl
502
+ IGZpcnN0IGJlY2FtZSBHcmVlbiBBcnJvdyBhbmQgbGVhcm5zIHNvbWUgaGFy
503
+ ZCB0cnV0aHMgYWJvdXQgaGlzIGZhdGhlciBhbmQgdGhlIG15c3RlcmlvdXMg
504
+ T3V0c2lkZXJzIQ0KPC9mb250Pg0KPC9kaXY+DQoJPGRpdiBjbGFzcz0iU3Rv
505
+ Y2tDb2RlSW5mbyI+DQoJCTxkaXYgY2xhc3M9IlN0b2NrQ29kZURpYW1kTm8i
506
+ PjxzdHJvbmc+SXRlbSBDb2RlOiA8L3N0cm9uZz5BUFIxMzAxMzE8L2Rpdj4N
507
+ CgkJCTxkaXYgY2xhc3M9IlN0b2NrQ29kZUluU2hvcHNEYXRlIj48c3Ryb25n
508
+ PkluIFNob3BzOiA8L3N0cm9uZz42LzUvMjAxMzwvZGl2Pg0KCQk8ZGl2IGNs
509
+ YXNzPSJTdG9ja0NvZGVTcnAiPjxzdHJvbmc+U1JQOiA8L3N0cm9uZz4NCiQy
510
+ Ljk5CQk8L2Rpdj4NCgkJPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGgiPjwvZGl2
511
+ Pg0KCTwvZGl2Pg0KPC9kaXY+CQkJPGRpdiBjbGFzcz0iU29jaWFsTmV0d29y
512
+ a2luZ1N0b2NrY29kZUJsb2dJY29ucyI+DQoNCjxkaXYgY2xhc3M9IlN0b2Nr
513
+ Y29kZUJsb2dGYWNlYm9vayI+PHNjcmlwdCBzcmM9Imh0dHA6Ly9jb25uZWN0
514
+ LmZhY2Vib29rLm5ldC9lbl9VUy9hbGwuanMjeGZibWw9MSI+PC9zY3JpcHQ+
515
+ PGZiOmxpa2UgaHJlZj0iaHR0cDovL3d3dy5wcmV2aWV3c3dvcmxkLmNvbS9I
516
+ b21lLzEvMS83MS85NTI/c3RvY2tJdGVtSUQ9QVBSMTMwMTMxIiBsYXlvdXQ9
517
+ InN0YW5kYXJkIiBhY3Rpb249Imxpa2UiIHdpZHRoPSIxMDAlIiBzaG93X2Zh
518
+ Y2VzPSJmYWxzZSI+PC9mYjpsaWtlPjwvZGl2Pg0KPGRpdiBjbGFzcz0iU3Rv
519
+ Y2tjb2RlQmxvZ1R3aXR0ZXIiPjxhIGhyZWY9Imh0dHA6Ly90d2l0dGVyLmNv
520
+ bS9zaGFyZSIgY2xhc3M9InR3aXR0ZXItc2hhcmUtYnV0dG9uIiBkYXRhLXVy
521
+ bD0iaHR0cDovL3d3dy5wcmV2aWV3c3dvcmxkLmNvbS9Ib21lLzEvMS83MS85
522
+ NTI/c3RvY2tJdGVtSUQ9QVBSMTMwMTMxIiBkYXRhLWNvdW50PSJob3Jpem9u
523
+ dGFsIiBkYXRhLXZpYT0iUFJFVklFV1N3b3JsZCI+VHdlZXQ8L2E+PHNjcmlw
524
+ dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cDovL3BsYXRmb3Jt
525
+ LnR3aXR0ZXIuY29tL3dpZGdldHMuanMiPjwvc2NyaXB0PjwvZGl2Pg0KPGRp
526
+ diBjbGFzcz0iY2xlYXIiPjwvZGl2PgkJCTwvZGl2Pg0KCTwvZGl2Pg0KPC9k
527
+ aXY+DQoJCQ0KCQ0KCQk8ZGl2IGNsYXNzPSJGb290ZXJBcnRpY2xlIj4NCg0K
528
+ PGRpdiBjbGFzcz0iSGVhZGxpbmUiPg0KCQk8YSBocmVmPSIvSG9tZS8xLzEv
529
+ NzEvOTU0P2FydGljbGVJRD0xMjg0OTUiPg0KCQkJTU9SRSBGUk9NIFBSRVZJ
530
+ RVdTV09STEQNCgkJPC9hPg0KCQk8YnIgLz4NCjwvZGl2Pg0KCQ0KDQoJCQ0K
531
+ CQ0KPGRpdiBjbGFzcz0iSHRtbENvbnRlbnQiPg0KCTx0YWJsZSBib3JkZXI9
532
+ IjAiIGFsaWduPSJjZW50ZXIiPg0KPHRib2R5Pg0KPHRyPg0KPHRkPjxpbWcg
533
+ c3JjPSIvbmV3c19pbWFnZXMvMTI4NDk1XzQ1ODc3M181LmpwZyIgaGVpZ2h0
534
+ PSI1OCIgd2lkdGg9IjQ4MCIgLz48L3RkPg0KPC90cj4NCjwvdGJvZHk+DQo8
535
+ L3RhYmxlPg0KPHRhYmxlIHN0eWxlPSJ3aWR0aDogNDgwcHg7IGhlaWdodDog
536
+ MTUwcHg7IGJvcmRlcjogMnB4IHNvbGlkICMwMTJlNzI7IiBib3JkZXI9IjIi
537
+ IGZyYW1lPSJib3JkZXIiIHJ1bGVzPSJyb3dzIiBhbGlnbj0iY2VudGVyIj4N
538
+ Cjx0Ym9keT4NCjx0cj4NCjx0ZCBzdHlsZT0iYm9yZGVyLWNvbG9yOiAjMDAy
539
+ ZTcyOyBib3JkZXItc3R5bGU6IHNvbGlkOyBib3JkZXItd2lkdGg6IDFweDsi
540
+ PjxhIGhyZWY9Imh0dHA6Ly93d3cucHJldmlld3N3b3JsZC5jb20vSG9tZS8x
541
+ LzEvNzEvOTc3P2FydGljbGVJRD0xMzcyMDQiPjxpbWcgc3JjPSJodHRwOi8v
542
+ d3d3LnByZXZpZXdzd29ybGQuY29tL0ltYWdlL05ld3NJbWFnZS8xLzEzNzIw
543
+ NC81MTA2MzMvMSIgaGVpZ2h0PSI3MCIgd2lkdGg9IjExMCIgLz48L2E+PC90
544
+ ZD4NCjx0ZCBzdHlsZT0iYm9yZGVyLWNvbG9yOiAjMDAyZTcyOyBib3JkZXIt
545
+ c3R5bGU6IHNvbGlkOyBib3JkZXItd2lkdGg6IDFweDsiPjxhIGhyZWY9Imh0
546
+ dHA6Ly93d3cucHJldmlld3N3b3JsZC5jb20vSG9tZS8xLzEvNzEvOTc3P2Fy
547
+ dGljbGVJRD0xMzcyMDgiPjxpbWcgc3JjPSJodHRwOi8vd3d3LnByZXZpZXdz
548
+ d29ybGQuY29tL0ltYWdlL05ld3NJbWFnZS8xLzEzNzIwOC81MTA2NTEvMSIg
549
+ aGVpZ2h0PSI3MCIgd2lkdGg9IjExMCIgLz48L2E+PC90ZD4NCjx0ZCBzdHls
550
+ ZT0iYm9yZGVyLWNvbG9yOiAjMDAyZTcyOyBib3JkZXItc3R5bGU6IHNvbGlk
551
+ OyBib3JkZXItd2lkdGg6IDFweDsiPjxhIGhyZWY9Imh0dHA6Ly93d3cucHJl
552
+ dmlld3N3b3JsZC5jb20vSG9tZS8xLzEvNzEvOTc5P2FydGljbGVJRD0xMzY4
553
+ MDEiPjxpbWcgc3JjPSIvbmV3c19pbWFnZXMvMTI4NDk1XzUwOTM0MF84NS5q
554
+ cGciIGhlaWdodD0iNzAiIHdpZHRoPSIxMTAiIC8+PC9hPjwvdGQ+DQo8dGQg
555
+ c3R5bGU9ImJvcmRlci1jb2xvcjogIzAwMmU3MjsgYm9yZGVyLXN0eWxlOiBz
556
+ b2xpZDsgYm9yZGVyLXdpZHRoOiAxcHg7Ij48YSBocmVmPSJodHRwOi8vd3d3
557
+ LnByZXZpZXdzd29ybGQuY29tL0hvbWUvMS8xLzcxLzkzNiI+PGltZyBzcmM9
558
+ Ii9uZXdzX2ltYWdlcy8xMjg0OTVfNTA5NjM0Xzg2LmpwZyIgaGVpZ2h0PSI3
559
+ MCIgd2lkdGg9IjExMCIgLz48L2E+PC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQg
560
+ c3R5bGU9ImJvcmRlci1jb2xvcjogIzAwMmU3MjsgYm9yZGVyLXN0eWxlOiBz
561
+ b2xpZDsgYm9yZGVyLXdpZHRoOiAxcHg7Ij48YSBocmVmPSJodHRwOi8vd3d3
562
+ LnByZXZpZXdzd29ybGQuY29tL0hvbWUvMS8xLzcxLzk3Nz9hcnRpY2xlSUQ9
563
+ MTM3MjA0Ij5LZXZpbiBFYXN0bWFuIFRhbGtzIENvbWljcyBhbmQgSGVybyBJ
564
+ bml0aWF0aXZlPC9hPjwvdGQ+DQo8dGQgc3R5bGU9ImJvcmRlci1jb2xvcjog
565
+ IzAwMmU3MjsgYm9yZGVyLXN0eWxlOiBzb2xpZDsgYm9yZGVyLXdpZHRoOiAx
566
+ cHg7Ij48YSBocmVmPSJodHRwOi8vd3d3LnByZXZpZXdzd29ybGQuY29tL0hv
567
+ bWUvMS8xLzcxLzk3Nz9hcnRpY2xlSUQ9MTM3MjA4Ij5CcmlhbiBNaWNoYWVs
568
+ IEJlbmRpcyBSYXBzIEFib3V0IEJhdHRsZSBvZiB0aGUgQXRvbSA8L2E+PC90
569
+ ZD4NCjx0ZCBzdHlsZT0iYm9yZGVyLWNvbG9yOiAjMDAyZTcyOyBib3JkZXIt
570
+ c3R5bGU6IHNvbGlkOyBib3JkZXItd2lkdGg6IDFweDsiPjxhIGhyZWY9Imh0
571
+ dHA6Ly93d3cucHJldmlld3N3b3JsZC5jb20vSG9tZS8xLzEvNzEvOTc5P2Fy
572
+ dGljbGVJRD0xMzY4MDEiPkdlbXMgb2YgdGhlIE1vbnRoIGZvciBQUkVWSUVX
573
+ UyBBdWd1c3QgMjAxMzwvYT48L3RkPg0KPHRkIHN0eWxlPSJib3JkZXItY29s
574
+ b3I6ICMwMDJlNzI7IGJvcmRlci1zdHlsZTogc29saWQ7IGJvcmRlci13aWR0
575
+ aDogMXB4OyI+PGEgaHJlZj0iaHR0cDovL3d3dy5wcmV2aWV3c3dvcmxkLmNv
576
+ bS9Ib21lLzEvMS83MS85MzYiPlN1YnNjcmliZSBub3cgdG8gdGhlIFBSRVZJ
577
+ RVdTd29ybGQgRlJFRSB3ZWVrbHkgZS1OZXdzbGV0dGVyITwvYT48L3RkPg0K
578
+ PC90cj4NCjwvdGJvZHk+DQo8L3RhYmxlPg0KPC9kaXY+DQo8ZGl2IHN0eWxl
579
+ PSJjbGVhcjogYm90aDsiPjwvZGl2PgkJPC9kaXY+DQo8L2Rpdj4NCg0KDQoN
580
+ Cg0KCQkJCTwvZGl2Pg0KCQkJPC9kaXY+DQoJDQoJCQk8ZGl2IGlkPSJDb250
581
+ ZW50QXJlYUZvb3RlciI+DQoJCQkJPGRpdiBjbGFzcz0iTmF2aWdhdGlvbiI+
582
+ PC9kaXY+DQoJCQkJPGRpdiBjbGFzcz0iU2lkZUJhciI+PC9kaXY+DQoJCQkJ
583
+ PGRpdiBjbGFzcz0iTWFpbkNvbnRlbnQiPjwvZGl2Pg0KCQkJPC9kaXY+DQoJ
584
+ DQoJCQk8ZGl2IGlkPSJGb290ZXIiPg0KDQo8ZGl2IGNsYXNzPSJGb290ZXJM
585
+ b2dvIj4NCiA8YSBocmVmPSJodHRwOi8vd3d3LmRpYW1vbmRjb21pY3MuY29t
586
+ LyI+PGltZyBzcmM9Ii9HZW5lcmljSW1hZ2VzL2RjZC00Ny5naWYiIC8+PC9h
587
+ PiA8L2Rpdj4NCg0KPGRpdiBjbGFzcz0iRm9vdGVyTGVnYWwiPg0KPGEgY2xh
588
+ c3M9IkZhbmN5UG9wdXAiIGhyZWY9Ii9Ib21lL0NvcHlyaWdodCIgdGl0bGU9
589
+ IkRDRCBUZXJtcyBPZiBVc2UiPkNvcHlyaWdodCAmIzE2OTsyMDEzIERpYW1v
590
+ bmQgQ29taWMgRGlzdHJpYnV0b3JzLCBJbmMuPC9hPjwvZGl2Pg0KDQo8ZGl2
591
+ IGNsYXNzPSJGb290ZXJMaW5rcyI+DQoJPGEgY2xhc3M9IkZhbmN5UG9wdXAi
592
+ IGhyZWY9Ii9Ib21lL1ByaXZhY3lQb2xpY3kiIHRpdGxlPSJQcml2YWN5IFBv
593
+ bGljeSI+UHJpdmFjeSBQb2xpY3k8L2E+ICZhbXA7IA0KCTxhIGNsYXNzPSJG
594
+ YW5jeVBvcHVwIiBocmVmPSIvSG9tZS9UZXJtc09mVXNlIiB0aXRsZT0iVGVy
595
+ bXMgT2YgVXNlIj5UZXJtcyBvZiB1c2U8L2E+DQo8L2Rpdj4NCgkJCTwvZGl2
596
+ Pg0KCQk8L2Rpdj4NCgk8L2JvZHk+DQo8L2h0bWw+DQo=
597
+ http_version:
598
+ recorded_at: Wed, 24 Jul 2013 01:35:34 GMT
599
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,67 @@
1
+ require 'rubygems'
2
+
3
+ using_git = File.exist?(File.expand_path('../../.git/', __FILE__))
4
+ require 'bundler/setup' if using_git
5
+
6
+ require File.expand_path('../../lib/cb_nitride.rb', __FILE__)
7
+
8
+ require 'minitest/autorun'
9
+ require 'minitest/pride'
10
+ require 'webmock'
11
+ require 'pry'
12
+ require 'vcr'
13
+
14
+ VCR.configure do |c|
15
+ c.hook_into :webmock
16
+ c.cassette_library_dir = 'test/cassettes'
17
+ c.default_cassette_options = { record: :new_episodes}
18
+ end
19
+
20
+
21
+ module CategoryCodes
22
+ ISSUE_CATEGORY_CODE = "1"
23
+ COLLECTION_CATEGORY_CODE = "3"
24
+ MERCHANDISE_CATEGORY_CODES = ["2", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"]
25
+ end
26
+
27
+ module LoginInformation
28
+ def set_login_data
29
+ CbNitride.configure do |c|
30
+ c.username = "XXX"
31
+ c.account_number = "YYY"
32
+ c.password = "ZZZ"
33
+ end
34
+ end
35
+
36
+ def clear_login_data
37
+ CbNitride.configure do |c|
38
+ c.username = ""
39
+ c.account_number = ""
40
+ c.password = ""
41
+ end
42
+ end
43
+ end
44
+
45
+ module HasherTests
46
+
47
+ ISSUE_CODE = "APR130131"
48
+ VARIANT_CODE = "APR130183"
49
+ MERCH_CODE = "MAR131699"
50
+ COLLECTION_CODE = "FEB130068"
51
+
52
+ end
53
+
54
+ module Recordable
55
+ def setup_vcr
56
+ VCR.insert_cassette(__name__ + "_cassette")
57
+ end
58
+
59
+ def clear_vcr
60
+ VCR.eject_cassette
61
+ end
62
+ end
63
+
64
+ class MiniTest::Unit::TestCase
65
+
66
+ end
67
+