@cdk_utils/iam 1.15.0 → 1.16.0

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 (464) hide show
  1. package/.jsii +9613 -7155
  2. package/lib/generated/services/a2c.js +1 -1
  3. package/lib/generated/services/a4b.js +3 -3
  4. package/lib/generated/services/access-analyzer.js +4 -4
  5. package/lib/generated/services/account-access.js +4 -4
  6. package/lib/generated/services/account.js +4 -4
  7. package/lib/generated/services/acm-pca.js +4 -4
  8. package/lib/generated/services/acm.js +4 -4
  9. package/lib/generated/services/aco-automation.js +4 -4
  10. package/lib/generated/services/action-recommendations.js +1 -1
  11. package/lib/generated/services/activate.js +1 -1
  12. package/lib/generated/services/agent-registry.js +4 -4
  13. package/lib/generated/services/agentaccess-mcp.js +2 -2
  14. package/lib/generated/services/aidevops.js +4 -4
  15. package/lib/generated/services/aiops.js +4 -4
  16. package/lib/generated/services/airflow-serverless.js +4 -4
  17. package/lib/generated/services/airflow.js +4 -4
  18. package/lib/generated/services/amplify.js +4 -4
  19. package/lib/generated/services/amplifybackend.js +3 -3
  20. package/lib/generated/services/amplifyuibuilder.js +4 -4
  21. package/lib/generated/services/aoss.js +4 -4
  22. package/lib/generated/services/apigateway.js +4 -4
  23. package/lib/generated/services/app-integrations.js +4 -4
  24. package/lib/generated/services/appconfig.js +4 -4
  25. package/lib/generated/services/appfabric.js +4 -4
  26. package/lib/generated/services/appflow.js +4 -4
  27. package/lib/generated/services/application-autoscaling.js +4 -4
  28. package/lib/generated/services/application-signals-mcp.js +3 -3
  29. package/lib/generated/services/application-signals.js +4 -4
  30. package/lib/generated/services/application-transformation.js +1 -1
  31. package/lib/generated/services/applicationinsights.js +3 -3
  32. package/lib/generated/services/appmesh-preview.js +2 -2
  33. package/lib/generated/services/appmesh.js +4 -4
  34. package/lib/generated/services/apprunner.js +4 -4
  35. package/lib/generated/services/appstream.js +4 -4
  36. package/lib/generated/services/appstudio.js +2 -2
  37. package/lib/generated/services/appsync.js +4 -4
  38. package/lib/generated/services/apptest.js +3 -3
  39. package/lib/generated/services/aps.js +4 -4
  40. package/lib/generated/services/arc-region-switch.js +4 -4
  41. package/lib/generated/services/arc-zonal-shift.js +4 -4
  42. package/lib/generated/services/arsenal.js +1 -1
  43. package/lib/generated/services/artifact.js +4 -4
  44. package/lib/generated/services/athena.js +4 -4
  45. package/lib/generated/services/auditmanager.js +4 -4
  46. package/lib/generated/services/autoscaling-plans.js +2 -2
  47. package/lib/generated/services/autoscaling.js +4 -4
  48. package/lib/generated/services/aws-external-anthropic.js +3 -3
  49. package/lib/generated/services/aws-marketplace-management.js +1 -1
  50. package/lib/generated/services/aws-marketplace.js +4 -4
  51. package/lib/generated/services/aws-portal.js +1 -1
  52. package/lib/generated/services/awsconnector.js +1 -1
  53. package/lib/generated/services/b2bi.js +4 -4
  54. package/lib/generated/services/backup-gateway.js +4 -4
  55. package/lib/generated/services/backup-search.js +4 -4
  56. package/lib/generated/services/backup-storage.js +1 -1
  57. package/lib/generated/services/backup.js +4 -4
  58. package/lib/generated/services/batch.js +4 -4
  59. package/lib/generated/services/bcm-dashboards.js +4 -4
  60. package/lib/generated/services/bcm-data-exports.js +4 -4
  61. package/lib/generated/services/bcm-pricing-calculator.js +4 -4
  62. package/lib/generated/services/bcm-recommended-actions.js +2 -2
  63. package/lib/generated/services/bedrock-agentcore.js +4 -4
  64. package/lib/generated/services/bedrock-mantle.js +3 -3
  65. package/lib/generated/services/bedrock-websearch.js +2 -2
  66. package/lib/generated/services/bedrock.js +4 -4
  67. package/lib/generated/services/billing.js +4 -4
  68. package/lib/generated/services/billingconductor.js +4 -4
  69. package/lib/generated/services/braket.js +4 -4
  70. package/lib/generated/services/budgets.js +4 -4
  71. package/lib/generated/services/bugbust.js +3 -3
  72. package/lib/generated/services/cases.js +4 -4
  73. package/lib/generated/services/cassandra.js +4 -4
  74. package/lib/generated/services/ce.js +4 -4
  75. package/lib/generated/services/chatbot.js +4 -4
  76. package/lib/generated/services/chime.js +4 -4
  77. package/lib/generated/services/cleanrooms-ml.js +4 -4
  78. package/lib/generated/services/cleanrooms.js +4 -4
  79. package/lib/generated/services/cloud9.js +4 -4
  80. package/lib/generated/services/clouddirectory.js +3 -3
  81. package/lib/generated/services/cloudformation.js +4 -4
  82. package/lib/generated/services/cloudfront-keyvaluestore.js +3 -3
  83. package/lib/generated/services/cloudfront.js +4 -4
  84. package/lib/generated/services/cloudhsm.js +4 -4
  85. package/lib/generated/services/cloudsearch.js +3 -3
  86. package/lib/generated/services/cloudshell.js +3 -3
  87. package/lib/generated/services/cloudtrail-data.js +4 -4
  88. package/lib/generated/services/cloudtrail.js +4 -4
  89. package/lib/generated/services/cloudwatch.js +4 -4
  90. package/lib/generated/services/codeartifact.js +4 -4
  91. package/lib/generated/services/codebuild.js +4 -4
  92. package/lib/generated/services/codecatalyst.js +4 -4
  93. package/lib/generated/services/codecommit.js +4 -4
  94. package/lib/generated/services/codeconnections.js +4 -4
  95. package/lib/generated/services/codedeploy-commands-secure.js +1 -1
  96. package/lib/generated/services/codedeploy.js +4 -4
  97. package/lib/generated/services/codeguru-profiler.js +4 -4
  98. package/lib/generated/services/codeguru-reviewer.js +4 -4
  99. package/lib/generated/services/codeguru-security.js +4 -4
  100. package/lib/generated/services/codeguru.js +1 -1
  101. package/lib/generated/services/codepipeline.js +4 -4
  102. package/lib/generated/services/codestar-connections.js +4 -4
  103. package/lib/generated/services/codestar-notifications.js +4 -4
  104. package/lib/generated/services/codestar.js +3 -3
  105. package/lib/generated/services/codewhisperer.js +3 -3
  106. package/lib/generated/services/cognito-identity.js +4 -4
  107. package/lib/generated/services/cognito-idp.d.ts +2 -0
  108. package/lib/generated/services/cognito-idp.js +14 -7
  109. package/lib/generated/services/cognito-sync.js +3 -3
  110. package/lib/generated/services/comprehend.js +4 -4
  111. package/lib/generated/services/comprehendmedical.js +3 -3
  112. package/lib/generated/services/compute-optimizer.js +3 -3
  113. package/lib/generated/services/config.js +4 -4
  114. package/lib/generated/services/connect-campaigns.js +4 -4
  115. package/lib/generated/services/connect.d.ts +8 -0
  116. package/lib/generated/services/connect.js +25 -7
  117. package/lib/generated/services/consoleapp.js +2 -2
  118. package/lib/generated/services/consolidatedbilling.js +1 -1
  119. package/lib/generated/services/controlcatalog.js +3 -3
  120. package/lib/generated/services/controltower.js +4 -4
  121. package/lib/generated/services/cost-optimization-hub.js +2 -2
  122. package/lib/generated/services/cur.js +4 -4
  123. package/lib/generated/services/customer-verification.js +1 -1
  124. package/lib/generated/services/databrew.js +4 -4
  125. package/lib/generated/services/dataexchange.js +4 -4
  126. package/lib/generated/services/datapipeline.js +4 -4
  127. package/lib/generated/services/datasync.js +4 -4
  128. package/lib/generated/services/datazone.js +4 -4
  129. package/lib/generated/services/dax.js +4 -4
  130. package/lib/generated/services/dbqms.js +1 -1
  131. package/lib/generated/services/deadline.js +4 -4
  132. package/lib/generated/services/detective.js +4 -4
  133. package/lib/generated/services/devicefarm.js +4 -4
  134. package/lib/generated/services/devops-guru.js +4 -4
  135. package/lib/generated/services/directconnect.js +4 -4
  136. package/lib/generated/services/discovery.js +3 -3
  137. package/lib/generated/services/dlm.js +4 -4
  138. package/lib/generated/services/dms.js +4 -4
  139. package/lib/generated/services/docdb-elastic.js +4 -4
  140. package/lib/generated/services/drs.js +4 -4
  141. package/lib/generated/services/ds-data.js +4 -4
  142. package/lib/generated/services/ds.js +4 -4
  143. package/lib/generated/services/dsql.js +4 -4
  144. package/lib/generated/services/dynamodb.js +4 -4
  145. package/lib/generated/services/ebs.js +4 -4
  146. package/lib/generated/services/ec2-instance-connect.js +4 -4
  147. package/lib/generated/services/ec2.d.ts +103 -0
  148. package/lib/generated/services/ec2.js +179 -21
  149. package/lib/generated/services/ec2messages.js +2 -2
  150. package/lib/generated/services/ecr-public.js +4 -4
  151. package/lib/generated/services/ecr.js +4 -4
  152. package/lib/generated/services/ecs-mcp.js +1 -1
  153. package/lib/generated/services/ecs.js +4 -4
  154. package/lib/generated/services/eks-auth.js +4 -4
  155. package/lib/generated/services/eks-mcp.js +1 -1
  156. package/lib/generated/services/eks.js +4 -4
  157. package/lib/generated/services/elasticache.js +4 -4
  158. package/lib/generated/services/elasticbeanstalk.js +4 -4
  159. package/lib/generated/services/elasticfilesystem.js +4 -4
  160. package/lib/generated/services/elasticloadbalancing.js +4 -4
  161. package/lib/generated/services/elasticmapreduce.js +4 -4
  162. package/lib/generated/services/elastictranscoder.js +2 -2
  163. package/lib/generated/services/elemental-activations.js +1 -1
  164. package/lib/generated/services/elemental-appliances-software.js +2 -2
  165. package/lib/generated/services/elemental-inference.js +4 -4
  166. package/lib/generated/services/elemental-support-cases.js +3 -3
  167. package/lib/generated/services/elemental-support-content.js +1 -1
  168. package/lib/generated/services/emr-containers.js +4 -4
  169. package/lib/generated/services/emr-serverless.js +4 -4
  170. package/lib/generated/services/entityresolution.js +4 -4
  171. package/lib/generated/services/es.js +4 -4
  172. package/lib/generated/services/events.js +4 -4
  173. package/lib/generated/services/eventsbilltoaws.js +3 -3
  174. package/lib/generated/services/evidently.js +3 -3
  175. package/lib/generated/services/evs.js +4 -4
  176. package/lib/generated/services/execute-api.js +4 -4
  177. package/lib/generated/services/finops-agent.js +1 -1
  178. package/lib/generated/services/finspace-api.js +3 -3
  179. package/lib/generated/services/finspace.js +4 -4
  180. package/lib/generated/services/firehose.js +4 -4
  181. package/lib/generated/services/fis.js +4 -4
  182. package/lib/generated/services/fms.js +4 -4
  183. package/lib/generated/services/forecast.js +4 -4
  184. package/lib/generated/services/frauddetector.js +4 -4
  185. package/lib/generated/services/freertos.js +3 -3
  186. package/lib/generated/services/freetier.js +2 -2
  187. package/lib/generated/services/fsx.js +4 -4
  188. package/lib/generated/services/gamelift.js +4 -4
  189. package/lib/generated/services/gameliftstreams.js +4 -4
  190. package/lib/generated/services/geo-maps.js +3 -3
  191. package/lib/generated/services/geo-places.js +3 -3
  192. package/lib/generated/services/geo-routes.js +3 -3
  193. package/lib/generated/services/geo.js +4 -4
  194. package/lib/generated/services/glacier.js +4 -4
  195. package/lib/generated/services/globalaccelerator.js +4 -4
  196. package/lib/generated/services/glue.js +4 -4
  197. package/lib/generated/services/grafana.js +4 -4
  198. package/lib/generated/services/greengrass.js +4 -4
  199. package/lib/generated/services/groundstation.js +4 -4
  200. package/lib/generated/services/groundtruthlabeling.js +1 -1
  201. package/lib/generated/services/guardduty.d.ts +132 -0
  202. package/lib/generated/services/guardduty.js +149 -5
  203. package/lib/generated/services/health-agent.js +4 -4
  204. package/lib/generated/services/health.js +4 -4
  205. package/lib/generated/services/healthlake.js +4 -4
  206. package/lib/generated/services/honeycode.js +2 -2
  207. package/lib/generated/services/iam.js +4 -4
  208. package/lib/generated/services/identity-sync.js +2 -2
  209. package/lib/generated/services/identitystore-auth.js +1 -1
  210. package/lib/generated/services/identitystore.js +4 -4
  211. package/lib/generated/services/imagebuilder.js +9 -6
  212. package/lib/generated/services/importexport.js +2 -2
  213. package/lib/generated/services/inspector-scan.js +2 -2
  214. package/lib/generated/services/inspector.js +2 -2
  215. package/lib/generated/services/inspector2-telemetry.js +1 -1
  216. package/lib/generated/services/inspector2.js +4 -4
  217. package/lib/generated/services/interconnect.js +4 -4
  218. package/lib/generated/services/internetmonitor.js +4 -4
  219. package/lib/generated/services/invoicing.js +4 -4
  220. package/lib/generated/services/iot-device-tester.js +1 -1
  221. package/lib/generated/services/iot.js +4 -4
  222. package/lib/generated/services/iotanalytics.js +3 -3
  223. package/lib/generated/services/iotdeviceadvisor.js +4 -4
  224. package/lib/generated/services/iotevents.js +3 -3
  225. package/lib/generated/services/iotfleethub.js +3 -3
  226. package/lib/generated/services/iotfleetwise.js +4 -4
  227. package/lib/generated/services/iotjobsdata.js +4 -4
  228. package/lib/generated/services/iotmanagedintegrations.js +4 -4
  229. package/lib/generated/services/iotsitewise.js +4 -4
  230. package/lib/generated/services/iottwinmaker.js +4 -4
  231. package/lib/generated/services/iotwireless.js +4 -4
  232. package/lib/generated/services/iq-permission.js +2 -2
  233. package/lib/generated/services/iq.js +2 -2
  234. package/lib/generated/services/ivs.js +4 -4
  235. package/lib/generated/services/ivschat.js +4 -4
  236. package/lib/generated/services/kafka-cluster.js +3 -3
  237. package/lib/generated/services/kafka.js +4 -4
  238. package/lib/generated/services/kafkaconnect.js +4 -4
  239. package/lib/generated/services/kendra-ranking.js +4 -4
  240. package/lib/generated/services/kendra.js +4 -4
  241. package/lib/generated/services/kinesis.d.ts +51 -0
  242. package/lib/generated/services/kinesis.js +58 -9
  243. package/lib/generated/services/kinesisanalytics.js +4 -4
  244. package/lib/generated/services/kinesisvideo.js +4 -4
  245. package/lib/generated/services/kms.js +4 -4
  246. package/lib/generated/services/lakeformation.js +3 -3
  247. package/lib/generated/services/lambda.js +4 -4
  248. package/lib/generated/services/launchwizard.js +4 -4
  249. package/lib/generated/services/lex.js +4 -4
  250. package/lib/generated/services/license-manager-linux-subscriptions.js +4 -4
  251. package/lib/generated/services/license-manager-user-subscriptions.js +4 -4
  252. package/lib/generated/services/license-manager.js +4 -4
  253. package/lib/generated/services/lightsail.d.ts +2 -0
  254. package/lib/generated/services/lightsail.js +7 -5
  255. package/lib/generated/services/logs.js +4 -4
  256. package/lib/generated/services/lookoutequipment.js +4 -4
  257. package/lib/generated/services/lookoutmetrics.js +3 -3
  258. package/lib/generated/services/lookoutvision.js +3 -3
  259. package/lib/generated/services/m2.js +4 -4
  260. package/lib/generated/services/machinelearning.js +3 -3
  261. package/lib/generated/services/macie2.js +4 -4
  262. package/lib/generated/services/managedblockchain-query.js +2 -2
  263. package/lib/generated/services/managedblockchain.js +4 -4
  264. package/lib/generated/services/mapcredits.js +2 -2
  265. package/lib/generated/services/marketplacecommerceanalytics.js +2 -2
  266. package/lib/generated/services/mechanicalturk.js +2 -2
  267. package/lib/generated/services/mediaconnect.js +4 -4
  268. package/lib/generated/services/mediaconvert.js +4 -4
  269. package/lib/generated/services/mediaimport.js +1 -1
  270. package/lib/generated/services/medialive.js +4 -4
  271. package/lib/generated/services/mediapackage-vod.js +4 -4
  272. package/lib/generated/services/mediapackage.js +4 -4
  273. package/lib/generated/services/mediapackagev2.js +4 -4
  274. package/lib/generated/services/mediastore.js +4 -4
  275. package/lib/generated/services/mediatailor.js +4 -4
  276. package/lib/generated/services/medical-imaging.js +4 -4
  277. package/lib/generated/services/memorydb.js +4 -4
  278. package/lib/generated/services/mgh.js +4 -4
  279. package/lib/generated/services/mgn.js +4 -4
  280. package/lib/generated/services/migrationhub-orchestrator.js +4 -4
  281. package/lib/generated/services/migrationhub-strategy.js +2 -2
  282. package/lib/generated/services/mobileanalytics.js +1 -1
  283. package/lib/generated/services/mobiletargeting.js +4 -4
  284. package/lib/generated/services/monitron.js +3 -3
  285. package/lib/generated/services/mpa.js +4 -4
  286. package/lib/generated/services/mq.js +4 -4
  287. package/lib/generated/services/neptune-db.js +4 -4
  288. package/lib/generated/services/neptune-graph.js +4 -4
  289. package/lib/generated/services/network-firewall.js +4 -4
  290. package/lib/generated/services/network-security-director.js +1 -1
  291. package/lib/generated/services/networkflowmonitor.js +4 -4
  292. package/lib/generated/services/networkmanager-chat.js +1 -1
  293. package/lib/generated/services/networkmanager.js +4 -4
  294. package/lib/generated/services/networkmonitor.js +4 -4
  295. package/lib/generated/services/nimble.js +3 -3
  296. package/lib/generated/services/notifications-contacts.js +4 -4
  297. package/lib/generated/services/notifications.js +4 -4
  298. package/lib/generated/services/nova-act.js +3 -3
  299. package/lib/generated/services/oam.js +4 -4
  300. package/lib/generated/services/observabilityadmin.js +4 -4
  301. package/lib/generated/services/odb.js +4 -4
  302. package/lib/generated/services/omics.js +4 -4
  303. package/lib/generated/services/one.js +3 -3
  304. package/lib/generated/services/opensearch.js +3 -3
  305. package/lib/generated/services/opsworks-cm.js +2 -2
  306. package/lib/generated/services/opsworks.js +2 -2
  307. package/lib/generated/services/organizations.js +4 -4
  308. package/lib/generated/services/osis.js +4 -4
  309. package/lib/generated/services/outposts.js +4 -4
  310. package/lib/generated/services/panorama.js +3 -3
  311. package/lib/generated/services/partnercentral-account-management.js +2 -2
  312. package/lib/generated/services/partnercentral.js +4 -4
  313. package/lib/generated/services/payment-cryptography.js +4 -4
  314. package/lib/generated/services/payments.js +3 -3
  315. package/lib/generated/services/pca-connector-ad.js +4 -4
  316. package/lib/generated/services/pca-connector-scep.js +4 -4
  317. package/lib/generated/services/pcs.js +4 -4
  318. package/lib/generated/services/personalize.js +4 -4
  319. package/lib/generated/services/pi.js +4 -4
  320. package/lib/generated/services/pipes.js +4 -4
  321. package/lib/generated/services/polly.js +3 -3
  322. package/lib/generated/services/pricing.js +2 -2
  323. package/lib/generated/services/pricingplanmanager.js +3 -3
  324. package/lib/generated/services/private-networks.js +3 -3
  325. package/lib/generated/services/profile.js +4 -4
  326. package/lib/generated/services/proton.js +4 -4
  327. package/lib/generated/services/purchase-orders.js +3 -3
  328. package/lib/generated/services/q.js +3 -3
  329. package/lib/generated/services/qapps.js +4 -4
  330. package/lib/generated/services/qbusiness.js +4 -4
  331. package/lib/generated/services/qdeveloper.js +3 -3
  332. package/lib/generated/services/qldb.js +3 -3
  333. package/lib/generated/services/quicksight.js +6 -6
  334. package/lib/generated/services/ram.js +4 -4
  335. package/lib/generated/services/rbin.js +4 -4
  336. package/lib/generated/services/rds-data.js +4 -4
  337. package/lib/generated/services/rds-db.js +2 -2
  338. package/lib/generated/services/rds.js +4 -4
  339. package/lib/generated/services/redshift-data.js +4 -4
  340. package/lib/generated/services/redshift-serverless.js +4 -4
  341. package/lib/generated/services/redshift.js +4 -4
  342. package/lib/generated/services/refactor-spaces.js +4 -4
  343. package/lib/generated/services/rekognition.js +4 -4
  344. package/lib/generated/services/repostspace.js +4 -4
  345. package/lib/generated/services/researchstudio.js +1 -1
  346. package/lib/generated/services/resiliencehub.js +4 -4
  347. package/lib/generated/services/resource-explorer-2.js +4 -4
  348. package/lib/generated/services/resource-explorer.js +1 -1
  349. package/lib/generated/services/resource-groups.js +4 -4
  350. package/lib/generated/services/rhelkb.js +1 -1
  351. package/lib/generated/services/robomaker.js +3 -3
  352. package/lib/generated/services/rolesanywhere.js +4 -4
  353. package/lib/generated/services/route53-recovery-cluster.js +4 -4
  354. package/lib/generated/services/route53-recovery-control-config.js +4 -4
  355. package/lib/generated/services/route53-recovery-readiness.js +4 -4
  356. package/lib/generated/services/route53.js +4 -4
  357. package/lib/generated/services/route53domains.js +2 -2
  358. package/lib/generated/services/route53globalresolver.js +4 -4
  359. package/lib/generated/services/route53profiles.js +4 -4
  360. package/lib/generated/services/route53resolver.js +4 -4
  361. package/lib/generated/services/rtbfabric.js +4 -4
  362. package/lib/generated/services/rum.js +4 -4
  363. package/lib/generated/services/s3-object-lambda.js +3 -3
  364. package/lib/generated/services/s3-outposts.js +4 -4
  365. package/lib/generated/services/s3.js +4 -4
  366. package/lib/generated/services/s3express.js +3 -3
  367. package/lib/generated/services/s3files.js +4 -4
  368. package/lib/generated/services/s3tables.js +4 -4
  369. package/lib/generated/services/s3vectors.js +4 -4
  370. package/lib/generated/services/sagemaker-data-science-assistant.js +1 -1
  371. package/lib/generated/services/sagemaker-geospatial.js +4 -4
  372. package/lib/generated/services/sagemaker-mlflow.js +3 -3
  373. package/lib/generated/services/sagemaker-unified-studio-mcp.js +1 -1
  374. package/lib/generated/services/sagemaker.js +4 -4
  375. package/lib/generated/services/savingsplans.js +4 -4
  376. package/lib/generated/services/scheduler.js +4 -4
  377. package/lib/generated/services/schemas.js +4 -4
  378. package/lib/generated/services/scn.js +4 -4
  379. package/lib/generated/services/sdb.js +3 -3
  380. package/lib/generated/services/secretsmanager.js +4 -4
  381. package/lib/generated/services/security-ir.js +4 -4
  382. package/lib/generated/services/securityagent.js +4 -4
  383. package/lib/generated/services/securityhub.js +4 -4
  384. package/lib/generated/services/securitylake.js +4 -4
  385. package/lib/generated/services/serverlessrepo.js +4 -4
  386. package/lib/generated/services/servicecatalog.js +4 -4
  387. package/lib/generated/services/servicediscovery.js +4 -4
  388. package/lib/generated/services/serviceextract.js +1 -1
  389. package/lib/generated/services/servicequotas.js +4 -4
  390. package/lib/generated/services/ses.d.ts +8 -0
  391. package/lib/generated/services/ses.js +13 -5
  392. package/lib/generated/services/shield.js +4 -4
  393. package/lib/generated/services/signer.js +4 -4
  394. package/lib/generated/services/signin.js +4 -4
  395. package/lib/generated/services/simspaceweaver.js +3 -3
  396. package/lib/generated/services/sms-voice.js +4 -4
  397. package/lib/generated/services/sms.js +1 -1
  398. package/lib/generated/services/snow-device-management.js +4 -4
  399. package/lib/generated/services/snowball.js +2 -2
  400. package/lib/generated/services/sns.js +4 -4
  401. package/lib/generated/services/social-messaging.js +4 -4
  402. package/lib/generated/services/sqlworkbench.js +3 -3
  403. package/lib/generated/services/sqs.js +4 -4
  404. package/lib/generated/services/ssm-contacts.js +4 -4
  405. package/lib/generated/services/ssm-guiconnect.js +2 -2
  406. package/lib/generated/services/ssm-incidents.js +4 -4
  407. package/lib/generated/services/ssm-quicksetup.js +4 -4
  408. package/lib/generated/services/ssm-sap.js +4 -4
  409. package/lib/generated/services/ssm.js +4 -4
  410. package/lib/generated/services/ssmmessages.js +2 -2
  411. package/lib/generated/services/sso-directory.js +1 -1
  412. package/lib/generated/services/sso-oauth.js +3 -3
  413. package/lib/generated/services/sso.js +4 -4
  414. package/lib/generated/services/states.js +4 -4
  415. package/lib/generated/services/storagegateway.js +4 -4
  416. package/lib/generated/services/sts.js +4 -4
  417. package/lib/generated/services/support-console.js +1 -1
  418. package/lib/generated/services/support.js +2 -2
  419. package/lib/generated/services/supportapp.js +2 -2
  420. package/lib/generated/services/supportauthz.js +4 -4
  421. package/lib/generated/services/supportplans.js +1 -1
  422. package/lib/generated/services/sustainability.js +2 -2
  423. package/lib/generated/services/swf.js +4 -4
  424. package/lib/generated/services/synthetics.js +4 -4
  425. package/lib/generated/services/tag.js +2 -2
  426. package/lib/generated/services/tax.js +2 -2
  427. package/lib/generated/services/textract.js +4 -4
  428. package/lib/generated/services/thinclient.js +4 -4
  429. package/lib/generated/services/timestream-influxdb.js +4 -4
  430. package/lib/generated/services/timestream.js +4 -4
  431. package/lib/generated/services/tiros.js +1 -1
  432. package/lib/generated/services/tnb.js +4 -4
  433. package/lib/generated/services/transcribe.js +4 -4
  434. package/lib/generated/services/transfer.js +4 -4
  435. package/lib/generated/services/transform-custom.js +3 -3
  436. package/lib/generated/services/transform.js +3 -3
  437. package/lib/generated/services/translate.js +4 -4
  438. package/lib/generated/services/trustedadvisor.js +3 -3
  439. package/lib/generated/services/ts.js +3 -3
  440. package/lib/generated/services/user-subscriptions.js +2 -2
  441. package/lib/generated/services/uxc.js +2 -2
  442. package/lib/generated/services/vendor-insights.js +3 -3
  443. package/lib/generated/services/verified-access.js +1 -1
  444. package/lib/generated/services/verifiedpermissions.js +4 -4
  445. package/lib/generated/services/voiceid.js +4 -4
  446. package/lib/generated/services/vpc-lattice-svcs.js +3 -3
  447. package/lib/generated/services/vpc-lattice.js +4 -4
  448. package/lib/generated/services/vpce.js +2 -2
  449. package/lib/generated/services/waf-regional.js +4 -4
  450. package/lib/generated/services/waf.js +4 -4
  451. package/lib/generated/services/wafv2.js +4 -4
  452. package/lib/generated/services/wam.js +1 -1
  453. package/lib/generated/services/wellarchitected.js +4 -4
  454. package/lib/generated/services/wickr.js +4 -4
  455. package/lib/generated/services/wisdom.js +4 -4
  456. package/lib/generated/services/workdocs.js +3 -3
  457. package/lib/generated/services/worklink.js +3 -3
  458. package/lib/generated/services/workmail.js +4 -4
  459. package/lib/generated/services/workmailmessageflow.js +3 -3
  460. package/lib/generated/services/workspaces-instances.js +4 -4
  461. package/lib/generated/services/workspaces-web.js +4 -4
  462. package/lib/generated/services/workspaces.js +4 -4
  463. package/lib/generated/services/xray.js +4 -4
  464. package/package.json +1 -1
@@ -16,7 +16,7 @@ class SesActions {
16
16
  }
17
17
  exports.SesActions = SesActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- SesActions[_a] = { fqn: "@cdk_utils/iam.ses.SesActions", version: "1.15.0" };
19
+ SesActions[_a] = { fqn: "@cdk_utils/iam.ses.SesActions", version: "1.16.0" };
20
20
  /** The IAM service prefix. */
21
21
  SesActions.SERVICE_PREFIX = "ses";
22
22
  /** [PermissionManagement] ses:AllowVendedLogDeliveryForResource */
@@ -1306,7 +1306,7 @@ class SesResources {
1306
1306
  }
1307
1307
  exports.SesResources = SesResources;
1308
1308
  _b = JSII_RTTI_SYMBOL_1;
1309
- SesResources[_b] = { fqn: "@cdk_utils/iam.ses.SesResources", version: "1.15.0" };
1309
+ SesResources[_b] = { fqn: "@cdk_utils/iam.ses.SesResources", version: "1.16.0" };
1310
1310
  /**
1311
1311
  * API operation to required IAM actions mapping for ses.
1312
1312
  */
@@ -1314,7 +1314,9 @@ class SesOperations {
1314
1314
  }
1315
1315
  exports.SesOperations = SesOperations;
1316
1316
  _c = JSII_RTTI_SYMBOL_1;
1317
- SesOperations[_c] = { fqn: "@cdk_utils/iam.ses.SesOperations", version: "1.15.0" };
1317
+ SesOperations[_c] = { fqn: "@cdk_utils/iam.ses.SesOperations", version: "1.16.0" };
1318
+ /** IAM actions required for the AssociateEmailIdentityCertificate API call. */
1319
+ SesOperations.AssociateEmailIdentityCertificate = [];
1318
1320
  /** IAM actions required for the BatchGetMetricData API call. */
1319
1321
  SesOperations.BatchGetMetricData = ["ses:BatchGetMetricData"];
1320
1322
  /** IAM actions required for the CancelExportJob API call. */
@@ -1543,6 +1545,8 @@ SesOperations.DescribeReceiptRule = ["ses:DescribeReceiptRule"];
1543
1545
  SesOperations.DescribeReceiptRuleSet = [
1544
1546
  "ses:DescribeReceiptRuleSet",
1545
1547
  ];
1548
+ /** IAM actions required for the DisassociateEmailIdentityCertificate API call. */
1549
+ SesOperations.DisassociateEmailIdentityCertificate = [];
1546
1550
  /** IAM actions required for the GetAccount API call. */
1547
1551
  SesOperations.opGetAccount = ["ses:GetAccount"];
1548
1552
  /** IAM actions required for the GetAccountSendingEnabled API call. */
@@ -1723,6 +1727,8 @@ SesOperations.ListDomainDeliverabilityCampaigns = [
1723
1727
  ];
1724
1728
  /** IAM actions required for the ListEmailIdentities API call. */
1725
1729
  SesOperations.ListEmailIdentities = ["ses:ListEmailIdentities"];
1730
+ /** IAM actions required for the ListEmailIdentityCertificates API call. */
1731
+ SesOperations.ListEmailIdentityCertificates = [];
1726
1732
  /** IAM actions required for the ListEmailTemplates API call. */
1727
1733
  SesOperations.ListEmailTemplates = ["ses:ListEmailTemplates"];
1728
1734
  /** IAM actions required for the ListExportJobs API call. */
@@ -1955,6 +1961,8 @@ SesOperations.UpdateAccountSendingEnabled = [
1955
1961
  ];
1956
1962
  /** IAM actions required for the UpdateArchive API call. */
1957
1963
  SesOperations.UpdateArchive = ["ses:UpdateArchive"];
1964
+ /** IAM actions required for the UpdateConfigurationSet API call. */
1965
+ SesOperations.UpdateConfigurationSet = [];
1958
1966
  /** IAM actions required for the UpdateConfigurationSetEventDestination API call. */
1959
1967
  SesOperations.UpdateConfigurationSetEventDestination = [
1960
1968
  "iam:PassRole",
@@ -2123,7 +2131,7 @@ class SesConditions {
2123
2131
  }
2124
2132
  exports.SesConditions = SesConditions;
2125
2133
  _d = JSII_RTTI_SYMBOL_1;
2126
- SesConditions[_d] = { fqn: "@cdk_utils/iam.ses.SesConditions", version: "1.15.0" };
2134
+ SesConditions[_d] = { fqn: "@cdk_utils/iam.ses.SesConditions", version: "1.16.0" };
2127
2135
  /** Condition keys applicable to the BatchGetMetricData action. */
2128
2136
  SesConditions.BatchGetMetricDataConditionKeys = [
2129
2137
  "aws:ResourceTag/${TagKey}",
@@ -2889,4 +2897,4 @@ SesConditions.RECIPIENTS = "ses:Recipients";
2889
2897
  SesConditions.REPLICA_REGION = "ses:ReplicaRegion";
2890
2898
  /** Condition key: ses:TenantName (String) */
2891
2899
  SesConditions.TENANT_NAME = "ses:TenantName";
2892
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dlbmVyYXRlZC9zZXJ2aWNlcy9zZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRkFBZ0Y7QUFDaEYsNkNBQTZDO0FBQzdDLDBEQUEwRDtBQUMxRCwwQ0FBMEM7QUFDMUMsb0RBQW9EO0FBQ3BELGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQWEsVUFBVTs7QUFBdkIsZ0NBaXdCQzs7O0FBaHdCQSw4QkFBOEI7QUFDZCx5QkFBYyxHQUFHLEtBQUssQ0FBQztBQUV2QyxtRUFBbUU7QUFDbkQsNENBQWlDLEdBQ2hELHVDQUF1QyxDQUFDO0FBQ3pDLG9DQUFvQztBQUNwQiw2QkFBa0IsR0FBRyx3QkFBd0IsQ0FBQztBQUM5RCxrQ0FBa0M7QUFDbEIsMEJBQWUsR0FBRyxxQkFBcUIsQ0FBQztBQUN4RCxzQ0FBc0M7QUFDdEIsOEJBQW1CLEdBQUcseUJBQXlCLENBQUM7QUFDaEUsc0NBQXNDO0FBQ3RCLDhCQUFtQixHQUFHLHlCQUF5QixDQUFDO0FBQ2hFLDBDQUEwQztBQUMxQixrQ0FBdUIsR0FBRyw2QkFBNkIsQ0FBQztBQUN4RSxvQ0FBb0M7QUFDcEIsNEJBQWlCLEdBQUcsdUJBQXVCLENBQUM7QUFDNUQsNkNBQTZDO0FBQzdCLHFDQUEwQixHQUFHLGdDQUFnQyxDQUFDO0FBQzlFLGdDQUFnQztBQUNoQix3QkFBYSxHQUFHLG1CQUFtQixDQUFDO0FBQ3BELHlDQUF5QztBQUN6QixpQ0FBc0IsR0FBRyw0QkFBNEIsQ0FBQztBQUN0RSx5REFBeUQ7QUFDekMsaURBQXNDLEdBQ3JELDRDQUE0QyxDQUFDO0FBQzlDLHdEQUF3RDtBQUN4QyxnREFBcUMsR0FDcEQsMkNBQTJDLENBQUM7QUFDN0MsZ0NBQWdDO0FBQ2hCLHdCQUFhLEdBQUcsbUJBQW1CLENBQUM7QUFDcEQsb0NBQW9DO0FBQ3BCLDRCQUFpQixHQUFHLHVCQUF1QixDQUFDO0FBQzVELHdEQUF3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LEdBQUcsaUJBQWlCLENBQUM7QUFDakQsa0RBQWtEO0FBQ2xDLCtCQUFpQixHQUFHLHFCQUFxQixDQUFDO0FBQzFELDhEQUE4RDtBQUM5Qyw2Q0FBK0IsR0FDOUMsaUNBQWlDLENBQUM7QUFDbkMscURBQXFEO0FBQ3JDLHVDQUF5QixHQUFHLDJCQUEyQixDQUFDO0FBQ3hFLDJEQUEyRDtBQUMzQyw2Q0FBK0IsR0FDOUMsaUNBQWlDLENBQUM7QUFDbkMsd0RBQXdEO0FBQ3hDLHNDQUF3QixHQUFHLDJCQUEyQixDQUFDO0FBQ3ZFLG9EQUFvRDtBQUNwQyx3QkFBVSxHQUFHLGdCQUFnQixDQUFDO0FBQzlDLHVEQUF1RDtBQUN2Qyw0QkFBYyxHQUFHLG1CQUFtQixDQUFDO0FBQ3JELDZDQUE2QztBQUM3Qix5QkFBVyxHQUFHLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEFVVE8tR0VORVJBVEVEIEZJTEUg4oCUIERPIE5PVCBFRElUIE1BTlVBTExZXG4vLyBHZW5lcmF0ZWQgZnJvbSBBV1MgU2VydmljZSBBdXRob3JpemF0aW9uIFJlZmVyZW5jZSBkYXRhXG4vLyBTb3VyY2U6IGRhdGEvc2VydmljZS1yZWZlcmVuY2Uvc2VzLmpzb25cbi8vIFJ1biBgbnB4IHByb2plbiBnZW5lcmF0ZS1jb25zdGFudHNgIHRvIHJlZ2VuZXJhdGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogSUFNIGFjdGlvbiBjb25zdGFudHMgZm9yIHRoZSBzZXMgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlc0FjdGlvbnMge1xuXHQvKiogVGhlIElBTSBzZXJ2aWNlIHByZWZpeC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNFUlZJQ0VfUFJFRklYID0gXCJzZXNcIjtcblxuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBzZXM6QWxsb3dWZW5kZWRMb2dEZWxpdmVyeUZvclJlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxvd1ZlbmRlZExvZ0RlbGl2ZXJ5Rm9yUmVzb3VyY2UgPVxuXHRcdFwic2VzOkFsbG93VmVuZGVkTG9nRGVsaXZlcnlGb3JSZXNvdXJjZVwiO1xuXHQvKiogW1JlYWRdIHNlczpCYXRjaEdldE1ldHJpY0RhdGEgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0TWV0cmljRGF0YSA9IFwic2VzOkJhdGNoR2V0TWV0cmljRGF0YVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q2FuY2VsRXhwb3J0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBDYW5jZWxFeHBvcnRKb2IgPSBcInNlczpDYW5jZWxFeHBvcnRKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNsb25lUmVjZWlwdFJ1bGVTZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENsb25lUmVjZWlwdFJ1bGVTZXQgPSBcInNlczpDbG9uZVJlY2VpcHRSdWxlU2V0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVBZGRvbkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRvbkluc3RhbmNlID0gXCJzZXM6Q3JlYXRlQWRkb25JbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlQWRkb25TdWJzY3JpcHRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFkZG9uU3Vic2NyaXB0aW9uID0gXCJzZXM6Q3JlYXRlQWRkb25TdWJzY3JpcHRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUFkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRyZXNzTGlzdCA9IFwic2VzOkNyZWF0ZUFkZHJlc3NMaXN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVBZGRyZXNzTGlzdEltcG9ydEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkcmVzc0xpc3RJbXBvcnRKb2IgPSBcInNlczpDcmVhdGVBZGRyZXNzTGlzdEltcG9ydEpvYlwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlQXJjaGl2ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXJjaGl2ZSA9IFwic2VzOkNyZWF0ZUFyY2hpdmVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25TZXQgPSBcInNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gPVxuXHRcdFwic2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zID1cblx0XHRcInNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVDb250YWN0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb250YWN0ID0gXCJzZXM6Q3JlYXRlQ29udGFjdFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlQ29udGFjdExpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbnRhY3RMaXN0ID0gXCJzZXM6Q3JlYXRlQ29udGFjdExpc3RcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgPVxuXHRcdFwic2VzOkNyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZURlZGljYXRlZElwUG9vbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGVkaWNhdGVkSXBQb29sID0gXCJzZXM6Q3JlYXRlRGVkaWNhdGVkSXBQb29sXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCA9XG5cdFx0XCJzZXM6Q3JlYXRlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVFbWFpbElkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbElkZW50aXR5ID0gXCJzZXM6Q3JlYXRlRW1haWxJZGVudGl0eVwiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBzZXM6Q3JlYXRlRW1haWxJZGVudGl0eVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRW1haWxJZGVudGl0eVBvbGljeSA9IFwic2VzOkNyZWF0ZUVtYWlsSWRlbnRpdHlQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUVtYWlsVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsVGVtcGxhdGUgPSBcInNlczpDcmVhdGVFbWFpbFRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVFeHBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUV4cG9ydEpvYiA9IFwic2VzOkNyZWF0ZUV4cG9ydEpvYlwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlSW1wb3J0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbXBvcnRKb2IgPSBcInNlczpDcmVhdGVJbXBvcnRKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUluZ3Jlc3NQb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW5ncmVzc1BvaW50ID0gXCJzZXM6Q3JlYXRlSW5ncmVzc1BvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50ID0gXCJzZXM6Q3JlYXRlTXVsdGlSZWdpb25FbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlUmVjZWlwdEZpbHRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdEZpbHRlciA9IFwic2VzOkNyZWF0ZVJlY2VpcHRGaWx0ZXJcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZVJlY2VpcHRSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNlaXB0UnVsZSA9IFwic2VzOkNyZWF0ZVJlY2VpcHRSdWxlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVSZWNlaXB0UnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdFJ1bGVTZXQgPSBcInNlczpDcmVhdGVSZWNlaXB0UnVsZVNldFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlUmVsYXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlbGF5ID0gXCJzZXM6Q3JlYXRlUmVsYXlcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZVJ1bGVTZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJ1bGVTZXQgPSBcInNlczpDcmVhdGVSdWxlU2V0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVtcGxhdGUgPSBcInNlczpDcmVhdGVUZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlVGVuYW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnQgPSBcInNlczpDcmVhdGVUZW5hbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24gPVxuXHRcdFwic2VzOkNyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZVRyYWZmaWNQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRyYWZmaWNQb2xpY3kgPSBcInNlczpDcmVhdGVUcmFmZmljUG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVBZGRvbkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZGRvbkluc3RhbmNlID0gXCJzZXM6RGVsZXRlQWRkb25JbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQWRkb25TdWJzY3JpcHRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFkZG9uU3Vic2NyaXB0aW9uID0gXCJzZXM6RGVsZXRlQWRkb25TdWJzY3JpcHRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUFkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZGRyZXNzTGlzdCA9IFwic2VzOkRlbGV0ZUFkZHJlc3NMaXN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVBcmNoaXZlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcmNoaXZlID0gXCJzZXM6RGVsZXRlQXJjaGl2ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29uZmlndXJhdGlvblNldCA9IFwic2VzOkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiA9XG5cdFx0XCJzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgPVxuXHRcdFwic2VzOkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUNvbnRhY3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbnRhY3QgPSBcInNlczpEZWxldGVDb250YWN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVDb250YWN0TGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29udGFjdExpc3QgPSBcInNlczpEZWxldGVDb250YWN0TGlzdFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSA9XG5cdFx0XCJzZXM6RGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlRGVkaWNhdGVkSXBQb29sICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEZWRpY2F0ZWRJcFBvb2wgPSBcInNlczpEZWxldGVEZWRpY2F0ZWRJcFBvb2xcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUVtYWlsSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUVtYWlsSWRlbnRpdHkgPSBcInNlczpEZWxldGVFbWFpbElkZW50aXR5XCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHNlczpEZWxldGVFbWFpbElkZW50aXR5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFbWFpbElkZW50aXR5UG9saWN5ID0gXCJzZXM6RGVsZXRlRW1haWxJZGVudGl0eVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxUZW1wbGF0ZSA9IFwic2VzOkRlbGV0ZUVtYWlsVGVtcGxhdGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUlkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJZGVudGl0eSA9IFwic2VzOkRlbGV0ZUlkZW50aXR5XCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHNlczpEZWxldGVJZGVudGl0eVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHlQb2xpY3kgPSBcInNlczpEZWxldGVJZGVudGl0eVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlSW5ncmVzc1BvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJbmdyZXNzUG9pbnQgPSBcInNlczpEZWxldGVJbmdyZXNzUG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnQgPSBcInNlczpEZWxldGVNdWx0aVJlZ2lvbkVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVSZWNlaXB0RmlsdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0RmlsdGVyID0gXCJzZXM6RGVsZXRlUmVjZWlwdEZpbHRlclwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlUmVjZWlwdFJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRSdWxlID0gXCJzZXM6RGVsZXRlUmVjZWlwdFJ1bGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVJlY2VpcHRSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0UnVsZVNldCA9IFwic2VzOkRlbGV0ZVJlY2VpcHRSdWxlU2V0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVSZWxheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVsYXkgPSBcInNlczpEZWxldGVSZWxheVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlUnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUnVsZVNldCA9IFwic2VzOkRlbGV0ZVJ1bGVTZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVN1cHByZXNzZWREZXN0aW5hdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU3VwcHJlc3NlZERlc3RpbmF0aW9uID1cblx0XHRcInNlczpEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW1wbGF0ZSA9IFwic2VzOkRlbGV0ZVRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVUZW5hbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlbmFudCA9IFwic2VzOkRlbGV0ZVRlbmFudFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiA9XG5cdFx0XCJzZXM6RGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlVHJhZmZpY1BvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVHJhZmZpY1BvbGljeSA9IFwic2VzOkRlbGV0ZVRyYWZmaWNQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVWZXJpZmllZEVtYWlsQWRkcmVzcyA9IFwic2VzOkRlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZXJlZ2lzdGVyTWVtYmVyRnJvbUFkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXJlZ2lzdGVyTWVtYmVyRnJvbUFkZHJlc3NMaXN0ID1cblx0XHRcInNlczpEZXJlZ2lzdGVyTWVtYmVyRnJvbUFkZHJlc3NMaXN0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkRlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXQgPVxuXHRcdFwic2VzOkRlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXRcIjtcblx0LyoqIFtSZWFkXSBzZXM6RGVzY3JpYmVDb25maWd1cmF0aW9uU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXQgPSBcInNlczpEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXRcIjtcblx0LyoqIFtSZWFkXSBzZXM6RGVzY3JpYmVSZWNlaXB0UnVsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNlaXB0UnVsZSA9IFwic2VzOkRlc2NyaWJlUmVjZWlwdFJ1bGVcIjtcblx0LyoqIFtSZWFkXSBzZXM6RGVzY3JpYmVSZWNlaXB0UnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNlaXB0UnVsZVNldCA9IFwic2VzOkRlc2NyaWJlUmVjZWlwdFJ1bGVTZXRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0QWNjb3VudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWNjb3VudCA9IFwic2VzOkdldEFjY291bnRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0QWNjb3VudFNlbmRpbmdFbmFibGVkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBY2NvdW50U2VuZGluZ0VuYWJsZWQgPVxuXHRcdFwic2VzOkdldEFjY291bnRTZW5kaW5nRW5hYmxlZFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBZGRvbkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZGRvbkluc3RhbmNlID0gXCJzZXM6R2V0QWRkb25JbnN0YW5jZVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBZGRvblN1YnNjcmlwdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWRkb25TdWJzY3JpcHRpb24gPSBcInNlczpHZXRBZGRvblN1YnNjcmlwdGlvblwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBZGRyZXNzTGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWRkcmVzc0xpc3QgPSBcInNlczpHZXRBZGRyZXNzTGlzdFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBZGRyZXNzTGlzdEltcG9ydEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWRkcmVzc0xpc3RJbXBvcnRKb2IgPSBcInNlczpHZXRBZGRyZXNzTGlzdEltcG9ydEpvYlwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBcmNoaXZlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBcmNoaXZlID0gXCJzZXM6R2V0QXJjaGl2ZVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBcmNoaXZlRXhwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBcmNoaXZlRXhwb3J0ID0gXCJzZXM6R2V0QXJjaGl2ZUV4cG9ydFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBcmNoaXZlTWVzc2FnZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QXJjaGl2ZU1lc3NhZ2UgPSBcInNlczpHZXRBcmNoaXZlTWVzc2FnZVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBcmNoaXZlTWVzc2FnZUNvbnRlbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFyY2hpdmVNZXNzYWdlQ29udGVudCA9XG5cdFx0XCJzZXM6R2V0QXJjaGl2ZU1lc3NhZ2VDb250ZW50XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFyY2hpdmVTZWFyY2ggKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFyY2hpdmVTZWFyY2ggPSBcInNlczpHZXRBcmNoaXZlU2VhcmNoXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFyY2hpdmVTZWFyY2hSZXN1bHRzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBcmNoaXZlU2VhcmNoUmVzdWx0cyA9IFwic2VzOkdldEFyY2hpdmVTZWFyY2hSZXN1bHRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEJsYWNrbGlzdFJlcG9ydHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEJsYWNrbGlzdFJlcG9ydHMgPSBcInNlczpHZXRCbGFja2xpc3RSZXBvcnRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldENvbmZpZ3VyYXRpb25TZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbmZpZ3VyYXRpb25TZXQgPSBcInNlczpHZXRDb25maWd1cmF0aW9uU2V0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldENvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zID1cblx0XHRcInNlczpHZXRDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbnNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0Q29udGFjdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29udGFjdCA9IFwic2VzOkdldENvbnRhY3RcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0Q29udGFjdExpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbnRhY3RMaXN0ID0gXCJzZXM6R2V0Q29udGFjdExpc3RcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSA9XG5cdFx0XCJzZXM6R2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXREZWRpY2F0ZWRJcCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVkaWNhdGVkSXAgPSBcInNlczpHZXREZWRpY2F0ZWRJcFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXREZWRpY2F0ZWRJcFBvb2wgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlZGljYXRlZElwUG9vbCA9IFwic2VzOkdldERlZGljYXRlZElwUG9vbFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXREZWRpY2F0ZWRJcHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlZGljYXRlZElwcyA9IFwic2VzOkdldERlZGljYXRlZElwc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9ucyA9XG5cdFx0XCJzZXM6R2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0ID1cblx0XHRcInNlczpHZXREZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbiA9XG5cdFx0XCJzZXM6R2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnblwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREb21haW5TdGF0aXN0aWNzUmVwb3J0ID1cblx0XHRcInNlczpHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEVtYWlsQWRkcmVzc0luc2lnaHRzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFbWFpbEFkZHJlc3NJbnNpZ2h0cyA9IFwic2VzOkdldEVtYWlsQWRkcmVzc0luc2lnaHRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEVtYWlsSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEVtYWlsSWRlbnRpdHkgPSBcInNlczpHZXRFbWFpbElkZW50aXR5XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEVtYWlsSWRlbnRpdHlQb2xpY2llcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RW1haWxJZGVudGl0eVBvbGljaWVzID1cblx0XHRcInNlczpHZXRFbWFpbElkZW50aXR5UG9saWNpZXNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RW1haWxUZW1wbGF0ZSA9IFwic2VzOkdldEVtYWlsVGVtcGxhdGVcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RXhwb3J0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFeHBvcnRKb2IgPSBcInNlczpHZXRFeHBvcnRKb2JcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0SWRlbnRpdHlEa2ltQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlEa2ltQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlEa2ltQXR0cmlidXRlc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRJZGVudGl0eU1haWxGcm9tRG9tYWluQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOkdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldElkZW50aXR5Tm90aWZpY2F0aW9uQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzID1cblx0XHRcInNlczpHZXRJZGVudGl0eU5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0SWRlbnRpdHlQb2xpY2llcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlQb2xpY2llcyA9IFwic2VzOkdldElkZW50aXR5UG9saWNpZXNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0SWRlbnRpdHlWZXJpZmljYXRpb25BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eVZlcmlmaWNhdGlvbkF0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOkdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRJbXBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEltcG9ydEpvYiA9IFwic2VzOkdldEltcG9ydEpvYlwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRJbmdyZXNzUG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEluZ3Jlc3NQb2ludCA9IFwic2VzOkdldEluZ3Jlc3NQb2ludFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRNZW1iZXJPZkFkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRNZW1iZXJPZkFkZHJlc3NMaXN0ID0gXCJzZXM6R2V0TWVtYmVyT2ZBZGRyZXNzTGlzdFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRNZXNzYWdlSW5zaWdodHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldE1lc3NhZ2VJbnNpZ2h0cyA9IFwic2VzOkdldE1lc3NhZ2VJbnNpZ2h0c1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRNdWx0aVJlZ2lvbkVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRNdWx0aVJlZ2lvbkVuZHBvaW50ID0gXCJzZXM6R2V0TXVsdGlSZWdpb25FbmRwb2ludFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRSZWxheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UmVsYXkgPSBcInNlczpHZXRSZWxheVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRSZXB1dGF0aW9uRW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZXB1dGF0aW9uRW50aXR5ID0gXCJzZXM6R2V0UmVwdXRhdGlvbkVudGl0eVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSdWxlU2V0ID0gXCJzZXM6R2V0UnVsZVNldFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRTZW5kUXVvdGEgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFNlbmRRdW90YSA9IFwic2VzOkdldFNlbmRRdW90YVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRTZW5kU3RhdGlzdGljcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0U2VuZFN0YXRpc3RpY3MgPSBcInNlczpHZXRTZW5kU3RhdGlzdGljc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRTdXBwcmVzc2VkRGVzdGluYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFN1cHByZXNzZWREZXN0aW5hdGlvbiA9XG5cdFx0XCJzZXM6R2V0U3VwcHJlc3NlZERlc3RpbmF0aW9uXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZW1wbGF0ZSA9IFwic2VzOkdldFRlbXBsYXRlXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFRlbmFudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0VGVuYW50ID0gXCJzZXM6R2V0VGVuYW50XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFRyYWZmaWNQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFRyYWZmaWNQb2xpY3kgPSBcInNlczpHZXRUcmFmZmljUG9saWN5XCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBZGRvbkluc3RhbmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZG9uSW5zdGFuY2VzID0gXCJzZXM6TGlzdEFkZG9uSW5zdGFuY2VzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBZGRvblN1YnNjcmlwdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZGRvblN1YnNjcmlwdGlvbnMgPSBcInNlczpMaXN0QWRkb25TdWJzY3JpcHRpb25zXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBZGRyZXNzTGlzdEltcG9ydEpvYnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZGRyZXNzTGlzdEltcG9ydEpvYnMgPSBcInNlczpMaXN0QWRkcmVzc0xpc3RJbXBvcnRKb2JzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBZGRyZXNzTGlzdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZGRyZXNzTGlzdHMgPSBcInNlczpMaXN0QWRkcmVzc0xpc3RzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBcmNoaXZlRXhwb3J0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFyY2hpdmVFeHBvcnRzID0gXCJzZXM6TGlzdEFyY2hpdmVFeHBvcnRzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBcmNoaXZlU2VhcmNoZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcmNoaXZlU2VhcmNoZXMgPSBcInNlczpMaXN0QXJjaGl2ZVNlYXJjaGVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RBcmNoaXZlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFyY2hpdmVzID0gXCJzZXM6TGlzdEFyY2hpdmVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RDb25maWd1cmF0aW9uU2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25TZXRzID0gXCJzZXM6TGlzdENvbmZpZ3VyYXRpb25TZXRzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RDb250YWN0TGlzdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb250YWN0TGlzdHMgPSBcInNlczpMaXN0Q29udGFjdExpc3RzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RDb250YWN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbnRhY3RzID0gXCJzZXM6TGlzdENvbnRhY3RzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVzID1cblx0XHRcInNlczpMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdERlZGljYXRlZElwUG9vbHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZWRpY2F0ZWRJcFBvb2xzID0gXCJzZXM6TGlzdERlZGljYXRlZElwUG9vbHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRzID1cblx0XHRcInNlczpMaXN0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0c1wiO1xuXHQvKiogW1JlYWRdIHNlczpMaXN0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWducyA9XG5cdFx0XCJzZXM6TGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RFbWFpbElkZW50aXRpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFbWFpbElkZW50aXRpZXMgPSBcInNlczpMaXN0RW1haWxJZGVudGl0aWVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RFbWFpbFRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEVtYWlsVGVtcGxhdGVzID0gXCJzZXM6TGlzdEVtYWlsVGVtcGxhdGVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RFeHBvcnRKb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RXhwb3J0Sm9icyA9IFwic2VzOkxpc3RFeHBvcnRKb2JzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RJZGVudGl0aWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SWRlbnRpdGllcyA9IFwic2VzOkxpc3RJZGVudGl0aWVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RJZGVudGl0eVBvbGljaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SWRlbnRpdHlQb2xpY2llcyA9IFwic2VzOkxpc3RJZGVudGl0eVBvbGljaWVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RJbXBvcnRKb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW1wb3J0Sm9icyA9IFwic2VzOkxpc3RJbXBvcnRKb2JzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RJbmdyZXNzUG9pbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW5ncmVzc1BvaW50cyA9IFwic2VzOkxpc3RJbmdyZXNzUG9pbnRzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RNZW1iZXJzT2ZBZGRyZXNzTGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbWJlcnNPZkFkZHJlc3NMaXN0ID0gXCJzZXM6TGlzdE1lbWJlcnNPZkFkZHJlc3NMaXN0XCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RNdWx0aVJlZ2lvbkVuZHBvaW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzID0gXCJzZXM6TGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3RSZWNlaXB0RmlsdGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY2VpcHRGaWx0ZXJzID0gXCJzZXM6TGlzdFJlY2VpcHRGaWx0ZXJzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3RSZWNlaXB0UnVsZVNldHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNlaXB0UnVsZVNldHMgPSBcInNlczpMaXN0UmVjZWlwdFJ1bGVTZXRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3RSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvbnMgPSBcInNlczpMaXN0UmVjb21tZW5kYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RSZWxheXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWxheXMgPSBcInNlczpMaXN0UmVsYXlzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RSZXB1dGF0aW9uRW50aXRpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXB1dGF0aW9uRW50aXRpZXMgPSBcInNlczpMaXN0UmVwdXRhdGlvbkVudGl0aWVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RSZXNvdXJjZVRlbmFudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZVRlbmFudHMgPSBcInNlczpMaXN0UmVzb3VyY2VUZW5hbnRzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RSdWxlU2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJ1bGVTZXRzID0gXCJzZXM6TGlzdFJ1bGVTZXRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3VwcHJlc3NlZERlc3RpbmF0aW9ucyA9IFwic2VzOkxpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3RUYWdzRm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2UgPSBcInNlczpMaXN0VGFnc0ZvclJlc291cmNlXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RUZW1wbGF0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW1wbGF0ZXMgPSBcInNlczpMaXN0VGVtcGxhdGVzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RUZW5hbnRSZXNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW5hbnRSZXNvdXJjZXMgPSBcInNlczpMaXN0VGVuYW50UmVzb3VyY2VzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RUZW5hbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVuYW50cyA9IFwic2VzOkxpc3RUZW5hbnRzXCI7XG5cdC8qKiBbTGlzdF0gc2VzOkxpc3RUcmFmZmljUG9saWNpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUcmFmZmljUG9saWNpZXMgPSBcInNlczpMaXN0VHJhZmZpY1BvbGljaWVzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3RWZXJpZmllZEVtYWlsQWRkcmVzc2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VmVyaWZpZWRFbWFpbEFkZHJlc3NlcyA9IFwic2VzOkxpc3RWZXJpZmllZEVtYWlsQWRkcmVzc2VzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRBY2NvdW50RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRBY2NvdW50RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRBY2NvdW50RGV0YWlscyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudERldGFpbHMgPSBcInNlczpQdXRBY2NvdW50RGV0YWlsc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0QWNjb3VudFByaWNpbmdBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50UHJpY2luZ0F0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50U2VuZGluZ0F0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0QWNjb3VudFN1cHByZXNzaW9uQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFN1cHByZXNzaW9uQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0QWNjb3VudFN1cHByZXNzaW9uQXR0cmlidXRlc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0QWNjb3VudFZkbUF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRWZG1BdHRyaWJ1dGVzID0gXCJzZXM6UHV0QWNjb3VudFZkbUF0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0QXJjaGl2aW5nT3B0aW9ucyA9XG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnMgPVxuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFJlcHV0YXRpb25PcHRpb25zID1cblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk9wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFNlbmRpbmdPcHRpb25zID1cblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0U2VuZGluZ09wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnMgPVxuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgPVxuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dENvbmZpZ3VyYXRpb25TZXRWZG1PcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0VmRtT3B0aW9ucyA9XG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dERlZGljYXRlZElwSW5Qb29sICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZWRpY2F0ZWRJcEluUG9vbCA9IFwic2VzOlB1dERlZGljYXRlZElwSW5Qb29sXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXREZWRpY2F0ZWRJcFBvb2xTY2FsaW5nQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVkaWNhdGVkSXBQb29sU2NhbGluZ0F0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb24gPVxuXHRcdFwic2VzOlB1dERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlDb25maWd1cmF0aW9uU2V0QXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eUNvbmZpZ3VyYXRpb25TZXRBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlEa2ltQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eURraW1BdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRFbWFpbElkZW50aXR5TWFpbEZyb21BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5TWFpbEZyb21BdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRFbWFpbElkZW50aXR5TWFpbEZyb21BdHRyaWJ1dGVzXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHNlczpQdXRJZGVudGl0eVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0SWRlbnRpdHlQb2xpY3kgPSBcInNlczpQdXRJZGVudGl0eVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0U3VwcHJlc3NlZERlc3RpbmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRTdXBwcmVzc2VkRGVzdGluYXRpb24gPSBcInNlczpQdXRTdXBwcmVzc2VkRGVzdGluYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dFRlbmFudFN1cHByZXNzaW9uQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlJlZ2lzdGVyTWVtYmVyVG9BZGRyZXNzTGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVnaXN0ZXJNZW1iZXJUb0FkZHJlc3NMaXN0ID1cblx0XHRcInNlczpSZWdpc3Rlck1lbWJlclRvQWRkcmVzc0xpc3RcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlJlb3JkZXJSZWNlaXB0UnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVvcmRlclJlY2VpcHRSdWxlU2V0ID0gXCJzZXM6UmVvcmRlclJlY2VpcHRSdWxlU2V0XCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHNlczpSZXBsaWNhdGVFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdLZXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlcGxpY2F0ZUVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0tleSA9XG5cdFx0XCJzZXM6UmVwbGljYXRlRW1haWxJZGVudGl0eURraW1TaWduaW5nS2V5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZW5kQm91bmNlICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kQm91bmNlID0gXCJzZXM6U2VuZEJvdW5jZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2VuZEJ1bGtFbWFpbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJ1bGtFbWFpbCA9IFwic2VzOlNlbmRCdWxrRW1haWxcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNlbmRCdWxrVGVtcGxhdGVkRW1haWwgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRCdWxrVGVtcGxhdGVkRW1haWwgPSBcInNlczpTZW5kQnVsa1RlbXBsYXRlZEVtYWlsXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWwgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRDdXN0b21WZXJpZmljYXRpb25FbWFpbCA9XG5cdFx0XCJzZXM6U2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZW5kRW1haWwgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRFbWFpbCA9IFwic2VzOlNlbmRFbWFpbFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2VuZFJhd0VtYWlsICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kUmF3RW1haWwgPSBcInNlczpTZW5kUmF3RW1haWxcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNlbmRUZW1wbGF0ZWRFbWFpbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZFRlbXBsYXRlZEVtYWlsID0gXCJzZXM6U2VuZFRlbXBsYXRlZEVtYWlsXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZXRBY3RpdmVSZWNlaXB0UnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0QWN0aXZlUmVjZWlwdFJ1bGVTZXQgPSBcInNlczpTZXRBY3RpdmVSZWNlaXB0UnVsZVNldFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2V0SWRlbnRpdHlEa2ltRW5hYmxlZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlEa2ltRW5hYmxlZCA9IFwic2VzOlNldElkZW50aXR5RGtpbUVuYWJsZWRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNldElkZW50aXR5RmVlZGJhY2tGb3J3YXJkaW5nRW5hYmxlZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlGZWVkYmFja0ZvcndhcmRpbmdFbmFibGVkID1cblx0XHRcInNlczpTZXRJZGVudGl0eUZlZWRiYWNrRm9yd2FyZGluZ0VuYWJsZWRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNldElkZW50aXR5SGVhZGVyc0luTm90aWZpY2F0aW9uc0VuYWJsZWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldElkZW50aXR5SGVhZGVyc0luTm90aWZpY2F0aW9uc0VuYWJsZWQgPVxuXHRcdFwic2VzOlNldElkZW50aXR5SGVhZGVyc0luTm90aWZpY2F0aW9uc0VuYWJsZWRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNldElkZW50aXR5TWFpbEZyb21Eb21haW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldElkZW50aXR5TWFpbEZyb21Eb21haW4gPVxuXHRcdFwic2VzOlNldElkZW50aXR5TWFpbEZyb21Eb21haW5cIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWMgPVxuXHRcdFwic2VzOlNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNldFJlY2VpcHRSdWxlUG9zaXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldFJlY2VpcHRSdWxlUG9zaXRpb24gPSBcInNlczpTZXRSZWNlaXB0UnVsZVBvc2l0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTdGFydEFkZHJlc3NMaXN0SW1wb3J0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFkZHJlc3NMaXN0SW1wb3J0Sm9iID0gXCJzZXM6U3RhcnRBZGRyZXNzTGlzdEltcG9ydEpvYlwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U3RhcnRBcmNoaXZlRXhwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFyY2hpdmVFeHBvcnQgPSBcInNlczpTdGFydEFyY2hpdmVFeHBvcnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlN0YXJ0QXJjaGl2ZVNlYXJjaCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBcmNoaXZlU2VhcmNoID0gXCJzZXM6U3RhcnRBcmNoaXZlU2VhcmNoXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTdG9wQWRkcmVzc0xpc3RJbXBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYiA9IFwic2VzOlN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYlwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U3RvcEFyY2hpdmVFeHBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBcmNoaXZlRXhwb3J0ID0gXCJzZXM6U3RvcEFyY2hpdmVFeHBvcnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlN0b3BBcmNoaXZlU2VhcmNoICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQXJjaGl2ZVNlYXJjaCA9IFwic2VzOlN0b3BBcmNoaXZlU2VhcmNoXCI7XG5cdC8qKiBbVGFnZ2luZ10gc2VzOlRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZSA9IFwic2VzOlRhZ1Jlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpUZXN0UmVuZGVyRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGVzdFJlbmRlckVtYWlsVGVtcGxhdGUgPSBcInNlczpUZXN0UmVuZGVyRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VGVzdFJlbmRlclRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBUZXN0UmVuZGVyVGVtcGxhdGUgPSBcInNlczpUZXN0UmVuZGVyVGVtcGxhdGVcIjtcblx0LyoqIFtUYWdnaW5nXSBzZXM6VW50YWdSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZSA9IFwic2VzOlVudGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUFjY291bnRTZW5kaW5nRW5hYmxlZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkID1cblx0XHRcInNlczpVcGRhdGVBY2NvdW50U2VuZGluZ0VuYWJsZWRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUFyY2hpdmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFyY2hpdmUgPSBcInNlczpVcGRhdGVBcmNoaXZlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gPVxuXHRcdFwic2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk1ldHJpY3NFbmFibGVkICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk1ldHJpY3NFbmFibGVkID1cblx0XHRcInNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk1ldHJpY3NFbmFibGVkXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0U2VuZGluZ0VuYWJsZWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRTZW5kaW5nRW5hYmxlZCA9XG5cdFx0XCJzZXM6VXBkYXRlQ29uZmlndXJhdGlvblNldFNlbmRpbmdFbmFibGVkXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zID1cblx0XHRcInNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVDb250YWN0ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb250YWN0ID0gXCJzZXM6VXBkYXRlQ29udGFjdFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlQ29udGFjdExpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbnRhY3RMaXN0ID0gXCJzZXM6VXBkYXRlQ29udGFjdExpc3RcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgPVxuXHRcdFwic2VzOlVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gc2VzOlVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3kgPSBcInNlczpVcGRhdGVFbWFpbElkZW50aXR5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVFbWFpbFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVFbWFpbFRlbXBsYXRlID0gXCJzZXM6VXBkYXRlRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlSW5ncmVzc1BvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVJbmdyZXNzUG9pbnQgPSBcInNlczpVcGRhdGVJbmdyZXNzUG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZVJlY2VpcHRSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZWNlaXB0UnVsZSA9IFwic2VzOlVwZGF0ZVJlY2VpcHRSdWxlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVSZWxheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVsYXkgPSBcInNlczpVcGRhdGVSZWxheVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1cyA9XG5cdFx0XCJzZXM6VXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1c1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeSA9XG5cdFx0XCJzZXM6VXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlUnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUnVsZVNldCA9IFwic2VzOlVwZGF0ZVJ1bGVTZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZVRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUZW1wbGF0ZSA9IFwic2VzOlVwZGF0ZVRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVUcmFmZmljUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUcmFmZmljUG9saWN5ID0gXCJzZXM6VXBkYXRlVHJhZmZpY1BvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VmVyaWZ5RG9tYWluRGtpbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RG9tYWluRGtpbSA9IFwic2VzOlZlcmlmeURvbWFpbkRraW1cIjtcblx0LyoqIFtXcml0ZV0gc2VzOlZlcmlmeURvbWFpbklkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlEb21haW5JZGVudGl0eSA9IFwic2VzOlZlcmlmeURvbWFpbklkZW50aXR5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpWZXJpZnlFbWFpbEFkZHJlc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeUVtYWlsQWRkcmVzcyA9IFwic2VzOlZlcmlmeUVtYWlsQWRkcmVzc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6VmVyaWZ5RW1haWxJZGVudGl0eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RW1haWxJZGVudGl0eSA9IFwic2VzOlZlcmlmeUVtYWlsSWRlbnRpdHlcIjtcblxuXHQvKiogQWxsIHJlYWQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFJlYWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRTZXNBY3Rpb25zLkJhdGNoR2V0TWV0cmljRGF0YSxcblx0XHRTZXNBY3Rpb25zLkRlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5EZXNjcmliZUNvbmZpZ3VyYXRpb25TZXQsXG5cdFx0U2VzQWN0aW9ucy5EZXNjcmliZVJlY2VpcHRSdWxlLFxuXHRcdFNlc0FjdGlvbnMuRGVzY3JpYmVSZWNlaXB0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFjY291bnQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBY2NvdW50U2VuZGluZ0VuYWJsZWQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBZGRvbkluc3RhbmNlLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QWRkb25TdWJzY3JpcHRpb24sXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFkZHJlc3NMaXN0SW1wb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QXJjaGl2ZSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFyY2hpdmVFeHBvcnQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBcmNoaXZlTWVzc2FnZSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFyY2hpdmVNZXNzYWdlQ29udGVudCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFyY2hpdmVTZWFyY2gsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBcmNoaXZlU2VhcmNoUmVzdWx0cyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEJsYWNrbGlzdFJlcG9ydHMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRDb25maWd1cmF0aW9uU2V0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0Q29udGFjdCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldENvbnRhY3RMaXN0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldERlZGljYXRlZElwLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RGVkaWNhdGVkSXBQb29sLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RGVkaWNhdGVkSXBzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbixcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldERvbWFpblN0YXRpc3RpY3NSZXBvcnQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRFbWFpbEFkZHJlc3NJbnNpZ2h0cyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEVtYWlsSWRlbnRpdHksXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRFbWFpbElkZW50aXR5UG9saWNpZXMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRFbWFpbFRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RXhwb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SWRlbnRpdHlEa2ltQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SWRlbnRpdHlQb2xpY2llcyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEltcG9ydEpvYixcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEluZ3Jlc3NQb2ludCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldE1lbWJlck9mQWRkcmVzc0xpc3QsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRNZXNzYWdlSW5zaWdodHMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRNdWx0aVJlZ2lvbkVuZHBvaW50LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0UmVsYXksXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRSZXB1dGF0aW9uRW50aXR5LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldFNlbmRRdW90YSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldFNlbmRTdGF0aXN0aWNzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0U3VwcHJlc3NlZERlc3RpbmF0aW9uLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0VGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRUZW5hbnQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRUcmFmZmljUG9saWN5LFxuXHRcdFNlc0FjdGlvbnMuTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFJlY2VpcHRGaWx0ZXJzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFJlY2VpcHRSdWxlU2V0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RSZWNvbW1lbmRhdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0U3VwcHJlc3NlZERlc3RpbmF0aW9ucyxcblx0XHRTZXNBY3Rpb25zLkxpc3RUYWdzRm9yUmVzb3VyY2UsXG5cdFx0U2VzQWN0aW9ucy5MaXN0VmVyaWZpZWRFbWFpbEFkZHJlc3Nlcyxcblx0XTtcblx0LyoqIEFsbCB3cml0ZS1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsV3JpdGVBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRTZXNBY3Rpb25zLkNhbmNlbEV4cG9ydEpvYixcblx0XHRTZXNBY3Rpb25zLkNsb25lUmVjZWlwdFJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVBZGRvbkluc3RhbmNlLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlQWRkb25TdWJzY3JpcHRpb24sXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVBZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUFkZHJlc3NMaXN0SW1wb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlQXJjaGl2ZSxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbixcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVDb250YWN0LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlQ29udGFjdExpc3QsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlRGVkaWNhdGVkSXBQb29sLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlRW1haWxJZGVudGl0eSxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUVtYWlsVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVFeHBvcnRKb2IsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVJbXBvcnRKb2IsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVJbmdyZXNzUG9pbnQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlUmVjZWlwdEZpbHRlcixcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVJlY2VpcHRSdWxlLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlUmVjZWlwdFJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVSZWxheSxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVRlbmFudCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24sXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVUcmFmZmljUG9saWN5LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQWRkb25JbnN0YW5jZSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUFkZG9uU3Vic2NyaXB0aW9uLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQWRkcmVzc0xpc3QsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVBcmNoaXZlLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQ29uZmlndXJhdGlvblNldCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUNvbnRhY3QsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVDb250YWN0TGlzdCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVEZWRpY2F0ZWRJcFBvb2wsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVFbWFpbElkZW50aXR5LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUlkZW50aXR5LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlSW5ncmVzc1BvaW50LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlTXVsdGlSZWdpb25FbmRwb2ludCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVJlY2VpcHRGaWx0ZXIsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVSZWNlaXB0UnVsZSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVJlY2VpcHRSdWxlU2V0LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlUmVsYXksXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVSdWxlU2V0LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlU3VwcHJlc3NlZERlc3RpbmF0aW9uLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVUZW5hbnQsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlVHJhZmZpY1BvbGljeSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzLFxuXHRcdFNlc0FjdGlvbnMuRGVyZWdpc3Rlck1lbWJlckZyb21BZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLlB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXRBY2NvdW50RGV0YWlscyxcblx0XHRTZXNBY3Rpb25zLlB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEFjY291bnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXRBY2NvdW50VmRtQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuUHV0Q29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLlB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLlB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLlB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5QdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuUHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5QdXREZWRpY2F0ZWRJcEluUG9vbCxcblx0XHRTZXNBY3Rpb25zLlB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb24sXG5cdFx0U2VzQWN0aW9ucy5QdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEVtYWlsSWRlbnRpdHlNYWlsRnJvbUF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXRTdXBwcmVzc2VkRGVzdGluYXRpb24sXG5cdFx0U2VzQWN0aW9ucy5QdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5SZWdpc3Rlck1lbWJlclRvQWRkcmVzc0xpc3QsXG5cdFx0U2VzQWN0aW9ucy5SZW9yZGVyUmVjZWlwdFJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5TZW5kQm91bmNlLFxuXHRcdFNlc0FjdGlvbnMuU2VuZEJ1bGtFbWFpbCxcblx0XHRTZXNBY3Rpb25zLlNlbmRCdWxrVGVtcGxhdGVkRW1haWwsXG5cdFx0U2VzQWN0aW9ucy5TZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWwsXG5cdFx0U2VzQWN0aW9ucy5TZW5kRW1haWwsXG5cdFx0U2VzQWN0aW9ucy5TZW5kUmF3RW1haWwsXG5cdFx0U2VzQWN0aW9ucy5TZW5kVGVtcGxhdGVkRW1haWwsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25TZXRBY3RpdmVSZWNlaXB0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvblNldElkZW50aXR5RGtpbUVuYWJsZWQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25TZXRJZGVudGl0eUZlZWRiYWNrRm9yd2FyZGluZ0VuYWJsZWQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25TZXRJZGVudGl0eUhlYWRlcnNJbk5vdGlmaWNhdGlvbnNFbmFibGVkLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uU2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbixcblx0XHRTZXNBY3Rpb25zLmFjdGlvblNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25TZXRSZWNlaXB0UnVsZVBvc2l0aW9uLFxuXHRcdFNlc0FjdGlvbnMuU3RhcnRBZGRyZXNzTGlzdEltcG9ydEpvYixcblx0XHRTZXNBY3Rpb25zLlN0YXJ0QXJjaGl2ZUV4cG9ydCxcblx0XHRTZXNBY3Rpb25zLlN0YXJ0QXJjaGl2ZVNlYXJjaCxcblx0XHRTZXNBY3Rpb25zLlN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYixcblx0XHRTZXNBY3Rpb25zLlN0b3BBcmNoaXZlRXhwb3J0LFxuXHRcdFNlc0FjdGlvbnMuU3RvcEFyY2hpdmVTZWFyY2gsXG5cdFx0U2VzQWN0aW9ucy5UZXN0UmVuZGVyRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLlRlc3RSZW5kZXJUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUFjY291bnRTZW5kaW5nRW5hYmxlZCxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUFyY2hpdmUsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbixcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWQsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVDb25maWd1cmF0aW9uU2V0U2VuZGluZ0VuYWJsZWQsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlQ29udGFjdCxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUNvbnRhY3RMaXN0LFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUVtYWlsVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVJbmdyZXNzUG9pbnQsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVSZWNlaXB0UnVsZSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZVJlbGF5LFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1cyxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZVJlcHV0YXRpb25FbnRpdHlQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVSdWxlU2V0LFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVUcmFmZmljUG9saWN5LFxuXHRcdFNlc0FjdGlvbnMuVmVyaWZ5RG9tYWluRGtpbSxcblx0XHRTZXNBY3Rpb25zLlZlcmlmeURvbWFpbklkZW50aXR5LFxuXHRcdFNlc0FjdGlvbnMuVmVyaWZ5RW1haWxBZGRyZXNzLFxuXHRcdFNlc0FjdGlvbnMuVmVyaWZ5RW1haWxJZGVudGl0eSxcblx0XTtcblx0LyoqIEFsbCBsaXN0LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxMaXN0QWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0U2VzQWN0aW9ucy5MaXN0QWRkb25JbnN0YW5jZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0QWRkb25TdWJzY3JpcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9icyxcblx0XHRTZXNBY3Rpb25zLkxpc3RBZGRyZXNzTGlzdHMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0QXJjaGl2ZUV4cG9ydHMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0QXJjaGl2ZVNlYXJjaGVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEFyY2hpdmVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdENvbmZpZ3VyYXRpb25TZXRzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdENvbnRhY3RMaXN0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RDb250YWN0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlcyxcblx0XHRTZXNBY3Rpb25zLkxpc3REZWRpY2F0ZWRJcFBvb2xzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0RW1haWxJZGVudGl0aWVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEVtYWlsVGVtcGxhdGVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEV4cG9ydEpvYnMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0SWRlbnRpdGllcyxcblx0XHRTZXNBY3Rpb25zLkxpc3RJZGVudGl0eVBvbGljaWVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEltcG9ydEpvYnMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0SW5ncmVzc1BvaW50cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RNZW1iZXJzT2ZBZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLkxpc3RNdWx0aVJlZ2lvbkVuZHBvaW50cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RSZWxheXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0UmVwdXRhdGlvbkVudGl0aWVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFJlc291cmNlVGVuYW50cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RSdWxlU2V0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RUZW1wbGF0ZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0VGVuYW50UmVzb3VyY2VzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFRlbmFudHMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0VHJhZmZpY1BvbGljaWVzLFxuXHRdO1xuXHQvKiogQWxsIHBlcm1pc3Npb24tbWFuYWdlbWVudC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUGVybWlzc2lvbk1hbmFnZW1lbnRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRTZXNBY3Rpb25zLkFsbG93VmVuZGVkTG9nRGVsaXZlcnlGb3JSZXNvdXJjZSxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUVtYWlsSWRlbnRpdHlQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVFbWFpbElkZW50aXR5UG9saWN5LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlSWRlbnRpdHlQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5QdXRJZGVudGl0eVBvbGljeSxcblx0XHRTZXNBY3Rpb25zLlJlcGxpY2F0ZUVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0tleSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3ksXG5cdF07XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlc0FjdGlvbnMuVGFnUmVzb3VyY2UsXG5cdFx0U2VzQWN0aW9ucy5VbnRhZ1Jlc291cmNlLFxuXHRdO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgYWRkb24taW5zdGFuY2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0FkZG9uSW5zdGFuY2VBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQWRkb25JbnN0YW5jZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhZGRvbkluc3RhbmNlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhZGRvbi1pbnN0YW5jZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQWRkb25JbnN0YW5jZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQWRkb25JbnN0YW5jZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYWRkb25JbnN0YW5jZUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBhZGRvbi1zdWJzY3JpcHRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0FkZG9uU3Vic2NyaXB0aW9uQXJuUHJvcHMge1xuXHQvKiogVGhlIEFkZG9uU3Vic2NyaXB0aW9uSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGFkZG9uU3Vic2NyaXB0aW9uSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhZGRvbi1zdWJzY3JpcHRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0FkZG9uU3Vic2NyaXB0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBZGRvblN1YnNjcmlwdGlvbklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYWRkb25TdWJzY3JpcHRpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY29uZmlndXJhdGlvbi1zZXQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0NvbmZpZ3VyYXRpb25TZXRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQ29uZmlndXJhdGlvblNldE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGNvbmZpZ3VyYXRpb25TZXROYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgY29uZmlndXJhdGlvbi1zZXQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0NvbmZpZ3VyYXRpb25TZXRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENvbmZpZ3VyYXRpb25TZXROYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgY29uZmlndXJhdGlvblNldE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGNvbnRhY3QtbGlzdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQ29udGFjdExpc3RBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQ29udGFjdExpc3ROYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBjb250YWN0TGlzdE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjb250YWN0LWxpc3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0NvbnRhY3RMaXN0QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBDb250YWN0TGlzdE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjb250YWN0TGlzdE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0N1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgVGVtcGxhdGVOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0ZW1wbGF0ZU5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjdXN0b20tdmVyaWZpY2F0aW9uLWVtYWlsLXRlbXBsYXRlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUZW1wbGF0ZU5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0ZW1wbGF0ZU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGRlZGljYXRlZC1pcC1wb29sIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNEZWRpY2F0ZWRJUFBvb2xBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGVkaWNhdGVkSVBQb29sIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkZWRpY2F0ZWRJUFBvb2w6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBkZWRpY2F0ZWQtaXAtcG9vbCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzRGVkaWNhdGVkSVBQb29sQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBEZWRpY2F0ZWRJUFBvb2wgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBkZWRpY2F0ZWRJUFBvb2w6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGRlbGl2ZXJhYmlsaXR5LXRlc3QtcmVwb3J0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUmVwb3J0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJlcG9ydElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZGVsaXZlcmFiaWxpdHktdGVzdC1yZXBvcnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0RlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVwb3J0SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZXBvcnRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZXhwb3J0LWpvYiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzRXhwb3J0Sm9iQXJuUHJvcHMge1xuXHQvKiogVGhlIEV4cG9ydEpvYklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBleHBvcnRKb2JJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGV4cG9ydC1qb2IgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0V4cG9ydEpvYkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRXhwb3J0Sm9iSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBleHBvcnRKb2JJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgaWRlbnRpdHkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0lkZW50aXR5QXJuUHJvcHMge1xuXHQvKiogVGhlIElkZW50aXR5TmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaWRlbnRpdHlOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgaWRlbnRpdHkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0lkZW50aXR5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBJZGVudGl0eU5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBpZGVudGl0eU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGltcG9ydC1qb2IgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0ltcG9ydEpvYkFyblByb3BzIHtcblx0LyoqIFRoZSBJbXBvcnRKb2JJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaW1wb3J0Sm9iSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBpbXBvcnQtam9iIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNJbXBvcnRKb2JBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEltcG9ydEpvYklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgaW1wb3J0Sm9iSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG1haWxtYW5hZ2VyLWFkZHJlc3MtbGlzdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFyblByb3BzIHtcblx0LyoqIFRoZSBBZGRyZXNzTGlzdElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhZGRyZXNzTGlzdElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgbWFpbG1hbmFnZXItYWRkcmVzcy1saXN0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlckFkZHJlc3NMaXN0QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBZGRyZXNzTGlzdElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYWRkcmVzc0xpc3RJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgbWFpbG1hbmFnZXItYXJjaGl2ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJBcmNoaXZlQXJuUHJvcHMge1xuXHQvKiogVGhlIEFyY2hpdmVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYXJjaGl2ZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgbWFpbG1hbmFnZXItYXJjaGl2ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJBcmNoaXZlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBcmNoaXZlSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBhcmNoaXZlSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG1haWxtYW5hZ2VyLWluZ3Jlc3MtcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc01haWxtYW5hZ2VySW5ncmVzc1BvaW50QXJuUHJvcHMge1xuXHQvKiogVGhlIEluZ3Jlc3NQb2ludElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBpbmdyZXNzUG9pbnRJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIG1haWxtYW5hZ2VyLWluZ3Jlc3MtcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc01haWxtYW5hZ2VySW5ncmVzc1BvaW50QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBJbmdyZXNzUG9pbnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGluZ3Jlc3NQb2ludElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBtYWlsbWFuYWdlci1ydWxlLXNldCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJSdWxlU2V0QXJuUHJvcHMge1xuXHQvKiogVGhlIFJ1bGVTZXRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcnVsZVNldElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgbWFpbG1hbmFnZXItcnVsZS1zZXQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc01haWxtYW5hZ2VyUnVsZVNldEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUnVsZVNldElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcnVsZVNldElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBtYWlsbWFuYWdlci1zbXRwLXJlbGF5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlclNtdHBSZWxheUFyblByb3BzIHtcblx0LyoqIFRoZSBSZWxheUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZWxheUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgbWFpbG1hbmFnZXItc210cC1yZWxheSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJTbXRwUmVsYXlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJlbGF5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZWxheUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBtYWlsbWFuYWdlci10cmFmZmljLXBvbGljeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJUcmFmZmljUG9saWN5QXJuUHJvcHMge1xuXHQvKiogVGhlIFRyYWZmaWNQb2xpY3lJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdHJhZmZpY1BvbGljeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgbWFpbG1hbmFnZXItdHJhZmZpYy1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc01haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVHJhZmZpY1BvbGljeUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdHJhZmZpY1BvbGljeUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBtdWx0aS1yZWdpb24tZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc011bHRpUmVnaW9uRW5kcG9pbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRW5kcG9pbnROYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBlbmRwb2ludE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtdWx0aS1yZWdpb24tZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc011bHRpUmVnaW9uRW5kcG9pbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEVuZHBvaW50TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGVuZHBvaW50TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcmVwdXRhdGlvbi1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc1JlcHV0YXRpb25Qb2xpY3lBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUmVwdXRhdGlvblBvbGljeU5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJlcHV0YXRpb25Qb2xpY3lOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmVwdXRhdGlvbi1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc1JlcHV0YXRpb25Qb2xpY3lBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJlcHV0YXRpb25Qb2xpY3lOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcmVwdXRhdGlvblBvbGljeU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHRlbXBsYXRlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNUZW1wbGF0ZUFyblByb3BzIHtcblx0LyoqIFRoZSBUZW1wbGF0ZU5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRlbXBsYXRlTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHRlbXBsYXRlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNUZW1wbGF0ZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVGVtcGxhdGVOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdGVtcGxhdGVOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSB0ZW5hbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc1RlbmFudEFyblByb3BzIHtcblx0LyoqIFRoZSBUZW5hbnROYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0ZW5hbnROYW1lOiBzdHJpbmc7XG5cdC8qKiBUaGUgVGVuYW50SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRlbmFudElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgdGVuYW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNUZW5hbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRlbmFudE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0ZW5hbnROYW1lOiBzdHJpbmc7XG5cdC8qKiBUaGUgVGVuYW50SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0ZW5hbnRJZDogc3RyaW5nO1xufVxuXG5jb25zdCBBZGRvbkluc3RhbmNlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmFkZG9uLWluc3RhbmNlXFwvKD88YWRkb25JbnN0YW5jZUlkPlteOi8/XSspJC87XG5jb25zdCBBZGRvblN1YnNjcmlwdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTphZGRvbi1zdWJzY3JpcHRpb25cXC8oPzxhZGRvblN1YnNjcmlwdGlvbklkPlteOi8/XSspJC87XG5jb25zdCBDb25maWd1cmF0aW9uU2V0QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNvbmZpZ3VyYXRpb24tc2V0XFwvKD88Y29uZmlndXJhdGlvblNldE5hbWU+W146Lz9dKykkLztcbmNvbnN0IENvbnRhY3RMaXN0QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNvbnRhY3QtbGlzdFxcLyg/PGNvbnRhY3RMaXN0TmFtZT5bXjovP10rKSQvO1xuY29uc3QgQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpjdXN0b20tdmVyaWZpY2F0aW9uLWVtYWlsLXRlbXBsYXRlXFwvKD88dGVtcGxhdGVOYW1lPlteOi8/XSspJC87XG5jb25zdCBEZWRpY2F0ZWRJUFBvb2xBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZGVkaWNhdGVkLWlwLXBvb2xcXC8oPzxkZWRpY2F0ZWRJUFBvb2w+W146Lz9dKykkLztcbmNvbnN0IERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydFxcLyg/PHJlcG9ydElkPlteOi8/XSspJC87XG5jb25zdCBFeHBvcnRKb2JBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZXhwb3J0LWpvYlxcLyg/PGV4cG9ydEpvYklkPlteOi8/XSspJC87XG5jb25zdCBJZGVudGl0eUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTppZGVudGl0eVxcLyg/PGlkZW50aXR5TmFtZT5bXjovP10rKSQvO1xuY29uc3QgSW1wb3J0Sm9iQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmltcG9ydC1qb2JcXC8oPzxpbXBvcnRKb2JJZD5bXjovP10rKSQvO1xuY29uc3QgTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptYWlsbWFuYWdlci1hZGRyZXNzLWxpc3RcXC8oPzxhZGRyZXNzTGlzdElkPlteOi8/XSspJC87XG5jb25zdCBNYWlsbWFuYWdlckFyY2hpdmVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bWFpbG1hbmFnZXItYXJjaGl2ZVxcLyg/PGFyY2hpdmVJZD5bXjovP10rKSQvO1xuY29uc3QgTWFpbG1hbmFnZXJJbmdyZXNzUG9pbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bWFpbG1hbmFnZXItaW5ncmVzcy1wb2ludFxcLyg/PGluZ3Jlc3NQb2ludElkPlteOi8/XSspJC87XG5jb25zdCBNYWlsbWFuYWdlclJ1bGVTZXRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bWFpbG1hbmFnZXItcnVsZS1zZXRcXC8oPzxydWxlU2V0SWQ+W146Lz9dKykkLztcbmNvbnN0IE1haWxtYW5hZ2VyU210cFJlbGF5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOm1haWxtYW5hZ2VyLXNtdHAtcmVsYXlcXC8oPzxyZWxheUlkPlteOi8/XSspJC87XG5jb25zdCBNYWlsbWFuYWdlclRyYWZmaWNQb2xpY3lBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bWFpbG1hbmFnZXItdHJhZmZpYy1wb2xpY3lcXC8oPzx0cmFmZmljUG9saWN5SWQ+W146Lz9dKykkLztcbmNvbnN0IE11bHRpUmVnaW9uRW5kcG9pbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bXVsdGktcmVnaW9uLWVuZHBvaW50XFwvKD88ZW5kcG9pbnROYW1lPlteOi8/XSspJC87XG5jb25zdCBSZXB1dGF0aW9uUG9saWN5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOmF3czpyZXB1dGF0aW9uLXBvbGljeVxcLyg/PHJlcHV0YXRpb25Qb2xpY3lOYW1lPlteOi8/XSspJC87XG5jb25zdCBUZW1wbGF0ZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0ZW1wbGF0ZVxcLyg/PHRlbXBsYXRlTmFtZT5bXjovP10rKSQvO1xuY29uc3QgVGVuYW50QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRlbmFudFxcLyg/PHRlbmFudE5hbWU+W146Lz9dKylcXC8oPzx0ZW5hbnRJZD5bXjovP10rKSQvO1xuXG4vKipcbiAqIEFSTiBidWlsZGVycywgdmFsaWRhdG9ycywgYW5kIHBhcnNlcnMgZm9yIHNlcyByZXNvdXJjZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXNSZXNvdXJjZXMge1xuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGFkZG9uLWluc3RhbmNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFkZG9uSW5zdGFuY2UocHJvcHM6IFNlc0FkZG9uSW5zdGFuY2VBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmFkZG9uLWluc3RhbmNlLyR7cHJvcHMuYWRkb25JbnN0YW5jZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBhZGRvbi1pbnN0YW5jZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQWRkb25JbnN0YW5jZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBZGRvbkluc3RhbmNlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGFkZG9uLWluc3RhbmNlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUFkZG9uSW5zdGFuY2VBcm4oYXJuOiBzdHJpbmcpOiBTZXNBZGRvbkluc3RhbmNlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBZGRvbkluc3RhbmNlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGFkZG9uLWluc3RhbmNlIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGFkZG9uSW5zdGFuY2VJZDogbWF0Y2guZ3JvdXBzIS5hZGRvbkluc3RhbmNlSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYWRkb24tc3Vic2NyaXB0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFkZG9uU3Vic2NyaXB0aW9uKHByb3BzOiBTZXNBZGRvblN1YnNjcmlwdGlvbkFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YWRkb24tc3Vic2NyaXB0aW9uLyR7cHJvcHMuYWRkb25TdWJzY3JpcHRpb25JZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgYWRkb24tc3Vic2NyaXB0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBZGRvblN1YnNjcmlwdGlvbkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBZGRvblN1YnNjcmlwdGlvbkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBhZGRvbi1zdWJzY3JpcHRpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWRkb25TdWJzY3JpcHRpb25Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc0FkZG9uU3Vic2NyaXB0aW9uQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBZGRvblN1YnNjcmlwdGlvbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBhZGRvbi1zdWJzY3JpcHRpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YWRkb25TdWJzY3JpcHRpb25JZDogbWF0Y2guZ3JvdXBzIS5hZGRvblN1YnNjcmlwdGlvbklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNvbmZpZ3VyYXRpb24tc2V0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNvbmZpZ3VyYXRpb25TZXQocHJvcHM6IFNlc0NvbmZpZ3VyYXRpb25TZXRBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNvbmZpZ3VyYXRpb24tc2V0LyR7cHJvcHMuY29uZmlndXJhdGlvblNldE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNvbmZpZ3VyYXRpb24tc2V0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDb25maWd1cmF0aW9uU2V0QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENvbmZpZ3VyYXRpb25TZXRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY29uZmlndXJhdGlvbi1zZXQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ29uZmlndXJhdGlvblNldEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VzQ29uZmlndXJhdGlvblNldEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ29uZmlndXJhdGlvblNldEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjb25maWd1cmF0aW9uLXNldCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRjb25maWd1cmF0aW9uU2V0TmFtZTogbWF0Y2guZ3JvdXBzIS5jb25maWd1cmF0aW9uU2V0TmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjb250YWN0LWxpc3QgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY29udGFjdExpc3QocHJvcHM6IFNlc0NvbnRhY3RMaXN0QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjb250YWN0LWxpc3QvJHtwcm9wcy5jb250YWN0TGlzdE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNvbnRhY3QtbGlzdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ29udGFjdExpc3RBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ29udGFjdExpc3RBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY29udGFjdC1saXN0IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNvbnRhY3RMaXN0QXJuKGFybjogc3RyaW5nKTogU2VzQ29udGFjdExpc3RBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENvbnRhY3RMaXN0QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNvbnRhY3QtbGlzdCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRjb250YWN0TGlzdE5hbWU6IG1hdGNoLmdyb3VwcyEuY29udGFjdExpc3ROYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZShcblx0XHRwcm9wczogU2VzQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjdXN0b20tdmVyaWZpY2F0aW9uLWVtYWlsLXRlbXBsYXRlLyR7cHJvcHMudGVtcGxhdGVOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjdXN0b20tdmVyaWZpY2F0aW9uLWVtYWlsLXRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY3VzdG9tLXZlcmlmaWNhdGlvbi1lbWFpbC10ZW1wbGF0ZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGVtcGxhdGVOYW1lOiBtYXRjaC5ncm91cHMhLnRlbXBsYXRlTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBkZWRpY2F0ZWQtaXAtcG9vbCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBkZWRpY2F0ZWRJUFBvb2wocHJvcHM6IFNlc0RlZGljYXRlZElQUG9vbEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZGVkaWNhdGVkLWlwLXBvb2wvJHtwcm9wcy5kZWRpY2F0ZWRJUFBvb2x9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGRlZGljYXRlZC1pcC1wb29sIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWREZWRpY2F0ZWRJUFBvb2xBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gRGVkaWNhdGVkSVBQb29sQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGRlZGljYXRlZC1pcC1wb29sIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZURlZGljYXRlZElQUG9vbEFybihhcm46IHN0cmluZyk6IFNlc0RlZGljYXRlZElQUG9vbEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gRGVkaWNhdGVkSVBQb29sQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRlZGljYXRlZC1pcC1wb29sIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRlZGljYXRlZElQUG9vbDogbWF0Y2guZ3JvdXBzIS5kZWRpY2F0ZWRJUFBvb2wsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZGVsaXZlcmFiaWxpdHktdGVzdC1yZXBvcnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0KFxuXHRcdHByb3BzOiBTZXNEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZGVsaXZlcmFiaWxpdHktdGVzdC1yZXBvcnQvJHtwcm9wcy5yZXBvcnRJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZGVsaXZlcmFiaWxpdHktdGVzdC1yZXBvcnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZGVsaXZlcmFiaWxpdHktdGVzdC1yZXBvcnQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRyZXBvcnRJZDogbWF0Y2guZ3JvdXBzIS5yZXBvcnRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBleHBvcnQtam9iIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGV4cG9ydEpvYihwcm9wczogU2VzRXhwb3J0Sm9iQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpleHBvcnQtam9iLyR7cHJvcHMuZXhwb3J0Sm9iSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGV4cG9ydC1qb2IgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEV4cG9ydEpvYkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBFeHBvcnRKb2JBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZXhwb3J0LWpvYiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VFeHBvcnRKb2JBcm4oYXJuOiBzdHJpbmcpOiBTZXNFeHBvcnRKb2JBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEV4cG9ydEpvYkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBleHBvcnQtam9iIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGV4cG9ydEpvYklkOiBtYXRjaC5ncm91cHMhLmV4cG9ydEpvYklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGlkZW50aXR5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlkZW50aXR5KHByb3BzOiBTZXNJZGVudGl0eUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06aWRlbnRpdHkvJHtwcm9wcy5pZGVudGl0eU5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGlkZW50aXR5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRJZGVudGl0eUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBJZGVudGl0eUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBpZGVudGl0eSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VJZGVudGl0eUFybihhcm46IHN0cmluZyk6IFNlc0lkZW50aXR5QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBJZGVudGl0eUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBpZGVudGl0eSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRpZGVudGl0eU5hbWU6IG1hdGNoLmdyb3VwcyEuaWRlbnRpdHlOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGltcG9ydC1qb2IgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaW1wb3J0Sm9iKHByb3BzOiBTZXNJbXBvcnRKb2JBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmltcG9ydC1qb2IvJHtwcm9wcy5pbXBvcnRKb2JJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgaW1wb3J0LWpvYiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkSW1wb3J0Sm9iQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEltcG9ydEpvYkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBpbXBvcnQtam9iIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUltcG9ydEpvYkFybihhcm46IHN0cmluZyk6IFNlc0ltcG9ydEpvYkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gSW1wb3J0Sm9iQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGltcG9ydC1qb2IgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aW1wb3J0Sm9iSWQ6IG1hdGNoLmdyb3VwcyEuaW1wb3J0Sm9iSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgbWFpbG1hbmFnZXItYWRkcmVzcy1saXN0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG1haWxtYW5hZ2VyQWRkcmVzc0xpc3QoXG5cdFx0cHJvcHM6IFNlc01haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06bWFpbG1hbmFnZXItYWRkcmVzcy1saXN0LyR7cHJvcHMuYWRkcmVzc0xpc3RJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgbWFpbG1hbmFnZXItYWRkcmVzcy1saXN0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRNYWlsbWFuYWdlckFkZHJlc3NMaXN0QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE1haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbWFpbG1hbmFnZXItYWRkcmVzcy1saXN0IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU1haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc01haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE1haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbWFpbG1hbmFnZXItYWRkcmVzcy1saXN0IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGFkZHJlc3NMaXN0SWQ6IG1hdGNoLmdyb3VwcyEuYWRkcmVzc0xpc3RJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1hcmNoaXZlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG1haWxtYW5hZ2VyQXJjaGl2ZShwcm9wczogU2VzTWFpbG1hbmFnZXJBcmNoaXZlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptYWlsbWFuYWdlci1hcmNoaXZlLyR7cHJvcHMuYXJjaGl2ZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1hcmNoaXZlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRNYWlsbWFuYWdlckFyY2hpdmVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gTWFpbG1hbmFnZXJBcmNoaXZlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIG1haWxtYW5hZ2VyLWFyY2hpdmUgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWFpbG1hbmFnZXJBcmNoaXZlQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNNYWlsbWFuYWdlckFyY2hpdmVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE1haWxtYW5hZ2VyQXJjaGl2ZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYWlsbWFuYWdlci1hcmNoaXZlIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGFyY2hpdmVJZDogbWF0Y2guZ3JvdXBzIS5hcmNoaXZlSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgbWFpbG1hbmFnZXItaW5ncmVzcy1wb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBtYWlsbWFuYWdlckluZ3Jlc3NQb2ludChcblx0XHRwcm9wczogU2VzTWFpbG1hbmFnZXJJbmdyZXNzUG9pbnRBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06bWFpbG1hbmFnZXItaW5ncmVzcy1wb2ludC8ke3Byb3BzLmluZ3Jlc3NQb2ludElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1pbmdyZXNzLXBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRNYWlsbWFuYWdlckluZ3Jlc3NQb2ludEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBNYWlsbWFuYWdlckluZ3Jlc3NQb2ludEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBtYWlsbWFuYWdlci1pbmdyZXNzLXBvaW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU1haWxtYW5hZ2VySW5ncmVzc1BvaW50QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNNYWlsbWFuYWdlckluZ3Jlc3NQb2ludEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gTWFpbG1hbmFnZXJJbmdyZXNzUG9pbnRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbWFpbG1hbmFnZXItaW5ncmVzcy1wb2ludCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRpbmdyZXNzUG9pbnRJZDogbWF0Y2guZ3JvdXBzIS5pbmdyZXNzUG9pbnRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1ydWxlLXNldCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBtYWlsbWFuYWdlclJ1bGVTZXQocHJvcHM6IFNlc01haWxtYW5hZ2VyUnVsZVNldEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06bWFpbG1hbmFnZXItcnVsZS1zZXQvJHtwcm9wcy5ydWxlU2V0SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLXJ1bGUtc2V0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRNYWlsbWFuYWdlclJ1bGVTZXRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gTWFpbG1hbmFnZXJSdWxlU2V0QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIG1haWxtYW5hZ2VyLXJ1bGUtc2V0IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU1haWxtYW5hZ2VyUnVsZVNldEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VzTWFpbG1hbmFnZXJSdWxlU2V0QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBNYWlsbWFuYWdlclJ1bGVTZXRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbWFpbG1hbmFnZXItcnVsZS1zZXQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cnVsZVNldElkOiBtYXRjaC5ncm91cHMhLnJ1bGVTZXRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1zbXRwLXJlbGF5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG1haWxtYW5hZ2VyU210cFJlbGF5KHByb3BzOiBTZXNNYWlsbWFuYWdlclNtdHBSZWxheUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06bWFpbG1hbmFnZXItc210cC1yZWxheS8ke3Byb3BzLnJlbGF5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLXNtdHAtcmVsYXkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1haWxtYW5hZ2VyU210cFJlbGF5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE1haWxtYW5hZ2VyU210cFJlbGF5QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIG1haWxtYW5hZ2VyLXNtdHAtcmVsYXkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWFpbG1hbmFnZXJTbXRwUmVsYXlBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc01haWxtYW5hZ2VyU210cFJlbGF5QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBNYWlsbWFuYWdlclNtdHBSZWxheUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYWlsbWFuYWdlci1zbXRwLXJlbGF5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJlbGF5SWQ6IG1hdGNoLmdyb3VwcyEucmVsYXlJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci10cmFmZmljLXBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBtYWlsbWFuYWdlclRyYWZmaWNQb2xpY3koXG5cdFx0cHJvcHM6IFNlc01haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptYWlsbWFuYWdlci10cmFmZmljLXBvbGljeS8ke3Byb3BzLnRyYWZmaWNQb2xpY3lJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgbWFpbG1hbmFnZXItdHJhZmZpYy1wb2xpY3kgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBNYWlsbWFuYWdlclRyYWZmaWNQb2xpY3lBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbWFpbG1hbmFnZXItdHJhZmZpYy1wb2xpY3kgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWFpbG1hbmFnZXJUcmFmZmljUG9saWN5QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNNYWlsbWFuYWdlclRyYWZmaWNQb2xpY3lBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE1haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYWlsbWFuYWdlci10cmFmZmljLXBvbGljeSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0cmFmZmljUG9saWN5SWQ6IG1hdGNoLmdyb3VwcyEudHJhZmZpY1BvbGljeUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG11bHRpLXJlZ2lvbi1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBtdWx0aVJlZ2lvbkVuZHBvaW50KHByb3BzOiBTZXNNdWx0aVJlZ2lvbkVuZHBvaW50QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptdWx0aS1yZWdpb24tZW5kcG9pbnQvJHtwcm9wcy5lbmRwb2ludE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG11bHRpLXJlZ2lvbi1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkTXVsdGlSZWdpb25FbmRwb2ludEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBNdWx0aVJlZ2lvbkVuZHBvaW50QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIG11bHRpLXJlZ2lvbi1lbmRwb2ludCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VNdWx0aVJlZ2lvbkVuZHBvaW50QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNNdWx0aVJlZ2lvbkVuZHBvaW50QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBNdWx0aVJlZ2lvbkVuZHBvaW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG11bHRpLXJlZ2lvbi1lbmRwb2ludCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRlbmRwb2ludE5hbWU6IG1hdGNoLmdyb3VwcyEuZW5kcG9pbnROYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHJlcHV0YXRpb24tcG9saWN5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHJlcHV0YXRpb25Qb2xpY3kocHJvcHM6IFNlc1JlcHV0YXRpb25Qb2xpY3lBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifTphd3M6cmVwdXRhdGlvbi1wb2xpY3kvJHtwcm9wcy5yZXB1dGF0aW9uUG9saWN5TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcmVwdXRhdGlvbi1wb2xpY3kgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFJlcHV0YXRpb25Qb2xpY3lBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUmVwdXRhdGlvblBvbGljeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSByZXB1dGF0aW9uLXBvbGljeSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VSZXB1dGF0aW9uUG9saWN5QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNSZXB1dGF0aW9uUG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBSZXB1dGF0aW9uUG9saWN5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHJlcHV0YXRpb24tcG9saWN5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJlcHV0YXRpb25Qb2xpY3lOYW1lOiBtYXRjaC5ncm91cHMhLnJlcHV0YXRpb25Qb2xpY3lOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHRlbXBsYXRlKHByb3BzOiBTZXNUZW1wbGF0ZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dGVtcGxhdGUvJHtwcm9wcy50ZW1wbGF0ZU5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRUZW1wbGF0ZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBUZW1wbGF0ZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB0ZW1wbGF0ZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VUZW1wbGF0ZUFybihhcm46IHN0cmluZyk6IFNlc1RlbXBsYXRlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBUZW1wbGF0ZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0ZW1wbGF0ZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0ZW1wbGF0ZU5hbWU6IG1hdGNoLmdyb3VwcyEudGVtcGxhdGVOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHRlbmFudCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyB0ZW5hbnQocHJvcHM6IFNlc1RlbmFudEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dGVuYW50LyR7cHJvcHMudGVuYW50TmFtZX0vJHtwcm9wcy50ZW5hbnRJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgdGVuYW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRUZW5hbnRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gVGVuYW50QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHRlbmFudCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VUZW5hbnRBcm4oYXJuOiBzdHJpbmcpOiBTZXNUZW5hbnRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFRlbmFudEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0ZW5hbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGVuYW50TmFtZTogbWF0Y2guZ3JvdXBzIS50ZW5hbnROYW1lLFxuXHRcdFx0dGVuYW50SWQ6IG1hdGNoLmdyb3VwcyEudGVuYW50SWQsXG5cdFx0fTtcblx0fVxufVxuXG4vKipcbiAqIEFQSSBvcGVyYXRpb24gdG8gcmVxdWlyZWQgSUFNIGFjdGlvbnMgbWFwcGluZyBmb3Igc2VzLlxuICovXG5leHBvcnQgY2xhc3MgU2VzT3BlcmF0aW9ucyB7XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0TWV0cmljRGF0YSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0TWV0cmljRGF0YTogc3RyaW5nW10gPSBbXCJzZXM6QmF0Y2hHZXRNZXRyaWNEYXRhXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDYW5jZWxFeHBvcnRKb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDYW5jZWxFeHBvcnRKb2I6IHN0cmluZ1tdID0gW1wic2VzOkNhbmNlbEV4cG9ydEpvYlwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ2xvbmVSZWNlaXB0UnVsZVNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENsb25lUmVjZWlwdFJ1bGVTZXQ6IHN0cmluZ1tdID0gW1wic2VzOkNsb25lUmVjZWlwdFJ1bGVTZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFkZG9uSW5zdGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRvbkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVBZGRvbkluc3RhbmNlXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQWRkb25TdWJzY3JpcHRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRvblN1YnNjcmlwdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQWRkb25TdWJzY3JpcHRpb25cIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBZGRyZXNzTGlzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFkZHJlc3NMaXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVBZGRyZXNzTGlzdFwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFkZHJlc3NMaXN0SW1wb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkcmVzc0xpc3RJbXBvcnRKb2I6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZUFkZHJlc3NMaXN0SW1wb3J0Sm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFyY2hpdmUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcmNoaXZlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVBcmNoaXZlXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQ29uZmlndXJhdGlvblNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25TZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvblwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUNvbnRhY3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb250YWN0OiBzdHJpbmdbXSA9IFtcInNlczpDcmVhdGVDb250YWN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb250YWN0TGlzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbnRhY3RMaXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVDb250YWN0TGlzdFwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRGVkaWNhdGVkSXBQb29sIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGVkaWNhdGVkSXBQb29sOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVEZWRpY2F0ZWRJcFBvb2xcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZURlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydFwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUVtYWlsSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbElkZW50aXR5OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVFbWFpbElkZW50aXR5XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRW1haWxJZGVudGl0eVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsSWRlbnRpdHlQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZUVtYWlsSWRlbnRpdHlQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRW1haWxUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsVGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZUVtYWlsVGVtcGxhdGVcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVFeHBvcnRKb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFeHBvcnRKb2I6IHN0cmluZ1tdID0gW1wic2VzOkNyZWF0ZUV4cG9ydEpvYlwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlSW1wb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW1wb3J0Sm9iOiBzdHJpbmdbXSA9IFtcInNlczpDcmVhdGVJbXBvcnRKb2JcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUluZ3Jlc3NQb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUluZ3Jlc3NQb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlSW5ncmVzc1BvaW50XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlTXVsdGlSZWdpb25FbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnRcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVSZWNlaXB0RmlsdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdEZpbHRlcjogc3RyaW5nW10gPSBbXCJzZXM6Q3JlYXRlUmVjZWlwdEZpbHRlclwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVjZWlwdFJ1bGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNlaXB0UnVsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlUmVjZWlwdFJ1bGVcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVSZWNlaXB0UnVsZVNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcInNlczpDcmVhdGVSZWNlaXB0UnVsZVNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVsYXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWxheTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlUmVsYXlcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUnVsZVNldDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlUnVsZVNldFwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6Q3JlYXRlVGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRlbmFudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlbmFudDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlVGVuYW50XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlVHJhZmZpY1BvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRyYWZmaWNQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZVRyYWZmaWNQb2xpY3lcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBZGRvbkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWRkb25JbnN0YW5jZTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlQWRkb25JbnN0YW5jZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQWRkb25TdWJzY3JpcHRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZGRvblN1YnNjcmlwdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlQWRkb25TdWJzY3JpcHRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQWRkcmVzc0xpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlQWRkcmVzc0xpc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFyY2hpdmUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcmNoaXZlOiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVBcmNoaXZlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDb25maWd1cmF0aW9uU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29uZmlndXJhdGlvblNldDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDb250YWN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29udGFjdDogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlQ29udGFjdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ29udGFjdExpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb250YWN0TGlzdDogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlQ29udGFjdExpc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURlZGljYXRlZElwUG9vbCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURlZGljYXRlZElwUG9vbDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlRGVkaWNhdGVkSXBQb29sXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUVtYWlsSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFbWFpbElkZW50aXR5OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVFbWFpbElkZW50aXR5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVFbWFpbElkZW50aXR5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxJZGVudGl0eVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlRW1haWxJZGVudGl0eVBvbGljeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVFbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlRW1haWxUZW1wbGF0ZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJZGVudGl0eTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlSWRlbnRpdHlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUlkZW50aXR5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHlQb2xpY3k6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUlkZW50aXR5UG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVJbmdyZXNzUG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJbmdyZXNzUG9pbnQ6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUluZ3Jlc3NQb2ludFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlTXVsdGlSZWdpb25FbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUmVjZWlwdEZpbHRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRGaWx0ZXI6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZVJlY2VpcHRGaWx0ZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlY2VpcHRSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjZWlwdFJ1bGU6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZVJlY2VpcHRSdWxlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSZWNlaXB0UnVsZVNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVSZWNlaXB0UnVsZVNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUmVsYXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWxheTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlUmVsYXlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSdWxlU2V0OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVSdWxlU2V0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZVN1cHByZXNzZWREZXN0aW5hdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVUZW1wbGF0ZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVGVuYW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVUZW5hbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVRyYWZmaWNQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUcmFmZmljUG9saWN5OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVUcmFmZmljUG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVWZXJpZmllZEVtYWlsQWRkcmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZWxldGVWZXJpZmllZEVtYWlsQWRkcmVzc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXJlZ2lzdGVyTWVtYmVyRnJvbUFkZHJlc3NMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVyZWdpc3Rlck1lbWJlckZyb21BZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVyZWdpc3Rlck1lbWJlckZyb21BZGRyZXNzTGlzdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUFjdGl2ZVJlY2VpcHRSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlc2NyaWJlQ29uZmlndXJhdGlvblNldFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVJlY2VpcHRSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNlaXB0UnVsZTogc3RyaW5nW10gPSBbXCJzZXM6RGVzY3JpYmVSZWNlaXB0UnVsZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVSZWNlaXB0UnVsZVNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlUmVjZWlwdFJ1bGVTZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlc2NyaWJlUmVjZWlwdFJ1bGVTZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QWNjb3VudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QWNjb3VudDogc3RyaW5nW10gPSBbXCJzZXM6R2V0QWNjb3VudFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QWNjb3VudFNlbmRpbmdFbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBY2NvdW50U2VuZGluZ0VuYWJsZWQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFjY291bnRTZW5kaW5nRW5hYmxlZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBZGRvbkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZGRvbkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcInNlczpHZXRBZGRvbkluc3RhbmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBZGRvblN1YnNjcmlwdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QWRkb25TdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFkZG9uU3Vic2NyaXB0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFkZHJlc3NMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXCJzZXM6R2V0QWRkcmVzc0xpc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFkZHJlc3NMaXN0SW1wb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZGRyZXNzTGlzdEltcG9ydEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0QWRkcmVzc0xpc3RJbXBvcnRKb2JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXJjaGl2ZTogc3RyaW5nW10gPSBbXCJzZXM6R2V0QXJjaGl2ZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZUV4cG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXJjaGl2ZUV4cG9ydDogc3RyaW5nW10gPSBbXCJzZXM6R2V0QXJjaGl2ZUV4cG9ydFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZU1lc3NhZ2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFyY2hpdmVNZXNzYWdlOiBzdHJpbmdbXSA9IFtcInNlczpHZXRBcmNoaXZlTWVzc2FnZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZU1lc3NhZ2VDb250ZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBcmNoaXZlTWVzc2FnZUNvbnRlbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFyY2hpdmVNZXNzYWdlQ29udGVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcmNoaXZlU2VhcmNoIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBcmNoaXZlU2VhcmNoOiBzdHJpbmdbXSA9IFtcInNlczpHZXRBcmNoaXZlU2VhcmNoXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcmNoaXZlU2VhcmNoUmVzdWx0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXJjaGl2ZVNlYXJjaFJlc3VsdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFyY2hpdmVTZWFyY2hSZXN1bHRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEJsYWNrbGlzdFJlcG9ydHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEJsYWNrbGlzdFJlcG9ydHM6IHN0cmluZ1tdID0gW1wic2VzOkdldEJsYWNrbGlzdFJlcG9ydHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvbmZpZ3VyYXRpb25TZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbmZpZ3VyYXRpb25TZXQ6IHN0cmluZ1tdID0gW1wic2VzOkdldENvbmZpZ3VyYXRpb25TZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXRDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29udGFjdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0Q29udGFjdDogc3RyaW5nW10gPSBbXCJzZXM6R2V0Q29udGFjdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29udGFjdExpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbnRhY3RMaXN0OiBzdHJpbmdbXSA9IFtcInNlczpHZXRDb250YWN0TGlzdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWRpY2F0ZWRJcCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RGVkaWNhdGVkSXA6IHN0cmluZ1tdID0gW1wic2VzOkdldERlZGljYXRlZElwXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWRpY2F0ZWRJcFBvb2wgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERlZGljYXRlZElwUG9vbDogc3RyaW5nW10gPSBbXCJzZXM6R2V0RGVkaWNhdGVkSXBQb29sXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWRpY2F0ZWRJcHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERlZGljYXRlZElwczogc3RyaW5nW10gPSBbXCJzZXM6R2V0RGVkaWNhdGVkSXBzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXREZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEVtYWlsQWRkcmVzc0luc2lnaHRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFbWFpbEFkZHJlc3NJbnNpZ2h0czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0RW1haWxBZGRyZXNzSW5zaWdodHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RW1haWxJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RW1haWxJZGVudGl0eTogc3RyaW5nW10gPSBbXCJzZXM6R2V0RW1haWxJZGVudGl0eVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RW1haWxJZGVudGl0eVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFbWFpbElkZW50aXR5UG9saWNpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEVtYWlsSWRlbnRpdHlQb2xpY2llc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRFbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFbWFpbFRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcInNlczpHZXRFbWFpbFRlbXBsYXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRFeHBvcnRKb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEV4cG9ydEpvYjogc3RyaW5nW10gPSBbXCJzZXM6R2V0RXhwb3J0Sm9iXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eU1haWxGcm9tRG9tYWluQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eU5vdGlmaWNhdGlvbkF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldElkZW50aXR5Tm90aWZpY2F0aW9uQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJZGVudGl0eVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eVBvbGljaWVzOiBzdHJpbmdbXSA9IFtcInNlczpHZXRJZGVudGl0eVBvbGljaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJZGVudGl0eVZlcmlmaWNhdGlvbkF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlWZXJpZmljYXRpb25BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEltcG9ydEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SW1wb3J0Sm9iOiBzdHJpbmdbXSA9IFtcInNlczpHZXRJbXBvcnRKb2JcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEluZ3Jlc3NQb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SW5ncmVzc1BvaW50OiBzdHJpbmdbXSA9IFtcInNlczpHZXRJbmdyZXNzUG9pbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldE1lbWJlck9mQWRkcmVzc0xpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldE1lbWJlck9mQWRkcmVzc0xpc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldE1lbWJlck9mQWRkcmVzc0xpc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0TWVzc2FnZUluc2lnaHRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRNZXNzYWdlSW5zaWdodHM6IHN0cmluZ1tdID0gW1wic2VzOkdldE1lc3NhZ2VJbnNpZ2h0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0TXVsdGlSZWdpb25FbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0TXVsdGlSZWdpb25FbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0TXVsdGlSZWdpb25FbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSZWxheSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UmVsYXk6IHN0cmluZ1tdID0gW1wic2VzOkdldFJlbGF5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSZXB1dGF0aW9uRW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXB1dGF0aW9uRW50aXR5OiBzdHJpbmdbXSA9IFtcInNlczpHZXRSZXB1dGF0aW9uRW50aXR5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcInNlczpHZXRSdWxlU2V0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTZW5kUXVvdGEgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFNlbmRRdW90YTogc3RyaW5nW10gPSBbXCJzZXM6R2V0U2VuZFF1b3RhXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTZW5kU3RhdGlzdGljcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0U2VuZFN0YXRpc3RpY3M6IHN0cmluZ1tdID0gW1wic2VzOkdldFNlbmRTdGF0aXN0aWNzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTdXBwcmVzc2VkRGVzdGluYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFN1cHByZXNzZWREZXN0aW5hdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0U3VwcHJlc3NlZERlc3RpbmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6R2V0VGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRlbmFudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0VGVuYW50OiBzdHJpbmdbXSA9IFtcInNlczpHZXRUZW5hbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRyYWZmaWNQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFRyYWZmaWNQb2xpY3k6IHN0cmluZ1tdID0gW1wic2VzOkdldFRyYWZmaWNQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBZGRvbkluc3RhbmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZGRvbkluc3RhbmNlczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEFkZG9uSW5zdGFuY2VzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWRkb25TdWJzY3JpcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZG9uU3Vic2NyaXB0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdEFkZG9uU3Vic2NyaXB0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWRkcmVzc0xpc3RJbXBvcnRKb2JzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9iczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWRkcmVzc0xpc3RzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZHJlc3NMaXN0czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEFkZHJlc3NMaXN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFyY2hpdmVFeHBvcnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFyY2hpdmVFeHBvcnRzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0QXJjaGl2ZUV4cG9ydHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcmNoaXZlU2VhcmNoZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJjaGl2ZVNlYXJjaGVzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0QXJjaGl2ZVNlYXJjaGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXJjaGl2ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJjaGl2ZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RBcmNoaXZlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvbmZpZ3VyYXRpb25TZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25TZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpMaXN0Q29uZmlndXJhdGlvblNldHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvbnRhY3RMaXN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb250YWN0TGlzdHM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RDb250YWN0TGlzdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDb250YWN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb250YWN0czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdENvbnRhY3RzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkxpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RGVkaWNhdGVkSXBQb29scyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZWRpY2F0ZWRJcFBvb2xzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0RGVkaWNhdGVkSXBQb29sc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpMaXN0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEVtYWlsSWRlbnRpdGllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFbWFpbElkZW50aXRpZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RFbWFpbElkZW50aXRpZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RFbWFpbFRlbXBsYXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFbWFpbFRlbXBsYXRlczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEVtYWlsVGVtcGxhdGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RXhwb3J0Sm9icyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFeHBvcnRKb2JzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0RXhwb3J0Sm9ic1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdElkZW50aXRpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SWRlbnRpdGllczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdElkZW50aXRpZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RJZGVudGl0eVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdElkZW50aXR5UG9saWNpZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RJZGVudGl0eVBvbGljaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0SW1wb3J0Sm9icyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbXBvcnRKb2JzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0SW1wb3J0Sm9ic1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEluZ3Jlc3NQb2ludHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW5ncmVzc1BvaW50czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEluZ3Jlc3NQb2ludHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNZW1iZXJzT2ZBZGRyZXNzTGlzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1iZXJzT2ZBZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdE1lbWJlcnNPZkFkZHJlc3NMaXN0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNdWx0aVJlZ2lvbkVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNdWx0aVJlZ2lvbkVuZHBvaW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWNlaXB0RmlsdGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNlaXB0RmlsdGVyczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFJlY2VpcHRGaWx0ZXJzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVjZWlwdFJ1bGVTZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY2VpcHRSdWxlU2V0czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFJlY2VpcHRSdWxlU2V0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RSZWNvbW1lbmRhdGlvbnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWxheXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVsYXlzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0UmVsYXlzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVwdXRhdGlvbkVudGl0aWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlcHV0YXRpb25FbnRpdGllczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdFJlcHV0YXRpb25FbnRpdGllc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVzb3VyY2VUZW5hbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc291cmNlVGVuYW50czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFJlc291cmNlVGVuYW50c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJ1bGVTZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJ1bGVTZXRzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0UnVsZVNldHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN1cHByZXNzZWREZXN0aW5hdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkxpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUYWdzRm9yUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0VGFnc0ZvclJlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVtcGxhdGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbXBsYXRlczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFRlbXBsYXRlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlbmFudFJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW5hbnRSZXNvdXJjZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RUZW5hbnRSZXNvdXJjZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZW5hbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbmFudHM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RUZW5hbnRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VHJhZmZpY1BvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRyYWZmaWNQb2xpY2llczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFRyYWZmaWNQb2xpY2llc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VmVyaWZpZWRFbWFpbEFkZHJlc3Nlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0QWNjb3VudERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0QWNjb3VudERldGFpbHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50RGV0YWlsczogc3RyaW5nW10gPSBbXCJzZXM6UHV0QWNjb3VudERldGFpbHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0QWNjb3VudFByaWNpbmdBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRWZG1BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFZkbUF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEFjY291bnRWZG1BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFJlcHV0YXRpb25PcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFNlbmRpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0U3VwcHJlc3Npb25PcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0U3VwcHJlc3Npb25PcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRWZG1PcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRWZG1PcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dERlZGljYXRlZElwSW5Qb29sIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVkaWNhdGVkSXBJblBvb2w6IHN0cmluZ1tdID0gW1wic2VzOlB1dERlZGljYXRlZElwSW5Qb29sXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREZWRpY2F0ZWRJcFBvb2xTY2FsaW5nQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXREZWRpY2F0ZWRJcFBvb2xTY2FsaW5nQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlDb25maWd1cmF0aW9uU2V0QXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlEa2ltQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eURraW1TaWduaW5nQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eURraW1TaWduaW5nQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5TWFpbEZyb21BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRJZGVudGl0eVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dElkZW50aXR5UG9saWN5OiBzdHJpbmdbXSA9IFtcInNlczpQdXRJZGVudGl0eVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0U3VwcHJlc3NlZERlc3RpbmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0U3VwcHJlc3NlZERlc3RpbmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRTdXBwcmVzc2VkRGVzdGluYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVnaXN0ZXJNZW1iZXJUb0FkZHJlc3NMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVnaXN0ZXJNZW1iZXJUb0FkZHJlc3NMaXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpSZWdpc3Rlck1lbWJlclRvQWRkcmVzc0xpc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVvcmRlclJlY2VpcHRSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVvcmRlclJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpSZW9yZGVyUmVjZWlwdFJ1bGVTZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VuZEJvdW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRCb3VuY2U6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNlbmRCdWxrRW1haWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kQnVsa0VtYWlsOiBzdHJpbmdbXSA9IFtcInNlczpTZW5kQnVsa0VtYWlsXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZW5kQnVsa1RlbXBsYXRlZEVtYWlsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJ1bGtUZW1wbGF0ZWRFbWFpbDogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VuZEVtYWlsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEVtYWlsOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZW5kUmF3RW1haWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kUmF3RW1haWw6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNlbmRUZW1wbGF0ZWRFbWFpbCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRUZW1wbGF0ZWRFbWFpbDogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2V0QWN0aXZlUmVjZWlwdFJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcFNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRBY3RpdmVSZWNlaXB0UnVsZVNldFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZXRJZGVudGl0eURraW1FbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BTZXRJZGVudGl0eURraW1FbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRJZGVudGl0eURraW1FbmFibGVkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNldElkZW50aXR5RmVlZGJhY2tGb3J3YXJkaW5nRW5hYmxlZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wU2V0SWRlbnRpdHlGZWVkYmFja0ZvcndhcmRpbmdFbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRJZGVudGl0eUZlZWRiYWNrRm9yd2FyZGluZ0VuYWJsZWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZXRJZGVudGl0eU1haWxGcm9tRG9tYWluIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BTZXRJZGVudGl0eU1haWxGcm9tRG9tYWluOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRJZGVudGl0eU1haWxGcm9tRG9tYWluXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcFNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U2V0UmVjZWlwdFJ1bGVQb3NpdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEFkZHJlc3NMaXN0SW1wb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBZGRyZXNzTGlzdEltcG9ydEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U3RhcnRBZGRyZXNzTGlzdEltcG9ydEpvYlwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEFyY2hpdmVFeHBvcnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFyY2hpdmVFeHBvcnQ6IHN0cmluZ1tdID0gW1wic2VzOlN0YXJ0QXJjaGl2ZUV4cG9ydFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRBcmNoaXZlU2VhcmNoIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBcmNoaXZlU2VhcmNoOiBzdHJpbmdbXSA9IFtcInNlczpTdGFydEFyY2hpdmVTZWFyY2hcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U3RvcEFkZHJlc3NMaXN0SW1wb3J0Sm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BBcmNoaXZlRXhwb3J0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEFyY2hpdmVFeHBvcnQ6IHN0cmluZ1tdID0gW1wic2VzOlN0b3BBcmNoaXZlRXhwb3J0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wQXJjaGl2ZVNlYXJjaCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBcmNoaXZlU2VhcmNoOiBzdHJpbmdbXSA9IFtcInNlczpTdG9wQXJjaGl2ZVNlYXJjaFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVGFnUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJzZXM6VGFnUmVzb3VyY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGVzdFJlbmRlckVtYWlsVGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFRlc3RSZW5kZXJUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRlc3RSZW5kZXJUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6VGVzdFJlbmRlclRlbXBsYXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVbnRhZ1Jlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJzZXM6VW50YWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVBY2NvdW50U2VuZGluZ0VuYWJsZWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXJjaGl2ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFyY2hpdmU6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZUFyY2hpdmVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJzZXM6VXBkYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ29uZmlndXJhdGlvblNldFJlcHV0YXRpb25NZXRyaWNzRW5hYmxlZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ29uZmlndXJhdGlvblNldFNlbmRpbmdFbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvblNldFNlbmRpbmdFbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0U2VuZGluZ0VuYWJsZWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ29udGFjdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbnRhY3Q6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZUNvbnRhY3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbnRhY3RMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29udGFjdExpc3Q6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZUNvbnRhY3RMaXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6VXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVFbWFpbElkZW50aXR5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRW1haWxJZGVudGl0eVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6VXBkYXRlRW1haWxJZGVudGl0eVBvbGljeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVFbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6VXBkYXRlRW1haWxUZW1wbGF0ZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlSW5ncmVzc1BvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlSW5ncmVzc1BvaW50OiBzdHJpbmdbXSA9IFtcInNlczpVcGRhdGVJbmdyZXNzUG9pbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJlY2VpcHRSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVjZWlwdFJ1bGU6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJzZXM6VXBkYXRlUmVjZWlwdFJ1bGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUmVsYXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZWxheTogc3RyaW5nW10gPSBbXCJzZXM6VXBkYXRlUmVsYXlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJlcHV0YXRpb25FbnRpdHlDdXN0b21lck1hbmFnZWRTdGF0dXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJlcHV0YXRpb25FbnRpdHlQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSdWxlU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VzOlVwZGF0ZVJ1bGVTZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6VXBkYXRlVGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVRyYWZmaWNQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUcmFmZmljUG9saWN5OiBzdHJpbmdbXSA9IFtcInNlczpVcGRhdGVUcmFmZmljUG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBWZXJpZnlEb21haW5Ea2ltIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RG9tYWluRGtpbTogc3RyaW5nW10gPSBbXCJzZXM6VmVyaWZ5RG9tYWluRGtpbVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVmVyaWZ5RG9tYWluSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlEb21haW5JZGVudGl0eTogc3RyaW5nW10gPSBbXCJzZXM6VmVyaWZ5RG9tYWluSWRlbnRpdHlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFZlcmlmeUVtYWlsQWRkcmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeUVtYWlsQWRkcmVzczogc3RyaW5nW10gPSBbXCJzZXM6VmVyaWZ5RW1haWxBZGRyZXNzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBWZXJpZnlFbWFpbElkZW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RW1haWxJZGVudGl0eTogc3RyaW5nW10gPSBbXCJzZXM6VmVyaWZ5RW1haWxJZGVudGl0eVwiXTtcbn1cblxuLyoqXG4gKiBDb25kaXRpb24ga2V5IGNvbnN0YW50cyBhbmQgYnVpbGRlcnMgZm9yIHNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlc0NvbmRpdGlvbnMge1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQmF0Y2hHZXRNZXRyaWNEYXRhIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0TWV0cmljRGF0YUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENhbmNlbEV4cG9ydEpvYiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDYW5jZWxFeHBvcnRKb2JDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdFx0XCJzZXM6RXhwb3J0U291cmNlVHlwZVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ2xvbmVSZWNlaXB0UnVsZVNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDbG9uZVJlY2VpcHRSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQWRkb25JbnN0YW5jZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRvbkluc3RhbmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QWRkb25TdWJzY3JpcHRpb25Bcm5cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFkZG9uU3Vic2NyaXB0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFkZG9uU3Vic2NyaXB0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVBZGRyZXNzTGlzdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRyZXNzTGlzdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQXJjaGl2ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcmNoaXZlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb25maWd1cmF0aW9uU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25TZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb250YWN0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbnRhY3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb250YWN0TGlzdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb250YWN0TGlzdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIiwgXCJhd3M6VGFnS2V5c1wiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRGVkaWNhdGVkSXBQb29sIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURlZGljYXRlZElwUG9vbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFbWFpbElkZW50aXR5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsSWRlbnRpdHlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFbWFpbElkZW50aXR5UG9saWN5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsSWRlbnRpdHlQb2xpY3lDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFbWFpbFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFeHBvcnRKb2IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXhwb3J0Sm9iQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkV4cG9ydFNvdXJjZVR5cGVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUltcG9ydEpvYiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbXBvcnRKb2JDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlSW5ncmVzc1BvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUluZ3Jlc3NQb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOk1haWxNYW5hZ2VyUnVsZVNldEFyblwiLFxuXHRcdFwic2VzOk1haWxNYW5hZ2VyVHJhZmZpY1BvbGljeUFyblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlTXVsdGlSZWdpb25FbmRwb2ludCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUmVjZWlwdEZpbHRlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNlaXB0RmlsdGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUmVjZWlwdFJ1bGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdFJ1bGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUmVjZWlwdFJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdFJ1bGVTZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVSZWxheSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWxheUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUnVsZVNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVUZW5hbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVuYW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlVHJhZmZpY1BvbGljeSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUcmFmZmljUG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVDb25maWd1cmF0aW9uU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVDb250YWN0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbnRhY3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVDb250YWN0TGlzdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb250YWN0TGlzdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVEZWRpY2F0ZWRJcFBvb2wgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRGVkaWNhdGVkSXBQb29sQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlRW1haWxJZGVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFbWFpbElkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlRW1haWxJZGVudGl0eVBvbGljeSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFbWFpbElkZW50aXR5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlRW1haWxUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFbWFpbFRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlSWRlbnRpdHkgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlSWRlbnRpdHlQb2xpY3kgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHlQb2xpY3lDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVNdWx0aVJlZ2lvbkVuZHBvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVSZWNlaXB0RmlsdGVyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRGaWx0ZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVSZWNlaXB0UnVsZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0UnVsZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVSZWNlaXB0UnVsZVNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0UnVsZVNldENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZVN1cHByZXNzZWREZXN0aW5hdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVUZW5hbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3MgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3NDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZXNjcmliZUFjdGl2ZVJlY2VpcHRSdWxlU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVDb25maWd1cmF0aW9uU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVSZWNlaXB0UnVsZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY2VpcHRSdWxlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVSZWNlaXB0UnVsZVNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY2VpcHRSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0QWNjb3VudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBY2NvdW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEFjY291bnRTZW5kaW5nRW5hYmxlZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBY2NvdW50U2VuZGluZ0VuYWJsZWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRCbGFja2xpc3RSZXBvcnRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEJsYWNrbGlzdFJlcG9ydHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRDb25maWd1cmF0aW9uU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbmZpZ3VyYXRpb25TZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldENvbnRhY3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29udGFjdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldENvbnRhY3RMaXN0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbnRhY3RMaXN0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldERlZGljYXRlZElwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlZGljYXRlZElwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0RGVkaWNhdGVkSXBQb29sIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlZGljYXRlZElwUG9vbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldERlZGljYXRlZElwcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZWRpY2F0ZWRJcHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldERvbWFpblN0YXRpc3RpY3NSZXBvcnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RG9tYWluU3RhdGlzdGljc1JlcG9ydENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEVtYWlsQWRkcmVzc0luc2lnaHRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEVtYWlsQWRkcmVzc0luc2lnaHRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0RW1haWxJZGVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFbWFpbElkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0RW1haWxJZGVudGl0eVBvbGljaWVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEVtYWlsSWRlbnRpdHlQb2xpY2llc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEV4cG9ydEpvYiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFeHBvcnRKb2JDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdFx0XCJzZXM6RXhwb3J0U291cmNlVHlwZVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0SWRlbnRpdHlEa2ltQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRJZGVudGl0eU5vdGlmaWNhdGlvbkF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0SWRlbnRpdHlQb2xpY2llcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eVBvbGljaWVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0SWRlbnRpdHlWZXJpZmljYXRpb25BdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEltcG9ydEpvYiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJbXBvcnRKb2JDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRNZXNzYWdlSW5zaWdodHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0TWVzc2FnZUluc2lnaHRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0TXVsdGlSZWdpb25FbmRwb2ludCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRNdWx0aVJlZ2lvbkVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0UmVwdXRhdGlvbkVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZXB1dGF0aW9uRW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0U2VuZFF1b3RhIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFNlbmRRdW90YUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFNlbmRTdGF0aXN0aWNzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFNlbmRTdGF0aXN0aWNzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0U3VwcHJlc3NlZERlc3RpbmF0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFN1cHByZXNzZWREZXN0aW5hdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFRlbmFudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZW5hbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0Q29uZmlndXJhdGlvblNldHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25TZXRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdENvbnRhY3RMaXN0cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29udGFjdExpc3RzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RDb250YWN0cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29udGFjdHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3REZWRpY2F0ZWRJcFBvb2xzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZWRpY2F0ZWRJcFBvb2xzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdEVtYWlsSWRlbnRpdGllcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RW1haWxJZGVudGl0aWVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdEVtYWlsVGVtcGxhdGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFbWFpbFRlbXBsYXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RFeHBvcnRKb2JzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFeHBvcnRKb2JzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkV4cG9ydFNvdXJjZVR5cGVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RJZGVudGl0aWVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0aWVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RJZGVudGl0eVBvbGljaWVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0eVBvbGljaWVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdEltcG9ydEpvYnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEltcG9ydEpvYnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNdWx0aVJlZ2lvbkVuZHBvaW50c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RSZWNlaXB0RmlsdGVycyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVjZWlwdEZpbHRlcnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0UmVjZWlwdFJ1bGVTZXRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNlaXB0UnVsZVNldHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0UmVjb21tZW5kYXRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0UmVwdXRhdGlvbkVudGl0aWVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXB1dGF0aW9uRW50aXRpZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0UmVzb3VyY2VUZW5hbnRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZVRlbmFudHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0U3VwcHJlc3NlZERlc3RpbmF0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3VwcHJlc3NlZERlc3RpbmF0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RUYWdzRm9yUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RUZW1wbGF0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbXBsYXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0VGVuYW50UmVzb3VyY2VzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW5hbnRSZXNvdXJjZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0VGVuYW50cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVuYW50c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0VmVyaWZpZWRFbWFpbEFkZHJlc3NlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VmVyaWZpZWRFbWFpbEFkZHJlc3Nlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEFjY291bnREZXRhaWxzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnREZXRhaWxzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50UHJpY2luZ0F0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRBY2NvdW50U2VuZGluZ0F0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0QWNjb3VudFN1cHByZXNzaW9uQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0QWNjb3VudFZkbUF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFZkbUF0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRDb25maWd1cmF0aW9uU2V0QXJjaGl2aW5nT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0QXJjaGl2aW5nT3B0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk9wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0Q29uZmlndXJhdGlvblNldFNlbmRpbmdPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFN1cHByZXNzaW9uT3B0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRDb25maWd1cmF0aW9uU2V0VmRtT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0VmRtT3B0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dERlZGljYXRlZElwSW5Qb29sIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwSW5Qb29sQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RGVkaWNhdGVkSXBQb29sU2NhbGluZ0F0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVkaWNhdGVkSXBQb29sU2NhbGluZ0F0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eUNvbmZpZ3VyYXRpb25TZXRBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEVtYWlsSWRlbnRpdHlEa2ltQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0F0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5TWFpbEZyb21BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0SWRlbnRpdHlQb2xpY3kgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0SWRlbnRpdHlQb2xpY3lDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0U3VwcHJlc3NlZERlc3RpbmF0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dFN1cHByZXNzZWREZXN0aW5hdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dFRlbmFudFN1cHByZXNzaW9uQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBSZW9yZGVyUmVjZWlwdFJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVvcmRlclJlY2VpcHRSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVwbGljYXRlRW1haWxJZGVudGl0eURraW1TaWduaW5nS2V5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlcGxpY2F0ZUVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0tleUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6UmVwbGljYVJlZ2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNlbmRCb3VuY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJvdW5jZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpGcm9tQWRkcmVzc1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2VuZEJ1bGtFbWFpbCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kQnVsa0VtYWlsQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOk11bHRpUmVnaW9uRW5kcG9pbnRJZFwiLFxuXHRcdFwic2VzOlRlbmFudE5hbWVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNlbmRCdWxrVGVtcGxhdGVkRW1haWwgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJ1bGtUZW1wbGF0ZWRFbWFpbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpGZWVkYmFja0FkZHJlc3NcIixcblx0XHRcInNlczpGcm9tQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21EaXNwbGF5TmFtZVwiLFxuXHRcdFwic2VzOlJlY2lwaWVudHNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNlbmRDdXN0b21WZXJpZmljYXRpb25FbWFpbCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdFx0XCJzZXM6RmVlZGJhY2tBZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbUFkZHJlc3NcIixcblx0XHRcInNlczpGcm9tRGlzcGxheU5hbWVcIixcblx0XHRcInNlczpSZWNpcGllbnRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZW5kRW1haWwgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEVtYWlsQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkZlZWRiYWNrQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21BZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbURpc3BsYXlOYW1lXCIsXG5cdFx0XCJzZXM6TXVsdGlSZWdpb25FbmRwb2ludElkXCIsXG5cdFx0XCJzZXM6UmVjaXBpZW50c1wiLFxuXHRcdFwic2VzOlRlbmFudE5hbWVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNlbmRSYXdFbWFpbCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kUmF3RW1haWxDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdFx0XCJzZXM6RmVlZGJhY2tBZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbUFkZHJlc3NcIixcblx0XHRcInNlczpGcm9tRGlzcGxheU5hbWVcIixcblx0XHRcInNlczpSZWNpcGllbnRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZW5kVGVtcGxhdGVkRW1haWwgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZFRlbXBsYXRlZEVtYWlsQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkZlZWRiYWNrQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21BZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbURpc3BsYXlOYW1lXCIsXG5cdFx0XCJzZXM6UmVjaXBpZW50c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0QWN0aXZlUmVjZWlwdFJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0QWN0aXZlUmVjZWlwdFJ1bGVTZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZXRJZGVudGl0eURraW1FbmFibGVkIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldElkZW50aXR5RGtpbUVuYWJsZWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZXRJZGVudGl0eUZlZWRiYWNrRm9yd2FyZGluZ0VuYWJsZWQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlGZWVkYmFja0ZvcndhcmRpbmdFbmFibGVkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRJZGVudGl0eUhlYWRlcnNJbk5vdGlmaWNhdGlvbnNFbmFibGVkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRJZGVudGl0eU1haWxGcm9tRG9tYWluQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0SWRlbnRpdHlOb3RpZmljYXRpb25Ub3BpYyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRJZGVudGl0eU5vdGlmaWNhdGlvblRvcGljQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRSZWNlaXB0UnVsZVBvc2l0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBUZXN0UmVuZGVyRW1haWxUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBUZXN0UmVuZGVyRW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFRlc3RSZW5kZXJUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBUZXN0UmVuZGVyVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVbnRhZ1Jlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVudGFnUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFjY291bnRTZW5kaW5nRW5hYmxlZENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvblNldFJlcHV0YXRpb25NZXRyaWNzRW5hYmxlZENvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRTZW5kaW5nRW5hYmxlZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0U2VuZGluZ0VuYWJsZWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDb250YWN0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbnRhY3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDb250YWN0TGlzdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb250YWN0TGlzdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVFbWFpbElkZW50aXR5UG9saWN5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3lDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVFbWFpbFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVJbmdyZXNzUG9pbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlSW5ncmVzc1BvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TWFpbE1hbmFnZXJSdWxlU2V0QXJuXCIsXG5cdFx0XCJzZXM6TWFpbE1hbmFnZXJUcmFmZmljUG9saWN5QXJuXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVSZWNlaXB0UnVsZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZWNlaXB0UnVsZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlcHV0YXRpb25FbnRpdHlDdXN0b21lck1hbmFnZWRTdGF0dXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVmVyaWZ5RG9tYWluRGtpbSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlEb21haW5Ea2ltQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFZlcmlmeURvbWFpbklkZW50aXR5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeURvbWFpbklkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVmVyaWZ5RW1haWxBZGRyZXNzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeUVtYWlsQWRkcmVzc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFZlcmlmeUVtYWlsSWRlbnRpdHkgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RW1haWxJZGVudGl0eUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblxuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfUkVRVUVTVF9UQUcgPSBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFU09VUkNFX1RBRyA9IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlRhZ0tleXMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfVEFHX0tFWVMgPSBcImF3czpUYWdLZXlzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6QWRkb25TdWJzY3JpcHRpb25Bcm4gKEFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFERE9OX1NVQlNDUklQVElPTl9BUk4gPSBcInNlczpBZGRvblN1YnNjcmlwdGlvbkFyblwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOkFwaVZlcnNpb24gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFQSV9WRVJTSU9OID0gXCJzZXM6QXBpVmVyc2lvblwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOkV4cG9ydFNvdXJjZVR5cGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEVYUE9SVF9TT1VSQ0VfVFlQRSA9IFwic2VzOkV4cG9ydFNvdXJjZVR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpGZWVkYmFja0FkZHJlc3MgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEZFRURCQUNLX0FERFJFU1MgPSBcInNlczpGZWVkYmFja0FkZHJlc3NcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpGcm9tQWRkcmVzcyAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRlJPTV9BRERSRVNTID0gXCJzZXM6RnJvbUFkZHJlc3NcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpGcm9tRGlzcGxheU5hbWUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEZST01fRElTUExBWV9OQU1FID0gXCJzZXM6RnJvbURpc3BsYXlOYW1lXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6TWFpbE1hbmFnZXJJbmdyZXNzUG9pbnRUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBNQUlMX01BTkFHRVJfSU5HUkVTU19QT0lOVF9UWVBFID1cblx0XHRcInNlczpNYWlsTWFuYWdlckluZ3Jlc3NQb2ludFR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpNYWlsTWFuYWdlclJ1bGVTZXRBcm4gKEFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1BSUxfTUFOQUdFUl9SVUxFX1NFVF9BUk4gPSBcInNlczpNYWlsTWFuYWdlclJ1bGVTZXRBcm5cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpNYWlsTWFuYWdlclRyYWZmaWNQb2xpY3lBcm4gKEFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1BSUxfTUFOQUdFUl9UUkFGRklDX1BPTElDWV9BUk4gPVxuXHRcdFwic2VzOk1haWxNYW5hZ2VyVHJhZmZpY1BvbGljeUFyblwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOk11bHRpUmVnaW9uRW5kcG9pbnRJZCAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTVVMVElfUkVHSU9OX0VORFBPSU5UX0lEID0gXCJzZXM6TXVsdGlSZWdpb25FbmRwb2ludElkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6UmVjaXBpZW50cyAoQXJyYXlPZlN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJFQ0lQSUVOVFMgPSBcInNlczpSZWNpcGllbnRzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6UmVwbGljYVJlZ2lvbiAoQXJyYXlPZlN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJFUExJQ0FfUkVHSU9OID0gXCJzZXM6UmVwbGljYVJlZ2lvblwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOlRlbmFudE5hbWUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRFTkFOVF9OQU1FID0gXCJzZXM6VGVuYW50TmFtZVwiO1xuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlcXVlc3RUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlRhZ0tleXNgLlxuXHQgKi9cblx0c3RhdGljIHRhZ0tleXModmFsdWVzOiBzdHJpbmdbXSk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwiYXdzOlRhZ0tleXNcIjogdmFsdWVzIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6QWRkb25TdWJzY3JpcHRpb25Bcm5gLlxuXHQgKi9cblx0c3RhdGljIGFkZG9uU3Vic2NyaXB0aW9uQVJOKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBBcm5FcXVhbHM6IHsgXCJzZXM6QWRkb25TdWJzY3JpcHRpb25Bcm5cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpBcGlWZXJzaW9uYC5cblx0ICovXG5cdHN0YXRpYyBhcGlWZXJzaW9uKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwic2VzOkFwaVZlcnNpb25cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpFeHBvcnRTb3VyY2VUeXBlYC5cblx0ICovXG5cdHN0YXRpYyBleHBvcnRTb3VyY2VUeXBlKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJzZXM6RXhwb3J0U291cmNlVHlwZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOkZlZWRiYWNrQWRkcmVzc2AuXG5cdCAqL1xuXHRzdGF0aWMgZmVlZGJhY2tBZGRyZXNzKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJzZXM6RmVlZGJhY2tBZGRyZXNzXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6RnJvbUFkZHJlc3NgLlxuXHQgKi9cblx0c3RhdGljIGZyb21BZGRyZXNzKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwic2VzOkZyb21BZGRyZXNzXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6RnJvbURpc3BsYXlOYW1lYC5cblx0ICovXG5cdHN0YXRpYyBmcm9tRGlzcGxheU5hbWUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInNlczpGcm9tRGlzcGxheU5hbWVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpNYWlsTWFuYWdlckluZ3Jlc3NQb2ludFR5cGVgLlxuXHQgKi9cblx0c3RhdGljIG1haWxNYW5hZ2VySW5ncmVzc1BvaW50VHlwZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwic2VzOk1haWxNYW5hZ2VySW5ncmVzc1BvaW50VHlwZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOk1haWxNYW5hZ2VyUnVsZVNldEFybmAuXG5cdCAqL1xuXHRzdGF0aWMgbWFpbE1hbmFnZXJSdWxlU2V0QVJOKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBBcm5FcXVhbHM6IHsgXCJzZXM6TWFpbE1hbmFnZXJSdWxlU2V0QXJuXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6TWFpbE1hbmFnZXJUcmFmZmljUG9saWN5QXJuYC5cblx0ICovXG5cdHN0YXRpYyBtYWlsTWFuYWdlclRyYWZmaWNQb2xpY3lBUk4oXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IEFybkVxdWFsczogeyBcInNlczpNYWlsTWFuYWdlclRyYWZmaWNQb2xpY3lBcm5cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpNdWx0aVJlZ2lvbkVuZHBvaW50SWRgLlxuXHQgKi9cblx0c3RhdGljIG11bHRpUmVnaW9uRW5kcG9pbnRJZChcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwic2VzOk11bHRpUmVnaW9uRW5kcG9pbnRJZFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOlJlY2lwaWVudHNgLlxuXHQgKi9cblx0c3RhdGljIHJlY2lwaWVudHMoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHsgXCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHsgXCJzZXM6UmVjaXBpZW50c1wiOiB2YWx1ZXMgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpSZXBsaWNhUmVnaW9uYC5cblx0ICovXG5cdHN0YXRpYyByZXBsaWNhUmVnaW9uKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwic2VzOlJlcGxpY2FSZWdpb25cIjogdmFsdWVzIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6VGVuYW50TmFtZWAuXG5cdCAqL1xuXHRzdGF0aWMgdGVuYW50TmFtZSh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInNlczpUZW5hbnROYW1lXCI6IHZhbHVlIH0gfTtcblx0fVxufVxuIl19
2900
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dlbmVyYXRlZC9zZXJ2aWNlcy9zZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRkFBZ0Y7QUFDaEYsNkNBQTZDO0FBQzdDLDBEQUEwRDtBQUMxRCwwQ0FBMEM7QUFDMUMsb0RBQW9EO0FBQ3BELGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQWEsVUFBVTs7QUFBdkIsZ0NBaXdCQzs7O0FBaHdCQSw4QkFBOEI7QUFDZCx5QkFBYyxHQUFHLEtBQUssQ0FBQztBQUV2QyxtRUFBbUU7QUFDbkQsNENBQWlDLEdBQ2hELHVDQUF1QyxDQUFDO0FBQ3pDLG9DQUFvQztBQUNwQiw2QkFBa0IsR0FBRyx3QkFBd0IsQ0FBQztBQUM5RCxrQ0FBa0M7QUFDbEIsMEJBQWUsR0FBRyxxQkFBcUIsQ0FBQztBQUN4RCxzQ0FBc0M7QUFDdEIsOEJBQW1CLEdBQUcseUJBQXlCLENBQUM7QUFDaEUsc0NBQXNDO0FBQ3RCLDhCQUFtQixHQUFHLHlCQUF5QixDQUFDO0FBQ2hFLDBDQUEwQztBQUMxQixrQ0FBdUIsR0FBRyw2QkFBNkIsQ0FBQztBQUN4RSxvQ0FBb0M7QUFDcEIsNEJBQWlCLEdBQUcsdUJBQXVCLENBQUM7QUFDNUQsNkNBQTZDO0FBQzdCLHFDQUEwQixHQUFHLGdDQUFnQyxDQUFDO0FBQzlFLGdDQUFnQztBQUNoQix3QkFBYSxHQUFHLG1CQUFtQixDQUFDO0FBQ3BELHlDQUF5QztBQUN6QixpQ0FBc0IsR0FBRyw0QkFBNEIsQ0FBQztBQUN0RSx5REFBeUQ7QUFDekMsaURBQXNDLEdBQ3JELDRDQUE0QyxDQUFDO0FBQzlDLHdEQUF3RDtBQUN4QyxnREFBcUMsR0FDcEQsMkNBQTJDLENBQUM7QUFDN0MsZ0NBQWdDO0FBQ2hCLHdCQUFhLEdBQUcsbUJBQW1CLENBQUM7QUFDcEQsb0NBQW9DO0FBQ3BCLDRCQUFpQixHQUFHLHVCQUF1QixDQUFDO0FBQzVELHdEQUF3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MEJBQTBCLENBQUM7QUFDcEUsNkNBQTZDO0FBQzdCLHlCQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFDL0MsbURBQW1EO0FBQ25DLGdDQUFrQixHQUFHLHNCQUFzQixDQUFDO0FBQzVELGtEQUFrRDtBQUNsQyw4QkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQztBQUN6RCw4Q0FBOEM7QUFDOUIsMEJBQVksR0FBRyxpQkFBaUIsQ0FBQztBQUNqRCxrREFBa0Q7QUFDbEMsK0JBQWlCLEdBQUcscUJBQXFCLENBQUM7QUFDMUQsOERBQThEO0FBQzlDLDZDQUErQixHQUM5QyxpQ0FBaUMsQ0FBQztBQUNuQyxxREFBcUQ7QUFDckMsdUNBQXlCLEdBQUcsMkJBQTJCLENBQUM7QUFDeEUsMkRBQTJEO0FBQzNDLDZDQUErQixHQUM5QyxpQ0FBaUMsQ0FBQztBQUNuQyx3REFBd0Q7QUFDeEMsc0NBQXdCLEdBQUcsMkJBQTJCLENBQUM7QUFDdkUsb0RBQW9EO0FBQ3BDLHdCQUFVLEdBQUcsZ0JBQWdCLENBQUM7QUFDOUMsdURBQXVEO0FBQ3ZDLDRCQUFjLEdBQUcsbUJBQW1CLENBQUM7QUFDckQsNkNBQTZDO0FBQzdCLHlCQUFXLEdBQUcsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQVVUTy1HRU5FUkFURUQgRklMRSDigJQgRE8gTk9UIEVESVQgTUFOVUFMTFlcbi8vIEdlbmVyYXRlZCBmcm9tIEFXUyBTZXJ2aWNlIEF1dGhvcml6YXRpb24gUmVmZXJlbmNlIGRhdGFcbi8vIFNvdXJjZTogZGF0YS9zZXJ2aWNlLXJlZmVyZW5jZS9zZXMuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIHNlcyBzZXJ2aWNlLlxuICovXG5leHBvcnQgY2xhc3MgU2VzQWN0aW9ucyB7XG5cdC8qKiBUaGUgSUFNIHNlcnZpY2UgcHJlZml4LiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9QUkVGSVggPSBcInNlc1wiO1xuXG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHNlczpBbGxvd1ZlbmRlZExvZ0RlbGl2ZXJ5Rm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbG93VmVuZGVkTG9nRGVsaXZlcnlGb3JSZXNvdXJjZSA9XG5cdFx0XCJzZXM6QWxsb3dWZW5kZWRMb2dEZWxpdmVyeUZvclJlc291cmNlXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkJhdGNoR2V0TWV0cmljRGF0YSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRNZXRyaWNEYXRhID0gXCJzZXM6QmF0Y2hHZXRNZXRyaWNEYXRhXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDYW5jZWxFeHBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IENhbmNlbEV4cG9ydEpvYiA9IFwic2VzOkNhbmNlbEV4cG9ydEpvYlwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q2xvbmVSZWNlaXB0UnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ2xvbmVSZWNlaXB0UnVsZVNldCA9IFwic2VzOkNsb25lUmVjZWlwdFJ1bGVTZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUFkZG9uSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFkZG9uSW5zdGFuY2UgPSBcInNlczpDcmVhdGVBZGRvbkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVBZGRvblN1YnNjcmlwdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkb25TdWJzY3JpcHRpb24gPSBcInNlczpDcmVhdGVBZGRvblN1YnNjcmlwdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlQWRkcmVzc0xpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFkZHJlc3NMaXN0ID0gXCJzZXM6Q3JlYXRlQWRkcmVzc0xpc3RcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUFkZHJlc3NMaXN0SW1wb3J0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRyZXNzTGlzdEltcG9ydEpvYiA9IFwic2VzOkNyZWF0ZUFkZHJlc3NMaXN0SW1wb3J0Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVBcmNoaXZlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcmNoaXZlID0gXCJzZXM6Q3JlYXRlQXJjaGl2ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlQ29uZmlndXJhdGlvblNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29uZmlndXJhdGlvblNldCA9IFwic2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiA9XG5cdFx0XCJzZXM6Q3JlYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgPVxuXHRcdFwic2VzOkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUNvbnRhY3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbnRhY3QgPSBcInNlczpDcmVhdGVDb250YWN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVDb250YWN0TGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29udGFjdExpc3QgPSBcInNlczpDcmVhdGVDb250YWN0TGlzdFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSA9XG5cdFx0XCJzZXM6Q3JlYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlRGVkaWNhdGVkSXBQb29sICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEZWRpY2F0ZWRJcFBvb2wgPSBcInNlczpDcmVhdGVEZWRpY2F0ZWRJcFBvb2xcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZURlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0ID1cblx0XHRcInNlczpDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUVtYWlsSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUVtYWlsSWRlbnRpdHkgPSBcInNlczpDcmVhdGVFbWFpbElkZW50aXR5XCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHNlczpDcmVhdGVFbWFpbElkZW50aXR5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbElkZW50aXR5UG9saWN5ID0gXCJzZXM6Q3JlYXRlRW1haWxJZGVudGl0eVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRW1haWxUZW1wbGF0ZSA9IFwic2VzOkNyZWF0ZUVtYWlsVGVtcGxhdGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZUV4cG9ydEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXhwb3J0Sm9iID0gXCJzZXM6Q3JlYXRlRXhwb3J0Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVJbXBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUltcG9ydEpvYiA9IFwic2VzOkNyZWF0ZUltcG9ydEpvYlwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlSW5ncmVzc1BvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbmdyZXNzUG9pbnQgPSBcInNlczpDcmVhdGVJbmdyZXNzUG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnQgPSBcInNlczpDcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVSZWNlaXB0RmlsdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNlaXB0RmlsdGVyID0gXCJzZXM6Q3JlYXRlUmVjZWlwdEZpbHRlclwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlUmVjZWlwdFJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY2VpcHRSdWxlID0gXCJzZXM6Q3JlYXRlUmVjZWlwdFJ1bGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZVJlY2VpcHRSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNlaXB0UnVsZVNldCA9IFwic2VzOkNyZWF0ZVJlY2VpcHRSdWxlU2V0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVSZWxheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVsYXkgPSBcInNlczpDcmVhdGVSZWxheVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlUnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUnVsZVNldCA9IFwic2VzOkNyZWF0ZVJ1bGVTZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkNyZWF0ZVRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW1wbGF0ZSA9IFwic2VzOkNyZWF0ZVRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpDcmVhdGVUZW5hbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlbmFudCA9IFwic2VzOkNyZWF0ZVRlbmFudFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbiA9XG5cdFx0XCJzZXM6Q3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6Q3JlYXRlVHJhZmZpY1BvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVHJhZmZpY1BvbGljeSA9IFwic2VzOkNyZWF0ZVRyYWZmaWNQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUFkZG9uSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFkZG9uSW5zdGFuY2UgPSBcInNlczpEZWxldGVBZGRvbkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVBZGRvblN1YnNjcmlwdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWRkb25TdWJzY3JpcHRpb24gPSBcInNlczpEZWxldGVBZGRvblN1YnNjcmlwdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQWRkcmVzc0xpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFkZHJlc3NMaXN0ID0gXCJzZXM6RGVsZXRlQWRkcmVzc0xpc3RcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUFyY2hpdmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFyY2hpdmUgPSBcInNlczpEZWxldGVBcmNoaXZlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVDb25maWd1cmF0aW9uU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uU2V0ID0gXCJzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uID1cblx0XHRcInNlczpEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyA9XG5cdFx0XCJzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlQ29udGFjdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29udGFjdCA9IFwic2VzOkRlbGV0ZUNvbnRhY3RcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZUNvbnRhY3RMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb250YWN0TGlzdCA9IFwic2VzOkRlbGV0ZUNvbnRhY3RMaXN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlID1cblx0XHRcInNlczpEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVEZWRpY2F0ZWRJcFBvb2wgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURlZGljYXRlZElwUG9vbCA9IFwic2VzOkRlbGV0ZURlZGljYXRlZElwUG9vbFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlRW1haWxJZGVudGl0eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxJZGVudGl0eSA9IFwic2VzOkRlbGV0ZUVtYWlsSWRlbnRpdHlcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gc2VzOkRlbGV0ZUVtYWlsSWRlbnRpdHlQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUVtYWlsSWRlbnRpdHlQb2xpY3kgPSBcInNlczpEZWxldGVFbWFpbElkZW50aXR5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVFbWFpbFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFbWFpbFRlbXBsYXRlID0gXCJzZXM6RGVsZXRlRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUlkZW50aXR5ID0gXCJzZXM6RGVsZXRlSWRlbnRpdHlcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gc2VzOkRlbGV0ZUlkZW50aXR5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJZGVudGl0eVBvbGljeSA9IFwic2VzOkRlbGV0ZUlkZW50aXR5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVJbmdyZXNzUG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUluZ3Jlc3NQb2ludCA9IFwic2VzOkRlbGV0ZUluZ3Jlc3NQb2ludFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlTXVsdGlSZWdpb25FbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlTXVsdGlSZWdpb25FbmRwb2ludCA9IFwic2VzOkRlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVJlY2VpcHRGaWx0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRGaWx0ZXIgPSBcInNlczpEZWxldGVSZWNlaXB0RmlsdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVSZWNlaXB0UnVsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjZWlwdFJ1bGUgPSBcInNlczpEZWxldGVSZWNlaXB0UnVsZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlUmVjZWlwdFJ1bGVTZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRSdWxlU2V0ID0gXCJzZXM6RGVsZXRlUmVjZWlwdFJ1bGVTZXRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVJlbGF5ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWxheSA9IFwic2VzOkRlbGV0ZVJlbGF5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSdWxlU2V0ID0gXCJzZXM6RGVsZXRlUnVsZVNldFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlU3VwcHJlc3NlZERlc3RpbmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb24gPVxuXHRcdFwic2VzOkRlbGV0ZVN1cHByZXNzZWREZXN0aW5hdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlbXBsYXRlID0gXCJzZXM6RGVsZXRlVGVtcGxhdGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlbGV0ZVRlbmFudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50ID0gXCJzZXM6RGVsZXRlVGVuYW50XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uID1cblx0XHRcInNlczpEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpEZWxldGVUcmFmZmljUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUcmFmZmljUG9saWN5ID0gXCJzZXM6RGVsZXRlVHJhZmZpY1BvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6RGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzID0gXCJzZXM6RGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3NcIjtcblx0LyoqIFtXcml0ZV0gc2VzOkRlcmVnaXN0ZXJNZW1iZXJGcm9tQWRkcmVzc0xpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlcmVnaXN0ZXJNZW1iZXJGcm9tQWRkcmVzc0xpc3QgPVxuXHRcdFwic2VzOkRlcmVnaXN0ZXJNZW1iZXJGcm9tQWRkcmVzc0xpc3RcIjtcblx0LyoqIFtSZWFkXSBzZXM6RGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldCA9XG5cdFx0XCJzZXM6RGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldFwiO1xuXHQvKiogW1JlYWRdIHNlczpEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQ29uZmlndXJhdGlvblNldCA9IFwic2VzOkRlc2NyaWJlQ29uZmlndXJhdGlvblNldFwiO1xuXHQvKiogW1JlYWRdIHNlczpEZXNjcmliZVJlY2VpcHRSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY2VpcHRSdWxlID0gXCJzZXM6RGVzY3JpYmVSZWNlaXB0UnVsZVwiO1xuXHQvKiogW1JlYWRdIHNlczpEZXNjcmliZVJlY2VpcHRSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY2VpcHRSdWxlU2V0ID0gXCJzZXM6RGVzY3JpYmVSZWNlaXB0UnVsZVNldFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBY2NvdW50ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBY2NvdW50ID0gXCJzZXM6R2V0QWNjb3VudFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRBY2NvdW50U2VuZGluZ0VuYWJsZWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFjY291bnRTZW5kaW5nRW5hYmxlZCA9XG5cdFx0XCJzZXM6R2V0QWNjb3VudFNlbmRpbmdFbmFibGVkXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFkZG9uSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFkZG9uSW5zdGFuY2UgPSBcInNlczpHZXRBZGRvbkluc3RhbmNlXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFkZG9uU3Vic2NyaXB0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZGRvblN1YnNjcmlwdGlvbiA9IFwic2VzOkdldEFkZG9uU3Vic2NyaXB0aW9uXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZGRyZXNzTGlzdCA9IFwic2VzOkdldEFkZHJlc3NMaXN0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFkZHJlc3NMaXN0SW1wb3J0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZGRyZXNzTGlzdEltcG9ydEpvYiA9IFwic2VzOkdldEFkZHJlc3NMaXN0SW1wb3J0Sm9iXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFyY2hpdmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFyY2hpdmUgPSBcInNlczpHZXRBcmNoaXZlXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFyY2hpdmVFeHBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFyY2hpdmVFeHBvcnQgPSBcInNlczpHZXRBcmNoaXZlRXhwb3J0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFyY2hpdmVNZXNzYWdlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBcmNoaXZlTWVzc2FnZSA9IFwic2VzOkdldEFyY2hpdmVNZXNzYWdlXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEFyY2hpdmVNZXNzYWdlQ29udGVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QXJjaGl2ZU1lc3NhZ2VDb250ZW50ID1cblx0XHRcInNlczpHZXRBcmNoaXZlTWVzc2FnZUNvbnRlbnRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0QXJjaGl2ZVNlYXJjaCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QXJjaGl2ZVNlYXJjaCA9IFwic2VzOkdldEFyY2hpdmVTZWFyY2hcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0QXJjaGl2ZVNlYXJjaFJlc3VsdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFyY2hpdmVTZWFyY2hSZXN1bHRzID0gXCJzZXM6R2V0QXJjaGl2ZVNlYXJjaFJlc3VsdHNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0QmxhY2tsaXN0UmVwb3J0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QmxhY2tsaXN0UmVwb3J0cyA9IFwic2VzOkdldEJsYWNrbGlzdFJlcG9ydHNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0Q29uZmlndXJhdGlvblNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29uZmlndXJhdGlvblNldCA9IFwic2VzOkdldENvbmZpZ3VyYXRpb25TZXRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbnMgPVxuXHRcdFwic2VzOkdldENvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRDb250YWN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb250YWN0ID0gXCJzZXM6R2V0Q29udGFjdFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRDb250YWN0TGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29udGFjdExpc3QgPSBcInNlczpHZXRDb250YWN0TGlzdFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlID1cblx0XHRcInNlczpHZXRDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldERlZGljYXRlZElwICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZWRpY2F0ZWRJcCA9IFwic2VzOkdldERlZGljYXRlZElwXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldERlZGljYXRlZElwUG9vbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVkaWNhdGVkSXBQb29sID0gXCJzZXM6R2V0RGVkaWNhdGVkSXBQb29sXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldERlZGljYXRlZElwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVkaWNhdGVkSXBzID0gXCJzZXM6R2V0RGVkaWNhdGVkSXBzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zID1cblx0XHRcInNlczpHZXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbnNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQgPVxuXHRcdFwic2VzOkdldERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydFwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXREb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWduICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWduID1cblx0XHRcInNlczpHZXREb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWduXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldERvbWFpblN0YXRpc3RpY3NSZXBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERvbWFpblN0YXRpc3RpY3NSZXBvcnQgPVxuXHRcdFwic2VzOkdldERvbWFpblN0YXRpc3RpY3NSZXBvcnRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RW1haWxBZGRyZXNzSW5zaWdodHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEVtYWlsQWRkcmVzc0luc2lnaHRzID0gXCJzZXM6R2V0RW1haWxBZGRyZXNzSW5zaWdodHNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RW1haWxJZGVudGl0eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RW1haWxJZGVudGl0eSA9IFwic2VzOkdldEVtYWlsSWRlbnRpdHlcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0RW1haWxJZGVudGl0eVBvbGljaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFbWFpbElkZW50aXR5UG9saWNpZXMgPVxuXHRcdFwic2VzOkdldEVtYWlsSWRlbnRpdHlQb2xpY2llc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRFbWFpbFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFbWFpbFRlbXBsYXRlID0gXCJzZXM6R2V0RW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRFeHBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEV4cG9ydEpvYiA9IFwic2VzOkdldEV4cG9ydEpvYlwiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzID1cblx0XHRcInNlczpHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eU1haWxGcm9tRG9tYWluQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXNcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eU5vdGlmaWNhdGlvbkF0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOkdldElkZW50aXR5Tm90aWZpY2F0aW9uQXR0cmlidXRlc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRJZGVudGl0eVBvbGljaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eVBvbGljaWVzID0gXCJzZXM6R2V0SWRlbnRpdHlQb2xpY2llc1wiO1xuXHQvKiogW1JlYWRdIHNlczpHZXRJZGVudGl0eVZlcmlmaWNhdGlvbkF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlWZXJpZmljYXRpb25BdHRyaWJ1dGVzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEltcG9ydEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SW1wb3J0Sm9iID0gXCJzZXM6R2V0SW1wb3J0Sm9iXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldEluZ3Jlc3NQb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SW5ncmVzc1BvaW50ID0gXCJzZXM6R2V0SW5ncmVzc1BvaW50XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldE1lbWJlck9mQWRkcmVzc0xpc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldE1lbWJlck9mQWRkcmVzc0xpc3QgPSBcInNlczpHZXRNZW1iZXJPZkFkZHJlc3NMaXN0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldE1lc3NhZ2VJbnNpZ2h0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0TWVzc2FnZUluc2lnaHRzID0gXCJzZXM6R2V0TWVzc2FnZUluc2lnaHRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldE11bHRpUmVnaW9uRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldE11bHRpUmVnaW9uRW5kcG9pbnQgPSBcInNlczpHZXRNdWx0aVJlZ2lvbkVuZHBvaW50XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFJlbGF5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZWxheSA9IFwic2VzOkdldFJlbGF5XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFJlcHV0YXRpb25FbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlcHV0YXRpb25FbnRpdHkgPSBcInNlczpHZXRSZXB1dGF0aW9uRW50aXR5XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFJ1bGVTZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJ1bGVTZXQgPSBcInNlczpHZXRSdWxlU2V0XCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFNlbmRRdW90YSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0U2VuZFF1b3RhID0gXCJzZXM6R2V0U2VuZFF1b3RhXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFNlbmRTdGF0aXN0aWNzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTZW5kU3RhdGlzdGljcyA9IFwic2VzOkdldFNlbmRTdGF0aXN0aWNzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkdldFN1cHByZXNzZWREZXN0aW5hdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0U3VwcHJlc3NlZERlc3RpbmF0aW9uID1cblx0XHRcInNlczpHZXRTdXBwcmVzc2VkRGVzdGluYXRpb25cIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0VGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFRlbXBsYXRlID0gXCJzZXM6R2V0VGVtcGxhdGVcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0VGVuYW50ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZW5hbnQgPSBcInNlczpHZXRUZW5hbnRcIjtcblx0LyoqIFtSZWFkXSBzZXM6R2V0VHJhZmZpY1BvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0VHJhZmZpY1BvbGljeSA9IFwic2VzOkdldFRyYWZmaWNQb2xpY3lcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFkZG9uSW5zdGFuY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWRkb25JbnN0YW5jZXMgPSBcInNlczpMaXN0QWRkb25JbnN0YW5jZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFkZG9uU3Vic2NyaXB0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZG9uU3Vic2NyaXB0aW9ucyA9IFwic2VzOkxpc3RBZGRvblN1YnNjcmlwdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9icyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9icyA9IFwic2VzOkxpc3RBZGRyZXNzTGlzdEltcG9ydEpvYnNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFkZHJlc3NMaXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZHJlc3NMaXN0cyA9IFwic2VzOkxpc3RBZGRyZXNzTGlzdHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFyY2hpdmVFeHBvcnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJjaGl2ZUV4cG9ydHMgPSBcInNlczpMaXN0QXJjaGl2ZUV4cG9ydHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFyY2hpdmVTZWFyY2hlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFyY2hpdmVTZWFyY2hlcyA9IFwic2VzOkxpc3RBcmNoaXZlU2VhcmNoZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEFyY2hpdmVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJjaGl2ZXMgPSBcInNlczpMaXN0QXJjaGl2ZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdENvbmZpZ3VyYXRpb25TZXRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29uZmlndXJhdGlvblNldHMgPSBcInNlczpMaXN0Q29uZmlndXJhdGlvblNldHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdENvbnRhY3RMaXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbnRhY3RMaXN0cyA9IFwic2VzOkxpc3RDb250YWN0TGlzdHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdENvbnRhY3RzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29udGFjdHMgPSBcInNlczpMaXN0Q29udGFjdHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXMgPVxuXHRcdFwic2VzOkxpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlc1wiO1xuXHQvKiogW0xpc3RdIHNlczpMaXN0RGVkaWNhdGVkSXBQb29scyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlZGljYXRlZElwUG9vbHMgPSBcInNlczpMaXN0RGVkaWNhdGVkSXBQb29sc1wiO1xuXHQvKiogW0xpc3RdIHNlczpMaXN0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHMgPVxuXHRcdFwic2VzOkxpc3REZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRzXCI7XG5cdC8qKiBbUmVhZF0gc2VzOkxpc3REb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWducyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zID1cblx0XHRcInNlczpMaXN0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbnNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEVtYWlsSWRlbnRpdGllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEVtYWlsSWRlbnRpdGllcyA9IFwic2VzOkxpc3RFbWFpbElkZW50aXRpZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEVtYWlsVGVtcGxhdGVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RW1haWxUZW1wbGF0ZXMgPSBcInNlczpMaXN0RW1haWxUZW1wbGF0ZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEV4cG9ydEpvYnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFeHBvcnRKb2JzID0gXCJzZXM6TGlzdEV4cG9ydEpvYnNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdElkZW50aXRpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0aWVzID0gXCJzZXM6TGlzdElkZW50aXRpZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdElkZW50aXR5UG9saWNpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0eVBvbGljaWVzID0gXCJzZXM6TGlzdElkZW50aXR5UG9saWNpZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEltcG9ydEpvYnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbXBvcnRKb2JzID0gXCJzZXM6TGlzdEltcG9ydEpvYnNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdEluZ3Jlc3NQb2ludHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbmdyZXNzUG9pbnRzID0gXCJzZXM6TGlzdEluZ3Jlc3NQb2ludHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdE1lbWJlcnNPZkFkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtYmVyc09mQWRkcmVzc0xpc3QgPSBcInNlczpMaXN0TWVtYmVyc09mQWRkcmVzc0xpc3RcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TXVsdGlSZWdpb25FbmRwb2ludHMgPSBcInNlczpMaXN0TXVsdGlSZWdpb25FbmRwb2ludHNcIjtcblx0LyoqIFtSZWFkXSBzZXM6TGlzdFJlY2VpcHRGaWx0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVjZWlwdEZpbHRlcnMgPSBcInNlczpMaXN0UmVjZWlwdEZpbHRlcnNcIjtcblx0LyoqIFtSZWFkXSBzZXM6TGlzdFJlY2VpcHRSdWxlU2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY2VpcHRSdWxlU2V0cyA9IFwic2VzOkxpc3RSZWNlaXB0UnVsZVNldHNcIjtcblx0LyoqIFtSZWFkXSBzZXM6TGlzdFJlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY29tbWVuZGF0aW9ucyA9IFwic2VzOkxpc3RSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFJlbGF5cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlbGF5cyA9IFwic2VzOkxpc3RSZWxheXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFJlcHV0YXRpb25FbnRpdGllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlcHV0YXRpb25FbnRpdGllcyA9IFwic2VzOkxpc3RSZXB1dGF0aW9uRW50aXRpZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFJlc291cmNlVGVuYW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc291cmNlVGVuYW50cyA9IFwic2VzOkxpc3RSZXNvdXJjZVRlbmFudHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFJ1bGVTZXRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UnVsZVNldHMgPSBcInNlczpMaXN0UnVsZVNldHNcIjtcblx0LyoqIFtSZWFkXSBzZXM6TGlzdFN1cHByZXNzZWREZXN0aW5hdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zID0gXCJzZXM6TGlzdFN1cHByZXNzZWREZXN0aW5hdGlvbnNcIjtcblx0LyoqIFtSZWFkXSBzZXM6TGlzdFRhZ3NGb3JSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZSA9IFwic2VzOkxpc3RUYWdzRm9yUmVzb3VyY2VcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbXBsYXRlcyA9IFwic2VzOkxpc3RUZW1wbGF0ZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFRlbmFudFJlc291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbmFudFJlc291cmNlcyA9IFwic2VzOkxpc3RUZW5hbnRSZXNvdXJjZXNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFRlbmFudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW5hbnRzID0gXCJzZXM6TGlzdFRlbmFudHNcIjtcblx0LyoqIFtMaXN0XSBzZXM6TGlzdFRyYWZmaWNQb2xpY2llcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRyYWZmaWNQb2xpY2llcyA9IFwic2VzOkxpc3RUcmFmZmljUG9saWNpZXNcIjtcblx0LyoqIFtSZWFkXSBzZXM6TGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RWZXJpZmllZEVtYWlsQWRkcmVzc2VzID0gXCJzZXM6TGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEFjY291bnREZXRhaWxzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50RGV0YWlscyA9IFwic2VzOlB1dEFjY291bnREZXRhaWxzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRBY2NvdW50UHJpY2luZ0F0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0QWNjb3VudFByaWNpbmdBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRBY2NvdW50U2VuZGluZ0F0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRBY2NvdW50VmRtQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFZkbUF0dHJpYnV0ZXMgPSBcInNlczpQdXRBY2NvdW50VmRtQXR0cmlidXRlc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zID1cblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0QXJjaGl2aW5nT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9ucyA9XG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldFJlcHV0YXRpb25PcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk9wdGlvbnMgPVxuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldFNlbmRpbmdPcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0U2VuZGluZ09wdGlvbnMgPVxuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldFN1cHByZXNzaW9uT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFN1cHByZXNzaW9uT3B0aW9ucyA9XG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFN1cHByZXNzaW9uT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyA9XG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRWZG1PcHRpb25zID1cblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0VmRtT3B0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0RGVkaWNhdGVkSXBJblBvb2wgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwSW5Qb29sID0gXCJzZXM6UHV0RGVkaWNhdGVkSXBJblBvb2xcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZWRpY2F0ZWRJcFBvb2xTY2FsaW5nQXR0cmlidXRlcyA9XG5cdFx0XCJzZXM6UHV0RGVkaWNhdGVkSXBQb29sU2NhbGluZ0F0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbiA9XG5cdFx0XCJzZXM6UHV0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEVtYWlsSWRlbnRpdHlDb25maWd1cmF0aW9uU2V0QXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eUNvbmZpZ3VyYXRpb25TZXRBdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEVtYWlsSWRlbnRpdHlEa2ltQXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eURraW1BdHRyaWJ1dGVzID1cblx0XHRcInNlczpQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0F0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0F0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0F0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEVtYWlsSWRlbnRpdHlGZWVkYmFja0F0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlGZWVkYmFja0F0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlGZWVkYmFja0F0dHJpYnV0ZXNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlB1dEVtYWlsSWRlbnRpdHlNYWlsRnJvbUF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlNYWlsRnJvbUF0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlNYWlsRnJvbUF0dHJpYnV0ZXNcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gc2VzOlB1dElkZW50aXR5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRJZGVudGl0eVBvbGljeSA9IFwic2VzOlB1dElkZW50aXR5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpQdXRTdXBwcmVzc2VkRGVzdGluYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dFN1cHByZXNzZWREZXN0aW5hdGlvbiA9IFwic2VzOlB1dFN1cHByZXNzZWREZXN0aW5hdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6UHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMgPVxuXHRcdFwic2VzOlB1dFRlbmFudFN1cHByZXNzaW9uQXR0cmlidXRlc1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6UmVnaXN0ZXJNZW1iZXJUb0FkZHJlc3NMaXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBSZWdpc3Rlck1lbWJlclRvQWRkcmVzc0xpc3QgPVxuXHRcdFwic2VzOlJlZ2lzdGVyTWVtYmVyVG9BZGRyZXNzTGlzdFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6UmVvcmRlclJlY2VpcHRSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBSZW9yZGVyUmVjZWlwdFJ1bGVTZXQgPSBcInNlczpSZW9yZGVyUmVjZWlwdFJ1bGVTZXRcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gc2VzOlJlcGxpY2F0ZUVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0tleSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVwbGljYXRlRW1haWxJZGVudGl0eURraW1TaWduaW5nS2V5ID1cblx0XHRcInNlczpSZXBsaWNhdGVFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdLZXlcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNlbmRCb3VuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRCb3VuY2UgPSBcInNlczpTZW5kQm91bmNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZW5kQnVsa0VtYWlsICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kQnVsa0VtYWlsID0gXCJzZXM6U2VuZEJ1bGtFbWFpbFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2VuZEJ1bGtUZW1wbGF0ZWRFbWFpbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJ1bGtUZW1wbGF0ZWRFbWFpbCA9IFwic2VzOlNlbmRCdWxrVGVtcGxhdGVkRW1haWxcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNlbmRDdXN0b21WZXJpZmljYXRpb25FbWFpbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsID1cblx0XHRcInNlczpTZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNlbmRFbWFpbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEVtYWlsID0gXCJzZXM6U2VuZEVtYWlsXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZW5kUmF3RW1haWwgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRSYXdFbWFpbCA9IFwic2VzOlNlbmRSYXdFbWFpbFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2VuZFRlbXBsYXRlZEVtYWlsICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kVGVtcGxhdGVkRW1haWwgPSBcInNlczpTZW5kVGVtcGxhdGVkRW1haWxcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRBY3RpdmVSZWNlaXB0UnVsZVNldCA9IFwic2VzOlNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTZXRJZGVudGl0eURraW1FbmFibGVkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRJZGVudGl0eURraW1FbmFibGVkID0gXCJzZXM6U2V0SWRlbnRpdHlEa2ltRW5hYmxlZFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2V0SWRlbnRpdHlGZWVkYmFja0ZvcndhcmRpbmdFbmFibGVkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRJZGVudGl0eUZlZWRiYWNrRm9yd2FyZGluZ0VuYWJsZWQgPVxuXHRcdFwic2VzOlNldElkZW50aXR5RmVlZGJhY2tGb3J3YXJkaW5nRW5hYmxlZFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZCA9XG5cdFx0XCJzZXM6U2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbiA9XG5cdFx0XCJzZXM6U2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpblwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2V0SWRlbnRpdHlOb3RpZmljYXRpb25Ub3BpYyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlOb3RpZmljYXRpb25Ub3BpYyA9XG5cdFx0XCJzZXM6U2V0SWRlbnRpdHlOb3RpZmljYXRpb25Ub3BpY1wiO1xuXHQvKiogW1dyaXRlXSBzZXM6U2V0UmVjZWlwdFJ1bGVQb3NpdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbiA9IFwic2VzOlNldFJlY2VpcHRSdWxlUG9zaXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOlN0YXJ0QWRkcmVzc0xpc3RJbXBvcnRKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QWRkcmVzc0xpc3RJbXBvcnRKb2IgPSBcInNlczpTdGFydEFkZHJlc3NMaXN0SW1wb3J0Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTdGFydEFyY2hpdmVFeHBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QXJjaGl2ZUV4cG9ydCA9IFwic2VzOlN0YXJ0QXJjaGl2ZUV4cG9ydFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U3RhcnRBcmNoaXZlU2VhcmNoICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFyY2hpdmVTZWFyY2ggPSBcInNlczpTdGFydEFyY2hpdmVTZWFyY2hcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEFkZHJlc3NMaXN0SW1wb3J0Sm9iID0gXCJzZXM6U3RvcEFkZHJlc3NMaXN0SW1wb3J0Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpTdG9wQXJjaGl2ZUV4cG9ydCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEFyY2hpdmVFeHBvcnQgPSBcInNlczpTdG9wQXJjaGl2ZUV4cG9ydFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6U3RvcEFyY2hpdmVTZWFyY2ggKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBcmNoaXZlU2VhcmNoID0gXCJzZXM6U3RvcEFyY2hpdmVTZWFyY2hcIjtcblx0LyoqIFtUYWdnaW5nXSBzZXM6VGFnUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlID0gXCJzZXM6VGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBUZXN0UmVuZGVyRW1haWxUZW1wbGF0ZSA9IFwic2VzOlRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpUZXN0UmVuZGVyVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRlc3RSZW5kZXJUZW1wbGF0ZSA9IFwic2VzOlRlc3RSZW5kZXJUZW1wbGF0ZVwiO1xuXHQvKiogW1RhZ2dpbmddIHNlczpVbnRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlID0gXCJzZXM6VW50YWdSZXNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBY2NvdW50U2VuZGluZ0VuYWJsZWQgPVxuXHRcdFwic2VzOlVwZGF0ZUFjY291bnRTZW5kaW5nRW5hYmxlZFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlQXJjaGl2ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXJjaGl2ZSA9IFwic2VzOlVwZGF0ZUFyY2hpdmVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiA9XG5cdFx0XCJzZXM6VXBkYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWQgPVxuXHRcdFwic2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRTZW5kaW5nRW5hYmxlZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvblNldFNlbmRpbmdFbmFibGVkID1cblx0XHRcInNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0U2VuZGluZ0VuYWJsZWRcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgPVxuXHRcdFwic2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUNvbnRhY3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbnRhY3QgPSBcInNlczpVcGRhdGVDb250YWN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVDb250YWN0TGlzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29udGFjdExpc3QgPSBcInNlczpVcGRhdGVDb250YWN0TGlzdFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSA9XG5cdFx0XCJzZXM6VXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBzZXM6VXBkYXRlRW1haWxJZGVudGl0eVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRW1haWxJZGVudGl0eVBvbGljeSA9IFwic2VzOlVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZUVtYWlsVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUVtYWlsVGVtcGxhdGUgPSBcInNlczpVcGRhdGVFbWFpbFRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVJbmdyZXNzUG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUluZ3Jlc3NQb2ludCA9IFwic2VzOlVwZGF0ZUluZ3Jlc3NQb2ludFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlUmVjZWlwdFJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlY2VpcHRSdWxlID0gXCJzZXM6VXBkYXRlUmVjZWlwdFJ1bGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZVJlbGF5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZWxheSA9IFwic2VzOlVwZGF0ZVJlbGF5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzID1cblx0XHRcInNlczpVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5ID1cblx0XHRcInNlczpVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpVcGRhdGVSdWxlU2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSdWxlU2V0ID0gXCJzZXM6VXBkYXRlUnVsZVNldFwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VXBkYXRlVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRlbXBsYXRlID0gXCJzZXM6VXBkYXRlVGVtcGxhdGVcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlVwZGF0ZVRyYWZmaWNQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRyYWZmaWNQb2xpY3kgPSBcInNlczpVcGRhdGVUcmFmZmljUG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHNlczpWZXJpZnlEb21haW5Ea2ltICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlEb21haW5Ea2ltID0gXCJzZXM6VmVyaWZ5RG9tYWluRGtpbVwiO1xuXHQvKiogW1dyaXRlXSBzZXM6VmVyaWZ5RG9tYWluSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeURvbWFpbklkZW50aXR5ID0gXCJzZXM6VmVyaWZ5RG9tYWluSWRlbnRpdHlcIjtcblx0LyoqIFtXcml0ZV0gc2VzOlZlcmlmeUVtYWlsQWRkcmVzcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RW1haWxBZGRyZXNzID0gXCJzZXM6VmVyaWZ5RW1haWxBZGRyZXNzXCI7XG5cdC8qKiBbV3JpdGVdIHNlczpWZXJpZnlFbWFpbElkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlFbWFpbElkZW50aXR5ID0gXCJzZXM6VmVyaWZ5RW1haWxJZGVudGl0eVwiO1xuXG5cdC8qKiBBbGwgcmVhZC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUmVhZEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlc0FjdGlvbnMuQmF0Y2hHZXRNZXRyaWNEYXRhLFxuXHRcdFNlc0FjdGlvbnMuRGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLkRlc2NyaWJlQ29uZmlndXJhdGlvblNldCxcblx0XHRTZXNBY3Rpb25zLkRlc2NyaWJlUmVjZWlwdFJ1bGUsXG5cdFx0U2VzQWN0aW9ucy5EZXNjcmliZVJlY2VpcHRSdWxlU2V0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QWNjb3VudCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFjY291bnRTZW5kaW5nRW5hYmxlZCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFkZG9uSW5zdGFuY2UsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBZGRvblN1YnNjcmlwdGlvbixcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFkZHJlc3NMaXN0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QWRkcmVzc0xpc3RJbXBvcnRKb2IsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRBcmNoaXZlLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QXJjaGl2ZUV4cG9ydCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFyY2hpdmVNZXNzYWdlLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QXJjaGl2ZU1lc3NhZ2VDb250ZW50LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QXJjaGl2ZVNlYXJjaCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEFyY2hpdmVTZWFyY2hSZXN1bHRzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0QmxhY2tsaXN0UmVwb3J0cyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldENvbmZpZ3VyYXRpb25TZXQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRDb250YWN0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0Q29udGFjdExpc3QsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RGVkaWNhdGVkSXAsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXREZWRpY2F0ZWRJcFBvb2wsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXREZWRpY2F0ZWRJcHMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXREZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXREb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWduLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RG9tYWluU3RhdGlzdGljc1JlcG9ydCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEVtYWlsQWRkcmVzc0luc2lnaHRzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0RW1haWxJZGVudGl0eSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEVtYWlsSWRlbnRpdHlQb2xpY2llcyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldEVtYWlsVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRFeHBvcnRKb2IsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRJZGVudGl0eU5vdGlmaWNhdGlvbkF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRJZGVudGl0eVBvbGljaWVzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SWRlbnRpdHlWZXJpZmljYXRpb25BdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SW1wb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0SW5ncmVzc1BvaW50LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0TWVtYmVyT2ZBZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldE1lc3NhZ2VJbnNpZ2h0cyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldE11bHRpUmVnaW9uRW5kcG9pbnQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRSZWxheSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldFJlcHV0YXRpb25FbnRpdHksXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRSdWxlU2V0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0U2VuZFF1b3RhLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uR2V0U2VuZFN0YXRpc3RpY3MsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRTdXBwcmVzc2VkRGVzdGluYXRpb24sXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25HZXRUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldFRlbmFudCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvbkdldFRyYWZmaWNQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5MaXN0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbnMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0UmVjZWlwdEZpbHRlcnMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0UmVjZWlwdFJ1bGVTZXRzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFJlY29tbWVuZGF0aW9ucyxcblx0XHRTZXNBY3Rpb25zLkxpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFRhZ3NGb3JSZXNvdXJjZSxcblx0XHRTZXNBY3Rpb25zLkxpc3RWZXJpZmllZEVtYWlsQWRkcmVzc2VzLFxuXHRdO1xuXHQvKiogQWxsIHdyaXRlLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlc0FjdGlvbnMuQ2FuY2VsRXhwb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuQ2xvbmVSZWNlaXB0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUFkZG9uSW5zdGFuY2UsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVBZGRvblN1YnNjcmlwdGlvbixcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUFkZHJlc3NMaXN0LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlQWRkcmVzc0xpc3RJbXBvcnRKb2IsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVBcmNoaXZlLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlQ29uZmlndXJhdGlvblNldCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUNvbnRhY3QsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVDb250YWN0TGlzdCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVEZWRpY2F0ZWRJcFBvb2wsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVFbWFpbElkZW50aXR5LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUV4cG9ydEpvYixcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUltcG9ydEpvYixcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZUluZ3Jlc3NQb2ludCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnQsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVSZWNlaXB0RmlsdGVyLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlUmVjZWlwdFJ1bGUsXG5cdFx0U2VzQWN0aW9ucy5DcmVhdGVSZWNlaXB0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVJlbGF5LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlUnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlVGVuYW50LFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbixcblx0XHRTZXNBY3Rpb25zLkNyZWF0ZVRyYWZmaWNQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVBZGRvbkluc3RhbmNlLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQWRkb25TdWJzY3JpcHRpb24sXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVBZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUFyY2hpdmUsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVDb25maWd1cmF0aW9uU2V0LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24sXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQ29udGFjdCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUNvbnRhY3RMaXN0LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZURlZGljYXRlZElwUG9vbCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUVtYWlsSWRlbnRpdHksXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVFbWFpbFRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlSWRlbnRpdHksXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVJbmdyZXNzUG9pbnQsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVNdWx0aVJlZ2lvbkVuZHBvaW50LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlUmVjZWlwdEZpbHRlcixcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVJlY2VpcHRSdWxlLFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlUmVjZWlwdFJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVSZWxheSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb24sXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVRlbmFudCxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24sXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVUcmFmZmljUG9saWN5LFxuXHRcdFNlc0FjdGlvbnMuRGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3MsXG5cdFx0U2VzQWN0aW9ucy5EZXJlZ2lzdGVyTWVtYmVyRnJvbUFkZHJlc3NMaXN0LFxuXHRcdFNlc0FjdGlvbnMuUHV0QWNjb3VudERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEFjY291bnREZXRhaWxzLFxuXHRcdFNlc0FjdGlvbnMuUHV0QWNjb3VudFByaWNpbmdBdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0QWNjb3VudFN1cHByZXNzaW9uQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEFjY291bnRWZG1BdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5QdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuUHV0Q29uZmlndXJhdGlvblNldFJlcHV0YXRpb25PcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuUHV0Q29uZmlndXJhdGlvblNldFNlbmRpbmdPcHRpb25zLFxuXHRcdFNlc0FjdGlvbnMuUHV0Q29uZmlndXJhdGlvblNldFN1cHByZXNzaW9uT3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLlB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5QdXRDb25maWd1cmF0aW9uU2V0VmRtT3B0aW9ucyxcblx0XHRTZXNBY3Rpb25zLlB1dERlZGljYXRlZElwSW5Qb29sLFxuXHRcdFNlc0FjdGlvbnMuUHV0RGVkaWNhdGVkSXBQb29sU2NhbGluZ0F0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbixcblx0XHRTZXNBY3Rpb25zLlB1dEVtYWlsSWRlbnRpdHlDb25maWd1cmF0aW9uU2V0QXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEVtYWlsSWRlbnRpdHlEa2ltQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dEVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0F0dHJpYnV0ZXMsXG5cdFx0U2VzQWN0aW9ucy5QdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzLFxuXHRcdFNlc0FjdGlvbnMuUHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlB1dFN1cHByZXNzZWREZXN0aW5hdGlvbixcblx0XHRTZXNBY3Rpb25zLlB1dFRlbmFudFN1cHByZXNzaW9uQXR0cmlidXRlcyxcblx0XHRTZXNBY3Rpb25zLlJlZ2lzdGVyTWVtYmVyVG9BZGRyZXNzTGlzdCxcblx0XHRTZXNBY3Rpb25zLlJlb3JkZXJSZWNlaXB0UnVsZVNldCxcblx0XHRTZXNBY3Rpb25zLlNlbmRCb3VuY2UsXG5cdFx0U2VzQWN0aW9ucy5TZW5kQnVsa0VtYWlsLFxuXHRcdFNlc0FjdGlvbnMuU2VuZEJ1bGtUZW1wbGF0ZWRFbWFpbCxcblx0XHRTZXNBY3Rpb25zLlNlbmRDdXN0b21WZXJpZmljYXRpb25FbWFpbCxcblx0XHRTZXNBY3Rpb25zLlNlbmRFbWFpbCxcblx0XHRTZXNBY3Rpb25zLlNlbmRSYXdFbWFpbCxcblx0XHRTZXNBY3Rpb25zLlNlbmRUZW1wbGF0ZWRFbWFpbCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvblNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0LFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uU2V0SWRlbnRpdHlEa2ltRW5hYmxlZCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvblNldElkZW50aXR5RmVlZGJhY2tGb3J3YXJkaW5nRW5hYmxlZCxcblx0XHRTZXNBY3Rpb25zLmFjdGlvblNldElkZW50aXR5SGVhZGVyc0luTm90aWZpY2F0aW9uc0VuYWJsZWQsXG5cdFx0U2VzQWN0aW9ucy5hY3Rpb25TZXRJZGVudGl0eU1haWxGcm9tRG9tYWluLFxuXHRcdFNlc0FjdGlvbnMuYWN0aW9uU2V0SWRlbnRpdHlOb3RpZmljYXRpb25Ub3BpYyxcblx0XHRTZXNBY3Rpb25zLmFjdGlvblNldFJlY2VpcHRSdWxlUG9zaXRpb24sXG5cdFx0U2VzQWN0aW9ucy5TdGFydEFkZHJlc3NMaXN0SW1wb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuU3RhcnRBcmNoaXZlRXhwb3J0LFxuXHRcdFNlc0FjdGlvbnMuU3RhcnRBcmNoaXZlU2VhcmNoLFxuXHRcdFNlc0FjdGlvbnMuU3RvcEFkZHJlc3NMaXN0SW1wb3J0Sm9iLFxuXHRcdFNlc0FjdGlvbnMuU3RvcEFyY2hpdmVFeHBvcnQsXG5cdFx0U2VzQWN0aW9ucy5TdG9wQXJjaGl2ZVNlYXJjaCxcblx0XHRTZXNBY3Rpb25zLlRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuVGVzdFJlbmRlclRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlQXJjaGl2ZSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlQ29uZmlndXJhdGlvblNldFJlcHV0YXRpb25NZXRyaWNzRW5hYmxlZCxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRTZW5kaW5nRW5hYmxlZCxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVDb250YWN0LFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlQ29udGFjdExpc3QsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlRW1haWxUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZUluZ3Jlc3NQb2ludCxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZVJlY2VpcHRSdWxlLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlUmVsYXksXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzLFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZVJ1bGVTZXQsXG5cdFx0U2VzQWN0aW9ucy5VcGRhdGVUZW1wbGF0ZSxcblx0XHRTZXNBY3Rpb25zLlVwZGF0ZVRyYWZmaWNQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5WZXJpZnlEb21haW5Ea2ltLFxuXHRcdFNlc0FjdGlvbnMuVmVyaWZ5RG9tYWluSWRlbnRpdHksXG5cdFx0U2VzQWN0aW9ucy5WZXJpZnlFbWFpbEFkZHJlc3MsXG5cdFx0U2VzQWN0aW9ucy5WZXJpZnlFbWFpbElkZW50aXR5LFxuXHRdO1xuXHQvKiogQWxsIGxpc3QtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbExpc3RBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRTZXNBY3Rpb25zLkxpc3RBZGRvbkluc3RhbmNlcyxcblx0XHRTZXNBY3Rpb25zLkxpc3RBZGRvblN1YnNjcmlwdGlvbnMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0QWRkcmVzc0xpc3RJbXBvcnRKb2JzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEFkZHJlc3NMaXN0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RBcmNoaXZlRXhwb3J0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RBcmNoaXZlU2VhcmNoZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0QXJjaGl2ZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0Q29uZmlndXJhdGlvblNldHMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0Q29udGFjdExpc3RzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdENvbnRhY3RzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdERlZGljYXRlZElwUG9vbHMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RFbWFpbElkZW50aXRpZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0RW1haWxUZW1wbGF0ZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0RXhwb3J0Sm9icyxcblx0XHRTZXNBY3Rpb25zLkxpc3RJZGVudGl0aWVzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdElkZW50aXR5UG9saWNpZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0SW1wb3J0Sm9icyxcblx0XHRTZXNBY3Rpb25zLkxpc3RJbmdyZXNzUG9pbnRzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdE1lbWJlcnNPZkFkZHJlc3NMaXN0LFxuXHRcdFNlc0FjdGlvbnMuTGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFJlbGF5cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RSZXB1dGF0aW9uRW50aXRpZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0UmVzb3VyY2VUZW5hbnRzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFJ1bGVTZXRzLFxuXHRcdFNlc0FjdGlvbnMuTGlzdFRlbXBsYXRlcyxcblx0XHRTZXNBY3Rpb25zLkxpc3RUZW5hbnRSZXNvdXJjZXMsXG5cdFx0U2VzQWN0aW9ucy5MaXN0VGVuYW50cyxcblx0XHRTZXNBY3Rpb25zLkxpc3RUcmFmZmljUG9saWNpZXMsXG5cdF07XG5cdC8qKiBBbGwgcGVybWlzc2lvbi1tYW5hZ2VtZW50LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxQZXJtaXNzaW9uTWFuYWdlbWVudEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlc0FjdGlvbnMuQWxsb3dWZW5kZWRMb2dEZWxpdmVyeUZvclJlc291cmNlLFxuXHRcdFNlc0FjdGlvbnMuQ3JlYXRlRW1haWxJZGVudGl0eVBvbGljeSxcblx0XHRTZXNBY3Rpb25zLkRlbGV0ZUVtYWlsSWRlbnRpdHlQb2xpY3ksXG5cdFx0U2VzQWN0aW9ucy5EZWxldGVJZGVudGl0eVBvbGljeSxcblx0XHRTZXNBY3Rpb25zLlB1dElkZW50aXR5UG9saWN5LFxuXHRcdFNlc0FjdGlvbnMuUmVwbGljYXRlRW1haWxJZGVudGl0eURraW1TaWduaW5nS2V5LFxuXHRcdFNlc0FjdGlvbnMuVXBkYXRlRW1haWxJZGVudGl0eVBvbGljeSxcblx0XTtcblx0LyoqIEFsbCB0YWdnaW5nLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxUYWdnaW5nQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0U2VzQWN0aW9ucy5UYWdSZXNvdXJjZSxcblx0XHRTZXNBY3Rpb25zLlVudGFnUmVzb3VyY2UsXG5cdF07XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBhZGRvbi1pbnN0YW5jZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQWRkb25JbnN0YW5jZUFyblByb3BzIHtcblx0LyoqIFRoZSBBZGRvbkluc3RhbmNlSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGFkZG9uSW5zdGFuY2VJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGFkZG9uLWluc3RhbmNlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNBZGRvbkluc3RhbmNlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBZGRvbkluc3RhbmNlSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBhZGRvbkluc3RhbmNlSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGFkZG9uLXN1YnNjcmlwdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQWRkb25TdWJzY3JpcHRpb25Bcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQWRkb25TdWJzY3JpcHRpb25JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYWRkb25TdWJzY3JpcHRpb25JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGFkZG9uLXN1YnNjcmlwdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQWRkb25TdWJzY3JpcHRpb25Bcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFkZG9uU3Vic2NyaXB0aW9uSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBhZGRvblN1YnNjcmlwdGlvbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjb25maWd1cmF0aW9uLXNldCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQ29uZmlndXJhdGlvblNldEFyblByb3BzIHtcblx0LyoqIFRoZSBDb25maWd1cmF0aW9uU2V0TmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgY29uZmlndXJhdGlvblNldE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjb25maWd1cmF0aW9uLXNldCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQ29uZmlndXJhdGlvblNldEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQ29uZmlndXJhdGlvblNldE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjb25maWd1cmF0aW9uU2V0TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY29udGFjdC1saXN0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNDb250YWN0TGlzdEFyblByb3BzIHtcblx0LyoqIFRoZSBDb250YWN0TGlzdE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGNvbnRhY3RMaXN0TmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNvbnRhY3QtbGlzdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQ29udGFjdExpc3RBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENvbnRhY3RMaXN0TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGNvbnRhY3RMaXN0TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY3VzdG9tLXZlcmlmaWNhdGlvbi1lbWFpbC10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUFyblByb3BzIHtcblx0LyoqIFRoZSBUZW1wbGF0ZU5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRlbXBsYXRlTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0N1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRlbXBsYXRlTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRlbXBsYXRlTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZGVkaWNhdGVkLWlwLXBvb2wgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0RlZGljYXRlZElQUG9vbEFyblByb3BzIHtcblx0LyoqIFRoZSBEZWRpY2F0ZWRJUFBvb2wgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGRlZGljYXRlZElQUG9vbDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGRlZGljYXRlZC1pcC1wb29sIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNEZWRpY2F0ZWRJUFBvb2xBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERlZGljYXRlZElQUG9vbCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRlZGljYXRlZElQUG9vbDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZGVsaXZlcmFiaWxpdHktdGVzdC1yZXBvcnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0RlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFyblByb3BzIHtcblx0LyoqIFRoZSBSZXBvcnRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVwb3J0SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSZXBvcnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlcG9ydElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBleHBvcnQtam9iIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNFeHBvcnRKb2JBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRXhwb3J0Sm9iSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGV4cG9ydEpvYklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZXhwb3J0LWpvYiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzRXhwb3J0Sm9iQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBFeHBvcnRKb2JJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGV4cG9ydEpvYklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBpZGVudGl0eSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzSWRlbnRpdHlBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgSWRlbnRpdHlOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBpZGVudGl0eU5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBpZGVudGl0eSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzSWRlbnRpdHlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIElkZW50aXR5TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGlkZW50aXR5TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgaW1wb3J0LWpvYiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzSW1wb3J0Sm9iQXJuUHJvcHMge1xuXHQvKiogVGhlIEltcG9ydEpvYklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBpbXBvcnRKb2JJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGltcG9ydC1qb2IgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc0ltcG9ydEpvYkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgSW1wb3J0Sm9iSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBpbXBvcnRKb2JJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgbWFpbG1hbmFnZXItYWRkcmVzcy1saXN0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlckFkZHJlc3NMaXN0QXJuUHJvcHMge1xuXHQvKiogVGhlIEFkZHJlc3NMaXN0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGFkZHJlc3NMaXN0SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtYWlsbWFuYWdlci1hZGRyZXNzLWxpc3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc01haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFkZHJlc3NMaXN0SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBhZGRyZXNzTGlzdElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBtYWlsbWFuYWdlci1hcmNoaXZlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlckFyY2hpdmVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQXJjaGl2ZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhcmNoaXZlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtYWlsbWFuYWdlci1hcmNoaXZlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlckFyY2hpdmVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFyY2hpdmVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFyY2hpdmVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgbWFpbG1hbmFnZXItaW5ncmVzcy1wb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJJbmdyZXNzUG9pbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgSW5ncmVzc1BvaW50SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGluZ3Jlc3NQb2ludElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgbWFpbG1hbmFnZXItaW5ncmVzcy1wb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJJbmdyZXNzUG9pbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEluZ3Jlc3NQb2ludElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgaW5ncmVzc1BvaW50SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG1haWxtYW5hZ2VyLXJ1bGUtc2V0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlclJ1bGVTZXRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUnVsZVNldElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBydWxlU2V0SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtYWlsbWFuYWdlci1ydWxlLXNldCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJSdWxlU2V0QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSdWxlU2V0SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBydWxlU2V0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG1haWxtYW5hZ2VyLXNtdHAtcmVsYXkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc01haWxtYW5hZ2VyU210cFJlbGF5QXJuUHJvcHMge1xuXHQvKiogVGhlIFJlbGF5SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJlbGF5SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtYWlsbWFuYWdlci1zbXRwLXJlbGF5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlclNtdHBSZWxheUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVsYXlJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlbGF5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG1haWxtYW5hZ2VyLXRyYWZmaWMtcG9saWN5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNNYWlsbWFuYWdlclRyYWZmaWNQb2xpY3lBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgVHJhZmZpY1BvbGljeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0cmFmZmljUG9saWN5SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtYWlsbWFuYWdlci10cmFmZmljLXBvbGljeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTWFpbG1hbmFnZXJUcmFmZmljUG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUcmFmZmljUG9saWN5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0cmFmZmljUG9saWN5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG11bHRpLXJlZ2lvbi1lbmRwb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTXVsdGlSZWdpb25FbmRwb2ludEFyblByb3BzIHtcblx0LyoqIFRoZSBFbmRwb2ludE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGVuZHBvaW50TmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIG11bHRpLXJlZ2lvbi1lbmRwb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzTXVsdGlSZWdpb25FbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRW5kcG9pbnROYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZW5kcG9pbnROYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSByZXB1dGF0aW9uLXBvbGljeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzUmVwdXRhdGlvblBvbGljeUFyblByb3BzIHtcblx0LyoqIFRoZSBSZXB1dGF0aW9uUG9saWN5TmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVwdXRhdGlvblBvbGljeU5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSByZXB1dGF0aW9uLXBvbGljeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzUmVwdXRhdGlvblBvbGljeUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVwdXRhdGlvblBvbGljeU5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZXB1dGF0aW9uUG9saWN5TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgdGVtcGxhdGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc1RlbXBsYXRlQXJuUHJvcHMge1xuXHQvKiogVGhlIFRlbXBsYXRlTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdGVtcGxhdGVOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgdGVtcGxhdGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc1RlbXBsYXRlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUZW1wbGF0ZU5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0ZW1wbGF0ZU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHRlbmFudCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VzVGVuYW50QXJuUHJvcHMge1xuXHQvKiogVGhlIFRlbmFudE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRlbmFudE5hbWU6IHN0cmluZztcblx0LyoqIFRoZSBUZW5hbnRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdGVuYW50SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB0ZW5hbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlc1RlbmFudEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVGVuYW50TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRlbmFudE5hbWU6IHN0cmluZztcblx0LyoqIFRoZSBUZW5hbnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRlbmFudElkOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFkZG9uSW5zdGFuY2VBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6YWRkb24taW5zdGFuY2VcXC8oPzxhZGRvbkluc3RhbmNlSWQ+W146Lz9dKykkLztcbmNvbnN0IEFkZG9uU3Vic2NyaXB0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmFkZG9uLXN1YnNjcmlwdGlvblxcLyg/PGFkZG9uU3Vic2NyaXB0aW9uSWQ+W146Lz9dKykkLztcbmNvbnN0IENvbmZpZ3VyYXRpb25TZXRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y29uZmlndXJhdGlvbi1zZXRcXC8oPzxjb25maWd1cmF0aW9uU2V0TmFtZT5bXjovP10rKSQvO1xuY29uc3QgQ29udGFjdExpc3RBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y29udGFjdC1saXN0XFwvKD88Y29udGFjdExpc3ROYW1lPlteOi8/XSspJC87XG5jb25zdCBDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGVcXC8oPzx0ZW1wbGF0ZU5hbWU+W146Lz9dKykkLztcbmNvbnN0IERlZGljYXRlZElQUG9vbEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpkZWRpY2F0ZWQtaXAtcG9vbFxcLyg/PGRlZGljYXRlZElQUG9vbD5bXjovP10rKSQvO1xuY29uc3QgRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmRlbGl2ZXJhYmlsaXR5LXRlc3QtcmVwb3J0XFwvKD88cmVwb3J0SWQ+W146Lz9dKykkLztcbmNvbnN0IEV4cG9ydEpvYkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpleHBvcnQtam9iXFwvKD88ZXhwb3J0Sm9iSWQ+W146Lz9dKykkLztcbmNvbnN0IElkZW50aXR5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmlkZW50aXR5XFwvKD88aWRlbnRpdHlOYW1lPlteOi8/XSspJC87XG5jb25zdCBJbXBvcnRKb2JBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6aW1wb3J0LWpvYlxcLyg/PGltcG9ydEpvYklkPlteOi8/XSspJC87XG5jb25zdCBNYWlsbWFuYWdlckFkZHJlc3NMaXN0QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOm1haWxtYW5hZ2VyLWFkZHJlc3MtbGlzdFxcLyg/PGFkZHJlc3NMaXN0SWQ+W146Lz9dKykkLztcbmNvbnN0IE1haWxtYW5hZ2VyQXJjaGl2ZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptYWlsbWFuYWdlci1hcmNoaXZlXFwvKD88YXJjaGl2ZUlkPlteOi8/XSspJC87XG5jb25zdCBNYWlsbWFuYWdlckluZ3Jlc3NQb2ludEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptYWlsbWFuYWdlci1pbmdyZXNzLXBvaW50XFwvKD88aW5ncmVzc1BvaW50SWQ+W146Lz9dKykkLztcbmNvbnN0IE1haWxtYW5hZ2VyUnVsZVNldEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptYWlsbWFuYWdlci1ydWxlLXNldFxcLyg/PHJ1bGVTZXRJZD5bXjovP10rKSQvO1xuY29uc3QgTWFpbG1hbmFnZXJTbXRwUmVsYXlBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bWFpbG1hbmFnZXItc210cC1yZWxheVxcLyg/PHJlbGF5SWQ+W146Lz9dKykkLztcbmNvbnN0IE1haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptYWlsbWFuYWdlci10cmFmZmljLXBvbGljeVxcLyg/PHRyYWZmaWNQb2xpY3lJZD5bXjovP10rKSQvO1xuY29uc3QgTXVsdGlSZWdpb25FbmRwb2ludEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZXM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptdWx0aS1yZWdpb24tZW5kcG9pbnRcXC8oPzxlbmRwb2ludE5hbWU+W146Lz9dKykkLztcbmNvbnN0IFJlcHV0YXRpb25Qb2xpY3lBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6YXdzOnJlcHV0YXRpb24tcG9saWN5XFwvKD88cmVwdXRhdGlvblBvbGljeU5hbWU+W146Lz9dKykkLztcbmNvbnN0IFRlbXBsYXRlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRlbXBsYXRlXFwvKD88dGVtcGxhdGVOYW1lPlteOi8/XSspJC87XG5jb25zdCBUZW5hbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6c2VzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6dGVuYW50XFwvKD88dGVuYW50TmFtZT5bXjovP10rKVxcLyg/PHRlbmFudElkPlteOi8/XSspJC87XG5cbi8qKlxuICogQVJOIGJ1aWxkZXJzLCB2YWxpZGF0b3JzLCBhbmQgcGFyc2VycyBmb3Igc2VzIHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlc1Jlc291cmNlcyB7XG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYWRkb24taW5zdGFuY2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYWRkb25JbnN0YW5jZShwcm9wczogU2VzQWRkb25JbnN0YW5jZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YWRkb24taW5zdGFuY2UvJHtwcm9wcy5hZGRvbkluc3RhbmNlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFkZG9uLWluc3RhbmNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBZGRvbkluc3RhbmNlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFkZG9uSW5zdGFuY2VBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYWRkb24taW5zdGFuY2UgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWRkb25JbnN0YW5jZUFybihhcm46IHN0cmluZyk6IFNlc0FkZG9uSW5zdGFuY2VBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFkZG9uSW5zdGFuY2VBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYWRkb24taW5zdGFuY2UgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YWRkb25JbnN0YW5jZUlkOiBtYXRjaC5ncm91cHMhLmFkZG9uSW5zdGFuY2VJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBhZGRvbi1zdWJzY3JpcHRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYWRkb25TdWJzY3JpcHRpb24ocHJvcHM6IFNlc0FkZG9uU3Vic2NyaXB0aW9uQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTphZGRvbi1zdWJzY3JpcHRpb24vJHtwcm9wcy5hZGRvblN1YnNjcmlwdGlvbklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBhZGRvbi1zdWJzY3JpcHRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFkZG9uU3Vic2NyaXB0aW9uQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFkZG9uU3Vic2NyaXB0aW9uQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGFkZG9uLXN1YnNjcmlwdGlvbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VBZGRvblN1YnNjcmlwdGlvbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VzQWRkb25TdWJzY3JpcHRpb25Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFkZG9uU3Vic2NyaXB0aW9uQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGFkZG9uLXN1YnNjcmlwdGlvbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRhZGRvblN1YnNjcmlwdGlvbklkOiBtYXRjaC5ncm91cHMhLmFkZG9uU3Vic2NyaXB0aW9uSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY29uZmlndXJhdGlvbi1zZXQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY29uZmlndXJhdGlvblNldChwcm9wczogU2VzQ29uZmlndXJhdGlvblNldEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Y29uZmlndXJhdGlvbi1zZXQvJHtwcm9wcy5jb25maWd1cmF0aW9uU2V0TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY29uZmlndXJhdGlvbi1zZXQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZENvbmZpZ3VyYXRpb25TZXRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ29uZmlndXJhdGlvblNldEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjb25maWd1cmF0aW9uLXNldCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDb25maWd1cmF0aW9uU2V0QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNDb25maWd1cmF0aW9uU2V0QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDb25maWd1cmF0aW9uU2V0QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNvbmZpZ3VyYXRpb24tc2V0IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGNvbmZpZ3VyYXRpb25TZXROYW1lOiBtYXRjaC5ncm91cHMhLmNvbmZpZ3VyYXRpb25TZXROYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNvbnRhY3QtbGlzdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjb250YWN0TGlzdChwcm9wczogU2VzQ29udGFjdExpc3RBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNvbnRhY3QtbGlzdC8ke3Byb3BzLmNvbnRhY3RMaXN0TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY29udGFjdC1saXN0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDb250YWN0TGlzdEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBDb250YWN0TGlzdEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjb250YWN0LWxpc3QgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ29udGFjdExpc3RBcm4oYXJuOiBzdHJpbmcpOiBTZXNDb250YWN0TGlzdEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ29udGFjdExpc3RBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY29udGFjdC1saXN0IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGNvbnRhY3RMaXN0TmFtZTogbWF0Y2guZ3JvdXBzIS5jb250YWN0TGlzdE5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY3VzdG9tLXZlcmlmaWNhdGlvbi1lbWFpbC10ZW1wbGF0ZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlKFxuXHRcdHByb3BzOiBTZXNDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGUvJHtwcm9wcy50ZW1wbGF0ZU5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGN1c3RvbS12ZXJpZmljYXRpb24tZW1haWwtdGVtcGxhdGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjdXN0b20tdmVyaWZpY2F0aW9uLWVtYWlsLXRlbXBsYXRlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc0N1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY3VzdG9tLXZlcmlmaWNhdGlvbi1lbWFpbC10ZW1wbGF0ZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0ZW1wbGF0ZU5hbWU6IG1hdGNoLmdyb3VwcyEudGVtcGxhdGVOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGRlZGljYXRlZC1pcC1wb29sIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGRlZGljYXRlZElQUG9vbChwcm9wczogU2VzRGVkaWNhdGVkSVBQb29sQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkZWRpY2F0ZWQtaXAtcG9vbC8ke3Byb3BzLmRlZGljYXRlZElQUG9vbH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZGVkaWNhdGVkLWlwLXBvb2wgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZERlZGljYXRlZElQUG9vbEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBEZWRpY2F0ZWRJUFBvb2xBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZGVkaWNhdGVkLWlwLXBvb2wgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlRGVkaWNhdGVkSVBQb29sQXJuKGFybjogc3RyaW5nKTogU2VzRGVkaWNhdGVkSVBQb29sQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBEZWRpY2F0ZWRJUFBvb2xBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZGVkaWNhdGVkLWlwLXBvb2wgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGVkaWNhdGVkSVBQb29sOiBtYXRjaC5ncm91cHMhLmRlZGljYXRlZElQUG9vbCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBkZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQoXG5cdFx0cHJvcHM6IFNlc0RlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydC8ke3Byb3BzLnJlcG9ydElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBkZWxpdmVyYWJpbGl0eS10ZXN0LXJlcG9ydCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc0RlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRlbGl2ZXJhYmlsaXR5LXRlc3QtcmVwb3J0IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJlcG9ydElkOiBtYXRjaC5ncm91cHMhLnJlcG9ydElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGV4cG9ydC1qb2IgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZXhwb3J0Sm9iKHByb3BzOiBTZXNFeHBvcnRKb2JBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmV4cG9ydC1qb2IvJHtwcm9wcy5leHBvcnRKb2JJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZXhwb3J0LWpvYiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkRXhwb3J0Sm9iQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEV4cG9ydEpvYkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBleHBvcnQtam9iIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUV4cG9ydEpvYkFybihhcm46IHN0cmluZyk6IFNlc0V4cG9ydEpvYkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gRXhwb3J0Sm9iQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGV4cG9ydC1qb2IgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZXhwb3J0Sm9iSWQ6IG1hdGNoLmdyb3VwcyEuZXhwb3J0Sm9iSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgaWRlbnRpdHkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaWRlbnRpdHkocHJvcHM6IFNlc0lkZW50aXR5QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTppZGVudGl0eS8ke3Byb3BzLmlkZW50aXR5TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgaWRlbnRpdHkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZElkZW50aXR5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIElkZW50aXR5QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGlkZW50aXR5IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUlkZW50aXR5QXJuKGFybjogc3RyaW5nKTogU2VzSWRlbnRpdHlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IElkZW50aXR5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGlkZW50aXR5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGlkZW50aXR5TmFtZTogbWF0Y2guZ3JvdXBzIS5pZGVudGl0eU5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgaW1wb3J0LWpvYiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpbXBvcnRKb2IocHJvcHM6IFNlc0ltcG9ydEpvYkFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06aW1wb3J0LWpvYi8ke3Byb3BzLmltcG9ydEpvYklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBpbXBvcnQtam9iIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRJbXBvcnRKb2JBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSW1wb3J0Sm9iQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGltcG9ydC1qb2IgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlSW1wb3J0Sm9iQXJuKGFybjogc3RyaW5nKTogU2VzSW1wb3J0Sm9iQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBJbXBvcnRKb2JBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgaW1wb3J0LWpvYiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRpbXBvcnRKb2JJZDogbWF0Y2guZ3JvdXBzIS5pbXBvcnRKb2JJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1hZGRyZXNzLWxpc3QgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgbWFpbG1hbmFnZXJBZGRyZXNzTGlzdChcblx0XHRwcm9wczogU2VzTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptYWlsbWFuYWdlci1hZGRyZXNzLWxpc3QvJHtwcm9wcy5hZGRyZXNzTGlzdElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1hZGRyZXNzLWxpc3QgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1haWxtYW5hZ2VyQWRkcmVzc0xpc3RBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBtYWlsbWFuYWdlci1hZGRyZXNzLWxpc3QgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VzTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gTWFpbG1hbmFnZXJBZGRyZXNzTGlzdEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYWlsbWFuYWdlci1hZGRyZXNzLWxpc3QgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YWRkcmVzc0xpc3RJZDogbWF0Y2guZ3JvdXBzIS5hZGRyZXNzTGlzdElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLWFyY2hpdmUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgbWFpbG1hbmFnZXJBcmNoaXZlKHByb3BzOiBTZXNNYWlsbWFuYWdlckFyY2hpdmVBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Om1haWxtYW5hZ2VyLWFyY2hpdmUvJHtwcm9wcy5hcmNoaXZlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLWFyY2hpdmUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1haWxtYW5hZ2VyQXJjaGl2ZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBNYWlsbWFuYWdlckFyY2hpdmVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbWFpbG1hbmFnZXItYXJjaGl2ZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VNYWlsbWFuYWdlckFyY2hpdmVBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc01haWxtYW5hZ2VyQXJjaGl2ZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gTWFpbG1hbmFnZXJBcmNoaXZlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1haWxtYW5hZ2VyLWFyY2hpdmUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YXJjaGl2ZUlkOiBtYXRjaC5ncm91cHMhLmFyY2hpdmVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci1pbmdyZXNzLXBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG1haWxtYW5hZ2VySW5ncmVzc1BvaW50KFxuXHRcdHByb3BzOiBTZXNNYWlsbWFuYWdlckluZ3Jlc3NQb2ludEFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptYWlsbWFuYWdlci1pbmdyZXNzLXBvaW50LyR7cHJvcHMuaW5ncmVzc1BvaW50SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLWluZ3Jlc3MtcG9pbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1haWxtYW5hZ2VySW5ncmVzc1BvaW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE1haWxtYW5hZ2VySW5ncmVzc1BvaW50QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIG1haWxtYW5hZ2VyLWluZ3Jlc3MtcG9pbnQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWFpbG1hbmFnZXJJbmdyZXNzUG9pbnRBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc01haWxtYW5hZ2VySW5ncmVzc1BvaW50QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBNYWlsbWFuYWdlckluZ3Jlc3NQb2ludEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYWlsbWFuYWdlci1pbmdyZXNzLXBvaW50IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGluZ3Jlc3NQb2ludElkOiBtYXRjaC5ncm91cHMhLmluZ3Jlc3NQb2ludElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLXJ1bGUtc2V0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG1haWxtYW5hZ2VyUnVsZVNldChwcm9wczogU2VzTWFpbG1hbmFnZXJSdWxlU2V0QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptYWlsbWFuYWdlci1ydWxlLXNldC8ke3Byb3BzLnJ1bGVTZXRJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgbWFpbG1hbmFnZXItcnVsZS1zZXQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1haWxtYW5hZ2VyUnVsZVNldEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBNYWlsbWFuYWdlclJ1bGVTZXRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbWFpbG1hbmFnZXItcnVsZS1zZXQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWFpbG1hbmFnZXJSdWxlU2V0QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZXNNYWlsbWFuYWdlclJ1bGVTZXRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE1haWxtYW5hZ2VyUnVsZVNldEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYWlsbWFuYWdlci1ydWxlLXNldCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRydWxlU2V0SWQ6IG1hdGNoLmdyb3VwcyEucnVsZVNldElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLXNtdHAtcmVsYXkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgbWFpbG1hbmFnZXJTbXRwUmVsYXkocHJvcHM6IFNlc01haWxtYW5hZ2VyU210cFJlbGF5QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTptYWlsbWFuYWdlci1zbXRwLXJlbGF5LyR7cHJvcHMucmVsYXlJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgbWFpbG1hbmFnZXItc210cC1yZWxheSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkTWFpbG1hbmFnZXJTbXRwUmVsYXlBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gTWFpbG1hbmFnZXJTbXRwUmVsYXlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbWFpbG1hbmFnZXItc210cC1yZWxheSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VNYWlsbWFuYWdlclNtdHBSZWxheUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VzTWFpbG1hbmFnZXJTbXRwUmVsYXlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE1haWxtYW5hZ2VyU210cFJlbGF5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1haWxtYW5hZ2VyLXNtdHAtcmVsYXkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVsYXlJZDogbWF0Y2guZ3JvdXBzIS5yZWxheUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG1haWxtYW5hZ2VyLXRyYWZmaWMtcG9saWN5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG1haWxtYW5hZ2VyVHJhZmZpY1BvbGljeShcblx0XHRwcm9wczogU2VzTWFpbG1hbmFnZXJUcmFmZmljUG9saWN5QXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Om1haWxtYW5hZ2VyLXRyYWZmaWMtcG9saWN5LyR7cHJvcHMudHJhZmZpY1BvbGljeUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBtYWlsbWFuYWdlci10cmFmZmljLXBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkTWFpbG1hbmFnZXJUcmFmZmljUG9saWN5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE1haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBtYWlsbWFuYWdlci10cmFmZmljLXBvbGljeSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VNYWlsbWFuYWdlclRyYWZmaWNQb2xpY3lBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc01haWxtYW5hZ2VyVHJhZmZpY1BvbGljeUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gTWFpbG1hbmFnZXJUcmFmZmljUG9saWN5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1haWxtYW5hZ2VyLXRyYWZmaWMtcG9saWN5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHRyYWZmaWNQb2xpY3lJZDogbWF0Y2guZ3JvdXBzIS50cmFmZmljUG9saWN5SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgbXVsdGktcmVnaW9uLWVuZHBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG11bHRpUmVnaW9uRW5kcG9pbnQocHJvcHM6IFNlc011bHRpUmVnaW9uRW5kcG9pbnRBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Om11bHRpLXJlZ2lvbi1lbmRwb2ludC8ke3Byb3BzLmVuZHBvaW50TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgbXVsdGktcmVnaW9uLWVuZHBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRNdWx0aVJlZ2lvbkVuZHBvaW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE11bHRpUmVnaW9uRW5kcG9pbnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbXVsdGktcmVnaW9uLWVuZHBvaW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU11bHRpUmVnaW9uRW5kcG9pbnRBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc011bHRpUmVnaW9uRW5kcG9pbnRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE11bHRpUmVnaW9uRW5kcG9pbnRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbXVsdGktcmVnaW9uLWVuZHBvaW50IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGVuZHBvaW50TmFtZTogbWF0Y2guZ3JvdXBzIS5lbmRwb2ludE5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcmVwdXRhdGlvbi1wb2xpY3kgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcmVwdXRhdGlvblBvbGljeShwcm9wczogU2VzUmVwdXRhdGlvblBvbGljeUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZXM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OmF3czpyZXB1dGF0aW9uLXBvbGljeS8ke3Byb3BzLnJlcHV0YXRpb25Qb2xpY3lOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSByZXB1dGF0aW9uLXBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUmVwdXRhdGlvblBvbGljeUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBSZXB1dGF0aW9uUG9saWN5QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHJlcHV0YXRpb24tcG9saWN5IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVJlcHV0YXRpb25Qb2xpY3lBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlc1JlcHV0YXRpb25Qb2xpY3lBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlcHV0YXRpb25Qb2xpY3lBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVwdXRhdGlvbi1wb2xpY3kgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVwdXRhdGlvblBvbGljeU5hbWU6IG1hdGNoLmdyb3VwcyEucmVwdXRhdGlvblBvbGljeU5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgdGVtcGxhdGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgdGVtcGxhdGUocHJvcHM6IFNlc1RlbXBsYXRlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp0ZW1wbGF0ZS8ke3Byb3BzLnRlbXBsYXRlTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgdGVtcGxhdGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFRlbXBsYXRlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHRlbXBsYXRlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogU2VzVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFRlbXBsYXRlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbXBsYXRlIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHRlbXBsYXRlTmFtZTogbWF0Y2guZ3JvdXBzIS50ZW1wbGF0ZU5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgdGVuYW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHRlbmFudChwcm9wczogU2VzVGVuYW50QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp0ZW5hbnQvJHtwcm9wcy50ZW5hbnROYW1lfS8ke3Byb3BzLnRlbmFudElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSB0ZW5hbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFRlbmFudEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBUZW5hbnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgdGVuYW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVRlbmFudEFybihhcm46IHN0cmluZyk6IFNlc1RlbmFudEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gVGVuYW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbmFudCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0ZW5hbnROYW1lOiBtYXRjaC5ncm91cHMhLnRlbmFudE5hbWUsXG5cdFx0XHR0ZW5hbnRJZDogbWF0Y2guZ3JvdXBzIS50ZW5hbnRJZCxcblx0XHR9O1xuXHR9XG59XG5cbi8qKlxuICogQVBJIG9wZXJhdGlvbiB0byByZXF1aXJlZCBJQU0gYWN0aW9ucyBtYXBwaW5nIGZvciBzZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXNPcGVyYXRpb25zIHtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQXNzb2NpYXRlRW1haWxJZGVudGl0eUNlcnRpZmljYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQXNzb2NpYXRlRW1haWxJZGVudGl0eUNlcnRpZmljYXRlOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldE1ldHJpY0RhdGEgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldE1ldHJpY0RhdGE6IHN0cmluZ1tdID0gW1wic2VzOkJhdGNoR2V0TWV0cmljRGF0YVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ2FuY2VsRXhwb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ2FuY2VsRXhwb3J0Sm9iOiBzdHJpbmdbXSA9IFtcInNlczpDYW5jZWxFeHBvcnRKb2JcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENsb25lUmVjZWlwdFJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDbG9uZVJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcInNlczpDbG9uZVJlY2VpcHRSdWxlU2V0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBZGRvbkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkb25JbnN0YW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQWRkb25JbnN0YW5jZVwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFkZG9uU3Vic2NyaXB0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkb25TdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZUFkZG9uU3Vic2NyaXB0aW9uXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQWRkcmVzc0xpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQWRkcmVzc0xpc3RcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBZGRyZXNzTGlzdEltcG9ydEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFkZHJlc3NMaXN0SW1wb3J0Sm9iOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVBZGRyZXNzTGlzdEltcG9ydEpvYlwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBcmNoaXZlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXJjaGl2ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQXJjaGl2ZVwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUNvbmZpZ3VyYXRpb25TZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVDb25maWd1cmF0aW9uU2V0XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25cIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb250YWN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29udGFjdDogc3RyaW5nW10gPSBbXCJzZXM6Q3JlYXRlQ29udGFjdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQ29udGFjdExpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb250YWN0TGlzdDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQ29udGFjdExpc3RcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURlZGljYXRlZElwUG9vbCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURlZGljYXRlZElwUG9vbDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlRGVkaWNhdGVkSXBQb29sXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRcIixcblx0XHRcInNlczpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVFbWFpbElkZW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRW1haWxJZGVudGl0eTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6Q3JlYXRlRW1haWxJZGVudGl0eVwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUVtYWlsSWRlbnRpdHlQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbElkZW50aXR5UG9saWN5OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVFbWFpbElkZW50aXR5UG9saWN5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUVtYWlsVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbFRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVFbWFpbFRlbXBsYXRlXCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRXhwb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXhwb3J0Sm9iOiBzdHJpbmdbXSA9IFtcInNlczpDcmVhdGVFeHBvcnRKb2JcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUltcG9ydEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUltcG9ydEpvYjogc3RyaW5nW10gPSBbXCJzZXM6Q3JlYXRlSW1wb3J0Sm9iXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVJbmdyZXNzUG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbmdyZXNzUG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZUluZ3Jlc3NQb2ludFwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVNdWx0aVJlZ2lvbkVuZHBvaW50XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVjZWlwdEZpbHRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY2VpcHRGaWx0ZXI6IHN0cmluZ1tdID0gW1wic2VzOkNyZWF0ZVJlY2VpcHRGaWx0ZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVJlY2VpcHRSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdFJ1bGU6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZVJlY2VpcHRSdWxlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVjZWlwdFJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNlaXB0UnVsZVNldDogc3RyaW5nW10gPSBbXCJzZXM6Q3JlYXRlUmVjZWlwdFJ1bGVTZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVJlbGF5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVsYXk6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZVJlbGF5XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUnVsZVNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJ1bGVTZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZVJ1bGVTZXRcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVtcGxhdGU6IHN0cmluZ1tdID0gW1wic2VzOkNyZWF0ZVRlbXBsYXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVUZW5hbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkNyZWF0ZVRlbmFudFwiLFxuXHRcdFwic2VzOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRyYWZmaWNQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUcmFmZmljUG9saWN5OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpDcmVhdGVUcmFmZmljUG9saWN5XCIsXG5cdFx0XCJzZXM6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQWRkb25JbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFkZG9uSW5zdGFuY2U6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUFkZG9uSW5zdGFuY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFkZG9uU3Vic2NyaXB0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWRkb25TdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZUFkZG9uU3Vic2NyaXB0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFkZHJlc3NMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWRkcmVzc0xpc3Q6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUFkZHJlc3NMaXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBcmNoaXZlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXJjaGl2ZTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlQXJjaGl2ZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ29uZmlndXJhdGlvblNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ29udGFjdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbnRhY3Q6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUNvbnRhY3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUNvbnRhY3RMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29udGFjdExpc3Q6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUNvbnRhY3RMaXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEZWRpY2F0ZWRJcFBvb2wgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEZWRpY2F0ZWRJcFBvb2w6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZURlZGljYXRlZElwUG9vbFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVFbWFpbElkZW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxJZGVudGl0eTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlRW1haWxJZGVudGl0eVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRW1haWxJZGVudGl0eVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUVtYWlsSWRlbnRpdHlQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlbGV0ZUVtYWlsSWRlbnRpdHlQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRW1haWxUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUVtYWlsVGVtcGxhdGU6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUVtYWlsVGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUlkZW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHk6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZUlkZW50aXR5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVJZGVudGl0eVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUlkZW50aXR5UG9saWN5OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVJZGVudGl0eVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlSW5ncmVzc1BvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW5ncmVzc1BvaW50OiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVJbmdyZXNzUG9pbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZU11bHRpUmVnaW9uRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVNdWx0aVJlZ2lvbkVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZWxldGVNdWx0aVJlZ2lvbkVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlY2VpcHRGaWx0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0RmlsdGVyOiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVSZWNlaXB0RmlsdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSZWNlaXB0UnVsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlY2VpcHRSdWxlOiBzdHJpbmdbXSA9IFtcInNlczpEZWxldGVSZWNlaXB0UnVsZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUmVjZWlwdFJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0UnVsZVNldDogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlUmVjZWlwdFJ1bGVTZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlbGF5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVsYXk6IHN0cmluZ1tdID0gW1wic2VzOkRlbGV0ZVJlbGF5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUnVsZVNldDogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlUnVsZVNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlU3VwcHJlc3NlZERlc3RpbmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU3VwcHJlc3NlZERlc3RpbmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlVGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVRlbmFudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlbmFudDogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlVGVuYW50XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVUZW5hbnRSZXNvdXJjZUFzc29jaWF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVUcmFmZmljUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVHJhZmZpY1BvbGljeTogc3RyaW5nW10gPSBbXCJzZXM6RGVsZXRlVHJhZmZpY1BvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVWZXJpZmllZEVtYWlsQWRkcmVzczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6RGVsZXRlVmVyaWZpZWRFbWFpbEFkZHJlc3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVyZWdpc3Rlck1lbWJlckZyb21BZGRyZXNzTGlzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlcmVnaXN0ZXJNZW1iZXJGcm9tQWRkcmVzc0xpc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlcmVnaXN0ZXJNZW1iZXJGcm9tQWRkcmVzc0xpc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkRlc2NyaWJlQWN0aXZlUmVjZWlwdFJ1bGVTZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVDb25maWd1cmF0aW9uU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVDb25maWd1cmF0aW9uU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZXNjcmliZUNvbmZpZ3VyYXRpb25TZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVSZWNlaXB0UnVsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlUmVjZWlwdFJ1bGU6IHN0cmluZ1tdID0gW1wic2VzOkRlc2NyaWJlUmVjZWlwdFJ1bGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlUmVjZWlwdFJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpEZXNjcmliZVJlY2VpcHRSdWxlU2V0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERpc2Fzc29jaWF0ZUVtYWlsSWRlbnRpdHlDZXJ0aWZpY2F0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERpc2Fzc29jaWF0ZUVtYWlsSWRlbnRpdHlDZXJ0aWZpY2F0ZTogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QWNjb3VudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QWNjb3VudDogc3RyaW5nW10gPSBbXCJzZXM6R2V0QWNjb3VudFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QWNjb3VudFNlbmRpbmdFbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBY2NvdW50U2VuZGluZ0VuYWJsZWQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFjY291bnRTZW5kaW5nRW5hYmxlZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBZGRvbkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZGRvbkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcInNlczpHZXRBZGRvbkluc3RhbmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBZGRvblN1YnNjcmlwdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QWRkb25TdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFkZG9uU3Vic2NyaXB0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFkZHJlc3NMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXCJzZXM6R2V0QWRkcmVzc0xpc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFkZHJlc3NMaXN0SW1wb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZGRyZXNzTGlzdEltcG9ydEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0QWRkcmVzc0xpc3RJbXBvcnRKb2JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXJjaGl2ZTogc3RyaW5nW10gPSBbXCJzZXM6R2V0QXJjaGl2ZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZUV4cG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXJjaGl2ZUV4cG9ydDogc3RyaW5nW10gPSBbXCJzZXM6R2V0QXJjaGl2ZUV4cG9ydFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZU1lc3NhZ2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFyY2hpdmVNZXNzYWdlOiBzdHJpbmdbXSA9IFtcInNlczpHZXRBcmNoaXZlTWVzc2FnZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJjaGl2ZU1lc3NhZ2VDb250ZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBcmNoaXZlTWVzc2FnZUNvbnRlbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFyY2hpdmVNZXNzYWdlQ29udGVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcmNoaXZlU2VhcmNoIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBcmNoaXZlU2VhcmNoOiBzdHJpbmdbXSA9IFtcInNlczpHZXRBcmNoaXZlU2VhcmNoXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcmNoaXZlU2VhcmNoUmVzdWx0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXJjaGl2ZVNlYXJjaFJlc3VsdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEFyY2hpdmVTZWFyY2hSZXN1bHRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEJsYWNrbGlzdFJlcG9ydHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEJsYWNrbGlzdFJlcG9ydHM6IHN0cmluZ1tdID0gW1wic2VzOkdldEJsYWNrbGlzdFJlcG9ydHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvbmZpZ3VyYXRpb25TZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbmZpZ3VyYXRpb25TZXQ6IHN0cmluZ1tdID0gW1wic2VzOkdldENvbmZpZ3VyYXRpb25TZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXRDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29udGFjdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0Q29udGFjdDogc3RyaW5nW10gPSBbXCJzZXM6R2V0Q29udGFjdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29udGFjdExpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbnRhY3RMaXN0OiBzdHJpbmdbXSA9IFtcInNlczpHZXRDb250YWN0TGlzdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWRpY2F0ZWRJcCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RGVkaWNhdGVkSXA6IHN0cmluZ1tdID0gW1wic2VzOkdldERlZGljYXRlZElwXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWRpY2F0ZWRJcFBvb2wgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERlZGljYXRlZElwUG9vbDogc3RyaW5nW10gPSBbXCJzZXM6R2V0RGVkaWNhdGVkSXBQb29sXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWRpY2F0ZWRJcHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERlZGljYXRlZElwczogc3RyaW5nW10gPSBbXCJzZXM6R2V0RGVkaWNhdGVkSXBzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXREZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEVtYWlsQWRkcmVzc0luc2lnaHRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFbWFpbEFkZHJlc3NJbnNpZ2h0czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0RW1haWxBZGRyZXNzSW5zaWdodHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RW1haWxJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RW1haWxJZGVudGl0eTogc3RyaW5nW10gPSBbXCJzZXM6R2V0RW1haWxJZGVudGl0eVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RW1haWxJZGVudGl0eVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFbWFpbElkZW50aXR5UG9saWNpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldEVtYWlsSWRlbnRpdHlQb2xpY2llc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRFbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFbWFpbFRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcInNlczpHZXRFbWFpbFRlbXBsYXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRFeHBvcnRKb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEV4cG9ydEpvYjogc3RyaW5nW10gPSBbXCJzZXM6R2V0RXhwb3J0Sm9iXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpHZXRJZGVudGl0eURraW1BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eU1haWxGcm9tRG9tYWluQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eU5vdGlmaWNhdGlvbkF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldElkZW50aXR5Tm90aWZpY2F0aW9uQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJZGVudGl0eVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJZGVudGl0eVBvbGljaWVzOiBzdHJpbmdbXSA9IFtcInNlczpHZXRJZGVudGl0eVBvbGljaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJZGVudGl0eVZlcmlmaWNhdGlvbkF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0SWRlbnRpdHlWZXJpZmljYXRpb25BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEltcG9ydEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SW1wb3J0Sm9iOiBzdHJpbmdbXSA9IFtcInNlczpHZXRJbXBvcnRKb2JcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEluZ3Jlc3NQb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SW5ncmVzc1BvaW50OiBzdHJpbmdbXSA9IFtcInNlczpHZXRJbmdyZXNzUG9pbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldE1lbWJlck9mQWRkcmVzc0xpc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldE1lbWJlck9mQWRkcmVzc0xpc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkdldE1lbWJlck9mQWRkcmVzc0xpc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0TWVzc2FnZUluc2lnaHRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRNZXNzYWdlSW5zaWdodHM6IHN0cmluZ1tdID0gW1wic2VzOkdldE1lc3NhZ2VJbnNpZ2h0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0TXVsdGlSZWdpb25FbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0TXVsdGlSZWdpb25FbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0TXVsdGlSZWdpb25FbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSZWxheSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UmVsYXk6IHN0cmluZ1tdID0gW1wic2VzOkdldFJlbGF5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSZXB1dGF0aW9uRW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXB1dGF0aW9uRW50aXR5OiBzdHJpbmdbXSA9IFtcInNlczpHZXRSZXB1dGF0aW9uRW50aXR5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcInNlczpHZXRSdWxlU2V0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTZW5kUXVvdGEgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFNlbmRRdW90YTogc3RyaW5nW10gPSBbXCJzZXM6R2V0U2VuZFF1b3RhXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTZW5kU3RhdGlzdGljcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0U2VuZFN0YXRpc3RpY3M6IHN0cmluZ1tdID0gW1wic2VzOkdldFNlbmRTdGF0aXN0aWNzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTdXBwcmVzc2VkRGVzdGluYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFN1cHByZXNzZWREZXN0aW5hdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6R2V0U3VwcHJlc3NlZERlc3RpbmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6R2V0VGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRlbmFudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0VGVuYW50OiBzdHJpbmdbXSA9IFtcInNlczpHZXRUZW5hbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRyYWZmaWNQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFRyYWZmaWNQb2xpY3k6IHN0cmluZ1tdID0gW1wic2VzOkdldFRyYWZmaWNQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBZGRvbkluc3RhbmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZGRvbkluc3RhbmNlczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEFkZG9uSW5zdGFuY2VzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWRkb25TdWJzY3JpcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZG9uU3Vic2NyaXB0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdEFkZG9uU3Vic2NyaXB0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWRkcmVzc0xpc3RJbXBvcnRKb2JzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9iczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdEFkZHJlc3NMaXN0SW1wb3J0Sm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWRkcmVzc0xpc3RzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFkZHJlc3NMaXN0czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEFkZHJlc3NMaXN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFyY2hpdmVFeHBvcnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFyY2hpdmVFeHBvcnRzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0QXJjaGl2ZUV4cG9ydHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcmNoaXZlU2VhcmNoZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJjaGl2ZVNlYXJjaGVzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0QXJjaGl2ZVNlYXJjaGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXJjaGl2ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJjaGl2ZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RBcmNoaXZlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvbmZpZ3VyYXRpb25TZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25TZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpMaXN0Q29uZmlndXJhdGlvblNldHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvbnRhY3RMaXN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb250YWN0TGlzdHM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RDb250YWN0TGlzdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDb250YWN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb250YWN0czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdENvbnRhY3RzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkxpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RGVkaWNhdGVkSXBQb29scyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZWRpY2F0ZWRJcFBvb2xzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0RGVkaWNhdGVkSXBQb29sc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpMaXN0RG9tYWluRGVsaXZlcmFiaWxpdHlDYW1wYWlnbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEVtYWlsSWRlbnRpdGllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFbWFpbElkZW50aXRpZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RFbWFpbElkZW50aXRpZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RFbWFpbElkZW50aXR5Q2VydGlmaWNhdGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEVtYWlsSWRlbnRpdHlDZXJ0aWZpY2F0ZXM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RFbWFpbFRlbXBsYXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFbWFpbFRlbXBsYXRlczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEVtYWlsVGVtcGxhdGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RXhwb3J0Sm9icyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFeHBvcnRKb2JzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0RXhwb3J0Sm9ic1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdElkZW50aXRpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SWRlbnRpdGllczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdElkZW50aXRpZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RJZGVudGl0eVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdElkZW50aXR5UG9saWNpZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RJZGVudGl0eVBvbGljaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0SW1wb3J0Sm9icyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbXBvcnRKb2JzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0SW1wb3J0Sm9ic1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEluZ3Jlc3NQb2ludHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW5ncmVzc1BvaW50czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdEluZ3Jlc3NQb2ludHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNZW1iZXJzT2ZBZGRyZXNzTGlzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1iZXJzT2ZBZGRyZXNzTGlzdDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdE1lbWJlcnNPZkFkZHJlc3NMaXN0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNdWx0aVJlZ2lvbkVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNdWx0aVJlZ2lvbkVuZHBvaW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdE11bHRpUmVnaW9uRW5kcG9pbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWNlaXB0RmlsdGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNlaXB0RmlsdGVyczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFJlY2VpcHRGaWx0ZXJzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVjZWlwdFJ1bGVTZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY2VpcHRSdWxlU2V0czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFJlY2VpcHRSdWxlU2V0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RSZWNvbW1lbmRhdGlvbnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWxheXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVsYXlzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0UmVsYXlzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVwdXRhdGlvbkVudGl0aWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlcHV0YXRpb25FbnRpdGllczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdFJlcHV0YXRpb25FbnRpdGllc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVzb3VyY2VUZW5hbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc291cmNlVGVuYW50czogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFJlc291cmNlVGVuYW50c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJ1bGVTZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJ1bGVTZXRzOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0UnVsZVNldHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN1cHByZXNzZWREZXN0aW5hdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkxpc3RTdXBwcmVzc2VkRGVzdGluYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUYWdzRm9yUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlOiBzdHJpbmdbXSA9IFtcInNlczpMaXN0VGFnc0ZvclJlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVtcGxhdGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbXBsYXRlczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFRlbXBsYXRlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlbmFudFJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW5hbnRSZXNvdXJjZXM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RUZW5hbnRSZXNvdXJjZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZW5hbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbmFudHM6IHN0cmluZ1tdID0gW1wic2VzOkxpc3RUZW5hbnRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VHJhZmZpY1BvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRyYWZmaWNQb2xpY2llczogc3RyaW5nW10gPSBbXCJzZXM6TGlzdFRyYWZmaWNQb2xpY2llc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VmVyaWZpZWRFbWFpbEFkZHJlc3Nlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6TGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0QWNjb3VudERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0QWNjb3VudERldGFpbHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50RGV0YWlsczogc3RyaW5nW10gPSBbXCJzZXM6UHV0QWNjb3VudERldGFpbHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRQcmljaW5nQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0QWNjb3VudFByaWNpbmdBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRBY2NvdW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dEFjY291bnRWZG1BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFZkbUF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEFjY291bnRWZG1BdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRBcmNoaXZpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFJlcHV0YXRpb25PcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0Q29uZmlndXJhdGlvblNldFNlbmRpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0U3VwcHJlc3Npb25PcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0U3VwcHJlc3Npb25PcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRWZG1PcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dENvbmZpZ3VyYXRpb25TZXRWZG1PcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dERlZGljYXRlZElwSW5Qb29sIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RGVkaWNhdGVkSXBJblBvb2w6IHN0cmluZ1tdID0gW1wic2VzOlB1dERlZGljYXRlZElwSW5Qb29sXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREZWRpY2F0ZWRJcFBvb2xTY2FsaW5nQXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXREZWRpY2F0ZWRJcFBvb2xTY2FsaW5nQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXREZWxpdmVyYWJpbGl0eURhc2hib2FyZE9wdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5Q29uZmlndXJhdGlvblNldEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlDb25maWd1cmF0aW9uU2V0QXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlB1dEVtYWlsSWRlbnRpdHlEa2ltQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eURraW1TaWduaW5nQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eURraW1TaWduaW5nQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5RmVlZGJhY2tBdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRFbWFpbElkZW50aXR5TWFpbEZyb21BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6UHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRJZGVudGl0eVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dElkZW50aXR5UG9saWN5OiBzdHJpbmdbXSA9IFtcInNlczpQdXRJZGVudGl0eVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0U3VwcHJlc3NlZERlc3RpbmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0U3VwcHJlc3NlZERlc3RpbmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRTdXBwcmVzc2VkRGVzdGluYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpQdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVnaXN0ZXJNZW1iZXJUb0FkZHJlc3NMaXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVnaXN0ZXJNZW1iZXJUb0FkZHJlc3NMaXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpSZWdpc3Rlck1lbWJlclRvQWRkcmVzc0xpc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVvcmRlclJlY2VpcHRSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVvcmRlclJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpSZW9yZGVyUmVjZWlwdFJ1bGVTZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VuZEJvdW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRCb3VuY2U6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNlbmRCdWxrRW1haWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kQnVsa0VtYWlsOiBzdHJpbmdbXSA9IFtcInNlczpTZW5kQnVsa0VtYWlsXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZW5kQnVsa1RlbXBsYXRlZEVtYWlsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJ1bGtUZW1wbGF0ZWRFbWFpbDogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VuZEVtYWlsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEVtYWlsOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZW5kUmF3RW1haWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTZW5kUmF3RW1haWw6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNlbmRUZW1wbGF0ZWRFbWFpbCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRUZW1wbGF0ZWRFbWFpbDogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2V0QWN0aXZlUmVjZWlwdFJ1bGVTZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcFNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRBY3RpdmVSZWNlaXB0UnVsZVNldFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZXRJZGVudGl0eURraW1FbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BTZXRJZGVudGl0eURraW1FbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRJZGVudGl0eURraW1FbmFibGVkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNldElkZW50aXR5RmVlZGJhY2tGb3J3YXJkaW5nRW5hYmxlZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wU2V0SWRlbnRpdHlGZWVkYmFja0ZvcndhcmRpbmdFbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRJZGVudGl0eUZlZWRiYWNrRm9yd2FyZGluZ0VuYWJsZWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZXRJZGVudGl0eU1haWxGcm9tRG9tYWluIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BTZXRJZGVudGl0eU1haWxGcm9tRG9tYWluOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpTZXRJZGVudGl0eU1haWxGcm9tRG9tYWluXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcFNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U2V0UmVjZWlwdFJ1bGVQb3NpdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEFkZHJlc3NMaXN0SW1wb3J0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBZGRyZXNzTGlzdEltcG9ydEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U3RhcnRBZGRyZXNzTGlzdEltcG9ydEpvYlwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEFyY2hpdmVFeHBvcnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFyY2hpdmVFeHBvcnQ6IHN0cmluZ1tdID0gW1wic2VzOlN0YXJ0QXJjaGl2ZUV4cG9ydFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRBcmNoaXZlU2VhcmNoIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBcmNoaXZlU2VhcmNoOiBzdHJpbmdbXSA9IFtcInNlczpTdGFydEFyY2hpdmVTZWFyY2hcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBZGRyZXNzTGlzdEltcG9ydEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6U3RvcEFkZHJlc3NMaXN0SW1wb3J0Sm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BBcmNoaXZlRXhwb3J0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEFyY2hpdmVFeHBvcnQ6IHN0cmluZ1tdID0gW1wic2VzOlN0b3BBcmNoaXZlRXhwb3J0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wQXJjaGl2ZVNlYXJjaCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBcmNoaXZlU2VhcmNoOiBzdHJpbmdbXSA9IFtcInNlczpTdG9wQXJjaGl2ZVNlYXJjaFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVGFnUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJzZXM6VGFnUmVzb3VyY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGVzdFJlbmRlckVtYWlsVGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlRlc3RSZW5kZXJFbWFpbFRlbXBsYXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFRlc3RSZW5kZXJUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRlc3RSZW5kZXJUZW1wbGF0ZTogc3RyaW5nW10gPSBbXCJzZXM6VGVzdFJlbmRlclRlbXBsYXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVbnRhZ1Jlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJzZXM6VW50YWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWNjb3VudFNlbmRpbmdFbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVBY2NvdW50U2VuZGluZ0VuYWJsZWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXJjaGl2ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFyY2hpdmU6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZUFyY2hpdmVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0OiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VzOlVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk1ldHJpY3NFbmFibGVkOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk1ldHJpY3NFbmFibGVkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRTZW5kaW5nRW5hYmxlZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRTZW5kaW5nRW5hYmxlZDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6VXBkYXRlQ29uZmlndXJhdGlvblNldFNlbmRpbmdFbmFibGVkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRUcmFja2luZ09wdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbnRhY3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb250YWN0OiBzdHJpbmdbXSA9IFtcInNlczpVcGRhdGVDb250YWN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVDb250YWN0TGlzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbnRhY3RMaXN0OiBzdHJpbmdbXSA9IFtcInNlczpVcGRhdGVDb250YWN0TGlzdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlRW1haWxJZGVudGl0eVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOlVwZGF0ZUVtYWlsSWRlbnRpdHlQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlRW1haWxUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUVtYWlsVGVtcGxhdGU6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZUVtYWlsVGVtcGxhdGVcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUluZ3Jlc3NQb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUluZ3Jlc3NQb2ludDogc3RyaW5nW10gPSBbXCJzZXM6VXBkYXRlSW5ncmVzc1BvaW50XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZWNlaXB0UnVsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlY2VpcHRSdWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VzOlVwZGF0ZVJlY2VpcHRSdWxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJlbGF5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVsYXk6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZVJlbGF5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6VXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6VXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSdWxlU2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUnVsZVNldDogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInNlczpVcGRhdGVSdWxlU2V0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGVtcGxhdGU6IHN0cmluZ1tdID0gW1wic2VzOlVwZGF0ZVRlbXBsYXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVUcmFmZmljUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVHJhZmZpY1BvbGljeTogc3RyaW5nW10gPSBbXCJzZXM6VXBkYXRlVHJhZmZpY1BvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVmVyaWZ5RG9tYWluRGtpbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeURvbWFpbkRraW06IHN0cmluZ1tdID0gW1wic2VzOlZlcmlmeURvbWFpbkRraW1cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFZlcmlmeURvbWFpbklkZW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RG9tYWluSWRlbnRpdHk6IHN0cmluZ1tdID0gW1wic2VzOlZlcmlmeURvbWFpbklkZW50aXR5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBWZXJpZnlFbWFpbEFkZHJlc3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlFbWFpbEFkZHJlc3M6IHN0cmluZ1tdID0gW1wic2VzOlZlcmlmeUVtYWlsQWRkcmVzc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVmVyaWZ5RW1haWxJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeUVtYWlsSWRlbnRpdHk6IHN0cmluZ1tdID0gW1wic2VzOlZlcmlmeUVtYWlsSWRlbnRpdHlcIl07XG59XG5cbi8qKlxuICogQ29uZGl0aW9uIGtleSBjb25zdGFudHMgYW5kIGJ1aWxkZXJzIGZvciBzZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXNDb25kaXRpb25zIHtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEJhdGNoR2V0TWV0cmljRGF0YSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldE1ldHJpY0RhdGFDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDYW5jZWxFeHBvcnRKb2IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ2FuY2VsRXhwb3J0Sm9iQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkV4cG9ydFNvdXJjZVR5cGVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENsb25lUmVjZWlwdFJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ2xvbmVSZWNlaXB0UnVsZVNldENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFkZG9uSW5zdGFuY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkb25JbnN0YW5jZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFkZG9uU3Vic2NyaXB0aW9uQXJuXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVBZGRvblN1YnNjcmlwdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZGRvblN1YnNjcmlwdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQWRkcmVzc0xpc3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWRkcmVzc0xpc3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFyY2hpdmUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXJjaGl2ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ29uZmlndXJhdGlvblNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ29udGFjdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb250YWN0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ29udGFjdExpc3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29udGFjdExpc3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsIFwiYXdzOlRhZ0tleXNcIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURlZGljYXRlZElwUG9vbCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEZWRpY2F0ZWRJcFBvb2xDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGVsaXZlcmFiaWxpdHlUZXN0UmVwb3J0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRW1haWxJZGVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbElkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRW1haWxJZGVudGl0eVBvbGljeSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbElkZW50aXR5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRW1haWxUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFbWFpbFRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRXhwb3J0Sm9iIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUV4cG9ydEpvYkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpFeHBvcnRTb3VyY2VUeXBlXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVJbXBvcnRKb2IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW1wb3J0Sm9iQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUluZ3Jlc3NQb2ludCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbmdyZXNzUG9pbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInNlczpNYWlsTWFuYWdlclJ1bGVTZXRBcm5cIixcblx0XHRcInNlczpNYWlsTWFuYWdlclRyYWZmaWNQb2xpY3lBcm5cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZU11bHRpUmVnaW9uRW5kcG9pbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlTXVsdGlSZWdpb25FbmRwb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVJlY2VpcHRGaWx0ZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjZWlwdEZpbHRlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVJlY2VpcHRSdWxlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY2VpcHRSdWxlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVJlY2VpcHRSdWxlU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY2VpcHRSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUmVsYXkgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVsYXlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUnVsZVNldENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlVGVuYW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlbmFudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVRyYWZmaWNQb2xpY3kgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVHJhZmZpY1BvbGljeUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlQ29uZmlndXJhdGlvblNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlQ29udGFjdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb250YWN0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlQ29udGFjdExpc3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29udGFjdExpc3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlRGVkaWNhdGVkSXBQb29sIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURlZGljYXRlZElwUG9vbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUVtYWlsSWRlbnRpdHkgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxJZGVudGl0eUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUVtYWlsSWRlbnRpdHlQb2xpY3kgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxJZGVudGl0eVBvbGljeUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUlkZW50aXR5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUlkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUlkZW50aXR5UG9saWN5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUlkZW50aXR5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlTXVsdGlSZWdpb25FbmRwb2ludCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVNdWx0aVJlZ2lvbkVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlUmVjZWlwdEZpbHRlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNlaXB0RmlsdGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlUmVjZWlwdFJ1bGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjZWlwdFJ1bGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlUmVjZWlwdFJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjZWlwdFJ1bGVTZXRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVTdXBwcmVzc2VkRGVzdGluYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU3VwcHJlc3NlZERlc3RpbmF0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlVGVuYW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlbmFudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZVRlbmFudFJlc291cmNlQXNzb2NpYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50UmVzb3VyY2VBc3NvY2lhdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVZlcmlmaWVkRW1haWxBZGRyZXNzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVBY3RpdmVSZWNlaXB0UnVsZVNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFjdGl2ZVJlY2VpcHRSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVDb25maWd1cmF0aW9uU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQ29uZmlndXJhdGlvblNldENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlUmVjZWlwdFJ1bGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNlaXB0UnVsZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlUmVjZWlwdFJ1bGVTZXQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNlaXB0UnVsZVNldENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEFjY291bnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWNjb3VudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRBY2NvdW50U2VuZGluZ0VuYWJsZWQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWNjb3VudFNlbmRpbmdFbmFibGVkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0QmxhY2tsaXN0UmVwb3J0cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRCbGFja2xpc3RSZXBvcnRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0Q29uZmlndXJhdGlvblNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb25maWd1cmF0aW9uU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0Q29uZmlndXJhdGlvblNldEV2ZW50RGVzdGluYXRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRDb250YWN0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbnRhY3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRDb250YWN0TGlzdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb250YWN0TGlzdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXREZWRpY2F0ZWRJcCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZWRpY2F0ZWRJcENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldERlZGljYXRlZElwUG9vbCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZWRpY2F0ZWRJcFBvb2xDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXREZWRpY2F0ZWRJcHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVkaWNhdGVkSXBzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0RGVsaXZlcmFiaWxpdHlEYXNoYm9hcmRPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldERlbGl2ZXJhYmlsaXR5VGVzdFJlcG9ydCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXREb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWduIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXREb21haW5TdGF0aXN0aWNzUmVwb3J0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERvbWFpblN0YXRpc3RpY3NSZXBvcnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRFbWFpbEFkZHJlc3NJbnNpZ2h0cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFbWFpbEFkZHJlc3NJbnNpZ2h0c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEVtYWlsSWRlbnRpdHkgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RW1haWxJZGVudGl0eUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEVtYWlsSWRlbnRpdHlQb2xpY2llcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFbWFpbElkZW50aXR5UG9saWNpZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRFbWFpbFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRFeHBvcnRKb2IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RXhwb3J0Sm9iQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkV4cG9ydFNvdXJjZVR5cGVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldElkZW50aXR5RGtpbUF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlEa2ltQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldElkZW50aXR5TWFpbEZyb21Eb21haW5BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0SWRlbnRpdHlOb3RpZmljYXRpb25BdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldElkZW50aXR5Tm90aWZpY2F0aW9uQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldElkZW50aXR5UG9saWNpZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SWRlbnRpdHlQb2xpY2llc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldElkZW50aXR5VmVyaWZpY2F0aW9uQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJZGVudGl0eVZlcmlmaWNhdGlvbkF0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRJbXBvcnRKb2IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SW1wb3J0Sm9iQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0TWVzc2FnZUluc2lnaHRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldE1lc3NhZ2VJbnNpZ2h0c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldE11bHRpUmVnaW9uRW5kcG9pbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0TXVsdGlSZWdpb25FbmRwb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFJlcHV0YXRpb25FbnRpdHkgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UmVwdXRhdGlvbkVudGl0eUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFNlbmRRdW90YSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTZW5kUXVvdGFDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRTZW5kU3RhdGlzdGljcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTZW5kU3RhdGlzdGljc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFN1cHByZXNzZWREZXN0aW5hdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTdXBwcmVzc2VkRGVzdGluYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRUZW5hbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0VGVuYW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdENvbmZpZ3VyYXRpb25TZXRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb25maWd1cmF0aW9uU2V0c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RDb250YWN0TGlzdHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbnRhY3RMaXN0c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0Q29udGFjdHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbnRhY3RzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q3VzdG9tVmVyaWZpY2F0aW9uRW1haWxUZW1wbGF0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0RGVkaWNhdGVkSXBQb29scyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGVkaWNhdGVkSXBQb29sc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3REZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZWxpdmVyYWJpbGl0eVRlc3RSZXBvcnRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdERvbWFpbkRlbGl2ZXJhYmlsaXR5Q2FtcGFpZ25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REb21haW5EZWxpdmVyYWJpbGl0eUNhbXBhaWduc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RFbWFpbElkZW50aXRpZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEVtYWlsSWRlbnRpdGllc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RFbWFpbFRlbXBsYXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RW1haWxUZW1wbGF0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0RXhwb3J0Sm9icyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RXhwb3J0Sm9ic0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpFeHBvcnRTb3VyY2VUeXBlXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0SWRlbnRpdGllcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SWRlbnRpdGllc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0SWRlbnRpdHlQb2xpY2llcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SWRlbnRpdHlQb2xpY2llc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RJbXBvcnRKb2JzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbXBvcnRKb2JzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RNdWx0aVJlZ2lvbkVuZHBvaW50cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TXVsdGlSZWdpb25FbmRwb2ludHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0UmVjZWlwdEZpbHRlcnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY2VpcHRGaWx0ZXJzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFJlY2VpcHRSdWxlU2V0cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVjZWlwdFJ1bGVTZXRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFJlY29tbWVuZGF0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVjb21tZW5kYXRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFJlcHV0YXRpb25FbnRpdGllcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVwdXRhdGlvbkVudGl0aWVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFJlc291cmNlVGVuYW50cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVzb3VyY2VUZW5hbnRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFN1cHByZXNzZWREZXN0aW5hdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN1cHByZXNzZWREZXN0aW5hdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0VGFnc0ZvclJlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0VGVtcGxhdGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZW1wbGF0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFRlbmFudFJlc291cmNlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVuYW50UmVzb3VyY2VzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFRlbmFudHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlbmFudHNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFZlcmlmaWVkRW1haWxBZGRyZXNzZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRBY2NvdW50RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnREZWRpY2F0ZWRJcFdhcm11cEF0dHJpYnV0ZXNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRBY2NvdW50RGV0YWlscyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRBY2NvdW50RGV0YWlsc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRBY2NvdW50UHJpY2luZ0F0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFByaWNpbmdBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0QWNjb3VudFNlbmRpbmdBdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRTZW5kaW5nQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEFjY291bnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0QWNjb3VudFN1cHByZXNzaW9uQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEFjY291bnRWZG1BdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEFjY291bnRWZG1BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldEFyY2hpdmluZ09wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk9wdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFJlcHV0YXRpb25PcHRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dENvbmZpZ3VyYXRpb25TZXRTZW5kaW5nT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0U2VuZGluZ09wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRDb25maWd1cmF0aW9uU2V0U3VwcHJlc3Npb25PcHRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dENvbmZpZ3VyYXRpb25TZXRTdXBwcmVzc2lvbk9wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0Q29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0Q29uZmlndXJhdGlvblNldFZkbU9wdGlvbnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXREZWRpY2F0ZWRJcEluUG9vbCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZWRpY2F0ZWRJcEluUG9vbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwUG9vbFNjYWxpbmdBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RGVkaWNhdGVkSXBXYXJtdXBBdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlZGljYXRlZElwV2FybXVwQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlbGl2ZXJhYmlsaXR5RGFzaGJvYXJkT3B0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RW1haWxJZGVudGl0eUNvbmZpZ3VyYXRpb25TZXRBdHRyaWJ1dGVzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dEVtYWlsSWRlbnRpdHlDb25maWd1cmF0aW9uU2V0QXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRFbWFpbElkZW50aXR5RGtpbUF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eURraW1BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUHV0RW1haWxJZGVudGl0eURraW1TaWduaW5nQXR0cmlidXRlcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdBdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEVtYWlsSWRlbnRpdHlGZWVkYmFja0F0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eUZlZWRiYWNrQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dEVtYWlsSWRlbnRpdHlNYWlsRnJvbUF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0RW1haWxJZGVudGl0eU1haWxGcm9tQXR0cmlidXRlc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dElkZW50aXR5UG9saWN5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dElkZW50aXR5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1dFN1cHByZXNzZWREZXN0aW5hdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRTdXBwcmVzc2VkRGVzdGluYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRUZW5hbnRTdXBwcmVzc2lvbkF0dHJpYnV0ZXMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0VGVuYW50U3VwcHJlc3Npb25BdHRyaWJ1dGVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVvcmRlclJlY2VpcHRSdWxlU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlb3JkZXJSZWNlaXB0UnVsZVNldENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlcGxpY2F0ZUVtYWlsSWRlbnRpdHlEa2ltU2lnbmluZ0tleSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBSZXBsaWNhdGVFbWFpbElkZW50aXR5RGtpbVNpZ25pbmdLZXlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOlJlcGxpY2FSZWdpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZW5kQm91bmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRCb3VuY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdFx0XCJzZXM6RnJvbUFkZHJlc3NcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNlbmRCdWxrRW1haWwgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEJ1bGtFbWFpbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpNdWx0aVJlZ2lvbkVuZHBvaW50SWRcIixcblx0XHRcInNlczpUZW5hbnROYW1lXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZW5kQnVsa1RlbXBsYXRlZEVtYWlsIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRCdWxrVGVtcGxhdGVkRW1haWxDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdFx0XCJzZXM6RmVlZGJhY2tBZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbUFkZHJlc3NcIixcblx0XHRcInNlczpGcm9tRGlzcGxheU5hbWVcIixcblx0XHRcInNlczpSZWNpcGllbnRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZW5kQ3VzdG9tVmVyaWZpY2F0aW9uRW1haWwgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZEN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkZlZWRiYWNrQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21BZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbURpc3BsYXlOYW1lXCIsXG5cdFx0XCJzZXM6UmVjaXBpZW50c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2VuZEVtYWlsIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRFbWFpbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpGZWVkYmFja0FkZHJlc3NcIixcblx0XHRcInNlczpGcm9tQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21EaXNwbGF5TmFtZVwiLFxuXHRcdFwic2VzOk11bHRpUmVnaW9uRW5kcG9pbnRJZFwiLFxuXHRcdFwic2VzOlJlY2lwaWVudHNcIixcblx0XHRcInNlczpUZW5hbnROYW1lXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTZW5kUmF3RW1haWwgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VuZFJhd0VtYWlsQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRcdFwic2VzOkZlZWRiYWNrQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21BZGRyZXNzXCIsXG5cdFx0XCJzZXM6RnJvbURpc3BsYXlOYW1lXCIsXG5cdFx0XCJzZXM6UmVjaXBpZW50c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2VuZFRlbXBsYXRlZEVtYWlsIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlbmRUZW1wbGF0ZWRFbWFpbENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XHRcInNlczpGZWVkYmFja0FkZHJlc3NcIixcblx0XHRcInNlczpGcm9tQWRkcmVzc1wiLFxuXHRcdFwic2VzOkZyb21EaXNwbGF5TmFtZVwiLFxuXHRcdFwic2VzOlJlY2lwaWVudHNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldEFjdGl2ZVJlY2VpcHRSdWxlU2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0SWRlbnRpdHlEa2ltRW5hYmxlZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25TZXRJZGVudGl0eURraW1FbmFibGVkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU2V0SWRlbnRpdHlGZWVkYmFja0ZvcndhcmRpbmdFbmFibGVkIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldElkZW50aXR5RmVlZGJhY2tGb3J3YXJkaW5nRW5hYmxlZENvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNldElkZW50aXR5SGVhZGVyc0luTm90aWZpY2F0aW9uc0VuYWJsZWQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlIZWFkZXJzSW5Ob3RpZmljYXRpb25zRW5hYmxlZENvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNldElkZW50aXR5TWFpbEZyb21Eb21haW4gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlNYWlsRnJvbURvbWFpbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNldElkZW50aXR5Tm90aWZpY2F0aW9uVG9waWMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0SWRlbnRpdHlOb3RpZmljYXRpb25Ub3BpY0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFNldFJlY2VpcHRSdWxlUG9zaXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0UmVjZWlwdFJ1bGVQb3NpdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFRhZ1Jlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVGVzdFJlbmRlckVtYWlsVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGVzdFJlbmRlckVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBUZXN0UmVuZGVyVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGVzdFJlbmRlclRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVW50YWdSZXNvdXJjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUFjY291bnRTZW5kaW5nRW5hYmxlZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBY2NvdW50U2VuZGluZ0VuYWJsZWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsIFwic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDb25maWd1cmF0aW9uU2V0UmVwdXRhdGlvbk1ldHJpY3NFbmFibGVkIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25TZXRSZXB1dGF0aW9uTWV0cmljc0VuYWJsZWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDb25maWd1cmF0aW9uU2V0U2VuZGluZ0VuYWJsZWQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvblNldFNlbmRpbmdFbmFibGVkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlQ29uZmlndXJhdGlvblNldFRyYWNraW5nT3B0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uU2V0VHJhY2tpbmdPcHRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlQ29udGFjdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb250YWN0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlQ29udGFjdExpc3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29udGFjdExpc3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVDdXN0b21WZXJpZmljYXRpb25FbWFpbFRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUN1c3RvbVZlcmlmaWNhdGlvbkVtYWlsVGVtcGxhdGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9XG5cdFx0W1wiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLCBcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlRW1haWxJZGVudGl0eVBvbGljeSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVFbWFpbElkZW50aXR5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlRW1haWxUZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVFbWFpbFRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJzZXM6QXBpVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlSW5ncmVzc1BvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUluZ3Jlc3NQb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOk1haWxNYW5hZ2VyUnVsZVNldEFyblwiLFxuXHRcdFwic2VzOk1haWxNYW5hZ2VyVHJhZmZpY1BvbGljeUFyblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlUmVjZWlwdFJ1bGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVjZWlwdFJ1bGVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcInNlczpBcGlWZXJzaW9uXCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlUmVwdXRhdGlvbkVudGl0eUN1c3RvbWVyTWFuYWdlZFN0YXR1cyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXB1dGF0aW9uRW50aXR5Q3VzdG9tZXJNYW5hZ2VkU3RhdHVzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIiwgXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZVJlcHV0YXRpb25FbnRpdHlQb2xpY3kgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVwdXRhdGlvbkVudGl0eVBvbGljeUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZVRlbXBsYXRlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJzZXM6QXBpVmVyc2lvblwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFZlcmlmeURvbWFpbkRraW0gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5RG9tYWluRGtpbUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wic2VzOkFwaVZlcnNpb25cIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBWZXJpZnlEb21haW5JZGVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlEb21haW5JZGVudGl0eUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VzOkFwaVZlcnNpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFZlcmlmeUVtYWlsQWRkcmVzcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlFbWFpbEFkZHJlc3NDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBWZXJpZnlFbWFpbElkZW50aXR5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFZlcmlmeUVtYWlsSWRlbnRpdHlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlczpBcGlWZXJzaW9uXCIsXG5cdF07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFUVVFU1RfVEFHID0gXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19SRVNPVVJDRV9UQUcgPSBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpUYWdLZXlzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1RBR19LRVlTID0gXCJhd3M6VGFnS2V5c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOkFkZG9uU3Vic2NyaXB0aW9uQXJuIChBUk4pICovXG5cdHN0YXRpYyByZWFkb25seSBBRERPTl9TVUJTQ1JJUFRJT05fQVJOID0gXCJzZXM6QWRkb25TdWJzY3JpcHRpb25Bcm5cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpBcGlWZXJzaW9uIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBUElfVkVSU0lPTiA9IFwic2VzOkFwaVZlcnNpb25cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpFeHBvcnRTb3VyY2VUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBFWFBPUlRfU09VUkNFX1RZUEUgPSBcInNlczpFeHBvcnRTb3VyY2VUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6RmVlZGJhY2tBZGRyZXNzIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBGRUVEQkFDS19BRERSRVNTID0gXCJzZXM6RmVlZGJhY2tBZGRyZXNzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6RnJvbUFkZHJlc3MgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEZST01fQUREUkVTUyA9IFwic2VzOkZyb21BZGRyZXNzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6RnJvbURpc3BsYXlOYW1lIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBGUk9NX0RJU1BMQVlfTkFNRSA9IFwic2VzOkZyb21EaXNwbGF5TmFtZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOk1haWxNYW5hZ2VySW5ncmVzc1BvaW50VHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTUFJTF9NQU5BR0VSX0lOR1JFU1NfUE9JTlRfVFlQRSA9XG5cdFx0XCJzZXM6TWFpbE1hbmFnZXJJbmdyZXNzUG9pbnRUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6TWFpbE1hbmFnZXJSdWxlU2V0QXJuIChBUk4pICovXG5cdHN0YXRpYyByZWFkb25seSBNQUlMX01BTkFHRVJfUlVMRV9TRVRfQVJOID0gXCJzZXM6TWFpbE1hbmFnZXJSdWxlU2V0QXJuXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBzZXM6TWFpbE1hbmFnZXJUcmFmZmljUG9saWN5QXJuIChBUk4pICovXG5cdHN0YXRpYyByZWFkb25seSBNQUlMX01BTkFHRVJfVFJBRkZJQ19QT0xJQ1lfQVJOID1cblx0XHRcInNlczpNYWlsTWFuYWdlclRyYWZmaWNQb2xpY3lBcm5cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpNdWx0aVJlZ2lvbkVuZHBvaW50SWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1VTFRJX1JFR0lPTl9FTkRQT0lOVF9JRCA9IFwic2VzOk11bHRpUmVnaW9uRW5kcG9pbnRJZFwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOlJlY2lwaWVudHMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSRUNJUElFTlRTID0gXCJzZXM6UmVjaXBpZW50c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogc2VzOlJlcGxpY2FSZWdpb24gKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSRVBMSUNBX1JFR0lPTiA9IFwic2VzOlJlcGxpY2FSZWdpb25cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHNlczpUZW5hbnROYW1lIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBURU5BTlRfTkFNRSA9IFwic2VzOlRlbmFudE5hbWVcIjtcblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyByZXF1ZXN0VGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyByZXNvdXJjZVRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpUYWdLZXlzYC5cblx0ICovXG5cdHN0YXRpYyB0YWdLZXlzKHZhbHVlczogc3RyaW5nW10pOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4geyBcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjogeyBcImF3czpUYWdLZXlzXCI6IHZhbHVlcyB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOkFkZG9uU3Vic2NyaXB0aW9uQXJuYC5cblx0ICovXG5cdHN0YXRpYyBhZGRvblN1YnNjcmlwdGlvbkFSTihcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgQXJuRXF1YWxzOiB7IFwic2VzOkFkZG9uU3Vic2NyaXB0aW9uQXJuXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6QXBpVmVyc2lvbmAuXG5cdCAqL1xuXHRzdGF0aWMgYXBpVmVyc2lvbih2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInNlczpBcGlWZXJzaW9uXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6RXhwb3J0U291cmNlVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgZXhwb3J0U291cmNlVHlwZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwic2VzOkV4cG9ydFNvdXJjZVR5cGVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpGZWVkYmFja0FkZHJlc3NgLlxuXHQgKi9cblx0c3RhdGljIGZlZWRiYWNrQWRkcmVzcyhcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwic2VzOkZlZWRiYWNrQWRkcmVzc1wiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOkZyb21BZGRyZXNzYC5cblx0ICovXG5cdHN0YXRpYyBmcm9tQWRkcmVzcyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInNlczpGcm9tQWRkcmVzc1wiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOkZyb21EaXNwbGF5TmFtZWAuXG5cdCAqL1xuXHRzdGF0aWMgZnJvbURpc3BsYXlOYW1lKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJzZXM6RnJvbURpc3BsYXlOYW1lXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6TWFpbE1hbmFnZXJJbmdyZXNzUG9pbnRUeXBlYC5cblx0ICovXG5cdHN0YXRpYyBtYWlsTWFuYWdlckluZ3Jlc3NQb2ludFR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInNlczpNYWlsTWFuYWdlckluZ3Jlc3NQb2ludFR5cGVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpNYWlsTWFuYWdlclJ1bGVTZXRBcm5gLlxuXHQgKi9cblx0c3RhdGljIG1haWxNYW5hZ2VyUnVsZVNldEFSTihcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgQXJuRXF1YWxzOiB7IFwic2VzOk1haWxNYW5hZ2VyUnVsZVNldEFyblwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOk1haWxNYW5hZ2VyVHJhZmZpY1BvbGljeUFybmAuXG5cdCAqL1xuXHRzdGF0aWMgbWFpbE1hbmFnZXJUcmFmZmljUG9saWN5QVJOKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBBcm5FcXVhbHM6IHsgXCJzZXM6TWFpbE1hbmFnZXJUcmFmZmljUG9saWN5QXJuXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6TXVsdGlSZWdpb25FbmRwb2ludElkYC5cblx0ICovXG5cdHN0YXRpYyBtdWx0aVJlZ2lvbkVuZHBvaW50SWQoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInNlczpNdWx0aVJlZ2lvbkVuZHBvaW50SWRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHNlczpSZWNpcGllbnRzYC5cblx0ICovXG5cdHN0YXRpYyByZWNpcGllbnRzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwic2VzOlJlY2lwaWVudHNcIjogdmFsdWVzIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBzZXM6UmVwbGljYVJlZ2lvbmAuXG5cdCAqL1xuXHRzdGF0aWMgcmVwbGljYVJlZ2lvbihcblx0XHR2YWx1ZXM6IHN0cmluZ1tdLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4geyBcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjogeyBcInNlczpSZXBsaWNhUmVnaW9uXCI6IHZhbHVlcyB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgc2VzOlRlbmFudE5hbWVgLlxuXHQgKi9cblx0c3RhdGljIHRlbmFudE5hbWUodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJzZXM6VGVuYW50TmFtZVwiOiB2YWx1ZSB9IH07XG5cdH1cbn1cbiJdfQ==