@cratis/chronicle.contracts 16.45.3 → 17.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 (348) hide show
  1. package/dist/cjs/generated/captures.d.ts +208 -57
  2. package/dist/cjs/generated/captures.d.ts.map +1 -1
  3. package/dist/cjs/generated/captures.js +3209 -0
  4. package/dist/cjs/generated/captures.js.map +1 -0
  5. package/dist/cjs/generated/clients.d.ts +24 -0
  6. package/dist/cjs/generated/clients.d.ts.map +1 -1
  7. package/dist/cjs/generated/clients.js +234 -2
  8. package/dist/cjs/generated/clients.js.map +1 -1
  9. package/dist/cjs/generated/compliance.js +447 -0
  10. package/dist/cjs/generated/compliance.js.map +1 -0
  11. package/dist/cjs/generated/descriptorSet.d.ts +2 -0
  12. package/dist/cjs/generated/descriptorSet.d.ts.map +1 -0
  13. package/dist/cjs/generated/descriptorSet.js +7 -0
  14. package/dist/cjs/generated/descriptorSet.js.map +1 -0
  15. package/dist/cjs/generated/eventsequences.d.ts +33 -397
  16. package/dist/cjs/generated/eventsequences.d.ts.map +1 -1
  17. package/dist/cjs/generated/eventsequences.js +149 -4519
  18. package/dist/cjs/generated/eventsequences.js.map +1 -1
  19. package/dist/cjs/generated/eventstores.d.ts +22 -7
  20. package/dist/cjs/generated/eventstores.d.ts.map +1 -1
  21. package/dist/cjs/generated/eventstores.js +102 -13
  22. package/dist/cjs/generated/eventstores.js.map +1 -1
  23. package/dist/cjs/generated/eventtypes.d.ts +210 -0
  24. package/dist/cjs/generated/eventtypes.d.ts.map +1 -0
  25. package/dist/cjs/generated/{events.js → eventtypes.js} +855 -195
  26. package/dist/cjs/generated/eventtypes.js.map +1 -0
  27. package/dist/cjs/generated/externalservices.d.ts +159 -28
  28. package/dist/cjs/generated/externalservices.d.ts.map +1 -1
  29. package/dist/cjs/generated/externalservices.js +2928 -0
  30. package/dist/cjs/generated/externalservices.js.map +1 -0
  31. package/dist/cjs/generated/host.d.ts +1 -0
  32. package/dist/cjs/generated/host.d.ts.map +1 -1
  33. package/dist/cjs/generated/host.js +16 -1
  34. package/dist/cjs/generated/host.js.map +1 -1
  35. package/dist/cjs/generated/identities.d.ts +63 -21
  36. package/dist/cjs/generated/identities.d.ts.map +1 -1
  37. package/dist/cjs/generated/identities.js +620 -30
  38. package/dist/cjs/generated/identities.js.map +1 -1
  39. package/dist/cjs/generated/index.d.ts +35 -18
  40. package/dist/cjs/generated/index.d.ts.map +1 -1
  41. package/dist/cjs/generated/jobs.d.ts +19 -7
  42. package/dist/cjs/generated/jobs.d.ts.map +1 -1
  43. package/dist/cjs/generated/jobs.js +93 -54
  44. package/dist/cjs/generated/jobs.js.map +1 -1
  45. package/dist/cjs/generated/namespaces.d.ts +26 -7
  46. package/dist/cjs/generated/namespaces.d.ts.map +1 -1
  47. package/dist/cjs/generated/namespaces.js +164 -13
  48. package/dist/cjs/generated/namespaces.js.map +1 -1
  49. package/dist/cjs/generated/observation.d.ts +11 -1
  50. package/dist/cjs/generated/observation.d.ts.map +1 -1
  51. package/dist/cjs/generated/observation.js +66 -6
  52. package/dist/cjs/generated/observation.js.map +1 -1
  53. package/dist/cjs/generated/observation_eventstoresubscriptions.js +521 -0
  54. package/dist/cjs/generated/observation_eventstoresubscriptions.js.map +1 -0
  55. package/dist/cjs/generated/observation_reactors.d.ts +1 -3
  56. package/dist/cjs/generated/observation_reactors.d.ts.map +1 -1
  57. package/dist/cjs/generated/observation_reactors.js +1 -13
  58. package/dist/cjs/generated/observation_reactors.js.map +1 -1
  59. package/dist/cjs/generated/observation_reducers.d.ts +1 -3
  60. package/dist/cjs/generated/observation_reducers.d.ts.map +1 -1
  61. package/dist/cjs/generated/observation_reducers.js +1 -13
  62. package/dist/cjs/generated/observation_reducers.js.map +1 -1
  63. package/dist/cjs/generated/observation_webhooks.d.ts +131 -69
  64. package/dist/cjs/generated/observation_webhooks.d.ts.map +1 -1
  65. package/dist/cjs/generated/observation_webhooks.js +1171 -278
  66. package/dist/cjs/generated/observation_webhooks.js.map +1 -1
  67. package/dist/cjs/generated/patterns.d.ts +126 -34
  68. package/dist/cjs/generated/patterns.d.ts.map +1 -1
  69. package/dist/cjs/generated/patterns.js +1687 -0
  70. package/dist/cjs/generated/patterns.js.map +1 -0
  71. package/dist/cjs/generated/projectioneditor.d.ts +108 -0
  72. package/dist/cjs/generated/projectioneditor.d.ts.map +1 -0
  73. package/dist/cjs/generated/projectioneditor.js +880 -0
  74. package/dist/cjs/generated/projectioneditor.js.map +1 -0
  75. package/dist/cjs/generated/projections.d.ts +1 -43
  76. package/dist/cjs/generated/projections.d.ts.map +1 -1
  77. package/dist/cjs/generated/projections.js +16 -388
  78. package/dist/cjs/generated/projections.js.map +1 -1
  79. package/dist/cjs/generated/protobuf-net/bcl.js +97 -0
  80. package/dist/cjs/generated/protobuf-net/bcl.js.map +1 -1
  81. package/dist/cjs/generated/readmodelexplorer.d.ts +138 -0
  82. package/dist/cjs/generated/readmodelexplorer.d.ts.map +1 -0
  83. package/dist/cjs/generated/readmodelexplorer.js +1432 -0
  84. package/dist/cjs/generated/readmodelexplorer.js.map +1 -0
  85. package/dist/cjs/generated/readmodels.d.ts +1 -107
  86. package/dist/cjs/generated/readmodels.d.ts.map +1 -1
  87. package/dist/cjs/generated/readmodels.js +423 -1857
  88. package/dist/cjs/generated/readmodels.js.map +1 -1
  89. package/dist/cjs/generated/recommendations.d.ts +72 -33
  90. package/dist/cjs/generated/recommendations.d.ts.map +1 -1
  91. package/dist/cjs/generated/recommendations.js +601 -44
  92. package/dist/cjs/generated/recommendations.js.map +1 -1
  93. package/dist/cjs/generated/security.d.ts +8 -7
  94. package/dist/cjs/generated/security.d.ts.map +1 -1
  95. package/dist/cjs/generated/security.js +86 -68
  96. package/dist/cjs/generated/security.js.map +1 -1
  97. package/dist/cjs/generated/seeding.d.ts +75 -19
  98. package/dist/cjs/generated/seeding.d.ts.map +1 -1
  99. package/dist/cjs/generated/seeding.js +677 -21
  100. package/dist/cjs/generated/seeding.js.map +1 -1
  101. package/dist/cjs/generated/sequences.d.ts +774 -0
  102. package/dist/cjs/generated/sequences.d.ts.map +1 -0
  103. package/dist/cjs/generated/sequences.js +8978 -0
  104. package/dist/cjs/generated/sequences.js.map +1 -0
  105. package/dist/cjs/index.js +257 -90
  106. package/dist/cjs/index.js.map +1 -1
  107. package/dist/esm/generated/captures.d.ts +208 -57
  108. package/dist/esm/generated/captures.d.ts.map +1 -1
  109. package/dist/esm/generated/captures.js +3173 -0
  110. package/dist/esm/generated/captures.js.map +1 -0
  111. package/dist/esm/generated/clients.d.ts +24 -0
  112. package/dist/esm/generated/clients.d.ts.map +1 -1
  113. package/dist/esm/generated/clients.js +233 -2
  114. package/dist/esm/generated/clients.js.map +1 -1
  115. package/dist/esm/generated/compliance.js +441 -0
  116. package/dist/esm/generated/compliance.js.map +1 -0
  117. package/dist/esm/generated/descriptorSet.d.ts +2 -0
  118. package/dist/esm/generated/descriptorSet.d.ts.map +1 -0
  119. package/dist/esm/generated/descriptorSet.js +5 -0
  120. package/dist/esm/generated/descriptorSet.js.map +1 -0
  121. package/dist/esm/generated/eventsequences.d.ts +33 -397
  122. package/dist/esm/generated/eventsequences.d.ts.map +1 -1
  123. package/dist/esm/generated/eventsequences.js +144 -4480
  124. package/dist/esm/generated/eventsequences.js.map +1 -1
  125. package/dist/esm/generated/eventstores.d.ts +22 -7
  126. package/dist/esm/generated/eventstores.d.ts.map +1 -1
  127. package/dist/esm/generated/eventstores.js +101 -13
  128. package/dist/esm/generated/eventstores.js.map +1 -1
  129. package/dist/esm/generated/eventtypes.d.ts +210 -0
  130. package/dist/esm/generated/eventtypes.d.ts.map +1 -0
  131. package/dist/esm/generated/{events.js → eventtypes.js} +842 -192
  132. package/dist/esm/generated/eventtypes.js.map +1 -0
  133. package/dist/esm/generated/externalservices.d.ts +159 -28
  134. package/dist/esm/generated/externalservices.d.ts.map +1 -1
  135. package/dist/esm/generated/externalservices.js +2896 -0
  136. package/dist/esm/generated/externalservices.js.map +1 -0
  137. package/dist/esm/generated/host.d.ts +1 -0
  138. package/dist/esm/generated/host.d.ts.map +1 -1
  139. package/dist/esm/generated/host.js +16 -1
  140. package/dist/esm/generated/host.js.map +1 -1
  141. package/dist/esm/generated/identities.d.ts +63 -21
  142. package/dist/esm/generated/identities.d.ts.map +1 -1
  143. package/dist/esm/generated/identities.js +614 -30
  144. package/dist/esm/generated/identities.js.map +1 -1
  145. package/dist/esm/generated/index.d.ts +35 -18
  146. package/dist/esm/generated/index.d.ts.map +1 -1
  147. package/dist/esm/generated/jobs.d.ts +19 -7
  148. package/dist/esm/generated/jobs.d.ts.map +1 -1
  149. package/dist/esm/generated/jobs.js +93 -54
  150. package/dist/esm/generated/jobs.js.map +1 -1
  151. package/dist/esm/generated/namespaces.d.ts +26 -7
  152. package/dist/esm/generated/namespaces.d.ts.map +1 -1
  153. package/dist/esm/generated/namespaces.js +162 -13
  154. package/dist/esm/generated/namespaces.js.map +1 -1
  155. package/dist/esm/generated/observation.d.ts +11 -1
  156. package/dist/esm/generated/observation.d.ts.map +1 -1
  157. package/dist/esm/generated/observation.js +65 -7
  158. package/dist/esm/generated/observation.js.map +1 -1
  159. package/dist/esm/generated/observation_eventstoresubscriptions.js +513 -0
  160. package/dist/esm/generated/observation_eventstoresubscriptions.js.map +1 -0
  161. package/dist/esm/generated/observation_reactors.d.ts +1 -3
  162. package/dist/esm/generated/observation_reactors.d.ts.map +1 -1
  163. package/dist/esm/generated/observation_reactors.js +1 -13
  164. package/dist/esm/generated/observation_reactors.js.map +1 -1
  165. package/dist/esm/generated/observation_reducers.d.ts +1 -3
  166. package/dist/esm/generated/observation_reducers.d.ts.map +1 -1
  167. package/dist/esm/generated/observation_reducers.js +1 -13
  168. package/dist/esm/generated/observation_reducers.js.map +1 -1
  169. package/dist/esm/generated/observation_webhooks.d.ts +131 -69
  170. package/dist/esm/generated/observation_webhooks.d.ts.map +1 -1
  171. package/dist/esm/generated/observation_webhooks.js +1157 -270
  172. package/dist/esm/generated/observation_webhooks.js.map +1 -1
  173. package/dist/esm/generated/patterns.d.ts +126 -34
  174. package/dist/esm/generated/patterns.d.ts.map +1 -1
  175. package/dist/esm/generated/patterns.js +1669 -0
  176. package/dist/esm/generated/patterns.js.map +1 -0
  177. package/dist/esm/generated/projectioneditor.d.ts +108 -0
  178. package/dist/esm/generated/projectioneditor.d.ts.map +1 -0
  179. package/dist/esm/generated/projectioneditor.js +869 -0
  180. package/dist/esm/generated/projectioneditor.js.map +1 -0
  181. package/dist/esm/generated/projections.d.ts +1 -43
  182. package/dist/esm/generated/projections.d.ts.map +1 -1
  183. package/dist/esm/generated/projections.js +17 -385
  184. package/dist/esm/generated/projections.js.map +1 -1
  185. package/dist/esm/generated/protobuf-net/bcl.js +97 -1
  186. package/dist/esm/generated/protobuf-net/bcl.js.map +1 -1
  187. package/dist/esm/generated/readmodelexplorer.d.ts +138 -0
  188. package/dist/esm/generated/readmodelexplorer.d.ts.map +1 -0
  189. package/dist/esm/generated/readmodelexplorer.js +1415 -0
  190. package/dist/esm/generated/readmodelexplorer.js.map +1 -0
  191. package/dist/esm/generated/readmodels.d.ts +1 -107
  192. package/dist/esm/generated/readmodels.d.ts.map +1 -1
  193. package/dist/esm/generated/readmodels.js +424 -1845
  194. package/dist/esm/generated/readmodels.js.map +1 -1
  195. package/dist/esm/generated/recommendations.d.ts +72 -33
  196. package/dist/esm/generated/recommendations.d.ts.map +1 -1
  197. package/dist/esm/generated/recommendations.js +593 -42
  198. package/dist/esm/generated/recommendations.js.map +1 -1
  199. package/dist/esm/generated/security.d.ts +8 -7
  200. package/dist/esm/generated/security.d.ts.map +1 -1
  201. package/dist/esm/generated/security.js +86 -68
  202. package/dist/esm/generated/security.js.map +1 -1
  203. package/dist/esm/generated/seeding.d.ts +75 -19
  204. package/dist/esm/generated/seeding.d.ts.map +1 -1
  205. package/dist/esm/generated/seeding.js +669 -20
  206. package/dist/esm/generated/seeding.js.map +1 -1
  207. package/dist/esm/generated/sequences.d.ts +774 -0
  208. package/dist/esm/generated/sequences.d.ts.map +1 -0
  209. package/dist/esm/generated/sequences.js +8906 -0
  210. package/dist/esm/generated/sequences.js.map +1 -0
  211. package/dist/esm/index.js +24 -15
  212. package/dist/esm/index.js.map +1 -1
  213. package/dist/generated/captures.d.ts +208 -57
  214. package/dist/generated/captures.d.ts.map +1 -1
  215. package/dist/generated/captures.js +2257 -127
  216. package/dist/generated/captures.js.map +1 -1
  217. package/dist/generated/clients.d.ts +24 -0
  218. package/dist/generated/clients.d.ts.map +1 -1
  219. package/dist/generated/clients.js +232 -0
  220. package/dist/generated/clients.js.map +1 -1
  221. package/dist/generated/descriptorSet.d.ts +2 -0
  222. package/dist/generated/descriptorSet.d.ts.map +1 -0
  223. package/dist/generated/descriptorSet.js +3 -0
  224. package/dist/generated/descriptorSet.js.map +1 -0
  225. package/dist/generated/eventsequences.d.ts +33 -397
  226. package/dist/generated/eventsequences.d.ts.map +1 -1
  227. package/dist/generated/eventsequences.js +143 -4479
  228. package/dist/generated/eventsequences.js.map +1 -1
  229. package/dist/generated/eventstores.d.ts +22 -7
  230. package/dist/generated/eventstores.d.ts.map +1 -1
  231. package/dist/generated/eventstores.js +100 -12
  232. package/dist/generated/eventstores.js.map +1 -1
  233. package/dist/generated/eventtypes.d.ts +210 -0
  234. package/dist/generated/eventtypes.d.ts.map +1 -0
  235. package/dist/generated/{events.js → eventtypes.js} +842 -192
  236. package/dist/generated/eventtypes.js.map +1 -0
  237. package/dist/generated/externalservices.d.ts +159 -28
  238. package/dist/generated/externalservices.d.ts.map +1 -1
  239. package/dist/generated/externalservices.js +1951 -390
  240. package/dist/generated/externalservices.js.map +1 -1
  241. package/dist/generated/host.d.ts +1 -0
  242. package/dist/generated/host.d.ts.map +1 -1
  243. package/dist/generated/host.js +16 -1
  244. package/dist/generated/host.js.map +1 -1
  245. package/dist/generated/identities.d.ts +63 -21
  246. package/dist/generated/identities.d.ts.map +1 -1
  247. package/dist/generated/identities.js +613 -29
  248. package/dist/generated/identities.js.map +1 -1
  249. package/dist/generated/index.d.ts +35 -18
  250. package/dist/generated/index.d.ts.map +1 -1
  251. package/dist/generated/index.js +24 -15
  252. package/dist/generated/index.js.map +1 -1
  253. package/dist/generated/jobs.d.ts +19 -7
  254. package/dist/generated/jobs.d.ts.map +1 -1
  255. package/dist/generated/jobs.js +92 -53
  256. package/dist/generated/jobs.js.map +1 -1
  257. package/dist/generated/namespaces.d.ts +26 -7
  258. package/dist/generated/namespaces.d.ts.map +1 -1
  259. package/dist/generated/namespaces.js +161 -12
  260. package/dist/generated/namespaces.js.map +1 -1
  261. package/dist/generated/observation.d.ts +11 -1
  262. package/dist/generated/observation.d.ts.map +1 -1
  263. package/dist/generated/observation.js +64 -6
  264. package/dist/generated/observation.js.map +1 -1
  265. package/dist/generated/observation_reactors.d.ts +1 -3
  266. package/dist/generated/observation_reactors.d.ts.map +1 -1
  267. package/dist/generated/observation_reactors.js +1 -13
  268. package/dist/generated/observation_reactors.js.map +1 -1
  269. package/dist/generated/observation_reducers.d.ts +1 -3
  270. package/dist/generated/observation_reducers.d.ts.map +1 -1
  271. package/dist/generated/observation_reducers.js +1 -13
  272. package/dist/generated/observation_reducers.js.map +1 -1
  273. package/dist/generated/observation_webhooks.d.ts +131 -69
  274. package/dist/generated/observation_webhooks.d.ts.map +1 -1
  275. package/dist/generated/observation_webhooks.js +1156 -269
  276. package/dist/generated/observation_webhooks.js.map +1 -1
  277. package/dist/generated/patterns.d.ts +126 -34
  278. package/dist/generated/patterns.d.ts.map +1 -1
  279. package/dist/generated/patterns.js +1196 -303
  280. package/dist/generated/patterns.js.map +1 -1
  281. package/dist/generated/projectioneditor.d.ts +108 -0
  282. package/dist/generated/projectioneditor.d.ts.map +1 -0
  283. package/dist/generated/projectioneditor.js +867 -0
  284. package/dist/generated/projectioneditor.js.map +1 -0
  285. package/dist/generated/projections.d.ts +1 -43
  286. package/dist/generated/projections.d.ts.map +1 -1
  287. package/dist/generated/projections.js +16 -384
  288. package/dist/generated/projections.js.map +1 -1
  289. package/dist/generated/readmodelexplorer.d.ts +138 -0
  290. package/dist/generated/readmodelexplorer.d.ts.map +1 -0
  291. package/dist/generated/readmodelexplorer.js +1413 -0
  292. package/dist/generated/readmodelexplorer.js.map +1 -0
  293. package/dist/generated/readmodels.d.ts +1 -107
  294. package/dist/generated/readmodels.d.ts.map +1 -1
  295. package/dist/generated/readmodels.js +423 -1844
  296. package/dist/generated/readmodels.js.map +1 -1
  297. package/dist/generated/recommendations.d.ts +72 -33
  298. package/dist/generated/recommendations.d.ts.map +1 -1
  299. package/dist/generated/recommendations.js +592 -41
  300. package/dist/generated/recommendations.js.map +1 -1
  301. package/dist/generated/security.d.ts +8 -7
  302. package/dist/generated/security.d.ts.map +1 -1
  303. package/dist/generated/security.js +85 -67
  304. package/dist/generated/security.js.map +1 -1
  305. package/dist/generated/seeding.d.ts +75 -19
  306. package/dist/generated/seeding.d.ts.map +1 -1
  307. package/dist/generated/seeding.js +668 -19
  308. package/dist/generated/seeding.js.map +1 -1
  309. package/dist/generated/sequences.d.ts +774 -0
  310. package/dist/generated/sequences.d.ts.map +1 -0
  311. package/dist/generated/sequences.js +8904 -0
  312. package/dist/generated/sequences.js.map +1 -0
  313. package/dist/tsconfig.tsbuildinfo +1 -1
  314. package/generated/captures.ts +2690 -196
  315. package/generated/clients.ts +274 -0
  316. package/generated/descriptorSet.ts +14 -0
  317. package/generated/eventsequences.ts +219 -5200
  318. package/generated/eventstores.ts +228 -110
  319. package/generated/{events.ts → eventtypes.ts} +1014 -257
  320. package/generated/externalservices.ts +2218 -392
  321. package/generated/host.ts +18 -1
  322. package/generated/identities.ts +739 -54
  323. package/generated/index.ts +44 -18
  324. package/generated/jobs.ts +115 -64
  325. package/generated/namespaces.ts +208 -22
  326. package/generated/observation.ts +68 -6
  327. package/generated/observation_reactors.ts +1 -14
  328. package/generated/observation_reducers.ts +1 -14
  329. package/generated/observation_webhooks.ts +1414 -393
  330. package/generated/patterns.ts +1363 -298
  331. package/generated/projectioneditor.ts +1045 -0
  332. package/generated/projections.ts +18 -465
  333. package/generated/readmodelexplorer.ts +1670 -0
  334. package/generated/readmodels.ts +128 -1758
  335. package/generated/recommendations.ts +731 -75
  336. package/generated/security.ts +100 -79
  337. package/generated/seeding.ts +795 -43
  338. package/generated/sequences.ts +10341 -0
  339. package/package.json +2 -2
  340. package/dist/cjs/generated/events.d.ts +0 -152
  341. package/dist/cjs/generated/events.d.ts.map +0 -1
  342. package/dist/cjs/generated/events.js.map +0 -1
  343. package/dist/esm/generated/events.d.ts +0 -152
  344. package/dist/esm/generated/events.d.ts.map +0 -1
  345. package/dist/esm/generated/events.js.map +0 -1
  346. package/dist/generated/events.d.ts +0 -152
  347. package/dist/generated/events.d.ts.map +0 -1
  348. package/dist/generated/events.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ const encoded = 'Cp45Cg5jYXB0dXJlcy5wcm90bxIjQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMaFnByb3RvYnVmLW5ldC9iY2wucHJvdG8iqgEKFkNhcHR1cmVEZXRhaWxzUmVzcG9uc2USDgoCSWQYASABKAlSAklkEhIKBE5hbWUYAiABKAlSBE5hbWUSIAoLRGVjbGFyYXRpb24YAyABKAlSC0RlY2xhcmF0aW9uEkoKBlN0YXR1cxgEIAEoDjIyLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNhcHR1cmVTdGF0dXNSBlN0YXR1cyJgChhDYXB0dXJlVmFsaWRhdGlvbk1lc3NhZ2USGAoHTWVzc2FnZRgBIAEoCVIHTWVzc2FnZRISCgRMaW5lGAIgASgFUgRMaW5lEhYKBkNvbHVtbhgDIAEoBVIGQ29sdW1uIo4BChVDYXB0dXJlZEV2ZW50UmVzcG9uc2USSwoHQ29udGV4dBgBIAEoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkV2ZW50Q29udGV4dFIHQ29udGV4dBIYCgdDb250ZW50GAIgASgJUgdDb250ZW50Eg4KAklkGAMgASgJUgJJZCKVAQoVQ2FwdHVyZWRFdmVudHNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSIAoLQ2FwdHVyZU5hbWUYAiABKAlSC0NhcHR1cmVOYW1lEhwKCU5hbWVzcGFjZRgDIAEoCVIJTmFtZXNwYWNlEhwKCU1heEV2ZW50cxgEIAEoBVIJTWF4RXZlbnRzIpsCCglDYXVzYXRpb24SWwoIT2NjdXJyZWQYASABKAsyPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSEgoEVHlwZRgCIAEoCVIEVHlwZRJeCgpQcm9wZXJ0aWVzGAMgAygLMj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuQ2F1c2F0aW9uLlByb3BlcnRpZXNFbnRyeVIKUHJvcGVydGllcxo9Cg9Qcm9wZXJ0aWVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASLpAgoNQ29tbWFuZFJlc3VsdBIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSYwoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24i0wMKIUNvbW1hbmRSZXN1bHRfU2F2ZUNhcHR1cmVSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSYwoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24SVAoIUmVzcG9uc2UYByABKAsyOC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5TYXZlQ2FwdHVyZVJlc3BvbnNlUghSZXNwb25zZSLVAwoiQ29tbWFuZFJlc3VsdF9TdGFydENhcHR1cmVSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSYwoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24SVQoIUmVzcG9uc2UYByABKAsyOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5TdGFydENhcHR1cmVSZXNwb25zZVIIUmVzcG9uc2Ui8QMKMENvbW1hbmRSZXN1bHRfVmFsaWRhdGVDYXB0dXJlRGVjbGFyYXRpb25SZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSYwoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24SYwoIUmVzcG9uc2UYByABKAsyRy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5WYWxpZGF0ZUNhcHR1cmVEZWNsYXJhdGlvblJlc3BvbnNlUghSZXNwb25zZSJfChREZWxldGVDYXB0dXJlUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEicKCUNhcHR1cmVJZBgCIAEoCzIJLmJjbC5HdWlkUglDYXB0dXJlSWQimQYKDEV2ZW50Q29udGV4dBJMCglFdmVudFR5cGUYASABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5FdmVudFR5cGVSCUV2ZW50VHlwZRIoCg9FdmVudFNvdXJjZVR5cGUYAiABKAlSD0V2ZW50U291cmNlVHlwZRIkCg1FdmVudFNvdXJjZUlkGAMgASgJUg1FdmVudFNvdXJjZUlkEiYKDlNlcXVlbmNlTnVtYmVyGAQgASgEUg5TZXF1ZW5jZU51bWJlchIoCg9FdmVudFN0cmVhbVR5cGUYBSABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAYgASgJUg1FdmVudFN0cmVhbUlkElsKCE9jY3VycmVkGAcgASgLMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEh4KCkV2ZW50U3RvcmUYCCABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAkgASgJUglOYW1lc3BhY2USLwoNQ29ycmVsYXRpb25JZBgKIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEkwKCUNhdXNhdGlvbhgLIAMoCzIuLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNhdXNhdGlvblIJQ2F1c2F0aW9uEkkKCENhdXNlZEJ5GAwgASgLMi0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuSWRlbnRpdHlSCENhdXNlZEJ5EmYKEE9ic2VydmF0aW9uU3RhdGUYDSABKA4yOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5FdmVudE9ic2VydmF0aW9uU3RhdGVSEE9ic2VydmF0aW9uU3RhdGUSEgoEVGFncxgOIAMoCVIEVGFncxISCgRIYXNoGA8gASgJUgRIYXNoIlkKCUV2ZW50VHlwZRIOCgJJZBgBIAEoCVICSWQSHgoKR2VuZXJhdGlvbhgCIAEoDVIKR2VuZXJhdGlvbhIcCglUb21ic3RvbmUYAyABKAhSCVRvbWJzdG9uZSI0ChJHZXRDYXB0dXJlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSKjAQoISWRlbnRpdHkSGAoHU3ViamVjdBgBIAEoCVIHU3ViamVjdBISCgROYW1lGAIgASgJUgROYW1lEhoKCFVzZXJOYW1lGAMgASgJUghVc2VyTmFtZRJNCgpPbkJlaGFsZk9mGAQgASgLMi0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuSWRlbnRpdHlSCk9uQmVoYWxmT2YiOAoWT2JzZXJ2ZUNhcHR1cmVzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlIpsDCi5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9DYXB0dXJlRGV0YWlsc1Jlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJjChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEk8KBERhdGEYBiADKAsyOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5DYXB0dXJlRGV0YWlsc1Jlc3BvbnNlUgREYXRhIpkDCi1RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9DYXB0dXJlZEV2ZW50UmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmMKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USTgoERGF0YRgGIAMoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNhcHR1cmVkRXZlbnRSZXNwb25zZVIERGF0YSJxChJTYXZlQ2FwdHVyZVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIZCgJJZBgCIAEoCzIJLmJjbC5HdWlkUgJJZBIgCgtEZWNsYXJhdGlvbhgDIAEoCVILRGVjbGFyYXRpb24ixwEKE1NhdmVDYXB0dXJlUmVzcG9uc2USVQoHQ2FwdHVyZRgBIAEoCzI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNhcHR1cmVEZXRhaWxzUmVzcG9uc2VSB0NhcHR1cmUSWQoITWVzc2FnZXMYAiADKAsyPS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5DYXB0dXJlVmFsaWRhdGlvbk1lc3NhZ2VSCE1lc3NhZ2VzIjIKGlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0EhQKBVZhbHVlGAEgASgJUgVWYWx1ZSJeChNTdGFydENhcHR1cmVSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSJwoJQ2FwdHVyZUlkGAIgASgLMgkuYmNsLkd1aWRSCUNhcHR1cmVJZCJxChRTdGFydENhcHR1cmVSZXNwb25zZRJZCghNZXNzYWdlcxgBIAMoCzI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNhcHR1cmVWYWxpZGF0aW9uTWVzc2FnZVIITWVzc2FnZXMiXQoSU3RvcENhcHR1cmVSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSJwoJQ2FwdHVyZUlkGAIgASgLMgkuYmNsLkd1aWRSCUNhcHR1cmVJZCJlCiFWYWxpZGF0ZUNhcHR1cmVEZWNsYXJhdGlvblJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIgCgtEZWNsYXJhdGlvbhgCIAEoCVILRGVjbGFyYXRpb24ifwoiVmFsaWRhdGVDYXB0dXJlRGVjbGFyYXRpb25SZXNwb25zZRJZCghNZXNzYWdlcxgBIAMoCzI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNhcHR1cmVWYWxpZGF0aW9uTWVzc2FnZVIITWVzc2FnZXMioQEKEFZhbGlkYXRpb25SZXN1bHQSWQoIU2V2ZXJpdHkYASABKA4yPS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5WYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHlSCFNldmVyaXR5EhgKB01lc3NhZ2UYAiABKAlSB01lc3NhZ2USGAoHTWVtYmVycxgDIAMoCVIHTWVtYmVycyopCg1DYXB0dXJlU3RhdHVzEgsKB1N0b3BwZWQQABILCgdTdGFydGVkEAEqOgoVRXZlbnRPYnNlcnZhdGlvblN0YXRlEggKBE5vbmUQABILCgdJbml0aWFsEAESCgoGUmVwbGF5EAIqUAoYVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5EgsKB1Vua25vd24QABIPCgtJbmZvcm1hdGlvbhABEgsKB1dhcm5pbmcQAhIJCgVFcnJvchADMtIJCghDYXB0dXJlcxKgAQoOQ2FwdHVyZWRFdmVudHMSOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5DYXB0dXJlZEV2ZW50c1JlcXVlc3QaUi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9DYXB0dXJlZEV2ZW50UmVzcG9uc2USfgoNRGVsZXRlQ2FwdHVyZRI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkRlbGV0ZUNhcHR1cmVSZXF1ZXN0GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuQ29tbWFuZFJlc3VsdBKbAQoLR2V0Q2FwdHVyZXMSNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5HZXRDYXB0dXJlc1JlcXVlc3QaUy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9DYXB0dXJlRGV0YWlsc1Jlc3BvbnNlEqUBCg9PYnNlcnZlQ2FwdHVyZXMSOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5PYnNlcnZlQ2FwdHVyZXNSZXF1ZXN0GlMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfQ2FwdHVyZURldGFpbHNSZXNwb25zZTABEo4BCgtTYXZlQ2FwdHVyZRI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLlNhdmVDYXB0dXJlUmVxdWVzdBpGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNvbW1hbmRSZXN1bHRfU2F2ZUNhcHR1cmVSZXNwb25zZRKRAQoMU3RhcnRDYXB0dXJlEjguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2FwdHVyZXMuU3RhcnRDYXB0dXJlUmVxdWVzdBpHLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNvbW1hbmRSZXN1bHRfU3RhcnRDYXB0dXJlUmVzcG9uc2USegoLU3RvcENhcHR1cmUSNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5TdG9wQ2FwdHVyZVJlcXVlc3QaMi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DYXB0dXJlcy5Db21tYW5kUmVzdWx0ErsBChpWYWxpZGF0ZUNhcHR1cmVEZWNsYXJhdGlvbhJGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLlZhbGlkYXRlQ2FwdHVyZURlY2xhcmF0aW9uUmVxdWVzdBpVLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNhcHR1cmVzLkNvbW1hbmRSZXN1bHRfVmFsaWRhdGVDYXB0dXJlRGVjbGFyYXRpb25SZXNwb25zZWIGcHJvdG8zCtsQCg1jbGllbnRzLnByb3RvEiJDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DbGllbnRzGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8irAEKFENvbXBhdGliaWxpdHlSZXF1ZXN0Eh4KCkNsaWVudFR5cGUYASABKAlSCkNsaWVudFR5cGUSJAoNQ2xpZW50VmVyc2lvbhgCIAEoCVINQ2xpZW50VmVyc2lvbhIoCg9Qcm90b2NvbFZlcnNpb24YAyABKAlSD1Byb3RvY29sVmVyc2lvbhIkCg1EZXNjcmlwdG9yU2V0GAQgASgMUg1EZXNjcmlwdG9yU2V0IsUBChVDb21wYXRpYmlsaXR5UmVzcG9uc2USIgoMSXNDb21wYXRpYmxlGAEgASgIUgxJc0NvbXBhdGlibGUSLAoRSW5jb21wYXRpYmlsaXRpZXMYAiADKAlSEUluY29tcGF0aWJpbGl0aWVzEiQKDVNlcnZlclZlcnNpb24YAyABKAlSDVNlcnZlclZlcnNpb24SNAoVU2VydmVyUHJvdG9jb2xWZXJzaW9uGAQgASgJUhVTZXJ2ZXJQcm90b2NvbFZlcnNpb24ikgIKDkNvbm5lY3RSZXF1ZXN0EiIKDENvbm5lY3Rpb25JZBgBIAEoCVIMQ29ubmVjdGlvbklkEiQKDUNsaWVudFZlcnNpb24YAiABKAlSDUNsaWVudFZlcnNpb24SNAoVSXNSdW5uaW5nV2l0aERlYnVnZ2VyGAMgASgIUhVJc1J1bm5pbmdXaXRoRGVidWdnZXISHAoJUHJvY2Vzc0lkGAQgASgFUglQcm9jZXNzSWQSIAoLUHJvY2Vzc1BhdGgYBSABKAlSC1Byb2Nlc3NQYXRoEiAKC01hY2hpbmVOYW1lGAYgASgJUgtNYWNoaW5lTmFtZRIeCgpDbGllbnRUeXBlGAcgASgJUgpDbGllbnRUeXBlIoUDCg9Db25uZWN0ZWRDbGllbnQSIgoMQ29ubmVjdGlvbklkGAEgASgJUgxDb25uZWN0aW9uSWQSGAoHVmVyc2lvbhgCIAEoCVIHVmVyc2lvbhJaCghMYXN0U2VlbhgDIAEoCzI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNsaWVudHMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCExhc3RTZWVuEjQKFUlzUnVubmluZ1dpdGhEZWJ1Z2dlchgEIAEoCFIVSXNSdW5uaW5nV2l0aERlYnVnZ2VyEiAKC1NpbG9BZGRyZXNzGAUgASgJUgtTaWxvQWRkcmVzcxIcCglQcm9jZXNzSWQYBiABKAVSCVByb2Nlc3NJZBIgCgtQcm9jZXNzUGF0aBgHIAEoCVILUHJvY2Vzc1BhdGgSIAoLTWFjaGluZU5hbWUYCCABKAlSC01hY2hpbmVOYW1lEh4KCkNsaWVudFR5cGUYCSABKAlSCkNsaWVudFR5cGUiOQoTQ29ubmVjdGlvbktlZXBBbGl2ZRIiCgxDb25uZWN0aW9uSWQYASABKAlSDENvbm5lY3Rpb25JZCJDChVEZXNjcmlwdG9yU2V0UmVzcG9uc2USKgoQU2NoZW1hRGVmaW5pdGlvbhgBIAEoCVIQU2NoZW1hRGVmaW5pdGlvbiJoChtJRW51bWVyYWJsZV9Db25uZWN0ZWRDbGllbnQSSQoFaXRlbXMYASADKAsyMy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DbGllbnRzLkNvbm5lY3RlZENsaWVudFIFaXRlbXMiMgoaU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXQSFAoFVmFsdWUYASABKAlSBVZhbHVlMs4FChFDb25uZWN0aW9uU2VydmljZRKJAQoSQ2hlY2tDb21wYXRpYmlsaXR5EjguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2xpZW50cy5Db21wYXRpYmlsaXR5UmVxdWVzdBo5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNsaWVudHMuQ29tcGF0aWJpbGl0eVJlc3BvbnNlEngKB0Nvbm5lY3QSMi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5DbGllbnRzLkNvbm5lY3RSZXF1ZXN0GjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2xpZW50cy5Db25uZWN0aW9uS2VlcEFsaXZlMAESZgoTQ29ubmVjdGlvbktlZXBBbGl2ZRI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNsaWVudHMuQ29ubmVjdGlvbktlZXBBbGl2ZRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJuChNHZXRDb25uZWN0ZWRDbGllbnRzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2xpZW50cy5JRW51bWVyYWJsZV9Db25uZWN0ZWRDbGllbnQSZQoQR2V0RGVzY3JpcHRvclNldBIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRo5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNsaWVudHMuRGVzY3JpcHRvclNldFJlc3BvbnNlEnQKF09ic2VydmVDb25uZWN0ZWRDbGllbnRzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ2xpZW50cy5JRW51bWVyYWJsZV9Db25uZWN0ZWRDbGllbnQwAWIGcHJvdG8zCsUHChBjb21wbGlhbmNlLnByb3RvEiVDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Db21wbGlhbmNlGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8ifAocQWxsb3dOZXdFbmNyeXB0aW9uS2V5UmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEh4KCklkZW50aWZpZXIYAyABKAlSCklkZW50aWZpZXIiegoaRGVsZXRlRW5jcnlwdGlvbktleVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIeCgpJZGVudGlmaWVyGAMgASgJUgpJZGVudGlmaWVyIpoBCg5SZWxlYXNlUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEhgKB1N1YmplY3QYAyABKAlSB1N1YmplY3QSFgoGU2NoZW1hGAQgASgJUgZTY2hlbWESGAoHUGF5bG9hZBgFIAEoCVIHUGF5bG9hZCJdCg9SZWxlYXNlUmVzcG9uc2USGAoHUGF5bG9hZBgBIAEoCVIHUGF5bG9hZBIaCghIYXNFcnJvchgCIAEoCFIISGFzRXJyb3ISFAoFRXJyb3IYAyABKAlSBUVycm9yMu4CCgpDb21wbGlhbmNlEnQKFUFsbG93TmV3RW5jcnlwdGlvbktleRJDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNvbXBsaWFuY2UuQWxsb3dOZXdFbmNyeXB0aW9uS2V5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJwChNEZWxldGVFbmNyeXB0aW9uS2V5EkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ29tcGxpYW5jZS5EZWxldGVFbmNyeXB0aW9uS2V5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJ4CgdSZWxlYXNlEjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuQ29tcGxpYW5jZS5SZWxlYXNlUmVxdWVzdBo2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkNvbXBsaWFuY2UuUmVsZWFzZVJlc3BvbnNlYgZwcm90bzMKhQ0KGGV2ZW50c19jb25zdHJhaW50cy5wcm90bxItQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRzLkNvbnN0cmFpbnRzGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8igQMKCkNvbnN0cmFpbnQSEgoETmFtZRgBIAEoCVIETmFtZRJRCgRUeXBlGAIgASgOMj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRzLkNvbnN0cmFpbnRzLkNvbnN0cmFpbnRUeXBlUgRUeXBlEiAKC1JlbW92ZWRXaXRoGAMgAygJUgtSZW1vdmVkV2l0aBKTAQoKRGVmaW5pdGlvbhgEIAEoCzJzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50cy5Db25zdHJhaW50cy5PbmVPZl9VbmlxdWVDb25zdHJhaW50RGVmaW5pdGlvbl9VbmlxdWVFdmVudFR5cGVDb25zdHJhaW50RGVmaW5pdGlvblIKRGVmaW5pdGlvbhJUCgVTY29wZRgFIAEoCzI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50cy5Db25zdHJhaW50cy5Db25zdHJhaW50U2NvcGVSBVNjb3BlIosBCg9Db25zdHJhaW50U2NvcGUSKAoPRXZlbnRTb3VyY2VUeXBlGAEgASgJUg9FdmVudFNvdXJjZVR5cGUSKAoPRXZlbnRTdHJlYW1UeXBlGAIgASgJUg9FdmVudFN0cmVhbVR5cGUSJAoNRXZlbnRTdHJlYW1JZBgDIAEoCVINRXZlbnRTdHJlYW1JZCKVAgpET25lT2ZfVW5pcXVlQ29uc3RyYWludERlZmluaXRpb25fVW5pcXVlRXZlbnRUeXBlQ29uc3RyYWludERlZmluaXRpb24SYQoGVmFsdWUwGAEgASgLMkkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRzLkNvbnN0cmFpbnRzLlVuaXF1ZUNvbnN0cmFpbnREZWZpbml0aW9uUgZWYWx1ZTASagoGVmFsdWUxGAIgASgLMlIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRzLkNvbnN0cmFpbnRzLlVuaXF1ZUV2ZW50VHlwZUNvbnN0cmFpbnREZWZpbml0aW9uUgZWYWx1ZTEimQEKGlJlZ2lzdGVyQ29uc3RyYWludHNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSWwoLQ29uc3RyYWludHMYAiADKAsyOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudHMuQ29uc3RyYWludHMuQ29uc3RyYWludFILQ29uc3RyYWludHMivAEKGlVuaXF1ZUNvbnN0cmFpbnREZWZpbml0aW9uEnoKEEV2ZW50RGVmaW5pdGlvbnMYASADKAsyTi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudHMuQ29uc3RyYWludHMuVW5pcXVlQ29uc3RyYWludEV2ZW50RGVmaW5pdGlvblIQRXZlbnREZWZpbml0aW9ucxIiCgxJZ25vcmVDYXNpbmcYAiABKAhSDElnbm9yZUNhc2luZyJjCh9VbmlxdWVDb25zdHJhaW50RXZlbnREZWZpbml0aW9uEiAKC0V2ZW50VHlwZUlkGAEgASgJUgtFdmVudFR5cGVJZBIeCgpQcm9wZXJ0aWVzGAIgAygJUgpQcm9wZXJ0aWVzIk8KI1VuaXF1ZUV2ZW50VHlwZUNvbnN0cmFpbnREZWZpbml0aW9uEiIKDEV2ZW50VHlwZUlkcxgCIAMoCVIMRXZlbnRUeXBlSWRzSgQIARACKlwKDkNvbnN0cmFpbnRUeXBlEgsKB1Vua25vd24QABIKCgZVbmlxdWUQARITCg9VbmlxdWVFdmVudFR5cGUQAhIKCgZTY2hlbWEQAxIQCgxTdHJlYW1DbG9zZWQQBDJ8CgtDb25zdHJhaW50cxJtCghSZWdpc3RlchJJLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50cy5Db25zdHJhaW50cy5SZWdpc3RlckNvbnN0cmFpbnRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eWIGcHJvdG8zCrIIChRldmVudHNlcXVlbmNlcy5wcm90bxIpQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTZXF1ZW5jZXMaFnByb3RvYnVmLW5ldC9iY2wucHJvdG8i0gEKGElzU3RyZWFtQ29tcGxldGVkUmVxdWVzdBIoCg9FdmVudFNlcXVlbmNlSWQYASABKAlSD0V2ZW50U2VxdWVuY2VJZBIeCgpFdmVudFN0b3JlGAIgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgDIAEoCVIJTmFtZXNwYWNlEigKD0V2ZW50U3RyZWFtVHlwZRgEIAEoCVIPRXZlbnRTdHJlYW1UeXBlEiQKDUV2ZW50U3RyZWFtSWQYBSABKAlSDUV2ZW50U3RyZWFtSWQiyQIKE1F1ZXJ5UmVzdWx0X0Jvb2xlYW4SLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmkKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USEgoERGF0YRgGIAEoCFIERGF0YSKnAQoQVmFsaWRhdGlvblJlc3VsdBJfCghTZXZlcml0eRgBIAEoDjJDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50U2VxdWVuY2VzLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKlAKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRILCgdVbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzKxAQoURXZlbnRTZXF1ZW5jZVF1ZXJpZXMSmAEKEUlzU3RyZWFtQ29tcGxldGVkEkMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTZXF1ZW5jZXMuSXNTdHJlYW1Db21wbGV0ZWRSZXF1ZXN0Gj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTZXF1ZW5jZXMuUXVlcnlSZXN1bHRfQm9vbGVhbmIGcHJvdG8zCp8NChFldmVudHN0b3Jlcy5wcm90bxImQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTdG9yZXMaG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxoWcHJvdG9idWYtbmV0L2JjbC5wcm90byLsAgoNQ29tbWFuZFJlc3VsdBIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZgoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyOC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFN0b3Jlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24iLQoXRW5zdXJlRXZlbnRTdG9yZVJlcXVlc3QSEgoETmFtZRgBIAEoCVIETmFtZSI9ChdFdmVudFN0b3JlTmFtZXNSZXNwb25zZRISCgROYW1lGAEgASgJUgROYW1lEg4KAklkGAIgASgJUgJJZCKjAwovUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfRXZlbnRTdG9yZU5hbWVzUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmYKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTdG9yZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USUwoERGF0YRgGIAMoCzI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50U3RvcmVzLkV2ZW50U3RvcmVOYW1lc1Jlc3BvbnNlUgREYXRhIqQBChBWYWxpZGF0aW9uUmVzdWx0ElwKCFNldmVyaXR5GAEgASgOMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTdG9yZXMuVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5UghTZXZlcml0eRIYCgdNZXNzYWdlGAIgASgJUgdNZXNzYWdlEhgKB01lbWJlcnMYAyADKAlSB01lbWJlcnMqUAoYVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5EgsKB1Vua25vd24QABIPCgtJbmZvcm1hdGlvbhABEgsKB1dhcm5pbmcQAhIJCgVFcnJvchADMqgDCgtFdmVudFN0b3JlcxKBAQoOQWxsRXZlbnRTdG9yZXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaVy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFN0b3Jlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9FdmVudFN0b3JlTmFtZXNSZXNwb25zZRKKAQoQRW5zdXJlRXZlbnRTdG9yZRI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50U3RvcmVzLkVuc3VyZUV2ZW50U3RvcmVSZXF1ZXN0GjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTdG9yZXMuQ29tbWFuZFJlc3VsdBKHAQoST2JzZXJ2ZUV2ZW50U3RvcmVzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GlcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRTdG9yZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfRXZlbnRTdG9yZU5hbWVzUmVzcG9uc2UwAWIGcHJvdG8zCoggChBldmVudHR5cGVzLnByb3RvEiVDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvImIKHkFsbEV2ZW50VHlwZUdlbmVyYXRpb25zUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEiAKC0V2ZW50VHlwZUlkGAIgASgJUgtFdmVudFR5cGVJZCI2ChRBbGxFdmVudFR5cGVzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlIusCCg1Db21tYW5kUmVzdWx0Ei8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJlChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uIkwKFkNyZWF0ZUV2ZW50VHlwZVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRISCgROYW1lGAIgASgJUgROYW1lIlkKCUV2ZW50VHlwZRIOCgJJZBgBIAEoCVICSWQSHgoKR2VuZXJhdGlvbhgCIAEoDVIKR2VuZXJhdGlvbhIcCglUb21ic3RvbmUYAyABKAhSCVRvbWJzdG9uZSKlAgoYRXZlbnRUeXBlRGV0YWlsc1Jlc3BvbnNlEkQKBFR5cGUYASABKAsyMC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLkV2ZW50VHlwZVIEVHlwZRJLCgVPd25lchgCIAEoDjI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuRXZlbnRUeXBlT3duZXJSBU93bmVyEk4KBlNvdXJjZRgDIAEoDjI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuRXZlbnRUeXBlU291cmNlUgZTb3VyY2USFgoGU2NoZW1hGAQgASgJUgZTY2hlbWESDgoCSWQYBSABKAlSAklkIlcKHUV2ZW50VHlwZUdlbmVyYXRpb25EZWZpbml0aW9uEh4KCkdlbmVyYXRpb24YASABKA1SCkdlbmVyYXRpb24SFgoGU2NoZW1hGAIgASgJUgZTY2hlbWEiogIKHEV2ZW50VHlwZU1pZ3JhdGlvbkRlZmluaXRpb24SJgoORnJvbUdlbmVyYXRpb24YASABKA1SDkZyb21HZW5lcmF0aW9uEiIKDFRvR2VuZXJhdGlvbhgCIAEoDVIMVG9HZW5lcmF0aW9uEmIKCk9wZXJhdGlvbnMYAyADKAsyQi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLkV2ZW50VHlwZU1pZ3JhdGlvbk9wZXJhdGlvblIKT3BlcmF0aW9ucxImCg5VcGNhc3RKbWVzUGF0aBgEIAEoCVIOVXBjYXN0Sm1lc1BhdGgSKgoQRG93bmNhc3RKbWVzUGF0aBgFIAEoCVIQRG93bmNhc3RKbWVzUGF0aCJVChtFdmVudFR5cGVNaWdyYXRpb25PcGVyYXRpb24SHAoJT3BlcmF0aW9uGAEgASgJUglPcGVyYXRpb24SGAoHRGV0YWlscxgCIAEoCVIHRGV0YWlscyLiAgoVRXZlbnRUeXBlUmVnaXN0cmF0aW9uEkQKBFR5cGUYASABKAsyMC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLkV2ZW50VHlwZVIEVHlwZRIWCgZTY2hlbWEYAiABKAlSBlNjaGVtYRJmCgtHZW5lcmF0aW9ucxgDIAMoCzJELkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuRXZlbnRUeXBlR2VuZXJhdGlvbkRlZmluaXRpb25SC0dlbmVyYXRpb25zEmMKCk1pZ3JhdGlvbnMYBCADKAsyQy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLkV2ZW50VHlwZU1pZ3JhdGlvbkRlZmluaXRpb25SCk1pZ3JhdGlvbnMSHgoKRXZlbnRTdG9yZRgFIAEoCVIKRXZlbnRTdG9yZSI6ChhPYnNlcnZlRXZlbnRUeXBlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSKjAwowUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfRXZlbnRUeXBlRGV0YWlsc1Jlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJlChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USUwoERGF0YRgGIAMoCzI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuRXZlbnRUeXBlRGV0YWlsc1Jlc3BvbnNlUgREYXRhIr0BChlSZWdpc3RlckV2ZW50VHlwZXNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSUgoFVHlwZXMYAiADKAsyPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLkV2ZW50VHlwZVJlZ2lzdHJhdGlvblIFVHlwZXMSLAoRRGlzYWJsZVZhbGlkYXRpb24YAyABKAhSEURpc2FibGVWYWxpZGF0aW9uIpIBCh5SZWdpc3RlclNpbmdsZUV2ZW50VHlwZVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRJQCgRUeXBlGAIgASgLMjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRUeXBlcy5FdmVudFR5cGVSZWdpc3RyYXRpb25SBFR5cGUiowEKEFZhbGlkYXRpb25SZXN1bHQSWwoIU2V2ZXJpdHkYASABKA4yPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKjIKDkV2ZW50VHlwZU93bmVyEggKBE5vbmUQABIKCgZDbGllbnQQARIKCgZTZXJ2ZXIQAipECg9FdmVudFR5cGVTb3VyY2USHQoZRVZFTlRfVFlQRV9TT1VSQ0VfVW5rbm93bhAAEggKBENvZGUQARIICgRVc2VyEAIqawoYVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5EiYKIlZBTElEQVRJT05fUkVTVUxUX1NFVkVSSVRZX1Vua25vd24QABIPCgtJbmZvcm1hdGlvbhABEgsKB1dhcm5pbmcQAhIJCgVFcnJvchADMtMHCgpFdmVudFR5cGVzErkBChdBbGxFdmVudFR5cGVHZW5lcmF0aW9ucxJFLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuQWxsRXZlbnRUeXBlR2VuZXJhdGlvbnNSZXF1ZXN0GlcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRUeXBlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9FdmVudFR5cGVEZXRhaWxzUmVzcG9uc2USpQEKDUFsbEV2ZW50VHlwZXMSOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLkFsbEV2ZW50VHlwZXNSZXF1ZXN0GlcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXZlbnRUeXBlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9FdmVudFR5cGVEZXRhaWxzUmVzcG9uc2UShgEKD0NyZWF0ZUV2ZW50VHlwZRI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuQ3JlYXRlRXZlbnRUeXBlUmVxdWVzdBo0LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuQ29tbWFuZFJlc3VsdBKvAQoRT2JzZXJ2ZUV2ZW50VHlwZXMSPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLk9ic2VydmVFdmVudFR5cGVzUmVxdWVzdBpXLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfRXZlbnRUeXBlRGV0YWlsc1Jlc3BvbnNlMAESjAEKElJlZ2lzdGVyRXZlbnRUeXBlcxJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuUmVnaXN0ZXJFdmVudFR5cGVzUmVxdWVzdBo0LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuQ29tbWFuZFJlc3VsdBKWAQoXUmVnaXN0ZXJTaW5nbGVFdmVudFR5cGUSRS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FdmVudFR5cGVzLlJlZ2lzdGVyU2luZ2xlRXZlbnRUeXBlUmVxdWVzdBo0LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV2ZW50VHlwZXMuQ29tbWFuZFJlc3VsdGIGcHJvdG8zCpEyChZleHRlcm5hbHNlcnZpY2VzLnByb3RvEitDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvIokIChlBZGRFeHRlcm5hbFNlcnZpY2VSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSDgoCSWQYAiABKAlSAklkEhIKBE5hbWUYAyABKAlSBE5hbWUSbAoMRW5kcG9pbnRUeXBlGAQgASgOMkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5FeHRlcm5hbFNlcnZpY2VFbmRwb2ludFR5cGVSDEVuZHBvaW50VHlwZRIQCgNVcmwYBSABKAlSA1VybBJsChFBdXRob3JpemF0aW9uVHlwZRgGIAEoDjI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuQXV0aG9yaXphdGlvblR5cGVSEUF1dGhvcml6YXRpb25UeXBlEiQKDUJhc2ljVXNlcm5hbWUYByABKAlSDUJhc2ljVXNlcm5hbWUSJAoNQmFzaWNQYXNzd29yZBgIIAEoCVINQmFzaWNQYXNzd29yZBIgCgtCZWFyZXJUb2tlbhgJIAEoCVILQmVhcmVyVG9rZW4SJgoOT0F1dGhBdXRob3JpdHkYCiABKAlSDk9BdXRoQXV0aG9yaXR5EiQKDU9BdXRoQ2xpZW50SWQYCyABKAlSDU9BdXRoQ2xpZW50SWQSLAoRT0F1dGhDbGllbnRTZWNyZXQYDCABKAlSEU9BdXRoQ2xpZW50U2VjcmV0Em0KB0hlYWRlcnMYDSADKAsyUy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkFkZEV4dGVybmFsU2VydmljZVJlcXVlc3QuSGVhZGVyc0VudHJ5UgdIZWFkZXJzEhIKBEhvc3QYDiABKAlSBEhvc3QSEgoEUG9ydBgPIAEoBVIEUG9ydBIaCghEYXRhYmFzZRgQIAEoCVIIRGF0YWJhc2USGgoIVXNlcm5hbWUYESABKAlSCFVzZXJuYW1lEhoKCFBhc3N3b3JkGBIgASgJUghQYXNzd29yZBJtCgdPcHRpb25zGBMgAygLMlMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5BZGRFeHRlcm5hbFNlcnZpY2VSZXF1ZXN0Lk9wdGlvbnNFbnRyeVIHT3B0aW9ucxo6CgxIZWFkZXJzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ARo6CgxPcHRpb25zRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASKwAQoaQWRkRXh0ZXJuYWxTZXJ2aWNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRJyChBFeHRlcm5hbFNlcnZpY2VzGAIgAygLMkYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5FeHRlcm5hbFNlcnZpY2VEZWZpbml0aW9uUhBFeHRlcm5hbFNlcnZpY2VzIkwKEkJhc2ljQXV0aG9yaXphdGlvbhIaCghVc2VybmFtZRgBIAEoCVIIVXNlcm5hbWUSGgoIUGFzc3dvcmQYAiABKAlSCFBhc3N3b3JkIjAKGEJlYXJlclRva2VuQXV0aG9yaXphdGlvbhIUCgVUb2tlbhgBIAEoCVIFVG9rZW4i8QIKDUNvbW1hbmRSZXN1bHQSLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmsKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24iygIKHURhdGFiYXNlRW5kcG9pbnRDb25maWd1cmF0aW9uEhIKBEhvc3QYASABKAlSBEhvc3QSEgoEUG9ydBgCIAEoBVIEUG9ydBIaCghEYXRhYmFzZRgDIAEoCVIIRGF0YWJhc2USGgoIVXNlcm5hbWUYBCABKAlSCFVzZXJuYW1lEhoKCFBhc3N3b3JkGAUgASgJUghQYXNzd29yZBJxCgdPcHRpb25zGAYgAygLMlcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5EYXRhYmFzZUVuZHBvaW50Q29uZmlndXJhdGlvbi5PcHRpb25zRW50cnlSB09wdGlvbnMaOgoMT3B0aW9uc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEioQEKGUV4dGVybmFsU2VydmljZURlZmluaXRpb24SDgoCSWQYASABKAlSAklkEhIKBE5hbWUYAiABKAlSBE5hbWUSYAoIRW5kcG9pbnQYAyABKAsyRC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkV4dGVybmFsU2VydmljZUVuZHBvaW50UghFbmRwb2ludCK7AgoXRXh0ZXJuYWxTZXJ2aWNlRW5kcG9pbnQSXAoEVHlwZRgBIAEoDjJILkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuRXh0ZXJuYWxTZXJ2aWNlRW5kcG9pbnRUeXBlUgRUeXBlEloKBEh0dHAYAiABKAsyRi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkh0dHBFbmRwb2ludENvbmZpZ3VyYXRpb25SBEh0dHASZgoIRGF0YWJhc2UYAyABKAsySi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkRhdGFiYXNlRW5kcG9pbnRDb25maWd1cmF0aW9uUghEYXRhYmFzZSLdBQoXRXh0ZXJuYWxTZXJ2aWNlUmVzcG9uc2USDgoCSWQYASABKAlSAklkEhIKBE5hbWUYAiABKAlSBE5hbWUSbAoMRW5kcG9pbnRUeXBlGAMgASgOMkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5FeHRlcm5hbFNlcnZpY2VFbmRwb2ludFR5cGVSDEVuZHBvaW50VHlwZRIQCgNVcmwYBCABKAlSA1VybBJsChFBdXRob3JpemF0aW9uVHlwZRgFIAEoDjI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuQXV0aG9yaXphdGlvblR5cGVSEUF1dGhvcml6YXRpb25UeXBlEmsKB0hlYWRlcnMYBiADKAsyUS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkV4dGVybmFsU2VydmljZVJlc3BvbnNlLkhlYWRlcnNFbnRyeVIHSGVhZGVycxISCgRIb3N0GAcgASgJUgRIb3N0EhIKBFBvcnQYCCABKAVSBFBvcnQSGgoIRGF0YWJhc2UYCSABKAlSCERhdGFiYXNlEhoKCFVzZXJuYW1lGAogASgJUghVc2VybmFtZRJrCgdPcHRpb25zGAsgAygLMlEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5FeHRlcm5hbFNlcnZpY2VSZXNwb25zZS5PcHRpb25zRW50cnlSB09wdGlvbnMaOgoMSGVhZGVyc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEaOgoMT3B0aW9uc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEiPAoaR2V0RXh0ZXJuYWxTZXJ2aWNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSLyAgoZSHR0cEVuZHBvaW50Q29uZmlndXJhdGlvbhIQCgNVcmwYASABKAlSA1VybBKXAQoNQXV0aG9yaXphdGlvbhgCIAEoCzJxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuT25lT2ZfQmFzaWNBdXRob3JpemF0aW9uX0JlYXJlclRva2VuQXV0aG9yaXphdGlvbl9PQXV0aEF1dGhvcml6YXRpb25SDUF1dGhvcml6YXRpb24SbQoHSGVhZGVycxgDIAMoCzJTLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuSHR0cEVuZHBvaW50Q29uZmlndXJhdGlvbi5IZWFkZXJzRW50cnlSB0hlYWRlcnMaOgoMSGVhZGVyc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEicgoST0F1dGhBdXRob3JpemF0aW9uEhwKCUF1dGhvcml0eRgBIAEoCVIJQXV0aG9yaXR5EhoKCENsaWVudElkGAIgASgJUghDbGllbnRJZBIiCgxDbGllbnRTZWNyZXQYAyABKAlSDENsaWVudFNlY3JldCJACh5PYnNlcnZlRXh0ZXJuYWxTZXJ2aWNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSLXAgpET25lT2ZfQmFzaWNBdXRob3JpemF0aW9uX0JlYXJlclRva2VuQXV0aG9yaXphdGlvbl9PQXV0aEF1dGhvcml6YXRpb24SVwoGVmFsdWUwGAEgASgLMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5CYXNpY0F1dGhvcml6YXRpb25SBlZhbHVlMBJdCgZWYWx1ZTEYAiABKAsyRS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkJlYXJlclRva2VuQXV0aG9yaXphdGlvblIGVmFsdWUxElcKBlZhbHVlMhgDIAEoCzI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuT0F1dGhBdXRob3JpemF0aW9uUgZWYWx1ZTIirQMKL1F1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX0V4dGVybmFsU2VydmljZVJlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJrChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USWAoERGF0YRgGIAMoCzJELkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuRXh0ZXJuYWxTZXJ2aWNlUmVzcG9uc2VSBERhdGEibAocUmVtb3ZlRXh0ZXJuYWxTZXJ2aWNlUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEiwKEUV4dGVybmFsU2VydmljZUlkGAIgASgJUhFFeHRlcm5hbFNlcnZpY2VJZCJrCh1SZW1vdmVFeHRlcm5hbFNlcnZpY2VzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEioKEEV4dGVybmFsU2VydmljZXMYAiADKAlSEEV4dGVybmFsU2VydmljZXMiqQEKEFZhbGlkYXRpb25SZXN1bHQSYQoIU2V2ZXJpdHkYASABKA4yRS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKj8KEUF1dGhvcml6YXRpb25UeXBlEggKBE5vbmUQABIJCgVCYXNpYxABEgoKBkJlYXJlchACEgkKBU9BdXRoEAMqQgobRXh0ZXJuYWxTZXJ2aWNlRW5kcG9pbnRUeXBlEggKBEh0dHAQABIJCgVNc1NxbBABEg4KClBvc3RncmVTcWwQAipQChhWYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHkSCwoHVW5rbm93bhAAEg8KC0luZm9ybWF0aW9uEAESCwoHV2FybmluZxACEgkKBUVycm9yEAMylggKEEV4dGVybmFsU2VydmljZXMSmAEKEkFkZEV4dGVybmFsU2VydmljZRJGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuQWRkRXh0ZXJuYWxTZXJ2aWNlUmVxdWVzdBo6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuQ29tbWFuZFJlc3VsdBKaAQoTQWRkRXh0ZXJuYWxTZXJ2aWNlcxJHLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuQWRkRXh0ZXJuYWxTZXJ2aWNlc1JlcXVlc3QaOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkNvbW1hbmRSZXN1bHQSvAEKE0dldEV4dGVybmFsU2VydmljZXMSRy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLkdldEV4dGVybmFsU2VydmljZXNSZXF1ZXN0GlwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9FeHRlcm5hbFNlcnZpY2VSZXNwb25zZRLGAQoXT2JzZXJ2ZUV4dGVybmFsU2VydmljZXMSSy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5FeHRlcm5hbFNlcnZpY2VzLk9ic2VydmVFeHRlcm5hbFNlcnZpY2VzUmVxdWVzdBpcLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfRXh0ZXJuYWxTZXJ2aWNlUmVzcG9uc2UwARKeAQoVUmVtb3ZlRXh0ZXJuYWxTZXJ2aWNlEkkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5SZW1vdmVFeHRlcm5hbFNlcnZpY2VSZXF1ZXN0GjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5Db21tYW5kUmVzdWx0EqABChZSZW1vdmVFeHRlcm5hbFNlcnZpY2VzEkouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuRXh0ZXJuYWxTZXJ2aWNlcy5SZW1vdmVFeHRlcm5hbFNlcnZpY2VzUmVxdWVzdBo6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkV4dGVybmFsU2VydmljZXMuQ29tbWFuZFJlc3VsdGIGcHJvdG8zCvYCCgpob3N0LnByb3RvEh9DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Ib3N0Ghtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8idQoRU2VydmVyVmVyc2lvbkluZm8SGAoHVmVyc2lvbhgBIAEoCVIHVmVyc2lvbhIcCglDb21taXRTaGEYAiABKAlSCUNvbW1pdFNoYRIoCg9Qcm90b2NvbFZlcnNpb24YAyABKAlSD1Byb3RvY29sVmVyc2lvbjKqAQoGU2VydmVyElwKDkdldFZlcnNpb25JbmZvEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSG9zdC5TZXJ2ZXJWZXJzaW9uSW5mbxJCChBSZXNldEtlcm5lbFN0YXRlEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5YgZwcm90bzMK6hEKEGlkZW50aXRpZXMucHJvdG8SJUNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLklkZW50aXRpZXMaFnByb3RvYnVmLW5ldC9iY2wucHJvdG8iVAoUQWxsSWRlbnRpdGllc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZSLrAgoNQ29tbWFuZFJlc3VsdBIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZQoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5JZGVudGl0aWVzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEj4KGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uGAYgASgJUhpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbiJUChRHZXRJZGVudGl0aWVzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlIqUBCghJZGVudGl0eRIYCgdTdWJqZWN0GAEgASgJUgdTdWJqZWN0EhIKBE5hbWUYAiABKAlSBE5hbWUSGgoIVXNlck5hbWUYAyABKAlSCFVzZXJOYW1lEk8KCk9uQmVoYWxmT2YYBCABKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5JZGVudGl0aWVzLklkZW50aXR5UgpPbkJlaGFsZk9mIsQBChdJZGVudGl0eURldGFpbHNSZXNwb25zZRIYCgdTdWJqZWN0GAEgASgJUgdTdWJqZWN0EhIKBE5hbWUYAiABKAlSBE5hbWUSGgoIVXNlck5hbWUYAyABKAlSCFVzZXJOYW1lEk8KCk9uQmVoYWxmT2YYBCABKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5JZGVudGl0aWVzLklkZW50aXR5UgpPbkJlaGFsZk9mEg4KAklkGAUgASgJUgJJZCKhAwovUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfSWRlbnRpdHlEZXRhaWxzUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmUKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSWRlbnRpdGllcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRJSCgREYXRhGAYgAygLMj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSWRlbnRpdGllcy5JZGVudGl0eURldGFpbHNSZXNwb25zZVIERGF0YSKDAQoVUmVuYW1lSWRlbnRpdHlSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USGAoHU3ViamVjdBgDIAEoCVIHU3ViamVjdBISCgROYW1lGAQgASgJUgROYW1lIqMBChBWYWxpZGF0aW9uUmVzdWx0ElsKCFNldmVyaXR5GAEgASgOMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSWRlbnRpdGllcy5WYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHlSCFNldmVyaXR5EhgKB01lc3NhZ2UYAiABKAlSB01lc3NhZ2USGAoHTWVtYmVycxgDIAMoCVIHTWVtYmVycypQChhWYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHkSCwoHVW5rbm93bhAAEg8KC0luZm9ybWF0aW9uEAESCwoHV2FybmluZxACEgkKBUVycm9yEAMy4wMKCklkZW50aXRpZXMSpgEKDUFsbElkZW50aXRpZXMSOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5JZGVudGl0aWVzLkFsbElkZW50aXRpZXNSZXF1ZXN0GlYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSWRlbnRpdGllcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9JZGVudGl0eURldGFpbHNSZXNwb25zZTABEqQBCg1HZXRJZGVudGl0aWVzEjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSWRlbnRpdGllcy5HZXRJZGVudGl0aWVzUmVxdWVzdBpWLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLklkZW50aXRpZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfSWRlbnRpdHlEZXRhaWxzUmVzcG9uc2UShAEKDlJlbmFtZUlkZW50aXR5EjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSWRlbnRpdGllcy5SZW5hbWVJZGVudGl0eVJlcXVlc3QaNC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5JZGVudGl0aWVzLkNvbW1hbmRSZXN1bHRiBnByb3RvMwreJwoKam9icy5wcm90bxIfQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icxoWcHJvdG9idWYtbmV0L2JjbC5wcm90byJOCg5BbGxKb2JzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlIuUCCg1Db21tYW5kUmVzdWx0Ei8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJfChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uInEKEERlbGV0ZUpvYlJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIfCgVKb2JJZBgDIAEoCzIJLmJjbC5HdWlkUgVKb2JJZCJzChJHZXRKb2JTdGVwc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIfCgVKb2JJZBgDIAEoCzIJLmJjbC5HdWlkUgVKb2JJZCL3AQoLSm9iUHJvZ3Jlc3MSHgoKVG90YWxTdGVwcxgBIAEoBVIKVG90YWxTdGVwcxIoCg9TdWNjZXNzZnVsU3RlcHMYAiABKAVSD1N1Y2Nlc3NmdWxTdGVwcxIgCgtGYWlsZWRTdGVwcxgDIAEoBVILRmFpbGVkU3RlcHMSIgoMU3RvcHBlZFN0ZXBzGAQgASgFUgxTdG9wcGVkU3RlcHMSIAoLSXNDb21wbGV0ZWQYBSABKAhSC0lzQ29tcGxldGVkEhwKCUlzU3RvcHBlZBgGIAEoCFIJSXNTdG9wcGVkEhgKB01lc3NhZ2UYByABKAlSB01lc3NhZ2UijwIKEEpvYlN0YXR1c0NoYW5nZWQSQgoGU3RhdHVzGAEgASgOMiouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5Kb2JTdGF0dXNSBlN0YXR1cxJXCghPY2N1cnJlZBgCIAEoCzI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAMgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAQgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlIksKD0pvYlN0ZXBQcm9ncmVzcxIeCgpQZXJjZW50YWdlGAEgASgFUgpQZXJjZW50YWdlEhgKB01lc3NhZ2UYAiABKAlSB01lc3NhZ2UilwIKFEpvYlN0ZXBTdGF0dXNDaGFuZ2VkEkYKBlN0YXR1cxgBIAEoDjIuLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iU3RlcFN0YXR1c1IGU3RhdHVzElcKCE9jY3VycmVkGAIgASgLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSLAoRRXhjZXB0aW9uTWVzc2FnZXMYAyADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBCABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2UizgIKFkpvYlN0ZXBTdW1tYXJ5UmVzcG9uc2USGQoCSWQYASABKAsyCS5iY2wuR3VpZFICSWQSEgoEVHlwZRgCIAEoCVIEVHlwZRISCgROYW1lGAMgASgJUgROYW1lEkYKBlN0YXR1cxgEIAEoDjIuLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iU3RlcFN0YXR1c1IGU3RhdHVzElsKDVN0YXR1c0NoYW5nZXMYBSADKAsyNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Kb2JzLkpvYlN0ZXBTdGF0dXNDaGFuZ2VkUg1TdGF0dXNDaGFuZ2VzEkwKCFByb2dyZXNzGAYgASgLMjAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5Kb2JTdGVwUHJvZ3Jlc3NSCFByb2dyZXNzIpsDChJKb2JTdW1tYXJ5UmVzcG9uc2USGQoCSWQYASABKAsyCS5iY2wuR3VpZFICSWQSGAoHRGV0YWlscxgCIAEoCVIHRGV0YWlscxISCgRUeXBlGAMgASgJUgRUeXBlEkIKBlN0YXR1cxgEIAEoDjIqLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iU3RhdHVzUgZTdGF0dXMSVQoHQ3JlYXRlZBgFIAEoCzI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSB0NyZWF0ZWQSVwoNU3RhdHVzQ2hhbmdlcxgGIAMoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iU3RhdHVzQ2hhbmdlZFINU3RhdHVzQ2hhbmdlcxJICghQcm9ncmVzcxgHIAEoCzIsLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iUHJvZ3Jlc3NSCFByb2dyZXNzIlIKEk9ic2VydmVKb2JzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlIpMDCi5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9Kb2JTdGVwU3VtbWFyeVJlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJfChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USSwoERGF0YRgGIAMoCzI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iU3RlcFN1bW1hcnlSZXNwb25zZVIERGF0YSKLAwoqUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfSm9iU3VtbWFyeVJlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJfChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USRwoERGF0YRgGIAMoCzIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuSm9iU3VtbWFyeVJlc3BvbnNlUgREYXRhInEKEFJlc3VtZUpvYlJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIfCgVKb2JJZBgDIAEoCzIJLmJjbC5HdWlkUgVKb2JJZCIyChpTZXJpYWxpemFibGVEYXRlVGltZU9mZnNldBIUCgVWYWx1ZRgBIAEoCVIFVmFsdWUibwoOU3RvcEpvYlJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIfCgVKb2JJZBgDIAEoCzIJLmJjbC5HdWlkUgVKb2JJZCKdAQoQVmFsaWRhdGlvblJlc3VsdBJVCghTZXZlcml0eRgBIAEoDjI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5UghTZXZlcml0eRIYCgdNZXNzYWdlGAIgASgJUgdNZXNzYWdlEhgKB01lbWJlcnMYAyADKAlSB01lbWJlcnMq7wEKCUpvYlN0YXR1cxIICgROb25lEAASEAoMUHJlcGFyaW5nSm9iEAESEgoOUHJlcGFyaW5nU3RlcHMQAhIRCg1TdGFydGluZ1N0ZXBzEAMSFgoSSk9CX1NUQVRVU19SdW5uaW5nEAQSJAogSk9CX1NUQVRVU19Db21wbGV0ZWRTdWNjZXNzZnVsbHkQBRIZChVDb21wbGV0ZWRXaXRoRmFpbHVyZXMQBhIWChJKT0JfU1RBVFVTX1N0b3BwZWQQBxIVChFKT0JfU1RBVFVTX0ZhaWxlZBAIEhcKE0pPQl9TVEFUVVNfUmVtb3ZpbmcQCSr0AQoNSm9iU3RlcFN0YXR1cxIbChdKT0JfU1RFUF9TVEFUVVNfVW5rbm93bhAAEg0KCVNjaGVkdWxlZBABEhsKF0pPQl9TVEVQX1NUQVRVU19SdW5uaW5nEAISKQolSk9CX1NURVBfU1RBVFVTX0NvbXBsZXRlZFN1Y2Nlc3NmdWxseRADEhgKFENvbXBsZXRlZFdpdGhGYWlsdXJlEAQSGwoXSk9CX1NURVBfU1RBVFVTX1N0b3BwZWQQBRIaChZKT0JfU1RFUF9TVEFUVVNfRmFpbGVkEAYSHAoYSk9CX1NURVBfU1RBVFVTX1JlbW92aW5nEAcqawoYVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5EiYKIlZBTElEQVRJT05fUkVTVUxUX1NFVkVSSVRZX1Vua25vd24QABIPCgtJbmZvcm1hdGlvbhABEgsKB1dhcm5pbmcQAhIJCgVFcnJvchADMoYGCgRKb2JzEocBCgdBbGxKb2JzEi8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5BbGxKb2JzUmVxdWVzdBpLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfSm9iU3VtbWFyeVJlc3BvbnNlEm4KCURlbGV0ZUpvYhIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuRGVsZXRlSm9iUmVxdWVzdBouLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuQ29tbWFuZFJlc3VsdBKTAQoLR2V0Sm9iU3RlcHMSMy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Kb2JzLkdldEpvYlN0ZXBzUmVxdWVzdBpPLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfSm9iU3RlcFN1bW1hcnlSZXNwb25zZRKRAQoLT2JzZXJ2ZUpvYnMSMy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Kb2JzLk9ic2VydmVKb2JzUmVxdWVzdBpLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLkpvYnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfSm9iU3VtbWFyeVJlc3BvbnNlMAESbgoJUmVzdW1lSm9iEjEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5SZXN1bWVKb2JSZXF1ZXN0Gi4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5Db21tYW5kUmVzdWx0EmoKB1N0b3BKb2ISLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Kb2JzLlN0b3BKb2JSZXF1ZXN0Gi4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuSm9icy5Db21tYW5kUmVzdWx0YgZwcm90bzMK2Q4KEG5hbWVzcGFjZXMucHJvdG8SJUNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk5hbWVzcGFjZXMaFnByb3RvYnVmLW5ldC9iY2wucHJvdG8iNgoUQWxsTmFtZXNwYWNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSLrAgoNQ29tbWFuZFJlc3VsdBIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZQoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5OYW1lc3BhY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEj4KGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uGAYgASgJUhpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbiJWChZFbnN1cmVOYW1lc3BhY2VSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2UiPAoWTmFtZXNwYWNlTmFtZXNSZXNwb25zZRISCgROYW1lGAEgASgJUgROYW1lEg4KAklkGAIgASgJUgJJZCI6ChhPYnNlcnZlTmFtZXNwYWNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSKfAwouUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfTmFtZXNwYWNlTmFtZXNSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZQoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5OYW1lc3BhY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlElEKBERhdGEYBiADKAsyPS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5OYW1lc3BhY2VzLk5hbWVzcGFjZU5hbWVzUmVzcG9uc2VSBERhdGEiowEKEFZhbGlkYXRpb25SZXN1bHQSWwoIU2V2ZXJpdHkYASABKA4yPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5OYW1lc3BhY2VzLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKlAKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRILCgdVbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzLrAwoKTmFtZXNwYWNlcxKjAQoNQWxsTmFtZXNwYWNlcxI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk5hbWVzcGFjZXMuQWxsTmFtZXNwYWNlc1JlcXVlc3QaVS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5OYW1lc3BhY2VzLlF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX05hbWVzcGFjZU5hbWVzUmVzcG9uc2UShgEKD0Vuc3VyZU5hbWVzcGFjZRI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk5hbWVzcGFjZXMuRW5zdXJlTmFtZXNwYWNlUmVxdWVzdBo0LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk5hbWVzcGFjZXMuQ29tbWFuZFJlc3VsdBKtAQoRT2JzZXJ2ZU5hbWVzcGFjZXMSPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5OYW1lc3BhY2VzLk9ic2VydmVOYW1lc3BhY2VzUmVxdWVzdBpVLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk5hbWVzcGFjZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfTmFtZXNwYWNlTmFtZXNSZXNwb25zZTABYgZwcm90bzMKgDEKEW9ic2VydmF0aW9uLnByb3RvEiZDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbhobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvIlMKE0FsbE9ic2VydmVyc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZSKhAQoXQ2xlYXJPYnNlcnZlclF1YXJhbnRpbmUSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIeCgpPYnNlcnZlcklkGAMgASgJUgpPYnNlcnZlcklkEigKD0V2ZW50U2VxdWVuY2VJZBgEIAEoCVIPRXZlbnRTZXF1ZW5jZUlkIokDCg9Db25uZWN0ZWRDbGllbnQSIgoMQ29ubmVjdGlvbklkGAEgASgJUgxDb25uZWN0aW9uSWQSGAoHVmVyc2lvbhgCIAEoCVIHVmVyc2lvbhJeCghMYXN0U2VlbhgDIAEoCzJCLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghMYXN0U2VlbhI0ChVJc1J1bm5pbmdXaXRoRGVidWdnZXIYBCABKAhSFUlzUnVubmluZ1dpdGhEZWJ1Z2dlchIgCgtTaWxvQWRkcmVzcxgFIAEoCVILU2lsb0FkZHJlc3MSHAoJUHJvY2Vzc0lkGAYgASgFUglQcm9jZXNzSWQSIAoLUHJvY2Vzc1BhdGgYByABKAlSC1Byb2Nlc3NQYXRoEiAKC01hY2hpbmVOYW1lGAggASgJUgtNYWNoaW5lTmFtZRIeCgpDbGllbnRUeXBlGAkgASgJUgpDbGllbnRUeXBlIlkKCUV2ZW50VHlwZRIOCgJJZBgBIAEoCVICSWQSHgoKR2VuZXJhdGlvbhgCIAEoDVIKR2VuZXJhdGlvbhIcCglUb21ic3RvbmUYAyABKAhSCVRvbWJzdG9uZSLGAQoPRmFpbGVkUGFydGl0aW9uEhkKAklkGAEgASgLMgkuYmNsLkd1aWRSAklkEh4KCk9ic2VydmVySWQYAiABKAlSCk9ic2VydmVySWQSHAoJUGFydGl0aW9uGAMgASgJUglQYXJ0aXRpb24SWgoIQXR0ZW1wdHMYBCADKAsyPi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5GYWlsZWRQYXJ0aXRpb25BdHRlbXB0UghBdHRlbXB0cyKlAgoWRmFpbGVkUGFydGl0aW9uQXR0ZW1wdBJeCghPY2N1cnJlZBgBIAEoCzJCLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBImCg5TZXF1ZW5jZU51bWJlchgCIAEoBFIOU2VxdWVuY2VOdW1iZXISGgoITWVzc2FnZXMYAyADKAlSCE1lc3NhZ2VzEh4KClN0YWNrVHJhY2UYBCABKAlSClN0YWNrVHJhY2USRwoES2luZBgFIAEoDjIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkZhaWx1cmVLaW5kUgRLaW5kIq8BCiVHZXRDb25uZWN0ZWRDbGllbnRzRm9yT2JzZXJ2ZXJSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USHgoKT2JzZXJ2ZXJJZBgDIAEoCVIKT2JzZXJ2ZXJJZBIoCg9FdmVudFNlcXVlbmNlSWQYBCABKAlSD0V2ZW50U2VxdWVuY2VJZCJ6ChpHZXRGYWlsZWRQYXJ0aXRpb25zUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEh4KCk9ic2VydmVySWQYAyABKAlSCk9ic2VydmVySWQipwEKHUdldE9ic2VydmVySW5mb3JtYXRpb25SZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USHgoKT2JzZXJ2ZXJJZBgDIAEoCVIKT2JzZXJ2ZXJJZBIoCg9FdmVudFNlcXVlbmNlSWQYBCABKAlSD0V2ZW50U2VxdWVuY2VJZCK9AQoqR2V0UmVwbGF5YWJsZU9ic2VydmVyc0ZvckV2ZW50VHlwZXNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USUQoKRXZlbnRUeXBlcxgDIAMoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50VHlwZVIKRXZlbnRUeXBlcyJsChtJRW51bWVyYWJsZV9Db25uZWN0ZWRDbGllbnQSTQoFaXRlbXMYASADKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5Db25uZWN0ZWRDbGllbnRSBWl0ZW1zImwKG0lFbnVtZXJhYmxlX0ZhaWxlZFBhcnRpdGlvbhJNCgVpdGVtcxgBIAMoCzI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkZhaWxlZFBhcnRpdGlvblIFaXRlbXMidAofSUVudW1lcmFibGVfT2JzZXJ2ZXJJbmZvcm1hdGlvbhJRCgVpdGVtcxgBIAMoCzI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLk9ic2VydmVySW5mb3JtYXRpb25SBWl0ZW1zIs0FChNPYnNlcnZlckluZm9ybWF0aW9uEg4KAklkGAEgASgJUgJJZBIoCg9FdmVudFNlcXVlbmNlSWQYAiABKAlSD0V2ZW50U2VxdWVuY2VJZBJICgRUeXBlGAMgASgOMjQuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uT2JzZXJ2ZXJUeXBlUgRUeXBlEksKBU93bmVyGAQgASgOMjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uT2JzZXJ2ZXJPd25lclIFT3duZXISUQoKRXZlbnRUeXBlcxgFIAMoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50VHlwZVIKRXZlbnRUeXBlcxI4ChdOZXh0RXZlbnRTZXF1ZW5jZU51bWJlchgGIAEoBFIXTmV4dEV2ZW50U2VxdWVuY2VOdW1iZXISRgoeTGFzdEhhbmRsZWRFdmVudFNlcXVlbmNlTnVtYmVyGAcgASgEUh5MYXN0SGFuZGxlZEV2ZW50U2VxdWVuY2VOdW1iZXISYAoMUnVubmluZ1N0YXRlGAggASgOMjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uT2JzZXJ2ZXJSdW5uaW5nU3RhdGVSDFJ1bm5pbmdTdGF0ZRIiCgxJc1N1YnNjcmliZWQYCSABKAhSDElzU3Vic2NyaWJlZBIiCgxJc1JlcGxheWFibGUYCiABKAhSDElzUmVwbGF5YWJsZRI4ChdUYWlsRXZlbnRTZXF1ZW5jZU51bWJlchgLIAEoBFIXVGFpbEV2ZW50U2VxdWVuY2VOdW1iZXISLAoRSGFuZGxlZEV2ZW50Q291bnQYDCABKARSEUhhbmRsZWRFdmVudENvdW50IpABCgZSZXBsYXkSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIeCgpPYnNlcnZlcklkGAMgASgJUgpPYnNlcnZlcklkEigKD0V2ZW50U2VxdWVuY2VJZBgEIAEoCVIPRXZlbnRTZXF1ZW5jZUlkIrcBCg9SZXBsYXlQYXJ0aXRpb24SHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIeCgpPYnNlcnZlcklkGAMgASgJUgpPYnNlcnZlcklkEigKD0V2ZW50U2VxdWVuY2VJZBgEIAEoCVIPRXZlbnRTZXF1ZW5jZUlkEhwKCVBhcnRpdGlvbhgFIAEoCVIJUGFydGl0aW9uIiYKDlJlcGxheVJlc3BvbnNlEhQKBUpvYklkGAEgASgJUgVKb2JJZCK2AQoOUmV0cnlQYXJ0aXRpb24SHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIeCgpPYnNlcnZlcklkGAMgASgJUgpPYnNlcnZlcklkEigKD0V2ZW50U2VxdWVuY2VJZBgEIAEoCVIPRXZlbnRTZXF1ZW5jZUlkEhwKCVBhcnRpdGlvbhgFIAEoCVIJUGFydGl0aW9uIjIKGlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0EhQKBVZhbHVlGAEgASgJUgVWYWx1ZSLEAQogV2FpdEZvck9ic2VydmVyQ29tcGxldGlvblJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBI4ChdUYWlsRXZlbnRTZXF1ZW5jZU51bWJlchgEIAEoBFIXVGFpbEV2ZW50U2VxdWVuY2VOdW1iZXIipgEKIVdhaXRGb3JPYnNlcnZlckNvbXBsZXRpb25SZXNwb25zZRIcCglJc1N1Y2Nlc3MYASABKAhSCUlzU3VjY2VzcxJjChBGYWlsZWRQYXJ0aXRpb25zGAIgAygLMjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uRmFpbGVkUGFydGl0aW9uUhBGYWlsZWRQYXJ0aXRpb25zKmEKC0ZhaWx1cmVLaW5kEhgKFEZBSUxVUkVfS0lORF9Vbmtub3duEAASDAoISGFuZGxpbmcQARILCgdUaW1lb3V0EAISHQoZRkFJTFVSRV9LSU5EX0Rpc2Nvbm5lY3RlZBADKjEKDU9ic2VydmVyT3duZXISCAoETm9uZRAAEgoKBkNsaWVudBABEgoKBktlcm5lbBACKp4BChRPYnNlcnZlclJ1bm5pbmdTdGF0ZRIiCh5PQlNFUlZFUl9SVU5OSU5HX1NUQVRFX1Vua25vd24QABIKCgZBY3RpdmUQARINCglTdXNwZW5kZWQQAhINCglSZXBsYXlpbmcQAxInCiNPQlNFUlZFUl9SVU5OSU5HX1NUQVRFX0Rpc2Nvbm5lY3RlZBAEEg8KC1F1YXJhbnRpbmVkEAUqYQoMT2JzZXJ2ZXJUeXBlEhkKFU9CU0VSVkVSX1RZUEVfVW5rbm93bhAAEgsKB1JlYWN0b3IQARIOCgpQcm9qZWN0aW9uEAISCwoHUmVkdWNlchADEgwKCEV4dGVybmFsEAQy2gIKEEZhaWxlZFBhcnRpdGlvbnMSngEKE0dldEZhaWxlZFBhcnRpdGlvbnMSQi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5HZXRGYWlsZWRQYXJ0aXRpb25zUmVxdWVzdBpDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLklFbnVtZXJhYmxlX0ZhaWxlZFBhcnRpdGlvbhKkAQoXT2JzZXJ2ZUZhaWxlZFBhcnRpdGlvbnMSQi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5HZXRGYWlsZWRQYXJ0aXRpb25zUmVxdWVzdBpDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLklFbnVtZXJhYmxlX0ZhaWxlZFBhcnRpdGlvbjABMrELCglPYnNlcnZlcnMScgoXQ2xlYXJPYnNlcnZlclF1YXJhbnRpbmUSPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5DbGVhck9ic2VydmVyUXVhcmFudGluZRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRK0AQoeR2V0Q29ubmVjdGVkQ2xpZW50c0Zvck9ic2VydmVyEk0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uR2V0Q29ubmVjdGVkQ2xpZW50c0Zvck9ic2VydmVyUmVxdWVzdBpDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLklFbnVtZXJhYmxlX0Nvbm5lY3RlZENsaWVudBKcAQoWR2V0T2JzZXJ2ZXJJbmZvcm1hdGlvbhJFLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkdldE9ic2VydmVySW5mb3JtYXRpb25SZXF1ZXN0GjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uT2JzZXJ2ZXJJbmZvcm1hdGlvbhKUAQoMR2V0T2JzZXJ2ZXJzEjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uQWxsT2JzZXJ2ZXJzUmVxdWVzdBpHLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLklFbnVtZXJhYmxlX09ic2VydmVySW5mb3JtYXRpb24SwgEKI0dldFJlcGxheWFibGVPYnNlcnZlcnNGb3JFdmVudFR5cGVzElIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uR2V0UmVwbGF5YWJsZU9ic2VydmVyc0ZvckV2ZW50VHlwZXNSZXF1ZXN0GkcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uSUVudW1lcmFibGVfT2JzZXJ2ZXJJbmZvcm1hdGlvbhKaAQoQT2JzZXJ2ZU9ic2VydmVycxI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkFsbE9ic2VydmVyc1JlcXVlc3QaRy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5JRW51bWVyYWJsZV9PYnNlcnZlckluZm9ybWF0aW9uMAEScAoGUmVwbGF5Ei4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVwbGF5GjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVwbGF5UmVzcG9uc2USYgoPUmVwbGF5UGFydGl0aW9uEjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVwbGF5UGFydGl0aW9uGhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmAKDlJldHJ5UGFydGl0aW9uEjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmV0cnlQYXJ0aXRpb24aFi5nb29nbGUucHJvdG9idWYuRW1wdHkSqAEKEVdhaXRGb3JDb21wbGV0aW9uEkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2FpdEZvck9ic2VydmVyQ29tcGxldGlvblJlcXVlc3QaSS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XYWl0Rm9yT2JzZXJ2ZXJDb21wbGV0aW9uUmVzcG9uc2ViBnByb3RvMwqKDAopb2JzZXJ2YXRpb25fZXZlbnRzdG9yZXN1YnNjcmlwdGlvbnMucHJvdG8SPkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50U3RvcmVTdWJzY3JpcHRpb25zGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8i0QEKGkFkZEV2ZW50U3RvcmVTdWJzY3JpcHRpb25zEioKEFRhcmdldEV2ZW50U3RvcmUYASABKAlSEFRhcmdldEV2ZW50U3RvcmUShgEKDVN1YnNjcmlwdGlvbnMYAiADKAsyYC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5FdmVudFN0b3JlU3Vic2NyaXB0aW9ucy5FdmVudFN0b3JlU3Vic2NyaXB0aW9uRGVmaW5pdGlvblINU3Vic2NyaXB0aW9ucyLZAQogRXZlbnRTdG9yZVN1YnNjcmlwdGlvbkRlZmluaXRpb24SHgoKSWRlbnRpZmllchgBIAEoCVIKSWRlbnRpZmllchIqChBTb3VyY2VFdmVudFN0b3JlGAIgASgJUhBTb3VyY2VFdmVudFN0b3JlEmkKCkV2ZW50VHlwZXMYAyADKAsySS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5FdmVudFN0b3JlU3Vic2NyaXB0aW9ucy5FdmVudFR5cGVSCkV2ZW50VHlwZXMiWQoJRXZlbnRUeXBlEg4KAklkGAEgASgJUgJJZBIeCgpHZW5lcmF0aW9uGAIgASgNUgpHZW5lcmF0aW9uEhwKCVRvbWJzdG9uZRgDIAEoCFIJVG9tYnN0b25lIk8KIUdldEV2ZW50U3RvcmVTdWJzY3JpcHRpb25zUmVxdWVzdBIqChBUYXJnZXRFdmVudFN0b3JlGAEgASgJUhBUYXJnZXRFdmVudFN0b3JlIqYBCixJRW51bWVyYWJsZV9FdmVudFN0b3JlU3Vic2NyaXB0aW9uRGVmaW5pdGlvbhJ2CgVpdGVtcxgBIAMoCzJgLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50U3RvcmVTdWJzY3JpcHRpb25zLkV2ZW50U3RvcmVTdWJzY3JpcHRpb25EZWZpbml0aW9uUgVpdGVtcyJ1Ch1SZW1vdmVFdmVudFN0b3JlU3Vic2NyaXB0aW9ucxIqChBUYXJnZXRFdmVudFN0b3JlGAEgASgJUhBUYXJnZXRFdmVudFN0b3JlEigKD1N1YnNjcmlwdGlvbklkcxgCIAMoCVIPU3Vic2NyaXB0aW9uSWRzMvsDChdFdmVudFN0b3JlU3Vic2NyaXB0aW9ucxJ5CgNBZGQSWi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5FdmVudFN0b3JlU3Vic2NyaXB0aW9ucy5BZGRFdmVudFN0b3JlU3Vic2NyaXB0aW9ucxoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRLjAQoQR2V0U3Vic2NyaXB0aW9ucxJhLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50U3RvcmVTdWJzY3JpcHRpb25zLkdldEV2ZW50U3RvcmVTdWJzY3JpcHRpb25zUmVxdWVzdBpsLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50U3RvcmVTdWJzY3JpcHRpb25zLklFbnVtZXJhYmxlX0V2ZW50U3RvcmVTdWJzY3JpcHRpb25EZWZpbml0aW9uEn8KBlJlbW92ZRJdLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLkV2ZW50U3RvcmVTdWJzY3JpcHRpb25zLlJlbW92ZUV2ZW50U3RvcmVTdWJzY3JpcHRpb25zGhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5YgZwcm90bzMKmSYKGm9ic2VydmF0aW9uX3JlYWN0b3JzLnByb3RvEi9DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycxoWcHJvdG9idWYtbmV0L2JjbC5wcm90byLeAwoNQXBwZW5kZWRFdmVudBJXCgdDb250ZXh0GAEgASgLMj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuRXZlbnRDb250ZXh0UgdDb250ZXh0EhgKB0NvbnRlbnQYAiABKAlSB0NvbnRlbnQSKAoPT3JpZ2luYWxDb250ZW50GAMgASgJUg9PcmlnaW5hbENvbnRlbnQSXAoJUmV2aXNpb25zGAQgAygLMj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuRXZlbnRSZXZpc2lvblIJUmV2aXNpb25zEokBChNHZW5lcmF0aW9uYWxDb250ZW50GAUgAygLMlcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuQXBwZW5kZWRFdmVudC5HZW5lcmF0aW9uYWxDb250ZW50RW50cnlSE0dlbmVyYXRpb25hbENvbnRlbnQaRgoYR2VuZXJhdGlvbmFsQ29udGVudEVudHJ5EhAKA2tleRgBIAEoBVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEiswIKCUNhdXNhdGlvbhJnCghPY2N1cnJlZBgBIAEoCzJLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBISCgRUeXBlGAIgASgJUgRUeXBlEmoKClByb3BlcnRpZXMYAyADKAsySi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5DYXVzYXRpb24uUHJvcGVydGllc0VudHJ5UgpQcm9wZXJ0aWVzGj0KD1Byb3BlcnRpZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBItUGCgxFdmVudENvbnRleHQSWAoJRXZlbnRUeXBlGAEgASgLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuRXZlbnRUeXBlUglFdmVudFR5cGUSKAoPRXZlbnRTb3VyY2VUeXBlGAIgASgJUg9FdmVudFNvdXJjZVR5cGUSJAoNRXZlbnRTb3VyY2VJZBgDIAEoCVINRXZlbnRTb3VyY2VJZBImCg5TZXF1ZW5jZU51bWJlchgEIAEoBFIOU2VxdWVuY2VOdW1iZXISKAoPRXZlbnRTdHJlYW1UeXBlGAUgASgJUg9FdmVudFN0cmVhbVR5cGUSJAoNRXZlbnRTdHJlYW1JZBgGIAEoCVINRXZlbnRTdHJlYW1JZBJnCghPY2N1cnJlZBgHIAEoCzJLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBIeCgpFdmVudFN0b3JlGAggASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgJIAEoCVIJTmFtZXNwYWNlEi8KDUNvcnJlbGF0aW9uSWQYCiABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBJYCglDYXVzYXRpb24YCyADKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5DYXVzYXRpb25SCUNhdXNhdGlvbhJVCghDYXVzZWRCeRgMIAEoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLklkZW50aXR5UghDYXVzZWRCeRJyChBPYnNlcnZhdGlvblN0YXRlGA0gASgOMkYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuRXZlbnRPYnNlcnZhdGlvblN0YXRlUhBPYnNlcnZhdGlvblN0YXRlEhIKBFRhZ3MYDiADKAlSBFRhZ3MSEgoESGFzaBgPIAEoCVIESGFzaCKvAgoNRXZlbnRSZXZpc2lvbhIeCgpHZW5lcmF0aW9uGAEgASgNUgpHZW5lcmF0aW9uEiQKDUNvcnJlbGF0aW9uSWQYAiABKAlSDUNvcnJlbGF0aW9uSWQSVQoIQ2F1c2VkQnkYAyABKAsyOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5JZGVudGl0eVIIQ2F1c2VkQnkSZwoIT2NjdXJyZWQYBCABKAsySy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSGAoHQ29udGVudBgFIAEoCVIHQ29udGVudCJZCglFdmVudFR5cGUSDgoCSWQYASABKAlSAklkEh4KCkdlbmVyYXRpb24YAiABKA1SCkdlbmVyYXRpb24SHAoJVG9tYnN0b25lGAMgASgIUglUb21ic3RvbmUiiAEKGkV2ZW50VHlwZVdpdGhLZXlFeHByZXNzaW9uElgKCUV2ZW50VHlwZRgBIAEoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLkV2ZW50VHlwZVIJRXZlbnRUeXBlEhAKA0tleRgCIAEoCVIDS2V5IucBCg9FdmVudHNUb09ic2VydmUSHAoJUGFydGl0aW9uGAEgASgJUglQYXJ0aXRpb24SVgoGRXZlbnRzGAIgAygLMj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuQXBwZW5kZWRFdmVudFIGRXZlbnRzEl4KC1JlcGxheVN0YXRlGAMgASgOMjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuUmVwbGF5U3RhdGVSC1JlcGxheVN0YXRlIm8KEUhhc1JlYWN0b3JSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USHAoJUmVhY3RvcklkGAMgASgJUglSZWFjdG9ySWQiVgoSSGFzUmVhY3RvclJlc3BvbnNlEhYKBkV4aXN0cxgBIAEoCFIGRXhpc3RzEigKD0V2ZW50U2VxdWVuY2VJZBgCIAEoCVIPRXZlbnRTZXF1ZW5jZUlkIq8BCghJZGVudGl0eRIYCgdTdWJqZWN0GAEgASgJUgdTdWJqZWN0EhIKBE5hbWUYAiABKAlSBE5hbWUSGgoIVXNlck5hbWUYAyABKAlSCFVzZXJOYW1lElkKCk9uQmVoYWxmT2YYBCABKAsyOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5JZGVudGl0eVIKT25CZWhhbGZPZiKFAQoPT2JzZXJ2ZXJGaWx0ZXJzEh4KCkZpbHRlclRhZ3MYASADKAlSCkZpbHRlclRhZ3MSKAoPRXZlbnRTb3VyY2VUeXBlGAIgASgJUg9FdmVudFNvdXJjZVR5cGUSKAoPRXZlbnRTdHJlYW1UeXBlGAMgASgJUg9FdmVudFN0cmVhbVR5cGUi1wEKI09uZU9mX1JlZ2lzdGVyUmVhY3Rvcl9SZWFjdG9yUmVzdWx0ElgKBlZhbHVlMBgBIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLlJlZ2lzdGVyUmVhY3RvclIGVmFsdWUwElYKBlZhbHVlMRgCIAEoCzI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLlJlYWN0b3JSZXN1bHRSBlZhbHVlMSLcAgoRUmVhY3RvckRlZmluaXRpb24SHAoJUmVhY3RvcklkGAEgASgJUglSZWFjdG9ySWQSKAoPRXZlbnRTZXF1ZW5jZUlkGAIgASgJUg9FdmVudFNlcXVlbmNlSWQSawoKRXZlbnRUeXBlcxgDIAMoCzJLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLkV2ZW50VHlwZVdpdGhLZXlFeHByZXNzaW9uUgpFdmVudFR5cGVzEiIKDElzUmVwbGF5YWJsZRgEIAEoCFIMSXNSZXBsYXlhYmxlEhIKBFRhZ3MYBSADKAlSBFRhZ3MSWgoHRmlsdGVycxgGIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLk9ic2VydmVyRmlsdGVyc1IHRmlsdGVycyKAAQoOUmVhY3Rvck1lc3NhZ2USbgoHQ29udGVudBgBIAEoCzJULkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLk9uZU9mX1JlZ2lzdGVyUmVhY3Rvcl9SZWFjdG9yUmVzdWx0UgdDb250ZW50IqQCCg1SZWFjdG9yUmVzdWx0EhwKCVBhcnRpdGlvbhgBIAEoCVIJUGFydGl0aW9uElcKBVN0YXRlGAIgASgOMkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuT2JzZXJ2YXRpb25TdGF0ZVIFU3RhdGUSPAoZTGFzdFN1Y2Nlc3NmdWxPYnNlcnZhdGlvbhgDIAEoBFIZTGFzdFN1Y2Nlc3NmdWxPYnNlcnZhdGlvbhIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZSLRAQoPUmVnaXN0ZXJSZWFjdG9yEiIKDENvbm5lY3Rpb25JZBgBIAEoCVIMQ29ubmVjdGlvbklkEh4KCkV2ZW50U3RvcmUYAiABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAMgASgJUglOYW1lc3BhY2USXAoHUmVhY3RvchgEIAEoCzJCLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLlJlYWN0b3JEZWZpbml0aW9uUgdSZWFjdG9yIjIKGlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0EhQKBVZhbHVlGAEgASgJUgVWYWx1ZSpSChVFdmVudE9ic2VydmF0aW9uU3RhdGUSIAocRVZFTlRfT0JTRVJWQVRJT05fU1RBVEVfTm9uZRAAEgsKB0luaXRpYWwQARIKCgZSZXBsYXkQAipHChBPYnNlcnZhdGlvblN0YXRlEhoKFk9CU0VSVkFUSU9OX1NUQVRFX05vbmUQABILCgdTdWNjZXNzEAESCgoGRmFpbGVkEAIqdgoLUmVwbGF5U3RhdGUSFQoRUkVQTEFZX1NUQVRFX05vbmUQABIPCgtCZWdpblJlcGxheRABEg0KCUVuZFJlcGxheRACEhgKFEJlZ2luUmVwbGF5UGFydGl0aW9uEAMSFgoSRW5kUmVwbGF5UGFydGl0aW9uEAQytQIKCFJlYWN0b3JzEpUBCgpIYXNSZWFjdG9yEkIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVhY3RvcnMuSGFzUmVhY3RvclJlcXVlc3QaQy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5IYXNSZWFjdG9yUmVzcG9uc2USkAEKB09ic2VydmUSPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWFjdG9ycy5SZWFjdG9yTWVzc2FnZRpALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlYWN0b3JzLkV2ZW50c1RvT2JzZXJ2ZSgBMAFiBnByb3RvMwqoJAoab2JzZXJ2YXRpb25fcmVkdWNlcnMucHJvdG8SL0NyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvIt4DCg1BcHBlbmRlZEV2ZW50ElcKB0NvbnRleHQYASABKAsyPS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5FdmVudENvbnRleHRSB0NvbnRleHQSGAoHQ29udGVudBgCIAEoCVIHQ29udGVudBIoCg9PcmlnaW5hbENvbnRlbnQYAyABKAlSD09yaWdpbmFsQ29udGVudBJcCglSZXZpc2lvbnMYBCADKAsyPi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5FdmVudFJldmlzaW9uUglSZXZpc2lvbnMSiQEKE0dlbmVyYXRpb25hbENvbnRlbnQYBSADKAsyVy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5BcHBlbmRlZEV2ZW50LkdlbmVyYXRpb25hbENvbnRlbnRFbnRyeVITR2VuZXJhdGlvbmFsQ29udGVudBpGChhHZW5lcmF0aW9uYWxDb250ZW50RW50cnkSEAoDa2V5GAEgASgFUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASKzAgoJQ2F1c2F0aW9uEmcKCE9jY3VycmVkGAEgASgLMksuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEhIKBFR5cGUYAiABKAlSBFR5cGUSagoKUHJvcGVydGllcxgDIAMoCzJKLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLkNhdXNhdGlvbi5Qcm9wZXJ0aWVzRW50cnlSClByb3BlcnRpZXMaPQoPUHJvcGVydGllc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEi1QYKDEV2ZW50Q29udGV4dBJYCglFdmVudFR5cGUYASABKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5FdmVudFR5cGVSCUV2ZW50VHlwZRIoCg9FdmVudFNvdXJjZVR5cGUYAiABKAlSD0V2ZW50U291cmNlVHlwZRIkCg1FdmVudFNvdXJjZUlkGAMgASgJUg1FdmVudFNvdXJjZUlkEiYKDlNlcXVlbmNlTnVtYmVyGAQgASgEUg5TZXF1ZW5jZU51bWJlchIoCg9FdmVudFN0cmVhbVR5cGUYBSABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAYgASgJUg1FdmVudFN0cmVhbUlkEmcKCE9jY3VycmVkGAcgASgLMksuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEh4KCkV2ZW50U3RvcmUYCCABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAkgASgJUglOYW1lc3BhY2USLwoNQ29ycmVsYXRpb25JZBgKIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkElgKCUNhdXNhdGlvbhgLIAMoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLkNhdXNhdGlvblIJQ2F1c2F0aW9uElUKCENhdXNlZEJ5GAwgASgLMjkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuSWRlbnRpdHlSCENhdXNlZEJ5EnIKEE9ic2VydmF0aW9uU3RhdGUYDSABKA4yRi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5FdmVudE9ic2VydmF0aW9uU3RhdGVSEE9ic2VydmF0aW9uU3RhdGUSEgoEVGFncxgOIAMoCVIEVGFncxISCgRIYXNoGA8gASgJUgRIYXNoIq8CCg1FdmVudFJldmlzaW9uEh4KCkdlbmVyYXRpb24YASABKA1SCkdlbmVyYXRpb24SJAoNQ29ycmVsYXRpb25JZBgCIAEoCVINQ29ycmVsYXRpb25JZBJVCghDYXVzZWRCeRgDIAEoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLklkZW50aXR5UghDYXVzZWRCeRJnCghPY2N1cnJlZBgEIAEoCzJLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBIYCgdDb250ZW50GAUgASgJUgdDb250ZW50IlkKCUV2ZW50VHlwZRIOCgJJZBgBIAEoCVICSWQSHgoKR2VuZXJhdGlvbhgCIAEoDVIKR2VuZXJhdGlvbhIcCglUb21ic3RvbmUYAyABKAhSCVRvbWJzdG9uZSKIAQoaRXZlbnRUeXBlV2l0aEtleUV4cHJlc3Npb24SWAoJRXZlbnRUeXBlGAEgASgLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuRXZlbnRUeXBlUglFdmVudFR5cGUSEAoDS2V5GAIgASgJUgNLZXkirwEKCElkZW50aXR5EhgKB1N1YmplY3QYASABKAlSB1N1YmplY3QSEgoETmFtZRgCIAEoCVIETmFtZRIaCghVc2VyTmFtZRgDIAEoCVIIVXNlck5hbWUSWQoKT25CZWhhbGZPZhgEIAEoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLklkZW50aXR5UgpPbkJlaGFsZk9mIoUBCg9PYnNlcnZlckZpbHRlcnMSHgoKRmlsdGVyVGFncxgBIAMoCVIKRmlsdGVyVGFncxIoCg9FdmVudFNvdXJjZVR5cGUYAiABKAlSD0V2ZW50U291cmNlVHlwZRIoCg9FdmVudFN0cmVhbVR5cGUYAyABKAlSD0V2ZW50U3RyZWFtVHlwZSLXAQojT25lT2ZfUmVnaXN0ZXJSZWR1Y2VyX1JlZHVjZXJSZXN1bHQSWAoGVmFsdWUwGAEgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuUmVnaXN0ZXJSZWR1Y2VyUgZWYWx1ZTASVgoGVmFsdWUxGAIgASgLMj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuUmVkdWNlclJlc3VsdFIGVmFsdWUxIpICChZSZWR1Y2VPcGVyYXRpb25NZXNzYWdlEhwKCVBhcnRpdGlvbhgBIAEoCVIJUGFydGl0aW9uEiIKDEluaXRpYWxTdGF0ZRgCIAEoCVIMSW5pdGlhbFN0YXRlElYKBkV2ZW50cxgDIAMoCzI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLkFwcGVuZGVkRXZlbnRSBkV2ZW50cxJeCgtSZXBsYXlTdGF0ZRgEIAEoDjI8LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLlJlcGxheVN0YXRlUgtSZXBsYXlTdGF0ZSLyAgoRUmVkdWNlckRlZmluaXRpb24SHAoJUmVkdWNlcklkGAEgASgJUglSZWR1Y2VySWQSKAoPRXZlbnRTZXF1ZW5jZUlkGAIgASgJUg9FdmVudFNlcXVlbmNlSWQSawoKRXZlbnRUeXBlcxgDIAMoCzJLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLkV2ZW50VHlwZVdpdGhLZXlFeHByZXNzaW9uUgpFdmVudFR5cGVzEhwKCVJlYWRNb2RlbBgEIAEoCVIJUmVhZE1vZGVsEhoKCElzQWN0aXZlGAUgASgIUghJc0FjdGl2ZRISCgRUYWdzGAcgAygJUgRUYWdzEloKB0ZpbHRlcnMYCCABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5PYnNlcnZlckZpbHRlcnNSB0ZpbHRlcnMigAEKDlJlZHVjZXJNZXNzYWdlEm4KB0NvbnRlbnQYASABKAsyVC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5PbmVPZl9SZWdpc3RlclJlZHVjZXJfUmVkdWNlclJlc3VsdFIHQ29udGVudCLMAgoNUmVkdWNlclJlc3VsdBIcCglQYXJ0aXRpb24YASABKAlSCVBhcnRpdGlvbhJXCgVTdGF0ZRgCIAEoDjJBLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLk9ic2VydmF0aW9uU3RhdGVSBVN0YXRlEjwKGUxhc3RTdWNjZXNzZnVsT2JzZXJ2YXRpb24YAyABKARSGUxhc3RTdWNjZXNzZnVsT2JzZXJ2YXRpb24SLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USJgoOUmVhZE1vZGVsU3RhdGUYBiABKAlSDlJlYWRNb2RlbFN0YXRlItEBCg9SZWdpc3RlclJlZHVjZXISIgoMQ29ubmVjdGlvbklkGAEgASgJUgxDb25uZWN0aW9uSWQSHgoKRXZlbnRTdG9yZRgCIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAyABKAlSCU5hbWVzcGFjZRJcCgdSZWR1Y2VyGAQgASgLMkIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uUmVkdWNlcnMuUmVkdWNlckRlZmluaXRpb25SB1JlZHVjZXIiMgoaU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXQSFAoFVmFsdWUYASABKAlSBVZhbHVlKlIKFUV2ZW50T2JzZXJ2YXRpb25TdGF0ZRIgChxFVkVOVF9PQlNFUlZBVElPTl9TVEFURV9Ob25lEAASCwoHSW5pdGlhbBABEgoKBlJlcGxheRACKkcKEE9ic2VydmF0aW9uU3RhdGUSGgoWT0JTRVJWQVRJT05fU1RBVEVfTm9uZRAAEgsKB1N1Y2Nlc3MQARIKCgZGYWlsZWQQAip2CgtSZXBsYXlTdGF0ZRIVChFSRVBMQVlfU1RBVEVfTm9uZRAAEg8KC0JlZ2luUmVwbGF5EAESDQoJRW5kUmVwbGF5EAISGAoUQmVnaW5SZXBsYXlQYXJ0aXRpb24QAxIWChJFbmRSZXBsYXlQYXJ0aXRpb24QBDKkAQoIUmVkdWNlcnMSlwEKB09ic2VydmUSPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5SZWR1Y2Vycy5SZWR1Y2VyTWVzc2FnZRpHLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLlJlZHVjZXJzLlJlZHVjZU9wZXJhdGlvbk1lc3NhZ2UoATABYgZwcm90bzMKwyoKGm9ic2VydmF0aW9uX3dlYmhvb2tzLnByb3RvEi9DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcxoWcHJvdG9idWYtbmV0L2JjbC5wcm90byKiBgoRQWRkV2ViaG9va1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRISCgROYW1lGAIgASgJUgROYW1lEhAKA1VybBgDIAEoCVIDVXJsEigKD0V2ZW50U2VxdWVuY2VJZBgEIAEoCVIPRXZlbnRTZXF1ZW5jZUlkEloKCkV2ZW50VHlwZXMYBSADKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5FdmVudFR5cGVSCkV2ZW50VHlwZXMScAoRQXV0aG9yaXphdGlvblR5cGUYBiABKA4yQi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5BdXRob3JpemF0aW9uVHlwZVIRQXV0aG9yaXphdGlvblR5cGUSJAoNQmFzaWNVc2VybmFtZRgHIAEoCVINQmFzaWNVc2VybmFtZRIkCg1CYXNpY1Bhc3N3b3JkGAggASgJUg1CYXNpY1Bhc3N3b3JkEiAKC0JlYXJlclRva2VuGAkgASgJUgtCZWFyZXJUb2tlbhImCg5PQXV0aEF1dGhvcml0eRgKIAEoCVIOT0F1dGhBdXRob3JpdHkSJAoNT0F1dGhDbGllbnRJZBgLIAEoCVINT0F1dGhDbGllbnRJZBIsChFPQXV0aENsaWVudFNlY3JldBgMIAEoCVIRT0F1dGhDbGllbnRTZWNyZXQSaQoHSGVhZGVycxgNIAMoCzJPLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLkFkZFdlYmhvb2tSZXF1ZXN0LkhlYWRlcnNFbnRyeVIHSGVhZGVycxIiCgxJc1JlcGxheWFibGUYDiABKAhSDElzUmVwbGF5YWJsZRIaCghJc0FjdGl2ZRgPIAEoCFIISXNBY3RpdmUaOgoMSGVhZGVyc0VudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEilAEKEkFkZFdlYmhvb2tzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEl4KCFdlYmhvb2tzGAIgAygLMkIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuV2ViaG9va0RlZmluaXRpb25SCFdlYmhvb2tzIkwKEkJhc2ljQXV0aG9yaXphdGlvbhIaCghVc2VybmFtZRgBIAEoCVIIVXNlcm5hbWUSGgoIUGFzc3dvcmQYAiABKAlSCFBhc3N3b3JkIjAKGEJlYXJlclRva2VuQXV0aG9yaXphdGlvbhIUCgVUb2tlbhgBIAEoCVIFVG9rZW4i9QIKDUNvbW1hbmRSZXN1bHQSLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEm8KEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uIlkKCUV2ZW50VHlwZRIOCgJJZBgBIAEoCVICSWQSHgoKR2VuZXJhdGlvbhgCIAEoDVIKR2VuZXJhdGlvbhIcCglUb21ic3RvbmUYAyABKAhSCVRvbWJzdG9uZSI0ChJHZXRXZWJob29rc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSJyChJPQXV0aEF1dGhvcml6YXRpb24SHAoJQXV0aG9yaXR5GAEgASgJUglBdXRob3JpdHkSGgoIQ2xpZW50SWQYAiABKAlSCENsaWVudElkEiIKDENsaWVudFNlY3JldBgDIAEoCVIMQ2xpZW50U2VjcmV0IjgKFk9ic2VydmVXZWJob29rc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZSLjAgpET25lT2ZfQmFzaWNBdXRob3JpemF0aW9uX0JlYXJlclRva2VuQXV0aG9yaXphdGlvbl9PQXV0aEF1dGhvcml6YXRpb24SWwoGVmFsdWUwGAEgASgLMkMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuQmFzaWNBdXRob3JpemF0aW9uUgZWYWx1ZTASYQoGVmFsdWUxGAIgASgLMkkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuQmVhcmVyVG9rZW5BdXRob3JpemF0aW9uUgZWYWx1ZTESWwoGVmFsdWUyGAMgASgLMkMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuT0F1dGhBdXRob3JpemF0aW9uUgZWYWx1ZTIiswMKLlF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX1dlYmhvb2tEZXRhaWxzUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEm8KEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USWwoERGF0YRgGIAMoCzJHLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLldlYmhvb2tEZXRhaWxzUmVzcG9uc2VSBERhdGEiVAoUUmVtb3ZlV2ViaG9va1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglXZWJob29rSWQYAiABKAlSCVdlYmhvb2tJZCJTChVSZW1vdmVXZWJob29rc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIaCghXZWJob29rcxgCIAMoCVIIV2ViaG9va3MirQEKEFZhbGlkYXRpb25SZXN1bHQSZQoIU2V2ZXJpdHkYASABKA4ySS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5WYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHlSCFNldmVyaXR5EhgKB01lc3NhZ2UYAiABKAlSB01lc3NhZ2USGAoHTWVtYmVycxgDIAMoCVIHTWVtYmVycyLRAgoRV2ViaG9va0RlZmluaXRpb24SKAoPRXZlbnRTZXF1ZW5jZUlkGAEgASgJUg9FdmVudFNlcXVlbmNlSWQSHgoKSWRlbnRpZmllchgCIAEoCVIKSWRlbnRpZmllchJaCgpFdmVudFR5cGVzGAMgAygLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuRXZlbnRUeXBlUgpFdmVudFR5cGVzElYKBlRhcmdldBgEIAEoCzI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLldlYmhvb2tUYXJnZXRSBlRhcmdldBIiCgxJc1JlcGxheWFibGUYBSABKAhSDElzUmVwbGF5YWJsZRIaCghJc0FjdGl2ZRgGIAEoCFIISXNBY3RpdmUivgQKFldlYmhvb2tEZXRhaWxzUmVzcG9uc2USHgoKSWRlbnRpZmllchgBIAEoCVIKSWRlbnRpZmllchIQCgNVcmwYAiABKAlSA1VybBIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBJaCgpFdmVudFR5cGVzGAQgAygLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuRXZlbnRUeXBlUgpFdmVudFR5cGVzEnAKEUF1dGhvcml6YXRpb25UeXBlGAUgASgOMkIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuQXV0aG9yaXphdGlvblR5cGVSEUF1dGhvcml6YXRpb25UeXBlEm4KB0hlYWRlcnMYBiADKAsyVC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5XZWJob29rRGV0YWlsc1Jlc3BvbnNlLkhlYWRlcnNFbnRyeVIHSGVhZGVycxIiCgxJc1JlcGxheWFibGUYByABKAhSDElzUmVwbGF5YWJsZRIaCghJc0FjdGl2ZRgIIAEoCFIISXNBY3RpdmUSDgoCSWQYCSABKAlSAklkGjoKDEhlYWRlcnNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBIuICCg1XZWJob29rVGFyZ2V0EhAKA1VybBgBIAEoCVIDVXJsEpsBCg1BdXRob3JpemF0aW9uGAIgASgLMnUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuT25lT2ZfQmFzaWNBdXRob3JpemF0aW9uX0JlYXJlclRva2VuQXV0aG9yaXphdGlvbl9PQXV0aEF1dGhvcml6YXRpb25SDUF1dGhvcml6YXRpb24SZQoHSGVhZGVycxgDIAMoCzJLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLldlYmhvb2tUYXJnZXQuSGVhZGVyc0VudHJ5UgdIZWFkZXJzGjoKDEhlYWRlcnNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBKj8KEUF1dGhvcml6YXRpb25UeXBlEggKBE5vbmUQABIJCgVCYXNpYxABEgoKBkJlYXJlchACEgkKBU9BdXRoEAMqUAoYVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5EgsKB1Vua25vd24QABIPCgtJbmZvcm1hdGlvbhABEgsKB1dhcm5pbmcQAhIJCgVFcnJvchADMtwHCghXZWJob29rcxKQAQoKQWRkV2ViaG9vaxJCLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLkFkZFdlYmhvb2tSZXF1ZXN0Gj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuQ29tbWFuZFJlc3VsdBKSAQoLQWRkV2ViaG9va3MSQy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5BZGRXZWJob29rc1JlcXVlc3QaPi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5Db21tYW5kUmVzdWx0ErMBCgtHZXRXZWJob29rcxJDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLkdldFdlYmhvb2tzUmVxdWVzdBpfLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLlF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX1dlYmhvb2tEZXRhaWxzUmVzcG9uc2USvQEKD09ic2VydmVXZWJob29rcxJHLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLk9ic2VydmVXZWJob29rc1JlcXVlc3QaXy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9XZWJob29rRGV0YWlsc1Jlc3BvbnNlMAESlgEKDVJlbW92ZVdlYmhvb2sSRS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5PYnNlcnZhdGlvbi5XZWJob29rcy5SZW1vdmVXZWJob29rUmVxdWVzdBo+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLk9ic2VydmF0aW9uLldlYmhvb2tzLkNvbW1hbmRSZXN1bHQSmAEKDlJlbW92ZVdlYmhvb2tzEkYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuUmVtb3ZlV2ViaG9va3NSZXF1ZXN0Gj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuT2JzZXJ2YXRpb24uV2ViaG9va3MuQ29tbWFuZFJlc3VsdGIGcHJvdG8zCqEdCg5wYXR0ZXJucy5wcm90bxIjQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMaFnByb3RvYnVmLW5ldC9iY2wucHJvdG8iVwoXQWxsUGF0dGVyblNjb3Blc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZSJSChJBbGxQYXR0ZXJuc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZSLIBAoeQmVoYXZpb3JQYXR0ZXJuRGV0YWlsc1Jlc3BvbnNlEg4KAklkGAEgASgJUgJJZBIgCgtHcm91cGluZ0tleRgCIAEoCVILR3JvdXBpbmdLZXkSZwoGRmFjZXRzGAMgAygLMk8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuQmVoYXZpb3JQYXR0ZXJuRGV0YWlsc1Jlc3BvbnNlLkZhY2V0c0VudHJ5UgZGYWNldHMSHgoKQ29uZmlkZW5jZRgEIAEoAVIKQ29uZmlkZW5jZRIYCgdTdXBwb3J0GAUgASgBUgdTdXBwb3J0EiAKC09jY3VycmVuY2VzGAYgASgDUgtPY2N1cnJlbmNlcxIWCgZXZWlnaHQYByABKAFSBldlaWdodBIgCgtTcGVjaWZpY2l0eRgIIAEoBVILU3BlY2lmaWNpdHkSXQoJRmlyc3RTZWVuGAkgASgLMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCUZpcnN0U2VlbhJbCghMYXN0U2VlbhgKIAEoCzI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlBhdHRlcm5zLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghMYXN0U2Vlbho5CgtGYWNldHNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBIvACChdNYXRjaGluZ1BhdHRlcm5zUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEiAKC0dyb3VwaW5nS2V5GAMgASgJUgtHcm91cGluZ0tleRJjCgdDb250ZXh0GAQgAygLMkkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuTWF0Y2hpbmdQYXR0ZXJuc1JlcXVlc3QuQ29udGV4dEVudHJ5UgdDb250ZXh0EiwKEU1pbmltdW1Db25maWRlbmNlGAUgASgBUhFNaW5pbXVtQ29uZmlkZW5jZRImCg5NYXhpbXVtUmVzdWx0cxgGIAEoBVIOTWF4aW11bVJlc3VsdHMaOgoMQ29udGV4dEVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EhQKBXZhbHVlGAIgASgJUgV2YWx1ZToCOAEiJgoUUGF0dGVyblNjb3BlUmVzcG9uc2USDgoCSWQYASABKAlSAklkInkKF1BhdHRlcm5zRm9yU2NvcGVSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USIAoLR3JvdXBpbmdLZXkYAyABKAlSC0dyb3VwaW5nS2V5IqsDCjZRdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9CZWhhdmlvclBhdHRlcm5EZXRhaWxzUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmMKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USVwoERGF0YRgGIAMoCzJDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlBhdHRlcm5zLkJlaGF2aW9yUGF0dGVybkRldGFpbHNSZXNwb25zZVIERGF0YSKXAwosUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfUGF0dGVyblNjb3BlUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmMKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USTQoERGF0YRgGIAMoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlBhdHRlcm5zLlBhdHRlcm5TY29wZVJlc3BvbnNlUgREYXRhIjIKGlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0EhQKBVZhbHVlGAEgASgJUgVWYWx1ZSLoAgoTVXN1YWxBY3Rpb25zUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEiAKC0dyb3VwaW5nS2V5GAMgASgJUgtHcm91cGluZ0tleRJfCgdDb250ZXh0GAQgAygLMkUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuVXN1YWxBY3Rpb25zUmVxdWVzdC5Db250ZXh0RW50cnlSB0NvbnRleHQSLAoRTWluaW11bUNvbmZpZGVuY2UYBSABKAFSEU1pbmltdW1Db25maWRlbmNlEiYKDk1heGltdW1SZXN1bHRzGAYgASgFUg5NYXhpbXVtUmVzdWx0cxo6CgxDb250ZXh0RW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASKhAQoQVmFsaWRhdGlvblJlc3VsdBJZCghTZXZlcml0eRgBIAEoDjI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlBhdHRlcm5zLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKlAKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRILCgdVbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzLeBgoIUGF0dGVybnMSowEKC0FsbFBhdHRlcm5zEjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuQWxsUGF0dGVybnNSZXF1ZXN0GlsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfQmVoYXZpb3JQYXR0ZXJuRGV0YWlsc1Jlc3BvbnNlEqMBChBBbGxQYXR0ZXJuU2NvcGVzEjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuQWxsUGF0dGVyblNjb3Blc1JlcXVlc3QaUS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5QYXR0ZXJucy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9QYXR0ZXJuU2NvcGVSZXNwb25zZRKtAQoQTWF0Y2hpbmdQYXR0ZXJucxI8LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlBhdHRlcm5zLk1hdGNoaW5nUGF0dGVybnNSZXF1ZXN0GlsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfQmVoYXZpb3JQYXR0ZXJuRGV0YWlsc1Jlc3BvbnNlEq0BChBQYXR0ZXJuc0ZvclNjb3BlEjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUGF0dGVybnMuUGF0dGVybnNGb3JTY29wZVJlcXVlc3QaWy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5QYXR0ZXJucy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9CZWhhdmlvclBhdHRlcm5EZXRhaWxzUmVzcG9uc2USpQEKDFVzdWFsQWN0aW9ucxI4LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlBhdHRlcm5zLlVzdWFsQWN0aW9uc1JlcXVlc3QaWy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5QYXR0ZXJucy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9CZWhhdmlvclBhdHRlcm5EZXRhaWxzUmVzcG9uc2ViBnByb3RvMwqhEQoWcHJvamVjdGlvbmVkaXRvci5wcm90bxIrQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbkVkaXRvchoWcHJvdG9idWYtbmV0L2JjbC5wcm90byL7AwotQ29tbWFuZFJlc3VsdF9HZW5lcmF0ZURlY2xhcmF0aXZlQ29kZVJlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJrChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25FZGl0b3IuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uEmgKCFJlc3BvbnNlGAcgASgLMkwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbkVkaXRvci5HZW5lcmF0ZURlY2xhcmF0aXZlQ29kZVJlc3BvbnNlUghSZXNwb25zZSKQAQoORHJhZnRSZWFkTW9kZWwSHgoKSWRlbnRpZmllchgBIAEoCVIKSWRlbnRpZmllchIgCgtEaXNwbGF5TmFtZRgCIAEoCVILRGlzcGxheU5hbWUSJAoNQ29udGFpbmVyTmFtZRgDIAEoCVINQ29udGFpbmVyTmFtZRIWCgZTY2hlbWEYBCABKAlSBlNjaGVtYSKBAgoeR2VuZXJhdGVEZWNsYXJhdGl2ZUNvZGVSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USIAoLRGVjbGFyYXRpb24YAyABKAlSC0RlY2xhcmF0aW9uEmMKDkRyYWZ0UmVhZE1vZGVsGAQgASgLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbkVkaXRvci5EcmFmdFJlYWRNb2RlbFIORHJhZnRSZWFkTW9kZWwSGgoITGFuZ3VhZ2UYBSABKAlSCExhbmd1YWdlIpwBCh9HZW5lcmF0ZURlY2xhcmF0aXZlQ29kZVJlc3BvbnNlEhIKBENvZGUYASABKAlSBENvZGUSZQoGRXJyb3JzGAIgAygLMk0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbkVkaXRvci5Qcm9qZWN0aW9uRGVjbGFyYXRpb25TeW50YXhFcnJvclIGRXJyb3JzIoACCh1HZW5lcmF0ZU1vZGVsQm91bmRDb2RlUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEiAKC0RlY2xhcmF0aW9uGAMgASgJUgtEZWNsYXJhdGlvbhJjCg5EcmFmdFJlYWRNb2RlbBgEIAEoCzI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25FZGl0b3IuRHJhZnRSZWFkTW9kZWxSDkRyYWZ0UmVhZE1vZGVsEhoKCExhbmd1YWdlGAUgASgJUghMYW5ndWFnZSJoCiBQcm9qZWN0aW9uRGVjbGFyYXRpb25TeW50YXhFcnJvchIYCgdNZXNzYWdlGAEgASgJUgdNZXNzYWdlEhIKBExpbmUYAiABKAVSBExpbmUSFgoGQ29sdW1uGAMgASgFUgZDb2x1bW4iqQEKEFZhbGlkYXRpb25SZXN1bHQSYQoIU2V2ZXJpdHkYASABKA4yRS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9uRWRpdG9yLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKlAKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRILCgdVbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzKaAwoQUHJvamVjdGlvbkVkaXRvchLCAQoXR2VuZXJhdGVEZWNsYXJhdGl2ZUNvZGUSSy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9uRWRpdG9yLkdlbmVyYXRlRGVjbGFyYXRpdmVDb2RlUmVxdWVzdBpaLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25FZGl0b3IuQ29tbWFuZFJlc3VsdF9HZW5lcmF0ZURlY2xhcmF0aXZlQ29kZVJlc3BvbnNlEsABChZHZW5lcmF0ZU1vZGVsQm91bmRDb2RlEkouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbkVkaXRvci5HZW5lcmF0ZU1vZGVsQm91bmRDb2RlUmVxdWVzdBpaLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25FZGl0b3IuQ29tbWFuZFJlc3VsdF9HZW5lcmF0ZURlY2xhcmF0aXZlQ29kZVJlc3BvbnNlYgZwcm90bzMKsUoKEXByb2plY3Rpb25zLnByb3RvEiZDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucxobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvIvAJChJDaGlsZHJlbkRlZmluaXRpb24SIgoMSWRlbnRpZmllZEJ5GAEgASgJUgxJZGVudGlmaWVkQnkSYQoERnJvbRgCIAMoCzJNLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLktleVZhbHVlUGFpcl9FdmVudFR5cGVfRnJvbURlZmluaXRpb25SBEZyb20SYQoESm9pbhgDIAMoCzJNLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLktleVZhbHVlUGFpcl9FdmVudFR5cGVfSm9pbkRlZmluaXRpb25SBEpvaW4SZAoIQ2hpbGRyZW4YBCADKAsySC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5DaGlsZHJlbkRlZmluaXRpb24uQ2hpbGRyZW5FbnRyeVIIQ2hpbGRyZW4STQoDQWxsGAUgASgLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuRnJvbUV2ZXJ5RGVmaW5pdGlvblIDQWxsEnEKEUZyb21FdmVudFByb3BlcnR5GAYgASgLMkMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuRnJvbUV2ZW50UHJvcGVydHlEZWZpbml0aW9uUhFGcm9tRXZlbnRQcm9wZXJ0eRJ2CgtSZW1vdmVkV2l0aBgHIAMoCzJULkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLktleVZhbHVlUGFpcl9FdmVudFR5cGVfUmVtb3ZlZFdpdGhEZWZpbml0aW9uUgtSZW1vdmVkV2l0aBKCAQoPUmVtb3ZlZFdpdGhKb2luGAggAygLMlguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuS2V5VmFsdWVQYWlyX0V2ZW50VHlwZV9SZW1vdmVkV2l0aEpvaW5EZWZpbml0aW9uUg9SZW1vdmVkV2l0aEpvaW4SSQoHQXV0b01hcBgJIAEoDjIvLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLkF1dG9NYXBSB0F1dG9NYXASXgoGTmVzdGVkGAogAygLMkYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuQ2hpbGRyZW5EZWZpbml0aW9uLk5lc3RlZEVudHJ5UgZOZXN0ZWQSMAoTTm9BdXRvTWFwUHJvcGVydGllcxgLIAMoCVITTm9BdXRvTWFwUHJvcGVydGllcxp3Cg1DaGlsZHJlbkVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElAKBXZhbHVlGAIgASgLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuQ2hpbGRyZW5EZWZpbml0aW9uUgV2YWx1ZToCOAEadQoLTmVzdGVkRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSUAoFdmFsdWUYAiABKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5DaGlsZHJlbkRlZmluaXRpb25SBXZhbHVlOgI4ASKaAQoYRHJhZnRSZWFkTW9kZWxEZWZpbml0aW9uEiQKDUNvbnRhaW5lck5hbWUYASABKAlSDUNvbnRhaW5lck5hbWUSFgoGU2NoZW1hGAIgASgJUgZTY2hlbWESHgoKSWRlbnRpZmllchgDIAEoCVIKSWRlbnRpZmllchIgCgtEaXNwbGF5TmFtZRgEIAEoCVILRGlzcGxheU5hbWUiWQoJRXZlbnRUeXBlEg4KAklkGAEgASgJUgJJZBIeCgpHZW5lcmF0aW9uGAIgASgNUgpHZW5lcmF0aW9uEhwKCVRvbWJzdG9uZRgDIAEoCFIJVG9tYnN0b25lIucBCg5Gcm9tRGVmaW5pdGlvbhJmCgpQcm9wZXJ0aWVzGAEgAygLMkYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuRnJvbURlZmluaXRpb24uUHJvcGVydGllc0VudHJ5UgpQcm9wZXJ0aWVzEhAKA0tleRgCIAEoCVIDS2V5EhwKCVBhcmVudEtleRgDIAEoCVIJUGFyZW50S2V5Gj0KD1Byb3BlcnRpZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBIroBChlGcm9tRGVyaXZhdGl2ZXNEZWZpbml0aW9uElEKCkV2ZW50VHlwZXMYASADKAsyMS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5FdmVudFR5cGVSCkV2ZW50VHlwZXMSSgoERnJvbRgCIAEoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLkZyb21EZWZpbml0aW9uUgRGcm9tIpYBChtGcm9tRXZlbnRQcm9wZXJ0eURlZmluaXRpb24SRwoFRXZlbnQYASABKAsyMS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5FdmVudFR5cGVSBUV2ZW50Ei4KElByb3BlcnR5RXhwcmVzc2lvbhgCIAEoCVISUHJvcGVydHlFeHByZXNzaW9uIrYCChNGcm9tRXZlcnlEZWZpbml0aW9uEmsKClByb3BlcnRpZXMYASADKAsySy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5Gcm9tRXZlcnlEZWZpbml0aW9uLlByb3BlcnRpZXNFbnRyeVIKUHJvcGVydGllcxIoCg9JbmNsdWRlQ2hpbGRyZW4YAiABKAhSD0luY2x1ZGVDaGlsZHJlbhJJCgdBdXRvTWFwGAMgASgOMi8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuQXV0b01hcFIHQXV0b01hcBo9Cg9Qcm9wZXJ0aWVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASI7ChlHZXRBbGxEZWNsYXJhdGlvbnNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUiOgoYR2V0QWxsRGVmaW5pdGlvbnNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUidgogSUVudW1lcmFibGVfUHJvamVjdGlvbkRlZmluaXRpb24SUgoFaXRlbXMYASADKAsyPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5Qcm9qZWN0aW9uRGVmaW5pdGlvblIFaXRlbXMigAEKJUlFbnVtZXJhYmxlX1Byb2plY3Rpb25XaXRoRGVjbGFyYXRpb24SVwoFaXRlbXMYASADKAsyQS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5Qcm9qZWN0aW9uV2l0aERlY2xhcmF0aW9uUgVpdGVtcyI1Cg9JbmRleERlZmluaXRpb24SIgoMUHJvcGVydHlQYXRoGAEgASgJUgxQcm9wZXJ0eVBhdGgi2QEKDkpvaW5EZWZpbml0aW9uEg4KAk9uGAEgASgJUgJPbhJmCgpQcm9wZXJ0aWVzGAIgAygLMkYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuSm9pbkRlZmluaXRpb24uUHJvcGVydGllc0VudHJ5UgpQcm9wZXJ0aWVzEhAKA0tleRgDIAEoCVIDS2V5Gj0KD1Byb3BlcnRpZXNFbnRyeRIQCgNrZXkYASABKAlSA2tleRIUCgV2YWx1ZRgCIAEoCVIFdmFsdWU6AjgBIroBCiVLZXlWYWx1ZVBhaXJfRXZlbnRUeXBlX0Zyb21EZWZpbml0aW9uEkMKA0tleRgBIAEoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLkV2ZW50VHlwZVIDS2V5EkwKBVZhbHVlGAIgASgLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuRnJvbURlZmluaXRpb25SBVZhbHVlIroBCiVLZXlWYWx1ZVBhaXJfRXZlbnRUeXBlX0pvaW5EZWZpbml0aW9uEkMKA0tleRgBIAEoCzIxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLkV2ZW50VHlwZVIDS2V5EkwKBVZhbHVlGAIgASgLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuSm9pbkRlZmluaXRpb25SBVZhbHVlIsgBCixLZXlWYWx1ZVBhaXJfRXZlbnRUeXBlX1JlbW92ZWRXaXRoRGVmaW5pdGlvbhJDCgNLZXkYASABKAsyMS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5FdmVudFR5cGVSA0tleRJTCgVWYWx1ZRgCIAEoCzI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlJlbW92ZWRXaXRoRGVmaW5pdGlvblIFVmFsdWUi0AEKMEtleVZhbHVlUGFpcl9FdmVudFR5cGVfUmVtb3ZlZFdpdGhKb2luRGVmaW5pdGlvbhJDCgNLZXkYASABKAsyMS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5FdmVudFR5cGVSA0tleRJXCgVWYWx1ZRgCIAEoCzJBLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlJlbW92ZWRXaXRoSm9pbkRlZmluaXRpb25SBVZhbHVlIvMBCjpPbmVPZl9Qcm9qZWN0aW9uUHJldmlld19Qcm9qZWN0aW9uRGVjbGFyYXRpb25QYXJzaW5nRXJyb3JzElEKBlZhbHVlMBgBIAEoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlByb2plY3Rpb25QcmV2aWV3UgZWYWx1ZTASYgoGVmFsdWUxGAIgASgLMkouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuUHJvamVjdGlvbkRlY2xhcmF0aW9uUGFyc2luZ0Vycm9yc1IGVmFsdWUxIo4CChhQcmV2aWV3UHJvamVjdGlvblJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBIgCgtEZWNsYXJhdGlvbhgEIAEoCVILRGVjbGFyYXRpb24SaAoORHJhZnRSZWFkTW9kZWwYBSABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5EcmFmdFJlYWRNb2RlbERlZmluaXRpb25SDkRyYWZ0UmVhZE1vZGVsIoYBCiJQcm9qZWN0aW9uRGVjbGFyYXRpb25QYXJzaW5nRXJyb3JzEmAKBkVycm9ycxgBIAMoCzJILkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlByb2plY3Rpb25EZWNsYXJhdGlvblN5bnRheEVycm9yUgZFcnJvcnMiaAogUHJvamVjdGlvbkRlY2xhcmF0aW9uU3ludGF4RXJyb3ISGAoHTWVzc2FnZRgBIAEoCVIHTWVzc2FnZRISCgRMaW5lGAIgASgFUgRMaW5lEhYKBkNvbHVtbhgDIAEoBVIGQ29sdW1uIrkNChRQcm9qZWN0aW9uRGVmaW5pdGlvbhIoCg9FdmVudFNlcXVlbmNlSWQYASABKAlSD0V2ZW50U2VxdWVuY2VJZBIeCgpJZGVudGlmaWVyGAIgASgJUgpJZGVudGlmaWVyEhwKCVJlYWRNb2RlbBgDIAEoCVIJUmVhZE1vZGVsEhoKCElzQWN0aXZlGAQgASgIUghJc0FjdGl2ZRIiCgxJc1Jld2luZGFibGUYBSABKAhSDElzUmV3aW5kYWJsZRIsChFJbml0aWFsTW9kZWxTdGF0ZRgGIAEoCVIRSW5pdGlhbE1vZGVsU3RhdGUSYQoERnJvbRgHIAMoCzJNLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLktleVZhbHVlUGFpcl9FdmVudFR5cGVfRnJvbURlZmluaXRpb25SBEZyb20SYQoESm9pbhgIIAMoCzJNLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLktleVZhbHVlUGFpcl9FdmVudFR5cGVfSm9pbkRlZmluaXRpb25SBEpvaW4SZgoIQ2hpbGRyZW4YCSADKAsySi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5Qcm9qZWN0aW9uRGVmaW5pdGlvbi5DaGlsZHJlbkVudHJ5UghDaGlsZHJlbhJfCglGcm9tRXZlcnkYCiADKAsyQS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5Gcm9tRGVyaXZhdGl2ZXNEZWZpbml0aW9uUglGcm9tRXZlcnkSTQoDQWxsGAsgASgLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuRnJvbUV2ZXJ5RGVmaW5pdGlvblIDQWxsEnEKEUZyb21FdmVudFByb3BlcnR5GAwgASgLMkMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuRnJvbUV2ZW50UHJvcGVydHlEZWZpbml0aW9uUhFGcm9tRXZlbnRQcm9wZXJ0eRJ2CgtSZW1vdmVkV2l0aBgNIAMoCzJULkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLktleVZhbHVlUGFpcl9FdmVudFR5cGVfUmVtb3ZlZFdpdGhEZWZpbml0aW9uUgtSZW1vdmVkV2l0aBKCAQoPUmVtb3ZlZFdpdGhKb2luGA4gAygLMlguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuS2V5VmFsdWVQYWlyX0V2ZW50VHlwZV9SZW1vdmVkV2l0aEpvaW5EZWZpbml0aW9uUg9SZW1vdmVkV2l0aEpvaW4SZAoLTGFzdFVwZGF0ZWQYDyABKAsyQi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFILTGFzdFVwZGF0ZWQSEgoEVGFncxgQIAMoCVIEVGFncxJJCgdBdXRvTWFwGBEgASgOMi8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuQXV0b01hcFIHQXV0b01hcBJgCgZOZXN0ZWQYEiADKAsySC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5Qcm9qZWN0aW9uRGVmaW5pdGlvbi5OZXN0ZWRFbnRyeVIGTmVzdGVkEjQKFVN1YnNjcmliZXNUb0FsbEV2ZW50cxgTIAEoCFIVU3Vic2NyaWJlc1RvQWxsRXZlbnRzEjAKE05vQXV0b01hcFByb3BlcnRpZXMYFCADKAlSE05vQXV0b01hcFByb3BlcnRpZXMadwoNQ2hpbGRyZW5FbnRyeRIQCgNrZXkYASABKAlSA2tleRJQCgV2YWx1ZRgCIAEoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLkNoaWxkcmVuRGVmaW5pdGlvblIFdmFsdWU6AjgBGnUKC05lc3RlZEVudHJ5EhAKA2tleRgBIAEoCVIDa2V5ElAKBXZhbHVlGAIgASgLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuQ2hpbGRyZW5EZWZpbml0aW9uUgV2YWx1ZToCOAEimgEKEVByb2plY3Rpb25QcmV2aWV3EioKEFJlYWRNb2RlbEVudHJpZXMYASADKAlSEFJlYWRNb2RlbEVudHJpZXMSWQoJUmVhZE1vZGVsGAIgASgLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuUmVhZE1vZGVsRGVmaW5pdGlvblIJUmVhZE1vZGVsIoMBChlQcm9qZWN0aW9uV2l0aERlY2xhcmF0aW9uEh4KCklkZW50aWZpZXIYASABKAlSCklkZW50aWZpZXISJAoNQ29udGFpbmVyTmFtZRgCIAEoCVINQ29udGFpbmVyTmFtZRIgCgtEZWNsYXJhdGlvbhgDIAEoCVILRGVjbGFyYXRpb24ikQUKE1JlYWRNb2RlbERlZmluaXRpb24SSQoEVHlwZRgBIAEoCzI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlJlYWRNb2RlbFR5cGVSBFR5cGUSJAoNQ29udGFpbmVyTmFtZRgCIAEoCVINQ29udGFpbmVyTmFtZRIgCgtEaXNwbGF5TmFtZRgDIAEoCVILRGlzcGxheU5hbWUSSgoEU2luaxgEIAEoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlNpbmtEZWZpbml0aW9uUgRTaW5rEhYKBlNjaGVtYRgFIAEoCVIGU2NoZW1hElEKB0luZGV4ZXMYBiADKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5JbmRleERlZmluaXRpb25SB0luZGV4ZXMSYQoMT2JzZXJ2ZXJUeXBlGAcgASgOMj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuUmVhZE1vZGVsT2JzZXJ2ZXJUeXBlUgxPYnNlcnZlclR5cGUSLgoST2JzZXJ2ZXJJZGVudGlmaWVyGAggASgJUhJPYnNlcnZlcklkZW50aWZpZXISTAoFT3duZXIYCSABKA4yNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5SZWFkTW9kZWxPd25lclIFT3duZXISTwoGU291cmNlGAogASgOMjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuUmVhZE1vZGVsU291cmNlUgZTb3VyY2UiTwoNUmVhZE1vZGVsVHlwZRIeCgpJZGVudGlmaWVyGAEgASgJUgpJZGVudGlmaWVyEh4KCkdlbmVyYXRpb24YAiABKA1SCkdlbmVyYXRpb24i+gEKD1JlZ2lzdGVyUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEk0KBU93bmVyGAIgASgOMjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuUHJvamVjdGlvbk93bmVyUgVPd25lchJeCgtQcm9qZWN0aW9ucxgDIAMoCzI8LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlByb2plY3Rpb25EZWZpbml0aW9uUgtQcm9qZWN0aW9ucxIYCgdGdWxsU2V0GAQgASgIUgdGdWxsU2V0IkcKFVJlbW92ZWRXaXRoRGVmaW5pdGlvbhIQCgNLZXkYASABKAlSA0tleRIcCglQYXJlbnRLZXkYAiABKAlSCVBhcmVudEtleSItChlSZW1vdmVkV2l0aEpvaW5EZWZpbml0aW9uEhAKA0tleRgBIAEoCVIDS2V5IosCChVTYXZlUHJvamVjdGlvblJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBIgCgtEZWNsYXJhdGlvbhgEIAEoCVILRGVjbGFyYXRpb24SaAoORHJhZnRSZWFkTW9kZWwYBSABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5EcmFmdFJlYWRNb2RlbERlZmluaXRpb25SDkRyYWZ0UmVhZE1vZGVsIngKFFNhdmVQcm9qZWN0aW9uUmVzdWx0EmAKBkVycm9ycxgBIAMoCzJILkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLlByb2plY3Rpb25EZWNsYXJhdGlvblN5bnRheEVycm9yUgZFcnJvcnMiMgoaU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXQSFAoFVmFsdWUYASABKAlSBVZhbHVlIl0KDlNpbmtEZWZpbml0aW9uEjMKD0NvbmZpZ3VyYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg9Db25maWd1cmF0aW9uSWQSFgoGVHlwZUlkGAIgASgJUgZUeXBlSWQqMQoHQXV0b01hcBILCgdJbmhlcml0EAASDAoIRGlzYWJsZWQQARILCgdFbmFibGVkEAIqZgoPUHJvamVjdGlvbk93bmVyEhkKFVBST0pFQ1RJT05fT1dORVJfTm9uZRAAEhsKF1BST0pFQ1RJT05fT1dORVJfQ2xpZW50EAESGwoXUFJPSkVDVElPTl9PV05FUl9TZXJ2ZXIQAipAChVSZWFkTW9kZWxPYnNlcnZlclR5cGUSCgoGTm90U2V0EAASCwoHUmVkdWNlchABEg4KClByb2plY3Rpb24QAiplCg5SZWFkTW9kZWxPd25lchIZChVSRUFEX01PREVMX09XTkVSX05vbmUQABIbChdSRUFEX01PREVMX09XTkVSX0NsaWVudBABEhsKF1JFQURfTU9ERUxfT1dORVJfU2VydmVyEAIqMgoPUmVhZE1vZGVsU291cmNlEgsKB1Vua25vd24QABIICgRDb2RlEAESCAoEVXNlchACMu0FCgtQcm9qZWN0aW9ucxKmAQoSR2V0QWxsRGVjbGFyYXRpb25zEkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuR2V0QWxsRGVjbGFyYXRpb25zUmVxdWVzdBpNLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlByb2plY3Rpb25zLklFbnVtZXJhYmxlX1Byb2plY3Rpb25XaXRoRGVjbGFyYXRpb24SnwEKEUdldEFsbERlZmluaXRpb25zEkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuR2V0QWxsRGVmaW5pdGlvbnNSZXF1ZXN0GkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuSUVudW1lcmFibGVfUHJvamVjdGlvbkRlZmluaXRpb24SrwEKB1ByZXZpZXcSQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5QcmV2aWV3UHJvamVjdGlvblJlcXVlc3QaYi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5Qcm9qZWN0aW9ucy5PbmVPZl9Qcm9qZWN0aW9uUHJldmlld19Qcm9qZWN0aW9uRGVjbGFyYXRpb25QYXJzaW5nRXJyb3JzElsKCFJlZ2lzdGVyEjcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuUmVnaXN0ZXJSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EoMBCgRTYXZlEj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuU2F2ZVByb2plY3Rpb25SZXF1ZXN0GjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUHJvamVjdGlvbnMuU2F2ZVByb2plY3Rpb25SZXN1bHRiBnByb3RvMwq1GAoXcmVhZG1vZGVsZXhwbG9yZXIucHJvdG8SLENyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbEV4cGxvcmVyGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvIucBCh9BbGxTbmFwc2hvdHNGb3JSZWFkTW9kZWxSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USHAoJUmVhZE1vZGVsGAMgASgJUglSZWFkTW9kZWwSIgoMUmVhZE1vZGVsS2V5GAQgASgJUgxSZWFkTW9kZWxLZXkSKAoPRXZlbnRTZXF1ZW5jZUlkGAUgASgJUg9FdmVudFNlcXVlbmNlSWQSGgoIR3JvdXBpbmcYBiABKAlSCEdyb3VwaW5nIq0CCglDYXVzYXRpb24SZAoIT2NjdXJyZWQYASABKAsySC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxFeHBsb3Jlci5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSEgoEVHlwZRgCIAEoCVIEVHlwZRJnCgpQcm9wZXJ0aWVzGAMgAygLMkcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVsRXhwbG9yZXIuQ2F1c2F0aW9uLlByb3BlcnRpZXNFbnRyeVIKUHJvcGVydGllcxo9Cg9Qcm9wZXJ0aWVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASJ3CgVFdmVudBJUCgdDb250ZXh0GAEgASgLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVsRXhwbG9yZXIuRXZlbnRDb250ZXh0UgdDb250ZXh0EhgKB0NvbnRlbnQYAiABKAlSB0NvbnRlbnQiiAYKDEV2ZW50Q29udGV4dBJVCglFdmVudFR5cGUYASABKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxFeHBsb3Jlci5FdmVudFR5cGVSCUV2ZW50VHlwZRIoCg9FdmVudFNvdXJjZVR5cGUYAiABKAlSD0V2ZW50U291cmNlVHlwZRIkCg1FdmVudFNvdXJjZUlkGAMgASgJUg1FdmVudFNvdXJjZUlkEiYKDlNlcXVlbmNlTnVtYmVyGAQgASgEUg5TZXF1ZW5jZU51bWJlchIoCg9FdmVudFN0cmVhbVR5cGUYBSABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAYgASgJUg1FdmVudFN0cmVhbUlkEmQKCE9jY3VycmVkGAcgASgLMkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVsRXhwbG9yZXIuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEi8KDUNvcnJlbGF0aW9uSWQYCCABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBJVCglDYXVzYXRpb24YCSADKAsyNy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxFeHBsb3Jlci5DYXVzYXRpb25SCUNhdXNhdGlvbhJSCghDYXVzZWRCeRgKIAEoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbEV4cGxvcmVyLklkZW50aXR5UghDYXVzZWRCeRISCgRUYWdzGAsgAygJUgRUYWdzEhIKBEhhc2gYDCABKAlSBEhhc2gSbwoQT2JzZXJ2YXRpb25TdGF0ZRgNIAEoDjJDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbEV4cGxvcmVyLkV2ZW50T2JzZXJ2YXRpb25TdGF0ZVIQT2JzZXJ2YXRpb25TdGF0ZSJZCglFdmVudFR5cGUSDgoCSWQYASABKAlSAklkEh4KCkdlbmVyYXRpb24YAiABKA1SCkdlbmVyYXRpb24SHAoJVG9tYnN0b25lGAMgASgIUglUb21ic3RvbmUirAEKCElkZW50aXR5EhgKB1N1YmplY3QYASABKAlSB1N1YmplY3QSEgoETmFtZRgCIAEoCVIETmFtZRIaCghVc2VyTmFtZRgDIAEoCVIIVXNlck5hbWUSVgoKT25CZWhhbGZPZhgEIAEoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbEV4cGxvcmVyLklkZW50aXR5UgpPbkJlaGFsZk9mIrMDCjFRdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9SZWFkTW9kZWxTbmFwc2hvdFJlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJsChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbEV4cGxvcmVyLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlElsKBERhdGEYBiADKAsyRy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxFeHBsb3Jlci5SZWFkTW9kZWxTbmFwc2hvdFJlc3BvbnNlUgREYXRhIpsCChlSZWFkTW9kZWxTbmFwc2hvdFJlc3BvbnNlEmQKCE9jY3VycmVkGAEgASgLMkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVsRXhwbG9yZXIuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEi8KDUNvcnJlbGF0aW9uSWQYAiABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIaCghJbnN0YW5jZRgDIAEoCVIISW5zdGFuY2USSwoGRXZlbnRzGAQgAygLMjMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVsRXhwbG9yZXIuRXZlbnRSBkV2ZW50cyIyChpTZXJpYWxpemFibGVEYXRlVGltZU9mZnNldBIUCgVWYWx1ZRgBIAEoCVIFVmFsdWUiqgEKEFZhbGlkYXRpb25SZXN1bHQSYgoIU2V2ZXJpdHkYASABKA4yRi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxFeHBsb3Jlci5WYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHlSCFNldmVyaXR5EhgKB01lc3NhZ2UYAiABKAlSB01lc3NhZ2USGAoHTWVtYmVycxgDIAMoCVIHTWVtYmVycyo6ChVFdmVudE9ic2VydmF0aW9uU3RhdGUSCAoETm9uZRAAEgsKB0luaXRpYWwQARIKCgZSZXBsYXkQAipQChhWYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHkSCwoHVW5rbm93bhAAEg8KC0luZm9ybWF0aW9uEAESCwoHV2FybmluZxACEgkKBUVycm9yEAMy4AEKEVJlYWRNb2RlbEV4cGxvcmVyEsoBChhBbGxTbmFwc2hvdHNGb3JSZWFkTW9kZWwSTS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxFeHBsb3Jlci5BbGxTbmFwc2hvdHNGb3JSZWFkTW9kZWxSZXF1ZXN0Gl8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVsRXhwbG9yZXIuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfUmVhZE1vZGVsU25hcHNob3RSZXNwb25zZWIGcHJvdG8zCrc0ChByZWFkbW9kZWxzLnByb3RvEiVDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzGhtnb29nbGUvcHJvdG9idWYvZW1wdHkucHJvdG8aFnByb3RvYnVmLW5ldC9iY2wucHJvdG8i9QEKF0RlaHlkcmF0ZVNlc3Npb25SZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USMAoTUmVhZE1vZGVsSWRlbnRpZmllchgDIAEoCVITUmVhZE1vZGVsSWRlbnRpZmllchIoCg9FdmVudFNlcXVlbmNlSWQYBCABKAlSD0V2ZW50U2VxdWVuY2VJZBIiCgxSZWFkTW9kZWxLZXkYBSABKAlSDFJlYWRNb2RlbEtleRIcCglTZXNzaW9uSWQYBiABKAlSCVNlc3Npb25JZCLSAQoWR2V0QWxsSW5zdGFuY2VzUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEjAKE1JlYWRNb2RlbElkZW50aWZpZXIYAyABKAlSE1JlYWRNb2RlbElkZW50aWZpZXISKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSHgoKRXZlbnRDb3VudBgFIAEoBFIKRXZlbnRDb3VudCJrChdHZXRBbGxJbnN0YW5jZXNSZXNwb25zZRIcCglJbnN0YW5jZXMYASADKAlSCUluc3RhbmNlcxIyChRQcm9jZXNzZWRFdmVudHNDb3VudBgCIAEoBFIUUHJvY2Vzc2VkRXZlbnRzQ291bnQiNwoVR2V0RGVmaW5pdGlvbnNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUidAoWR2V0RGVmaW5pdGlvbnNSZXNwb25zZRJaCgpSZWFkTW9kZWxzGAEgAygLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5SZWFkTW9kZWxEZWZpbml0aW9uUgpSZWFkTW9kZWxzIvUBChdHZXRJbnN0YW5jZUJ5S2V5UmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEjAKE1JlYWRNb2RlbElkZW50aWZpZXIYAyABKAlSE1JlYWRNb2RlbElkZW50aWZpZXISKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSIgoMUmVhZE1vZGVsS2V5GAUgASgJUgxSZWFkTW9kZWxLZXkSHAoJU2Vzc2lvbklkGAYgASgJUglTZXNzaW9uSWQitAEKGEdldEluc3RhbmNlQnlLZXlSZXNwb25zZRIcCglSZWFkTW9kZWwYASABKAlSCVJlYWRNb2RlbBIyChRQcm9qZWN0ZWRFdmVudHNDb3VudBgCIAEoBFIUUHJvamVjdGVkRXZlbnRzQ291bnQSRgoeTGFzdEhhbmRsZWRFdmVudFNlcXVlbmNlTnVtYmVyGAMgASgEUh5MYXN0SGFuZGxlZEV2ZW50U2VxdWVuY2VOdW1iZXIiwQEKE0dldEluc3RhbmNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIcCglSZWFkTW9kZWwYAyABKAlSCVJlYWRNb2RlbBIeCgpPY2N1cnJlbmNlGAQgASgJUgpPY2N1cnJlbmNlEhIKBFBhZ2UYBSABKAVSBFBhZ2USGgoIUGFnZVNpemUYBiABKAVSCFBhZ2VTaXplIoQBChRHZXRJbnN0YW5jZXNSZXNwb25zZRIcCglJbnN0YW5jZXMYASADKAlSCUluc3RhbmNlcxIeCgpUb3RhbENvdW50GAIgASgDUgpUb3RhbENvdW50EhIKBFBhZ2UYAyABKAVSBFBhZ2USGgoIUGFnZVNpemUYBCABKAVSCFBhZ2VTaXplIp8BChVHZXRPY2N1cnJlbmNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRJICgRUeXBlGAMgASgLMjQuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5SZWFkTW9kZWxUeXBlUgRUeXBlInYKFkdldE9jY3VycmVuY2VzUmVzcG9uc2USXAoLT2NjdXJyZW5jZXMYASADKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlYWRNb2RlbE9jY3VycmVuY2VSC09jY3VycmVuY2VzIjUKD0luZGV4RGVmaW5pdGlvbhIiCgxQcm9wZXJ0eVBhdGgYASABKAlSDFByb3BlcnR5UGF0aCLFAQoXT2JzZXJ2ZUluc3RhbmNlc1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIcCglSZWFkTW9kZWwYAyABKAlSCVJlYWRNb2RlbBISCgRQYWdlGAQgASgFUgRQYWdlEhoKCFBhZ2VTaXplGAUgASgFUghQYWdlU2l6ZRIeCgpPY2N1cnJlbmNlGAYgASgJUgpPY2N1cnJlbmNlIogBChhPYnNlcnZlSW5zdGFuY2VzUmVzcG9uc2USHAoJSW5zdGFuY2VzGAEgAygJUglJbnN0YW5jZXMSHgoKVG90YWxDb3VudBgCIAEoBVIKVG90YWxDb3VudBISCgRQYWdlGAMgASgFUgRQYWdlEhoKCFBhZ2VTaXplGAQgASgFUghQYWdlU2l6ZSLEAwoSUmVhZE1vZGVsQ2hhbmdlc2V0EhwKCU5hbWVzcGFjZRgBIAEoCVIJTmFtZXNwYWNlEhoKCE1vZGVsS2V5GAIgASgJUghNb2RlbEtleRIcCglSZWFkTW9kZWwYAyABKAlSCVJlYWRNb2RlbBIYCgdSZW1vdmVkGAQgASgIUgdSZW1vdmVkEh4KClN1YnNjcmliZWQYBSABKAhSClN1YnNjcmliZWQSWgoKQ2hhbmdlVHlwZRgGIAEoDjI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuUmVhZE1vZGVsQ2hhbmdlVHlwZVIKQ2hhbmdlVHlwZRIwChNFdmVudFNlcXVlbmNlTnVtYmVyGAcgASgEUhNFdmVudFNlcXVlbmNlTnVtYmVyEl0KCE9jY3VycmVkGAggASgLMkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSLwoNQ29ycmVsYXRpb25JZBgJIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkIosFChNSZWFkTW9kZWxEZWZpbml0aW9uEkgKBFR5cGUYASABKAsyNC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlYWRNb2RlbFR5cGVSBFR5cGUSJAoNQ29udGFpbmVyTmFtZRgCIAEoCVINQ29udGFpbmVyTmFtZRIgCgtEaXNwbGF5TmFtZRgDIAEoCVILRGlzcGxheU5hbWUSSQoEU2luaxgEIAEoCzI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuU2lua0RlZmluaXRpb25SBFNpbmsSFgoGU2NoZW1hGAUgASgJUgZTY2hlbWESUAoHSW5kZXhlcxgGIAMoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuSW5kZXhEZWZpbml0aW9uUgdJbmRleGVzEmAKDE9ic2VydmVyVHlwZRgHIAEoDjI8LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuUmVhZE1vZGVsT2JzZXJ2ZXJUeXBlUgxPYnNlcnZlclR5cGUSLgoST2JzZXJ2ZXJJZGVudGlmaWVyGAggASgJUhJPYnNlcnZlcklkZW50aWZpZXISSwoFT3duZXIYCSABKA4yNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlYWRNb2RlbE93bmVyUgVPd25lchJOCgZTb3VyY2UYCiABKA4yNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlYWRNb2RlbFNvdXJjZVIGU291cmNlIrYCChNSZWFkTW9kZWxPY2N1cnJlbmNlEh4KCk9ic2VydmVySWQYASABKAlSCk9ic2VydmVySWQSXQoIT2NjdXJyZWQYAiABKAsyQS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBJICgRUeXBlGAMgASgLMjQuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5SZWFkTW9kZWxUeXBlUgRUeXBlEiQKDUNvbnRhaW5lck5hbWUYBCABKAlSDUNvbnRhaW5lck5hbWUSMAoTUmV2ZXJ0Q29udGFpbmVyTmFtZRgFIAEoCVITUmV2ZXJ0Q29udGFpbmVyTmFtZSJPCg1SZWFkTW9kZWxUeXBlEh4KCklkZW50aWZpZXIYASABKAlSCklkZW50aWZpZXISHgoKR2VuZXJhdGlvbhgCIAEoDVIKR2VuZXJhdGlvbiKuAgoTUmVnaXN0ZXJNYW55UmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEksKBU93bmVyGAIgASgOMjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5SZWFkTW9kZWxPd25lclIFT3duZXISWgoKUmVhZE1vZGVscxgDIAMoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuUmVhZE1vZGVsRGVmaW5pdGlvblIKUmVhZE1vZGVscxJOCgZTb3VyY2UYBCABKA4yNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlYWRNb2RlbFNvdXJjZVIGU291cmNlIq4CChVSZWdpc3RlclNpbmdsZVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRJLCgVPd25lchgCIAEoDjI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuUmVhZE1vZGVsT3duZXJSBU93bmVyElgKCVJlYWRNb2RlbBgDIAEoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuUmVhZE1vZGVsRGVmaW5pdGlvblIJUmVhZE1vZGVsEk4KBlNvdXJjZRgEIAEoDjI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuUmVhZE1vZGVsU291cmNlUgZTb3VyY2UiMgoaU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXQSFAoFVmFsdWUYASABKAlSBVZhbHVlIl0KDlNpbmtEZWZpbml0aW9uEjMKD0NvbmZpZ3VyYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg9Db25maWd1cmF0aW9uSWQSFgoGVHlwZUlkGAIgASgJUgZUeXBlSWQikwEKF1VwZGF0ZURlZmluaXRpb25SZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSWAoJUmVhZE1vZGVsGAIgASgLMjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5SZWFkTW9kZWxEZWZpbml0aW9uUglSZWFkTW9kZWwiqAEKDFdhdGNoUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEjAKE1JlYWRNb2RlbElkZW50aWZpZXIYAyABKAlSE1JlYWRNb2RlbElkZW50aWZpZXISKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQqOwoTUmVhZE1vZGVsQ2hhbmdlVHlwZRIJCgVBZGRlZBAAEgwKCE1vZGlmaWVkEAESCwoHUmVtb3ZlZBACKkAKFVJlYWRNb2RlbE9ic2VydmVyVHlwZRIKCgZOb3RTZXQQABILCgdSZWR1Y2VyEAESDgoKUHJvamVjdGlvbhACKjIKDlJlYWRNb2RlbE93bmVyEggKBE5vbmUQABIKCgZDbGllbnQQARIKCgZTZXJ2ZXIQAioyCg9SZWFkTW9kZWxTb3VyY2USCwoHVW5rbm93bhAAEggKBENvZGUQARIICgRVc2VyEAIyugIKFk1hdGVyaWFsaXplZFJlYWRNb2RlbHMShwEKDEdldEluc3RhbmNlcxI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuR2V0SW5zdGFuY2VzUmVxdWVzdBo7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuR2V0SW5zdGFuY2VzUmVzcG9uc2USlQEKEE9ic2VydmVJbnN0YW5jZXMSPi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLk9ic2VydmVJbnN0YW5jZXNSZXF1ZXN0Gj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5PYnNlcnZlSW5zdGFuY2VzUmVzcG9uc2UwATL+CQoKUmVhZE1vZGVscxJqChBEZWh5ZHJhdGVTZXNzaW9uEj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5EZWh5ZHJhdGVTZXNzaW9uUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRKQAQoPR2V0QWxsSW5zdGFuY2VzEj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5HZXRBbGxJbnN0YW5jZXNSZXF1ZXN0Gj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5HZXRBbGxJbnN0YW5jZXNSZXNwb25zZRKNAQoOR2V0RGVmaW5pdGlvbnMSPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLkdldERlZmluaXRpb25zUmVxdWVzdBo9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuR2V0RGVmaW5pdGlvbnNSZXNwb25zZRKTAQoQR2V0SW5zdGFuY2VCeUtleRI+LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuR2V0SW5zdGFuY2VCeUtleVJlcXVlc3QaPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLkdldEluc3RhbmNlQnlLZXlSZXNwb25zZRKHAQoMR2V0SW5zdGFuY2VzEjouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5HZXRJbnN0YW5jZXNSZXF1ZXN0GjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5HZXRJbnN0YW5jZXNSZXNwb25zZRKNAQoOR2V0T2NjdXJyZW5jZXMSPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLkdldE9jY3VycmVuY2VzUmVxdWVzdBo9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuR2V0T2NjdXJyZW5jZXNSZXNwb25zZRJiCgxSZWdpc3Rlck1hbnkSOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlZ2lzdGVyTWFueVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSZgoOUmVnaXN0ZXJTaW5nbGUSPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWFkTW9kZWxzLlJlZ2lzdGVyU2luZ2xlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJqChBVcGRhdGVEZWZpbml0aW9uEj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5VcGRhdGVEZWZpbml0aW9uUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJ5CgVXYXRjaBIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlYWRNb2RlbHMuV2F0Y2hSZXF1ZXN0GjkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVhZE1vZGVscy5SZWFkTW9kZWxDaGFuZ2VzZXQwAWIGcHJvdG8zCuEUChVyZWNvbW1lbmRhdGlvbnMucHJvdG8SKkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlY29tbWVuZGF0aW9ucxoWcHJvdG9idWYtbmV0L2JjbC5wcm90byJZChlBbGxSZWNvbW1lbmRhdGlvbnNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2Ui8AIKDUNvbW1hbmRSZXN1bHQSLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmoKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVjb21tZW5kYXRpb25zLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEj4KGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uGAYgASgJUhpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbiJZChlHZXRSZWNvbW1lbmRhdGlvbnNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2UikgEKG0lnbm9yZVJlY29tbWVuZGF0aW9uUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEjUKEFJlY29tbWVuZGF0aW9uSWQYAyABKAsyCS5iY2wuR3VpZFIQUmVjb21tZW5kYXRpb25JZCKTAQocUGVyZm9ybVJlY29tbWVuZGF0aW9uUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEjUKEFJlY29tbWVuZGF0aW9uSWQYAyABKAsyCS5iY2wuR3VpZFIQUmVjb21tZW5kYXRpb25JZCK3Awo1UXVlcnlSZXN1bHRfSUVudW1lcmFibGVfUmVjb21tZW5kYXRpb25EZXRhaWxzUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmoKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVjb21tZW5kYXRpb25zLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEl0KBERhdGEYBiADKAsySS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWNvbW1lbmRhdGlvbnMuUmVjb21tZW5kYXRpb25EZXRhaWxzUmVzcG9uc2VSBERhdGEi6AEKHVJlY29tbWVuZGF0aW9uRGV0YWlsc1Jlc3BvbnNlEhkKAklkGAEgASgLMgkuYmNsLkd1aWRSAklkEhIKBE5hbWUYAiABKAlSBE5hbWUSIAoLRGVzY3JpcHRpb24YAyABKAlSC0Rlc2NyaXB0aW9uEhIKBFR5cGUYBCABKAlSBFR5cGUSYgoIT2NjdXJyZWQYBSABKAsyRi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWNvbW1lbmRhdGlvbnMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkIjIKGlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0EhQKBVZhbHVlGAEgASgJUgVWYWx1ZSKoAQoQVmFsaWRhdGlvblJlc3VsdBJgCghTZXZlcml0eRgBIAEoDjJELkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlY29tbWVuZGF0aW9ucy5WYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHlSCFNldmVyaXR5EhgKB01lc3NhZ2UYAiABKAlSB01lc3NhZ2USGAoHTWVtYmVycxgDIAMoCVIHTWVtYmVycypQChhWYWxpZGF0aW9uUmVzdWx0U2V2ZXJpdHkSCwoHVW5rbm93bhAAEg8KC0luZm9ybWF0aW9uEAESCwoHV2FybmluZxACEgkKBUVycm9yEAMy0QUKD1JlY29tbWVuZGF0aW9ucxLAAQoSQWxsUmVjb21tZW5kYXRpb25zEkUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVjb21tZW5kYXRpb25zLkFsbFJlY29tbWVuZGF0aW9uc1JlcXVlc3QaYS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWNvbW1lbmRhdGlvbnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfUmVjb21tZW5kYXRpb25EZXRhaWxzUmVzcG9uc2UwARK+AQoSR2V0UmVjb21tZW5kYXRpb25zEkUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVjb21tZW5kYXRpb25zLkdldFJlY29tbWVuZGF0aW9uc1JlcXVlc3QaYS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWNvbW1lbmRhdGlvbnMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfUmVjb21tZW5kYXRpb25EZXRhaWxzUmVzcG9uc2USmgEKFElnbm9yZVJlY29tbWVuZGF0aW9uEkcuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuUmVjb21tZW5kYXRpb25zLklnbm9yZVJlY29tbWVuZGF0aW9uUmVxdWVzdBo5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlY29tbWVuZGF0aW9ucy5Db21tYW5kUmVzdWx0EpwBChVQZXJmb3JtUmVjb21tZW5kYXRpb24SSC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5SZWNvbW1lbmRhdGlvbnMuUGVyZm9ybVJlY29tbWVuZGF0aW9uUmVxdWVzdBo5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlJlY29tbWVuZGF0aW9ucy5Db21tYW5kUmVzdWx0YgZwcm90bzMKzycKDnNlY3VyaXR5LnByb3RvEiNDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eRobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvInIKFUFkZEFwcGxpY2F0aW9uUmVxdWVzdBIZCgJJZBgBIAEoCzIJLmJjbC5HdWlkUgJJZBIaCghDbGllbnRJZBgCIAEoCVIIQ2xpZW50SWQSIgoMQ2xpZW50U2VjcmV0GAMgASgJUgxDbGllbnRTZWNyZXQigQEKDkFkZFVzZXJSZXF1ZXN0EiEKBlVzZXJJZBgBIAEoCzIJLmJjbC5HdWlkUgZVc2VySWQSGgoIVXNlcm5hbWUYAiABKAlSCFVzZXJuYW1lEhQKBUVtYWlsGAMgASgJUgVFbWFpbBIaCghQYXNzd29yZBgEIAEoCVIIUGFzc3dvcmQiagobQWRtaW5QYXNzd29yZFN0YXR1c1Jlc3BvbnNlEh4KCklzUmVxdWlyZWQYASABKAhSCklzUmVxdWlyZWQSKwoLQWRtaW5Vc2VySWQYAiABKAsyCS5iY2wuR3VpZFILQWRtaW5Vc2VySWQisAIKE0FwcGxpY2F0aW9uUmVzcG9uc2USGQoCSWQYASABKAsyCS5iY2wuR3VpZFICSWQSGgoIQ2xpZW50SWQYAiABKAlSCENsaWVudElkEhoKCElzQWN0aXZlGAMgASgIUghJc0FjdGl2ZRJdCglDcmVhdGVkQXQYBCABKAsyPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eS5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIJQ3JlYXRlZEF0EmcKDkxhc3RNb2RpZmllZEF0GAUgASgLMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSDkxhc3RNb2RpZmllZEF0Il8KHkNoYW5nZUFwcGxpY2F0aW9uU2VjcmV0UmVxdWVzdBIZCgJJZBgBIAEoCzIJLmJjbC5HdWlkUgJJZBIiCgxDbGllbnRTZWNyZXQYAiABKAlSDENsaWVudFNlY3JldCKqAQoZQ2hhbmdlVXNlclBhc3N3b3JkUmVxdWVzdBIhCgZVc2VySWQYASABKAsyCS5iY2wuR3VpZFIGVXNlcklkEiAKC09sZFBhc3N3b3JkGAIgASgJUgtPbGRQYXNzd29yZBIaCghQYXNzd29yZBgDIAEoCVIIUGFzc3dvcmQSLAoRQ29uZmlybWVkUGFzc3dvcmQYBCABKAlSEUNvbmZpcm1lZFBhc3N3b3JkIukCCg1Db21tYW5kUmVzdWx0Ei8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJjChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEj4KGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uGAYgASgJUhpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbiKZAwonUXVlcnlSZXN1bHRfQWRtaW5QYXNzd29yZFN0YXR1c1Jlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJjChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI1LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlElQKBERhdGEYBiABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eS5BZG1pblBhc3N3b3JkU3RhdHVzUmVzcG9uc2VSBERhdGEilQMKK1F1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX0FwcGxpY2F0aW9uUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmMKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USTAoERGF0YRgGIAMoCzI4LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkFwcGxpY2F0aW9uUmVzcG9uc2VSBERhdGEihwMKJFF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX1VzZXJSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSYwoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eS5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRJFCgREYXRhGAYgAygLMjEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuVXNlclJlc3BvbnNlUgREYXRhIjUKGFJlbW92ZUFwcGxpY2F0aW9uUmVxdWVzdBIZCgJJZBgBIAEoCzIJLmJjbC5HdWlkUgJJZCI2ChFSZW1vdmVVc2VyUmVxdWVzdBIhCgZVc2VySWQYASABKAsyCS5iY2wuR3VpZFIGVXNlcklkIkEKHFJlcXVpcmVQYXNzd29yZENoYW5nZVJlcXVlc3QSIQoGVXNlcklkGAEgASgLMgkuYmNsLkd1aWRSBlVzZXJJZCIyChpTZXJpYWxpemFibGVEYXRlVGltZU9mZnNldBIUCgVWYWx1ZRgBIAEoCVIFVmFsdWUijQEKHlNldEluaXRpYWxBZG1pblBhc3N3b3JkUmVxdWVzdBIhCgZVc2VySWQYASABKAsyCS5iY2wuR3VpZFIGVXNlcklkEhoKCFBhc3N3b3JkGAIgASgJUghQYXNzd29yZBIsChFDb25maXJtZWRQYXNzd29yZBgDIAEoCVIRQ29uZmlybWVkUGFzc3dvcmQi4QIKDFVzZXJSZXNwb25zZRIZCgJJZBgBIAEoCzIJLmJjbC5HdWlkUgJJZBIaCghVc2VybmFtZRgCIAEoCVIIVXNlcm5hbWUSFAoFRW1haWwYAyABKAlSBUVtYWlsEhoKCElzQWN0aXZlGAQgASgIUghJc0FjdGl2ZRJdCglDcmVhdGVkQXQYBSABKAsyPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eS5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIJQ3JlYXRlZEF0EmcKDkxhc3RNb2RpZmllZEF0GAYgASgLMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSDkxhc3RNb2RpZmllZEF0EiAKC0hhc0xvZ2dlZEluGAcgASgIUgtIYXNMb2dnZWRJbiKhAQoQVmFsaWRhdGlvblJlc3VsdBJZCghTZXZlcml0eRgBIAEoDjI9LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKlAKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRILCgdVbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzKuBAoMQXBwbGljYXRpb25zEoABCg5BZGRBcHBsaWNhdGlvbhI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkFkZEFwcGxpY2F0aW9uUmVxdWVzdBoyLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkNvbW1hbmRSZXN1bHQSfQoPQWxsQXBwbGljYXRpb25zEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GlAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfQXBwbGljYXRpb25SZXNwb25zZTABEpIBChdDaGFuZ2VBcHBsaWNhdGlvblNlY3JldBJDLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkNoYW5nZUFwcGxpY2F0aW9uU2VjcmV0UmVxdWVzdBoyLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkNvbW1hbmRSZXN1bHQShgEKEVJlbW92ZUFwcGxpY2F0aW9uEj0uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuUmVtb3ZlQXBwbGljYXRpb25SZXF1ZXN0GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuQ29tbWFuZFJlc3VsdDKKBwoFVXNlcnMScgoHQWRkVXNlchIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkFkZFVzZXJSZXF1ZXN0GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuQ29tbWFuZFJlc3VsdBJvCghBbGxVc2VycxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRpJLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LlF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX1VzZXJSZXNwb25zZTABEogBChJDaGFuZ2VVc2VyUGFzc3dvcmQSPi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eS5DaGFuZ2VVc2VyUGFzc3dvcmRSZXF1ZXN0GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuQ29tbWFuZFJlc3VsdBJxCglHZXRTdGF0dXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaTC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWN1cml0eS5RdWVyeVJlc3VsdF9BZG1pblBhc3N3b3JkU3RhdHVzUmVzcG9uc2USeAoKUmVtb3ZlVXNlchI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LlJlbW92ZVVzZXJSZXF1ZXN0GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuQ29tbWFuZFJlc3VsdBKOAQoVUmVxdWlyZVBhc3N3b3JkQ2hhbmdlEkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuUmVxdWlyZVBhc3N3b3JkQ2hhbmdlUmVxdWVzdBoyLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlY3VyaXR5LkNvbW1hbmRSZXN1bHQSkgEKF1NldEluaXRpYWxBZG1pblBhc3N3b3JkEkMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuU2V0SW5pdGlhbEFkbWluUGFzc3dvcmRSZXF1ZXN0GjIuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VjdXJpdHkuQ29tbWFuZFJlc3VsdGIGcHJvdG8zCrQZCg1zZWVkaW5nLnByb3RvEiJDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nGhZwcm90b2J1Zi1uZXQvYmNsLnByb3RvItEBChNBZGRTZWVkRW50cnlSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USJAoNRXZlbnRTb3VyY2VJZBgDIAEoCVINRXZlbnRTb3VyY2VJZBIgCgtFdmVudFR5cGVJZBgEIAEoCVILRXZlbnRUeXBlSWQSGAoHQ29udGVudBgFIAEoCVIHQ29udGVudBIaCghJc0dsb2JhbBgGIAEoCFIISXNHbG9iYWwi6AIKDUNvbW1hbmRSZXN1bHQSLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmIKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjQuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRI+ChpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhgGIAEoCVIaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24iigEKFkV2ZW50U291cmNlU2VlZEVudHJpZXMSJAoNRXZlbnRTb3VyY2VJZBgBIAEoCVINRXZlbnRTb3VyY2VJZBJKCgdFbnRyaWVzGAIgAygLMjAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5TZWVkaW5nRW50cnlSB0VudHJpZXMihAEKFEV2ZW50VHlwZVNlZWRFbnRyaWVzEiAKC0V2ZW50VHlwZUlkGAEgASgJUgtFdmVudFR5cGVJZBJKCgdFbnRyaWVzGAIgAygLMjAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5TZWVkaW5nRW50cnlSB0VudHJpZXMiOgoYR2V0R2xvYmFsU2VlZERhdGFSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUiWwobR2V0TmFtZXNwYWNlU2VlZERhdGFSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2Ui8wEKFU5hbWVzcGFjZWRTZWVkRW50cmllcxIcCglOYW1lc3BhY2UYASABKAlSCU5hbWVzcGFjZRJaCgtCeUV2ZW50VHlwZRgCIAMoCzI4LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuRXZlbnRUeXBlU2VlZEVudHJpZXNSC0J5RXZlbnRUeXBlEmAKDUJ5RXZlbnRTb3VyY2UYAyADKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nLkV2ZW50U291cmNlU2VlZEVudHJpZXNSDUJ5RXZlbnRTb3VyY2UigQMKHFF1ZXJ5UmVzdWx0X1NlZWREYXRhUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmIKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjQuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRJICgREYXRhGAYgASgLMjQuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5TZWVkRGF0YVJlc3BvbnNlUgREYXRhItABChBTZWVkRGF0YVJlc3BvbnNlEloKC0J5RXZlbnRUeXBlGAEgAygLMjguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5FdmVudFR5cGVTZWVkRW50cmllc1ILQnlFdmVudFR5cGUSYAoNQnlFdmVudFNvdXJjZRgCIAMoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuRXZlbnRTb3VyY2VTZWVkRW50cmllc1INQnlFdmVudFNvdXJjZSLyAgoRU2VlZEV2ZW50c1JlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRJmChFHbG9iYWxCeUV2ZW50VHlwZRgCIAMoCzI4LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuRXZlbnRUeXBlU2VlZEVudHJpZXNSEUdsb2JhbEJ5RXZlbnRUeXBlEmwKE0dsb2JhbEJ5RXZlbnRTb3VyY2UYAyADKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nLkV2ZW50U291cmNlU2VlZEVudHJpZXNSE0dsb2JhbEJ5RXZlbnRTb3VyY2USZwoRTmFtZXNwYWNlZEVudHJpZXMYBCADKAsyOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nLk5hbWVzcGFjZWRTZWVkRW50cmllc1IRTmFtZXNwYWNlZEVudHJpZXMihAEKDFNlZWRpbmdFbnRyeRIkCg1FdmVudFNvdXJjZUlkGAEgASgJUg1FdmVudFNvdXJjZUlkEiAKC0V2ZW50VHlwZUlkGAIgASgJUgtFdmVudFR5cGVJZBIYCgdDb250ZW50GAMgASgJUgdDb250ZW50EhIKBFRhZ3MYBCADKAlSBFRhZ3MioAEKEFZhbGlkYXRpb25SZXN1bHQSWAoIU2V2ZXJpdHkYASABKA4yPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nLlZhbGlkYXRpb25SZXN1bHRTZXZlcml0eVIIU2V2ZXJpdHkSGAoHTWVzc2FnZRgCIAEoCVIHTWVzc2FnZRIYCgdNZW1iZXJzGAMgAygJUgdNZW1iZXJzKlAKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRILCgdVbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzK0BAoMRXZlbnRTZWVkaW5nEnoKDEFkZFNlZWRFbnRyeRI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuQWRkU2VlZEVudHJ5UmVxdWVzdBoxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuQ29tbWFuZFJlc3VsdBKTAQoRR2V0R2xvYmFsU2VlZERhdGESPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nLkdldEdsb2JhbFNlZWREYXRhUmVxdWVzdBpALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuUXVlcnlSZXN1bHRfU2VlZERhdGFSZXNwb25zZRKZAQoUR2V0TmFtZXNwYWNlU2VlZERhdGESPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZWVkaW5nLkdldE5hbWVzcGFjZVNlZWREYXRhUmVxdWVzdBpALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuUXVlcnlSZXN1bHRfU2VlZERhdGFSZXNwb25zZRJ2CgpTZWVkRXZlbnRzEjUuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VlZGluZy5TZWVkRXZlbnRzUmVxdWVzdBoxLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlZWRpbmcuQ29tbWFuZFJlc3VsdGIGcHJvdG8zCvmrAQoPc2VxdWVuY2VzLnByb3RvEiRDcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMaFnByb3RvYnVmLW5ldC9iY2wucHJvdG8iWAoYQWxsRXZlbnRTZXF1ZW5jZXNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2UisAQKIEFwcGVuZE1hbnlGb3JFdmVudFNvdXJjZXNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAMgASgJUg9FdmVudFNlcXVlbmNlSWQSUwoGRXZlbnRzGAQgAygLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkV2ZW50Rm9yRXZlbnRTb3VyY2VJZFIGRXZlbnRzEi8KDUNvcnJlbGF0aW9uSWQYBSABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBISCgRUYWdzGAYgAygJUgRUYWdzEk0KCUNhdXNhdGlvbhgHIAMoCzIvLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5DYXVzYXRpb25SCUNhdXNhdGlvbhJKCghDYXVzZWRCeRgIIAEoCzIuLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5JZGVudGl0eVIIQ2F1c2VkQnkSbwoRQ29uY3VycmVuY3lTY29wZXMYCSADKAsyQS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRTb3VyY2VDb25jdXJyZW5jeVNjb3BlUhFDb25jdXJyZW5jeVNjb3BlcyKQBQoRQXBwZW5kTWFueVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBIkCg1FdmVudFNvdXJjZUlkGAQgASgJUg1FdmVudFNvdXJjZUlkEksKBkV2ZW50cxgFIAMoCzIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5FdmVudFRvQXBwZW5kUgZFdmVudHMSLwoNQ29ycmVsYXRpb25JZBgGIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEhIKBFRhZ3MYByADKAlSBFRhZ3MSTQoJQ2F1c2F0aW9uGAggAygLMi8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNhdXNhdGlvblIJQ2F1c2F0aW9uEkoKCENhdXNlZEJ5GAkgASgLMi4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLklkZW50aXR5UghDYXVzZWRCeRJiChBDb25jdXJyZW5jeVNjb3BlGAogASgLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNvbmN1cnJlbmN5U2NvcGVSEENvbmN1cnJlbmN5U2NvcGUSXAoIT2NjdXJyZWQYCyABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkItwEChJBcHBlbmRNYW55UmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiwKD1NlcXVlbmNlTnVtYmVycxgCIAMoBEICEABSD1NlcXVlbmNlTnVtYmVycxIcCglJc1N1Y2Nlc3MYAyABKAhSCUlzU3VjY2VzcxI4ChdIYXNDb25zdHJhaW50VmlvbGF0aW9ucxgEIAEoCFIXSGFzQ29uc3RyYWludFZpb2xhdGlvbnMSOgoYSGFzQ29uY3VycmVuY3lWaW9sYXRpb25zGAUgASgIUhhIYXNDb25jdXJyZW5jeVZpb2xhdGlvbnMSHAoJSGFzRXJyb3JzGAYgASgIUglIYXNFcnJvcnMSPAoZQ29uY3VycmVuY3lDaGVja1BlcmZvcm1lZBgHIAEoCFIZQ29uY3VycmVuY3lDaGVja1BlcmZvcm1lZBJtChRDb25zdHJhaW50VmlvbGF0aW9ucxgIIAMoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db25zdHJhaW50VmlvbGF0aW9uUhRDb25zdHJhaW50VmlvbGF0aW9ucxIWCgZFcnJvcnMYCSADKAlSBkVycm9ycxJwChVDb25jdXJyZW5jeVZpb2xhdGlvbnMYCiADKAsyOi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ29uY3VycmVuY3lWaW9sYXRpb25SFUNvbmN1cnJlbmN5VmlvbGF0aW9ucyLqBwoNQXBwZW5kUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEigKD0V2ZW50U2VxdWVuY2VJZBgDIAEoCVIPRXZlbnRTZXF1ZW5jZUlkEiQKDUV2ZW50U291cmNlSWQYBCABKAlSDUV2ZW50U291cmNlSWQSKAoPRXZlbnRTb3VyY2VUeXBlGAUgASgJUg9FdmVudFNvdXJjZVR5cGUSKAoPRXZlbnRTdHJlYW1UeXBlGAYgASgJUg9FdmVudFN0cmVhbVR5cGUSJAoNRXZlbnRTdHJlYW1JZBgHIAEoCVINRXZlbnRTdHJlYW1JZBJNCglFdmVudFR5cGUYCCABKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRUeXBlUglFdmVudFR5cGUSWgoHQ29udGVudBgJIAMoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5BcHBlbmRSZXF1ZXN0LkNvbnRlbnRFbnRyeVIHQ29udGVudBIvCg1Db3JyZWxhdGlvbklkGAogASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSEgoEVGFncxgLIAMoCVIEVGFncxJcCghPY2N1cnJlZBgMIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSGAoHU3ViamVjdBgNIAEoCVIHU3ViamVjdBJNCglDYXVzYXRpb24YDiADKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ2F1c2F0aW9uUglDYXVzYXRpb24SSgoIQ2F1c2VkQnkYDyABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSWRlbnRpdHlSCENhdXNlZEJ5EmIKEENvbmN1cnJlbmN5U2NvcGUYECABKAsyNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ29uY3VycmVuY3lTY29wZVIQQ29uY3VycmVuY3lTY29wZRpqCgxDb250ZW50RW50cnkSEAoDa2V5GAEgASgJUgNrZXkSRAoFdmFsdWUYAiABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSnNvbk5vZGVSBXZhbHVlOgI4ASLQBAoOQXBwZW5kUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiYKDlNlcXVlbmNlTnVtYmVyGAIgASgEUg5TZXF1ZW5jZU51bWJlchIcCglJc1N1Y2Nlc3MYAyABKAhSCUlzU3VjY2VzcxI4ChdIYXNDb25zdHJhaW50VmlvbGF0aW9ucxgEIAEoCFIXSGFzQ29uc3RyYWludFZpb2xhdGlvbnMSOgoYSGFzQ29uY3VycmVuY3lWaW9sYXRpb25zGAUgASgIUhhIYXNDb25jdXJyZW5jeVZpb2xhdGlvbnMSHAoJSGFzRXJyb3JzGAYgASgIUglIYXNFcnJvcnMSPAoZQ29uY3VycmVuY3lDaGVja1BlcmZvcm1lZBgHIAEoCFIZQ29uY3VycmVuY3lDaGVja1BlcmZvcm1lZBJtChRDb25zdHJhaW50VmlvbGF0aW9ucxgIIAMoCzI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db25zdHJhaW50VmlvbGF0aW9uUhRDb25zdHJhaW50VmlvbGF0aW9ucxIWCgZFcnJvcnMYCSADKAlSBkVycm9ycxJuChRDb25jdXJyZW5jeVZpb2xhdGlvbhgKIAEoCzI6LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db25jdXJyZW5jeVZpb2xhdGlvblIUQ29uY3VycmVuY3lWaW9sYXRpb24i/wIKFUFwcGVuZGVkRXZlbnRSZXNwb25zZRIOCgJJZBgBIAEoCVICSWQSTAoHQ29udGV4dBgCIAEoCzIyLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5FdmVudENvbnRleHRSB0NvbnRleHQSGAoHQ29udGVudBgDIAEoCVIHQ29udGVudBIoCg9PcmlnaW5hbENvbnRlbnQYBCABKAlSD09yaWdpbmFsQ29udGVudBJRCglSZXZpc2lvbnMYBSADKAsyMy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRSZXZpc2lvblIJUmV2aXNpb25zEnEKE0dlbmVyYXRpb25hbENvbnRlbnQYBiADKAsyPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuS2V5VmFsdWVQYWlyX0ludDMyX1N0cmluZ1ITR2VuZXJhdGlvbmFsQ29udGVudCKlAQoVQXBwZW5kZWRFdmVudHNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYAiABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAMgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSJAoNRXZlbnRTb3VyY2VJZBgFIAEoCVINRXZlbnRTb3VyY2VJZCKdAgoJQ2F1c2F0aW9uElwKCE9jY3VycmVkGAEgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBISCgRUeXBlGAIgASgJUgRUeXBlEl8KClByb3BlcnRpZXMYAyADKAsyPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ2F1c2F0aW9uLlByb3BlcnRpZXNFbnRyeVIKUHJvcGVydGllcxo9Cg9Qcm9wZXJ0aWVzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASLqAgoNQ29tbWFuZFJlc3VsdBIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZAoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uItMDCiBDb21tYW5kUmVzdWx0X0FwcGVuZE1hbnlSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZAoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uElQKCFJlc3BvbnNlGAcgASgLMjguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkFwcGVuZE1hbnlSZXNwb25zZVIIUmVzcG9uc2UiywMKHENvbW1hbmRSZXN1bHRfQXBwZW5kUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmQKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEj4KGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uGAYgASgJUhpBdXRob3JpemF0aW9uRmFpbHVyZVJlYXNvbhJQCghSZXNwb25zZRgHIAEoCzI0LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5BcHBlbmRSZXNwb25zZVIIUmVzcG9uc2Ui2wMKJENvbW1hbmRSZXN1bHRfQ29tcGxldGVTdHJlYW1SZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZAoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USPgoaQXV0aG9yaXphdGlvbkZhaWx1cmVSZWFzb24YBiABKAlSGkF1dGhvcml6YXRpb25GYWlsdXJlUmVhc29uElgKCFJlc3BvbnNlGAcgASgLMjwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNvbXBsZXRlU3RyZWFtUmVzcG9uc2VSCFJlc3BvbnNlIs8BChVDb21wbGV0ZVN0cmVhbVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBIoCg9FdmVudFN0cmVhbVR5cGUYBCABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAUgASgJUg1FdmVudFN0cmVhbUlkIq8BChZDb21wbGV0ZVN0cmVhbVJlc3BvbnNlEhwKCUlzU3VjY2VzcxgBIAEoCFIJSXNTdWNjZXNzEiYKDlNlcXVlbmNlTnVtYmVyGAIgASgEUg5TZXF1ZW5jZU51bWJlchJPCgVFcnJvchgDIAEoDjI5LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db21wbGV0ZVN0cmVhbUVycm9yUgVFcnJvciLjAgoQQ29uY3VycmVuY3lTY29wZRImCg5TZXF1ZW5jZU51bWJlchgBIAEoBFIOU2VxdWVuY2VOdW1iZXISJAoNRXZlbnRTb3VyY2VJZBgCIAEoCFINRXZlbnRTb3VyY2VJZBIoCg9FdmVudFN0cmVhbVR5cGUYAyABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAQgASgJUg1FdmVudFN0cmVhbUlkEigKD0V2ZW50U291cmNlVHlwZRgFIAEoCVIPRXZlbnRTb3VyY2VUeXBlEk8KCkV2ZW50VHlwZXMYBiADKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRUeXBlUgpFdmVudFR5cGVzEjYKFkV4cGVjdHNOb01hdGNoaW5nRXZlbnQYByABKAhSFkV4cGVjdHNOb01hdGNoaW5nRXZlbnQiqAEKFENvbmN1cnJlbmN5VmlvbGF0aW9uEiQKDUV2ZW50U291cmNlSWQYASABKAlSDUV2ZW50U291cmNlSWQSNgoWRXhwZWN0ZWRTZXF1ZW5jZU51bWJlchgCIAEoBFIWRXhwZWN0ZWRTZXF1ZW5jZU51bWJlchIyChRBY3R1YWxTZXF1ZW5jZU51bWJlchgDIAEoBFIUQWN0dWFsU2VxdWVuY2VOdW1iZXIinQMKE0NvbnN0cmFpbnRWaW9sYXRpb24SIAoLRXZlbnRUeXBlSWQYASABKAlSC0V2ZW50VHlwZUlkEiYKDlNlcXVlbmNlTnVtYmVyGAIgASgEUg5TZXF1ZW5jZU51bWJlchJcCg5Db25zdHJhaW50VHlwZRgDIAEoDjI0LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db25zdHJhaW50VHlwZVIOQ29uc3RyYWludFR5cGUSJgoOQ29uc3RyYWludE5hbWUYBCABKAlSDkNvbnN0cmFpbnROYW1lEhgKB01lc3NhZ2UYBSABKAlSB01lc3NhZ2USYAoHRGV0YWlscxgGIAMoCzJGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db25zdHJhaW50VmlvbGF0aW9uLkRldGFpbHNFbnRyeVIHRGV0YWlscxo6CgxEZXRhaWxzRW50cnkSEAoDa2V5GAEgASgJUgNrZXkSFAoFdmFsdWUYAiABKAlSBXZhbHVlOgI4ASLBAQoMRW5kT2ZSZXF1ZXN0ElYKBVN0YXJ0GAEgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UgVTdGFydBJZCgpSZXNvbHV0aW9uGAIgASgOMjkuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkhpc3RvZ3JhbVJlc29sdXRpb25SClJlc29sdXRpb24i4AUKDEV2ZW50Q29udGV4dBJNCglFdmVudFR5cGUYASABKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRUeXBlUglFdmVudFR5cGUSKAoPRXZlbnRTb3VyY2VUeXBlGAIgASgJUg9FdmVudFNvdXJjZVR5cGUSJAoNRXZlbnRTb3VyY2VJZBgDIAEoCVINRXZlbnRTb3VyY2VJZBImCg5TZXF1ZW5jZU51bWJlchgEIAEoBFIOU2VxdWVuY2VOdW1iZXISKAoPRXZlbnRTdHJlYW1UeXBlGAUgASgJUg9FdmVudFN0cmVhbVR5cGUSJAoNRXZlbnRTdHJlYW1JZBgGIAEoCVINRXZlbnRTdHJlYW1JZBJcCghPY2N1cnJlZBgHIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSLwoNQ29ycmVsYXRpb25JZBgIIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEk0KCUNhdXNhdGlvbhgJIAMoCzIvLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5DYXVzYXRpb25SCUNhdXNhdGlvbhJKCghDYXVzZWRCeRgKIAEoCzIuLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5JZGVudGl0eVIIQ2F1c2VkQnkSEgoEVGFncxgLIAMoCVIEVGFncxISCgRIYXNoGAwgASgJUgRIYXNoEmcKEE9ic2VydmF0aW9uU3RhdGUYDSABKA4yOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRPYnNlcnZhdGlvblN0YXRlUhBPYnNlcnZhdGlvblN0YXRlIuIEChVFdmVudEZvckV2ZW50U291cmNlSWQSJAoNRXZlbnRTb3VyY2VJZBgBIAEoCVINRXZlbnRTb3VyY2VJZBIoCg9FdmVudFNvdXJjZVR5cGUYAiABKAlSD0V2ZW50U291cmNlVHlwZRIoCg9FdmVudFN0cmVhbVR5cGUYAyABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAQgASgJUg1FdmVudFN0cmVhbUlkEk0KCUV2ZW50VHlwZRgFIAEoCzIvLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5FdmVudFR5cGVSCUV2ZW50VHlwZRJiCgdDb250ZW50GAYgAygLMkguQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkV2ZW50Rm9yRXZlbnRTb3VyY2VJZC5Db250ZW50RW50cnlSB0NvbnRlbnQSEgoEVGFncxgHIAMoCVIEVGFncxJcCghPY2N1cnJlZBgIIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIIT2NjdXJyZWQSGAoHU3ViamVjdBgJIAEoCVIHU3ViamVjdBpqCgxDb250ZW50RW50cnkSEAoDa2V5GAEgASgJUgNrZXkSRAoFdmFsdWUYAiABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSnNvbk5vZGVSBXZhbHVlOgI4ASKZAgoNRXZlbnRSZXZpc2lvbhIeCgpHZW5lcmF0aW9uGAEgASgNUgpHZW5lcmF0aW9uEiQKDUNvcnJlbGF0aW9uSWQYAiABKAlSDUNvcnJlbGF0aW9uSWQSSgoIQ2F1c2VkQnkYAyABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSWRlbnRpdHlSCENhdXNlZEJ5ElwKCE9jY3VycmVkGAQgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UghPY2N1cnJlZBIYCgdDb250ZW50GAUgASgJUgdDb250ZW50IkAKGkV2ZW50U2VxdWVuY2VOYW1lc1Jlc3BvbnNlEg4KAklkGAEgASgJUgJJZBISCgROYW1lGAIgASgJUgROYW1lIkMKGUV2ZW50U2VxdWVuY2VUYWlsUmVzcG9uc2USJgoOU2VxdWVuY2VOdW1iZXIYASABKARSDlNlcXVlbmNlTnVtYmVyIpEBChtFdmVudFNvdXJjZUNvbmN1cnJlbmN5U2NvcGUSJAoNRXZlbnRTb3VyY2VJZBgBIAEoCVINRXZlbnRTb3VyY2VJZBJMCgVTY29wZRgCIAEoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db25jdXJyZW5jeVNjb3BlUgVTY29wZSI5ChlFdmVudFNvdXJjZUV2ZW50c1Jlc3BvbnNlEhwKCUhhc0V2ZW50cxgBIAEoCFIJSGFzRXZlbnRzIsACCg1FdmVudFRvQXBwZW5kEk0KCUV2ZW50VHlwZRgBIAEoCzIvLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5FdmVudFR5cGVSCUV2ZW50VHlwZRJaCgdDb250ZW50GAIgAygLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkV2ZW50VG9BcHBlbmQuQ29udGVudEVudHJ5UgdDb250ZW50EhgKB1N1YmplY3QYAyABKAlSB1N1YmplY3QaagoMQ29udGVudEVudHJ5EhAKA2tleRgBIAEoCVIDa2V5EkQKBXZhbHVlGAIgASgLMi4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkpzb25Ob2RlUgV2YWx1ZToCOAEiWQoJRXZlbnRUeXBlEg4KAklkGAEgASgJUgJJZBIeCgpHZW5lcmF0aW9uGAIgASgNUgpHZW5lcmF0aW9uEhwKCVRvbWJzdG9uZRgDIAEoCFIJVG9tYnN0b25lIp0EChNFeHBvcnRFdmVudHNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYAiABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAMgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSJAoNRXZlbnRTb3VyY2VJZBgFIAEoCVINRXZlbnRTb3VyY2VJZBIoCg9FdmVudFNvdXJjZVR5cGUYBiABKAlSD0V2ZW50U291cmNlVHlwZRIoCg9FdmVudFN0cmVhbVR5cGUYByABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1Db3JyZWxhdGlvbklkGAggASgJUg1Db3JyZWxhdGlvbklkEiIKDEV2ZW50VHlwZUlkcxgJIAEoCVIMRXZlbnRUeXBlSWRzEhIKBFRhZ3MYCiABKAlSBFRhZ3MSZAoMT2NjdXJyZWRGcm9tGAsgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UgxPY2N1cnJlZEZyb20SYAoKT2NjdXJyZWRUbxgMIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIKT2NjdXJyZWRUbyKJAwoVRXhwb3J0ZWRFdmVudFJlc3BvbnNlEiYKDlNlcXVlbmNlTnVtYmVyGAEgASgEUg5TZXF1ZW5jZU51bWJlchIcCglFdmVudFR5cGUYAiABKAlSCUV2ZW50VHlwZRIoCg9FdmVudFNvdXJjZVR5cGUYAyABKAlSD0V2ZW50U291cmNlVHlwZRIkCg1FdmVudFNvdXJjZUlkGAQgASgJUg1FdmVudFNvdXJjZUlkEigKD0V2ZW50U3RyZWFtVHlwZRgFIAEoCVIPRXZlbnRTdHJlYW1UeXBlEiQKDUNvcnJlbGF0aW9uSWQYBiABKAlSDUNvcnJlbGF0aW9uSWQSXAoIT2NjdXJyZWQYByABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSCE9jY3VycmVkEhIKBFRhZ3MYCCADKAlSBFRhZ3MSGAoHQ29udGVudBgJIAEoCVIHQ29udGVudCKoAgokRm9yRXZlbnRTb3VyY2VJZEFuZEV2ZW50VHlwZXNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYAiABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAMgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSJAoNRXZlbnRTb3VyY2VJZBgFIAEoCVINRXZlbnRTb3VyY2VJZBIiCgxFdmVudFR5cGVJZHMYBiABKAlSDEV2ZW50VHlwZUlkcxIoCg9FdmVudFN0cmVhbVR5cGUYByABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1FdmVudFN0cmVhbUlkGAggASgJUg1FdmVudFN0cmVhbUlkIocCChlGcm9tU2VxdWVuY2VOdW1iZXJSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYAiABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAMgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSOAoXRnJvbUV2ZW50U2VxdWVuY2VOdW1iZXIYBSABKARSF0Zyb21FdmVudFNlcXVlbmNlTnVtYmVyEiQKDUV2ZW50U291cmNlSWQYBiABKAlSDUV2ZW50U291cmNlSWQSIgoMRXZlbnRUeXBlSWRzGAcgASgJUgxFdmVudFR5cGVJZHMisAEKIEhhc0V2ZW50c0ZvckV2ZW50U291cmNlSWRSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAMgASgJUg9FdmVudFNlcXVlbmNlSWQSJAoNRXZlbnRTb3VyY2VJZBgEIAEoCVINRXZlbnRTb3VyY2VJZCKkAQoISWRlbnRpdHkSGAoHU3ViamVjdBgBIAEoCVIHU3ViamVjdBISCgROYW1lGAIgASgJUgROYW1lEhoKCFVzZXJOYW1lGAMgASgJUghVc2VyTmFtZRJOCgpPbkJlaGFsZk9mGAQgASgLMi4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLklkZW50aXR5UgpPbkJlaGFsZk9mIgoKCEpzb25Ob2RlIkMKGUtleVZhbHVlUGFpcl9JbnQzMl9TdHJpbmcSEAoDS2V5GAEgASgFUgNLZXkSFAoFVmFsdWUYAiABKAlSBVZhbHVlIjgKFlBhcnNlUmVzb2x1dGlvblJlcXVlc3QSHgoKUmVzb2x1dGlvbhgBIAEoCVIKUmVzb2x1dGlvbiKcBAoSUXVlcnlFdmVudHNSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYAiABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAMgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAQgASgJUg9FdmVudFNlcXVlbmNlSWQSJAoNRXZlbnRTb3VyY2VJZBgFIAEoCVINRXZlbnRTb3VyY2VJZBIoCg9FdmVudFNvdXJjZVR5cGUYBiABKAlSD0V2ZW50U291cmNlVHlwZRIoCg9FdmVudFN0cmVhbVR5cGUYByABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1Db3JyZWxhdGlvbklkGAggASgJUg1Db3JyZWxhdGlvbklkEiIKDEV2ZW50VHlwZUlkcxgJIAEoCVIMRXZlbnRUeXBlSWRzEhIKBFRhZ3MYCiABKAlSBFRhZ3MSZAoMT2NjdXJyZWRGcm9tGAsgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UgxPY2N1cnJlZEZyb20SYAoKT2NjdXJyZWRUbxgMIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIKT2NjdXJyZWRUbyKXAwolUXVlcnlSZXN1bHRfRXZlbnRTZXF1ZW5jZVRhaWxSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZAoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USUwoERGF0YRgGIAEoCzI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5FdmVudFNlcXVlbmNlVGFpbFJlc3BvbnNlUgREYXRhIpcDCiVRdWVyeVJlc3VsdF9FdmVudFNvdXJjZUV2ZW50c1Jlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJkChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRJTCgREYXRhGAYgASgLMj8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkV2ZW50U291cmNlRXZlbnRzUmVzcG9uc2VSBERhdGEiiwMKH1F1ZXJ5UmVzdWx0X0hpc3RvZ3JhbVJlc29sdXRpb24SLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmQKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlEk0KBERhdGEYBiABKA4yOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSGlzdG9ncmFtUmVzb2x1dGlvblIERGF0YSKbAwotUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfQXBwZW5kZWRFdmVudFJlc3BvbnNlEi8KDUNvcnJlbGF0aW9uSWQYASABKAsyCS5iY2wuR3VpZFINQ29ycmVsYXRpb25JZBIiCgxJc0F1dGhvcml6ZWQYAiABKAhSDElzQXV0aG9yaXplZBJkChFWYWxpZGF0aW9uUmVzdWx0cxgDIAMoCzI2LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5WYWxpZGF0aW9uUmVzdWx0UhFWYWxpZGF0aW9uUmVzdWx0cxIsChFFeGNlcHRpb25NZXNzYWdlcxgEIAMoCVIRRXhjZXB0aW9uTWVzc2FnZXMSMAoTRXhjZXB0aW9uU3RhY2tUcmFjZRgFIAEoCVITRXhjZXB0aW9uU3RhY2tUcmFjZRJPCgREYXRhGAYgAygLMjsuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkFwcGVuZGVkRXZlbnRSZXNwb25zZVIERGF0YSKlAwoyUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfRXZlbnRTZXF1ZW5jZU5hbWVzUmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmQKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlElQKBERhdGEYBiADKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXZlbnRTZXF1ZW5jZU5hbWVzUmVzcG9uc2VSBERhdGEimwMKLVF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX0V4cG9ydGVkRXZlbnRSZXNwb25zZRIvCg1Db3JyZWxhdGlvbklkGAEgASgLMgkuYmNsLkd1aWRSDUNvcnJlbGF0aW9uSWQSIgoMSXNBdXRob3JpemVkGAIgASgIUgxJc0F1dGhvcml6ZWQSZAoRVmFsaWRhdGlvblJlc3VsdHMYAyADKAsyNi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFIRVmFsaWRhdGlvblJlc3VsdHMSLAoRRXhjZXB0aW9uTWVzc2FnZXMYBCADKAlSEUV4Y2VwdGlvbk1lc3NhZ2VzEjAKE0V4Y2VwdGlvblN0YWNrVHJhY2UYBSABKAlSE0V4Y2VwdGlvblN0YWNrVHJhY2USTwoERGF0YRgGIAMoCzI7LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5FeHBvcnRlZEV2ZW50UmVzcG9uc2VSBERhdGEirwMKN1F1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX1NlcXVlbmNlSGlzdG9ncmFtQnVja2V0UmVzcG9uc2USLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmQKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlElkKBERhdGEYBiADKAsyRS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuU2VxdWVuY2VIaXN0b2dyYW1CdWNrZXRSZXNwb25zZVIERGF0YSKZAwomUXVlcnlSZXN1bHRfU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXQSLwoNQ29ycmVsYXRpb25JZBgBIAEoCzIJLmJjbC5HdWlkUg1Db3JyZWxhdGlvbklkEiIKDElzQXV0aG9yaXplZBgCIAEoCFIMSXNBdXRob3JpemVkEmQKEVZhbGlkYXRpb25SZXN1bHRzGAMgAygLMjYuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlZhbGlkYXRpb25SZXN1bHRSEVZhbGlkYXRpb25SZXN1bHRzEiwKEUV4Y2VwdGlvbk1lc3NhZ2VzGAQgAygJUhFFeGNlcHRpb25NZXNzYWdlcxIwChNFeGNlcHRpb25TdGFja1RyYWNlGAUgASgJUhNFeGNlcHRpb25TdGFja1RyYWNlElQKBERhdGEYBiABKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuU2VyaWFsaXphYmxlRGF0ZVRpbWVPZmZzZXRSBERhdGEi/gIKG1JlZGFjdEZvckV2ZW50U291cmNlUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEigKD0V2ZW50U2VxdWVuY2VJZBgDIAEoCVIPRXZlbnRTZXF1ZW5jZUlkEiQKDUV2ZW50U291cmNlSWQYBCABKAlSDUV2ZW50U291cmNlSWQSFgoGUmVhc29uGAUgASgJUgZSZWFzb24SHgoKRXZlbnRUeXBlcxgGIAMoCVIKRXZlbnRUeXBlcxJNCglDYXVzYXRpb24YByADKAsyLy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ2F1c2F0aW9uUglDYXVzYXRpb24SSgoIQ2F1c2VkQnkYCCABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSWRlbnRpdHlSCENhdXNlZEJ5ItICCg1SZWRhY3RSZXF1ZXN0Eh4KCkV2ZW50U3RvcmUYASABKAlSCkV2ZW50U3RvcmUSHAoJTmFtZXNwYWNlGAIgASgJUglOYW1lc3BhY2USKAoPRXZlbnRTZXF1ZW5jZUlkGAMgASgJUg9FdmVudFNlcXVlbmNlSWQSJgoOU2VxdWVuY2VOdW1iZXIYBCABKARSDlNlcXVlbmNlTnVtYmVyEhYKBlJlYXNvbhgFIAEoCVIGUmVhc29uEk0KCUNhdXNhdGlvbhgGIAMoCzIvLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5DYXVzYXRpb25SCUNhdXNhdGlvbhJKCghDYXVzZWRCeRgHIAEoCzIuLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5JZGVudGl0eVIIQ2F1c2VkQnki0QQKDVJldmlzZVJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBImCg5TZXF1ZW5jZU51bWJlchgEIAEoBFIOU2VxdWVuY2VOdW1iZXISTQoJRXZlbnRUeXBlGAUgASgLMi8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkV2ZW50VHlwZVIJRXZlbnRUeXBlEloKB0NvbnRlbnQYBiADKAsyQC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuUmV2aXNlUmVxdWVzdC5Db250ZW50RW50cnlSB0NvbnRlbnQSTQoJQ2F1c2F0aW9uGAcgAygLMi8uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNhdXNhdGlvblIJQ2F1c2F0aW9uEkoKCENhdXNlZEJ5GAggASgLMi4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLklkZW50aXR5UghDYXVzZWRCeRpqCgxDb250ZW50RW50cnkSEAoDa2V5GAEgASgJUgNrZXkSRAoFdmFsdWUYAiABKAsyLi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuSnNvbk5vZGVSBXZhbHVlOgI4ASLfAQofU2VxdWVuY2VIaXN0b2dyYW1CdWNrZXRSZXNwb25zZRJUCgRGcm9tGAEgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UgRGcm9tElAKAlRvGAIgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UgJUbxIUCgVDb3VudBgDIAEoA1IFQ291bnQiwgQKGFNlcXVlbmNlSGlzdG9ncmFtUmVxdWVzdBIeCgpFdmVudFN0b3JlGAEgASgJUgpFdmVudFN0b3JlEhwKCU5hbWVzcGFjZRgCIAEoCVIJTmFtZXNwYWNlEigKD0V2ZW50U2VxdWVuY2VJZBgDIAEoCVIPRXZlbnRTZXF1ZW5jZUlkEh4KClJlc29sdXRpb24YBCABKAlSClJlc29sdXRpb24SJAoNRXZlbnRTb3VyY2VJZBgFIAEoCVINRXZlbnRTb3VyY2VJZBIoCg9FdmVudFNvdXJjZVR5cGUYBiABKAlSD0V2ZW50U291cmNlVHlwZRIoCg9FdmVudFN0cmVhbVR5cGUYByABKAlSD0V2ZW50U3RyZWFtVHlwZRIkCg1Db3JyZWxhdGlvbklkGAggASgJUg1Db3JyZWxhdGlvbklkEiIKDEV2ZW50VHlwZUlkcxgJIAEoCVIMRXZlbnRUeXBlSWRzEhIKBFRhZ3MYCiABKAlSBFRhZ3MSZAoMT2NjdXJyZWRGcm9tGAsgASgLMkAuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0UgxPY2N1cnJlZEZyb20SYAoKT2NjdXJyZWRUbxgMIAEoCzJALkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5TZXJpYWxpemFibGVEYXRlVGltZU9mZnNldFIKT2NjdXJyZWRUbyIyChpTZXJpYWxpemFibGVEYXRlVGltZU9mZnNldBIUCgVWYWx1ZRgBIAEoCVIFVmFsdWUixwIKGVRhaWxTZXF1ZW5jZU51bWJlclJlcXVlc3QSHgoKRXZlbnRTdG9yZRgBIAEoCVIKRXZlbnRTdG9yZRIcCglOYW1lc3BhY2UYAiABKAlSCU5hbWVzcGFjZRIoCg9FdmVudFNlcXVlbmNlSWQYAyABKAlSD0V2ZW50U2VxdWVuY2VJZBIiCgxFdmVudFR5cGVJZHMYBCABKAlSDEV2ZW50VHlwZUlkcxIkCg1FdmVudFNvdXJjZUlkGAUgASgJUg1FdmVudFNvdXJjZUlkEigKD0V2ZW50U291cmNlVHlwZRgGIAEoCVIPRXZlbnRTb3VyY2VUeXBlEiQKDUV2ZW50U3RyZWFtSWQYByABKAlSDUV2ZW50U3RyZWFtSWQSKAoPRXZlbnRTdHJlYW1UeXBlGAggASgJUg9FdmVudFN0cmVhbVR5cGUiogEKEFZhbGlkYXRpb25SZXN1bHQSWgoIU2V2ZXJpdHkYASABKA4yPi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVmFsaWRhdGlvblJlc3VsdFNldmVyaXR5UghTZXZlcml0eRIYCgdNZXNzYWdlGAIgASgJUgdNZXNzYWdlEhgKB01lbWJlcnMYAyADKAlSB01lbWJlcnMqbwoTQ29tcGxldGVTdHJlYW1FcnJvchIeChpDT01QTEVURV9TVFJFQU1fRVJST1JfTm9uZRAAEhQKEEFscmVhZHlDb21wbGV0ZWQQARIiCh5EZWZhdWx0U3RyZWFtQ2Fubm90QmVDb21wbGV0ZWQQAipsCg5Db25zdHJhaW50VHlwZRIbChdDT05TVFJBSU5UX1RZUEVfVW5rbm93bhAAEgoKBlVuaXF1ZRABEhMKD1VuaXF1ZUV2ZW50VHlwZRACEgoKBlNjaGVtYRADEhAKDFN0cmVhbUNsb3NlZBAEKlIKFUV2ZW50T2JzZXJ2YXRpb25TdGF0ZRIgChxFVkVOVF9PQlNFUlZBVElPTl9TVEFURV9Ob25lEAASCwoHSW5pdGlhbBABEgoKBlJlcGxheRACKkkKE0hpc3RvZ3JhbVJlc29sdXRpb24SCgoGTWludXRlEAASCAoESG91chABEgcKA0RheRACEggKBFdlZWsQAxIJCgVNb250aBAEKmsKGFZhbGlkYXRpb25SZXN1bHRTZXZlcml0eRImCiJWQUxJREFUSU9OX1JFU1VMVF9TRVZFUklUWV9Vbmtub3duEAASDwoLSW5mb3JtYXRpb24QARILCgdXYXJuaW5nEAISCQoFRXJyb3IQAzKeFgoORXZlbnRTZXF1ZW5jZXMSrQEKEUFsbEV2ZW50U2VxdWVuY2VzEj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkFsbEV2ZW50U2VxdWVuY2VzUmVxdWVzdBpYLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9FdmVudFNlcXVlbmNlTmFtZXNSZXNwb25zZRKBAQoGQXBwZW5kEjMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkFwcGVuZFJlcXVlc3QaQi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ29tbWFuZFJlc3VsdF9BcHBlbmRSZXNwb25zZRKiAQoOQXBwZW5kZWRFdmVudHMSOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQXBwZW5kZWRFdmVudHNSZXF1ZXN0GlMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX0FwcGVuZGVkRXZlbnRSZXNwb25zZRKNAQoKQXBwZW5kTWFueRI3LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5BcHBlbmRNYW55UmVxdWVzdBpGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db21tYW5kUmVzdWx0X0FwcGVuZE1hbnlSZXNwb25zZRKrAQoZQXBwZW5kTWFueUZvckV2ZW50U291cmNlcxJGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5BcHBlbmRNYW55Rm9yRXZlbnRTb3VyY2VzUmVxdWVzdBpGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db21tYW5kUmVzdWx0X0FwcGVuZE1hbnlSZXNwb25zZRKZAQoOQ29tcGxldGVTdHJlYW0SOy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuQ29tcGxldGVTdHJlYW1SZXF1ZXN0GkouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNvbW1hbmRSZXN1bHRfQ29tcGxldGVTdHJlYW1SZXNwb25zZRKJAQoFRW5kT2YSMi5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRW5kT2ZSZXF1ZXN0GkwuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlF1ZXJ5UmVzdWx0X1NlcmlhbGl6YWJsZURhdGVUaW1lT2Zmc2V0Ep4BCgxFeHBvcnRFdmVudHMSOS5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuRXhwb3J0RXZlbnRzUmVxdWVzdBpTLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9FeHBvcnRlZEV2ZW50UmVzcG9uc2USwAEKHUZvckV2ZW50U291cmNlSWRBbmRFdmVudFR5cGVzEkouQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkZvckV2ZW50U291cmNlSWRBbmRFdmVudFR5cGVzUmVxdWVzdBpTLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9BcHBlbmRlZEV2ZW50UmVzcG9uc2USqgEKEkZyb21TZXF1ZW5jZU51bWJlchI/LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Gcm9tU2VxdWVuY2VOdW1iZXJSZXF1ZXN0GlMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlF1ZXJ5UmVzdWx0X0lFbnVtZXJhYmxlX0FwcGVuZGVkRXZlbnRSZXNwb25zZRKwAQoZSGFzRXZlbnRzRm9yRXZlbnRTb3VyY2VJZBJGLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5IYXNFdmVudHNGb3JFdmVudFNvdXJjZUlkUmVxdWVzdBpLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9FdmVudFNvdXJjZUV2ZW50c1Jlc3BvbnNlEpYBCg9QYXJzZVJlc29sdXRpb24SPC5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuUGFyc2VSZXNvbHV0aW9uUmVxdWVzdBpFLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9IaXN0b2dyYW1SZXNvbHV0aW9uEpwBCgtRdWVyeUV2ZW50cxI4LkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeUV2ZW50c1JlcXVlc3QaUy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuUXVlcnlSZXN1bHRfSUVudW1lcmFibGVfQXBwZW5kZWRFdmVudFJlc3BvbnNlEnIKBlJlZGFjdBIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5SZWRhY3RSZXF1ZXN0GjMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNvbW1hbmRSZXN1bHQSjgEKFFJlZGFjdEZvckV2ZW50U291cmNlEkEuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlJlZGFjdEZvckV2ZW50U291cmNlUmVxdWVzdBozLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5Db21tYW5kUmVzdWx0EnIKBlJldmlzZRIzLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5SZXZpc2VSZXF1ZXN0GjMuQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLkNvbW1hbmRSZXN1bHQSsgEKEVNlcXVlbmNlSGlzdG9ncmFtEj4uQ3JhdGlzLkNocm9uaWNsZS5Db250cmFjdHMuU2VxdWVuY2VzLlNlcXVlbmNlSGlzdG9ncmFtUmVxdWVzdBpdLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9JRW51bWVyYWJsZV9TZXF1ZW5jZUhpc3RvZ3JhbUJ1Y2tldFJlc3BvbnNlEqIBChJUYWlsU2VxdWVuY2VOdW1iZXISPy5DcmF0aXMuQ2hyb25pY2xlLkNvbnRyYWN0cy5TZXF1ZW5jZXMuVGFpbFNlcXVlbmNlTnVtYmVyUmVxdWVzdBpLLkNyYXRpcy5DaHJvbmljbGUuQ29udHJhY3RzLlNlcXVlbmNlcy5RdWVyeVJlc3VsdF9FdmVudFNlcXVlbmNlVGFpbFJlc3BvbnNlYgZwcm90bzMKgQQKFnByb3RvYnVmLW5ldC9iY2wucHJvdG8SA2JjbCImCgRHdWlkEg4KAmxvGAEgASgGUgJsbxIOCgJoaRgCIAEoBlICaGkiSgoIRGF0ZVRpbWUSFAoFdmFsdWUYASABKBJSBXZhbHVlEigKBXNjYWxlGAIgASgOMhIuYmNsLlRpbWVTcGFuU2NhbGVSBXNjYWxlIkoKCFRpbWVTcGFuEhQKBXZhbHVlGAEgASgSUgV2YWx1ZRIoCgVzY2FsZRgCIAEoDjISLmJjbC5UaW1lU3BhblNjYWxlUgVzY2FsZSJoCg5EYXRlVGltZU9mZnNldBIUCgV2YWx1ZRgBIAEoElIFdmFsdWUSFgoGb2Zmc2V0GAIgASgRUgZvZmZzZXQSKAoFc2NhbGUYAyABKA4yEi5iY2wuVGltZVNwYW5TY2FsZVIFc2NhbGUiRwoHRGVjaW1hbBIOCgJsbxgBIAEoBFICbG8SDgoCaGkYAiABKA1SAmhpEhwKCXNpZ25TY2FsZRgDIAEoDVIJc2lnblNjYWxlKmcKDVRpbWVTcGFuU2NhbGUSCAoEREFZUxAAEgkKBUhPVVJTEAESCwoHTUlOVVRFUxACEgsKB1NFQ09ORFMQAxIQCgxNSUxMSVNFQ09ORFMQBBIJCgVUSUNLUxAFEgoKBk1JTk1BWBAPYgZwcm90bzMKvgEKG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIgcKBUVtcHR5Qn0KE2NvbS5nb29nbGUucHJvdG9idWZCCkVtcHR5UHJvdG9QAVouZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZW1wdHlwYvgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc2IGcHJvdG8z';
2
+ export const chronicleDescriptorSet = Uint8Array.from(atob(encoded), _ => _.charCodeAt(0));
3
+ //# sourceMappingURL=descriptorSet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descriptorSet.js","sourceRoot":"","sources":["../../generated/descriptorSet.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,GACT,0twJAA0twJ,CAAC;AAO/twJ,MAAM,CAAC,MAAM,sBAAsB,GAAe,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC"}