@cdk_utils/iam 1.25.0 → 1.27.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 (463) hide show
  1. package/.jsii +2 -2
  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 +10 -6
  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 +6 -5
  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 +6 -6
  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.js +4 -4
  108. package/lib/generated/services/cognito-sync.js +3 -3
  109. package/lib/generated/services/comprehend.js +4 -4
  110. package/lib/generated/services/comprehendmedical.js +3 -3
  111. package/lib/generated/services/compute-optimizer.js +3 -3
  112. package/lib/generated/services/config.js +4 -4
  113. package/lib/generated/services/connect-campaigns.js +4 -4
  114. package/lib/generated/services/connect.d.ts +2 -0
  115. package/lib/generated/services/connect.js +7 -5
  116. package/lib/generated/services/consoleapp.js +2 -2
  117. package/lib/generated/services/consolidatedbilling.js +1 -1
  118. package/lib/generated/services/controlcatalog.js +3 -3
  119. package/lib/generated/services/controltower.js +4 -4
  120. package/lib/generated/services/cost-optimization-hub.js +2 -2
  121. package/lib/generated/services/cur.js +4 -4
  122. package/lib/generated/services/customer-verification.js +1 -1
  123. package/lib/generated/services/databrew.js +4 -4
  124. package/lib/generated/services/dataexchange.js +4 -4
  125. package/lib/generated/services/datapipeline.js +4 -4
  126. package/lib/generated/services/datasync.js +4 -4
  127. package/lib/generated/services/datazone.js +4 -4
  128. package/lib/generated/services/dax.js +4 -4
  129. package/lib/generated/services/dbqms.js +1 -1
  130. package/lib/generated/services/deadline.js +4 -4
  131. package/lib/generated/services/detective.js +4 -4
  132. package/lib/generated/services/devicefarm.js +4 -4
  133. package/lib/generated/services/devops-guru.js +4 -4
  134. package/lib/generated/services/directconnect.js +9 -6
  135. package/lib/generated/services/discovery.js +3 -3
  136. package/lib/generated/services/dlm.js +4 -4
  137. package/lib/generated/services/dms.js +4 -4
  138. package/lib/generated/services/docdb-elastic.js +4 -4
  139. package/lib/generated/services/drs.js +4 -4
  140. package/lib/generated/services/ds-data.js +4 -4
  141. package/lib/generated/services/ds.js +4 -4
  142. package/lib/generated/services/dsql.js +4 -4
  143. package/lib/generated/services/dynamodb.js +4 -4
  144. package/lib/generated/services/ebs.js +4 -4
  145. package/lib/generated/services/ec2-instance-connect.js +4 -4
  146. package/lib/generated/services/ec2.js +4 -4
  147. package/lib/generated/services/ec2messages.js +2 -2
  148. package/lib/generated/services/ecr-public.js +4 -4
  149. package/lib/generated/services/ecr.js +4 -4
  150. package/lib/generated/services/ecs-mcp.js +1 -1
  151. package/lib/generated/services/ecs.js +4 -4
  152. package/lib/generated/services/eks-auth.js +4 -4
  153. package/lib/generated/services/eks-mcp.js +1 -1
  154. package/lib/generated/services/eks.js +4 -4
  155. package/lib/generated/services/elasticache.js +4 -4
  156. package/lib/generated/services/elasticbeanstalk.js +4 -4
  157. package/lib/generated/services/elasticfilesystem.js +4 -4
  158. package/lib/generated/services/elasticloadbalancing.js +4 -4
  159. package/lib/generated/services/elasticmapreduce.js +4 -4
  160. package/lib/generated/services/elastictranscoder.js +2 -2
  161. package/lib/generated/services/elemental-activations.js +1 -1
  162. package/lib/generated/services/elemental-appliances-software.js +2 -2
  163. package/lib/generated/services/elemental-inference.js +4 -4
  164. package/lib/generated/services/elemental-support-cases.js +3 -3
  165. package/lib/generated/services/elemental-support-content.js +1 -1
  166. package/lib/generated/services/emr-containers.js +4 -4
  167. package/lib/generated/services/emr-serverless.js +4 -4
  168. package/lib/generated/services/entityresolution.js +4 -4
  169. package/lib/generated/services/es.js +4 -4
  170. package/lib/generated/services/events.js +4 -4
  171. package/lib/generated/services/eventsbilltoaws.js +3 -3
  172. package/lib/generated/services/evidently.js +3 -3
  173. package/lib/generated/services/evs.js +4 -4
  174. package/lib/generated/services/execute-api.js +4 -4
  175. package/lib/generated/services/finops-agent.js +1 -1
  176. package/lib/generated/services/finspace-api.js +3 -3
  177. package/lib/generated/services/finspace.js +4 -4
  178. package/lib/generated/services/firehose.js +4 -4
  179. package/lib/generated/services/fis.js +4 -4
  180. package/lib/generated/services/fms.js +4 -4
  181. package/lib/generated/services/forecast.js +4 -4
  182. package/lib/generated/services/frauddetector.js +4 -4
  183. package/lib/generated/services/freertos.js +3 -3
  184. package/lib/generated/services/freetier.js +2 -2
  185. package/lib/generated/services/fsx.js +4 -4
  186. package/lib/generated/services/gamelift.js +4 -4
  187. package/lib/generated/services/gameliftstreams.js +4 -4
  188. package/lib/generated/services/geo-maps.js +3 -3
  189. package/lib/generated/services/geo-places.js +3 -3
  190. package/lib/generated/services/geo-routes.js +3 -3
  191. package/lib/generated/services/geo.js +4 -4
  192. package/lib/generated/services/glacier.js +4 -4
  193. package/lib/generated/services/globalaccelerator.js +4 -4
  194. package/lib/generated/services/glue.js +9 -6
  195. package/lib/generated/services/grafana.js +4 -4
  196. package/lib/generated/services/greengrass.js +4 -4
  197. package/lib/generated/services/groundstation.js +9 -6
  198. package/lib/generated/services/groundtruthlabeling.js +1 -1
  199. package/lib/generated/services/guardduty.js +4 -4
  200. package/lib/generated/services/health-agent.js +4 -4
  201. package/lib/generated/services/health.js +4 -4
  202. package/lib/generated/services/healthlake.js +4 -4
  203. package/lib/generated/services/honeycode.js +2 -2
  204. package/lib/generated/services/iam.js +4 -4
  205. package/lib/generated/services/identity-sync.js +2 -2
  206. package/lib/generated/services/identitystore-auth.js +1 -1
  207. package/lib/generated/services/identitystore.js +4 -4
  208. package/lib/generated/services/imagebuilder.js +4 -4
  209. package/lib/generated/services/importexport.js +2 -2
  210. package/lib/generated/services/inspector-scan.js +2 -2
  211. package/lib/generated/services/inspector.js +2 -2
  212. package/lib/generated/services/inspector2-telemetry.js +1 -1
  213. package/lib/generated/services/inspector2.js +4 -4
  214. package/lib/generated/services/interconnect.js +4 -4
  215. package/lib/generated/services/internetmonitor.js +4 -4
  216. package/lib/generated/services/invoicing.js +11 -38
  217. package/lib/generated/services/iot-device-tester.js +1 -1
  218. package/lib/generated/services/iot.js +4 -4
  219. package/lib/generated/services/iotanalytics.js +3 -3
  220. package/lib/generated/services/iotdeviceadvisor.js +4 -4
  221. package/lib/generated/services/iotevents.js +3 -3
  222. package/lib/generated/services/iotfleethub.js +3 -3
  223. package/lib/generated/services/iotfleetwise.js +4 -4
  224. package/lib/generated/services/iotjobsdata.js +4 -4
  225. package/lib/generated/services/iotmanagedintegrations.js +4 -4
  226. package/lib/generated/services/iotsitewise.js +4 -4
  227. package/lib/generated/services/iottwinmaker.js +4 -4
  228. package/lib/generated/services/iotwireless.js +4 -4
  229. package/lib/generated/services/iq-permission.js +2 -2
  230. package/lib/generated/services/iq.js +2 -2
  231. package/lib/generated/services/ivs.js +4 -4
  232. package/lib/generated/services/ivschat.js +4 -4
  233. package/lib/generated/services/kafka-cluster.js +3 -3
  234. package/lib/generated/services/kafka.js +4 -4
  235. package/lib/generated/services/kafkaconnect.js +4 -4
  236. package/lib/generated/services/kendra-ranking.js +4 -4
  237. package/lib/generated/services/kendra.js +4 -4
  238. package/lib/generated/services/kinesis.js +4 -4
  239. package/lib/generated/services/kinesisanalytics.js +4 -4
  240. package/lib/generated/services/kinesisvideo.js +4 -4
  241. package/lib/generated/services/kms.js +4 -4
  242. package/lib/generated/services/lakeformation.js +3 -3
  243. package/lib/generated/services/lambda.js +4 -4
  244. package/lib/generated/services/launchwizard.js +4 -4
  245. package/lib/generated/services/lex.js +4 -4
  246. package/lib/generated/services/license-manager-linux-subscriptions.js +4 -4
  247. package/lib/generated/services/license-manager-user-subscriptions.js +4 -4
  248. package/lib/generated/services/license-manager.js +4 -4
  249. package/lib/generated/services/lightsail.js +4 -4
  250. package/lib/generated/services/logs.js +4 -4
  251. package/lib/generated/services/lookoutequipment.js +4 -4
  252. package/lib/generated/services/lookoutmetrics.js +3 -3
  253. package/lib/generated/services/lookoutvision.js +3 -3
  254. package/lib/generated/services/m2.js +4 -4
  255. package/lib/generated/services/machinelearning.js +3 -3
  256. package/lib/generated/services/macie2.js +4 -4
  257. package/lib/generated/services/managedblockchain-query.js +2 -2
  258. package/lib/generated/services/managedblockchain.js +4 -4
  259. package/lib/generated/services/mapcredits.js +2 -2
  260. package/lib/generated/services/marketplacecommerceanalytics.js +2 -2
  261. package/lib/generated/services/mechanicalturk.js +2 -2
  262. package/lib/generated/services/mediaconnect.js +4 -4
  263. package/lib/generated/services/mediaconvert.js +4 -4
  264. package/lib/generated/services/mediaimport.js +1 -1
  265. package/lib/generated/services/medialive.js +4 -4
  266. package/lib/generated/services/mediapackage-vod.js +4 -4
  267. package/lib/generated/services/mediapackage.js +4 -4
  268. package/lib/generated/services/mediapackagev2.js +4 -4
  269. package/lib/generated/services/mediastore.js +4 -4
  270. package/lib/generated/services/mediatailor.js +4 -4
  271. package/lib/generated/services/medical-imaging.js +4 -4
  272. package/lib/generated/services/memorydb.js +4 -4
  273. package/lib/generated/services/mgh.js +4 -4
  274. package/lib/generated/services/mgn.js +4 -4
  275. package/lib/generated/services/migrationhub-orchestrator.js +4 -4
  276. package/lib/generated/services/migrationhub-strategy.js +2 -2
  277. package/lib/generated/services/mobileanalytics.js +1 -1
  278. package/lib/generated/services/mobiletargeting.js +4 -4
  279. package/lib/generated/services/monitron.js +3 -3
  280. package/lib/generated/services/mpa.js +4 -4
  281. package/lib/generated/services/mq.js +4 -4
  282. package/lib/generated/services/neptune-db.js +4 -4
  283. package/lib/generated/services/neptune-graph.js +4 -4
  284. package/lib/generated/services/network-firewall.js +4 -4
  285. package/lib/generated/services/network-security-director.js +1 -1
  286. package/lib/generated/services/networkflowmonitor.js +4 -4
  287. package/lib/generated/services/networkmanager-chat.js +1 -1
  288. package/lib/generated/services/networkmanager.js +4 -4
  289. package/lib/generated/services/networkmonitor.js +4 -4
  290. package/lib/generated/services/nimble.js +3 -3
  291. package/lib/generated/services/notifications-contacts.js +4 -4
  292. package/lib/generated/services/notifications.d.ts +2 -0
  293. package/lib/generated/services/notifications.js +7 -5
  294. package/lib/generated/services/nova-act.js +3 -3
  295. package/lib/generated/services/oam.js +4 -4
  296. package/lib/generated/services/observabilityadmin.js +4 -4
  297. package/lib/generated/services/odb.js +4 -4
  298. package/lib/generated/services/omics.js +4 -4
  299. package/lib/generated/services/one.js +3 -3
  300. package/lib/generated/services/opensearch.js +3 -3
  301. package/lib/generated/services/opsworks-cm.js +2 -2
  302. package/lib/generated/services/opsworks.js +2 -2
  303. package/lib/generated/services/organizations.js +4 -4
  304. package/lib/generated/services/osis.js +4 -4
  305. package/lib/generated/services/outposts.js +4 -4
  306. package/lib/generated/services/panorama.js +3 -3
  307. package/lib/generated/services/partnercentral-account-management.js +2 -2
  308. package/lib/generated/services/partnercentral.js +5 -6
  309. package/lib/generated/services/payment-cryptography.js +4 -4
  310. package/lib/generated/services/payments.js +3 -3
  311. package/lib/generated/services/pca-connector-ad.js +4 -4
  312. package/lib/generated/services/pca-connector-scep.js +4 -4
  313. package/lib/generated/services/pcs.js +4 -4
  314. package/lib/generated/services/personalize.js +4 -4
  315. package/lib/generated/services/pi.js +4 -4
  316. package/lib/generated/services/pipes.js +4 -4
  317. package/lib/generated/services/polly.js +3 -3
  318. package/lib/generated/services/pricing.js +2 -2
  319. package/lib/generated/services/pricingplanmanager.js +3 -3
  320. package/lib/generated/services/private-networks.js +3 -3
  321. package/lib/generated/services/profile.js +4 -4
  322. package/lib/generated/services/proton.js +4 -4
  323. package/lib/generated/services/purchase-orders.js +3 -3
  324. package/lib/generated/services/q.js +3 -3
  325. package/lib/generated/services/qapps.js +4 -4
  326. package/lib/generated/services/qbusiness.js +4 -4
  327. package/lib/generated/services/qdeveloper.js +3 -3
  328. package/lib/generated/services/qldb.js +3 -3
  329. package/lib/generated/services/quicksight.js +4 -4
  330. package/lib/generated/services/ram.js +4 -4
  331. package/lib/generated/services/rbin.js +4 -4
  332. package/lib/generated/services/rds-data.js +4 -4
  333. package/lib/generated/services/rds-db.js +2 -2
  334. package/lib/generated/services/rds.js +4 -4
  335. package/lib/generated/services/redshift-data.js +4 -4
  336. package/lib/generated/services/redshift-serverless.js +4 -4
  337. package/lib/generated/services/redshift.js +4 -4
  338. package/lib/generated/services/refactor-spaces.js +4 -4
  339. package/lib/generated/services/rekognition.js +4 -4
  340. package/lib/generated/services/repostspace.js +4 -4
  341. package/lib/generated/services/researchstudio.js +1 -1
  342. package/lib/generated/services/resiliencehub.js +4 -4
  343. package/lib/generated/services/resource-explorer-2.js +4 -4
  344. package/lib/generated/services/resource-explorer.js +1 -1
  345. package/lib/generated/services/resource-groups.js +4 -4
  346. package/lib/generated/services/rhelkb.js +1 -1
  347. package/lib/generated/services/robomaker.js +3 -3
  348. package/lib/generated/services/rolesanywhere.js +4 -4
  349. package/lib/generated/services/route53-recovery-cluster.js +4 -4
  350. package/lib/generated/services/route53-recovery-control-config.js +4 -4
  351. package/lib/generated/services/route53-recovery-readiness.js +4 -4
  352. package/lib/generated/services/route53.js +4 -4
  353. package/lib/generated/services/route53domains.js +2 -2
  354. package/lib/generated/services/route53globalresolver.js +4 -4
  355. package/lib/generated/services/route53profiles.js +4 -4
  356. package/lib/generated/services/route53resolver.js +4 -4
  357. package/lib/generated/services/rtbfabric.js +4 -4
  358. package/lib/generated/services/rum.js +4 -4
  359. package/lib/generated/services/s3-object-lambda.js +3 -3
  360. package/lib/generated/services/s3-outposts.js +4 -4
  361. package/lib/generated/services/s3.js +4 -4
  362. package/lib/generated/services/s3express.js +3 -3
  363. package/lib/generated/services/s3files.js +4 -4
  364. package/lib/generated/services/s3tables.js +4 -4
  365. package/lib/generated/services/s3vectors.js +4 -4
  366. package/lib/generated/services/sagemaker-data-science-assistant.js +1 -1
  367. package/lib/generated/services/sagemaker-geospatial.js +4 -4
  368. package/lib/generated/services/sagemaker-mlflow.js +3 -3
  369. package/lib/generated/services/sagemaker-unified-studio-mcp.js +1 -1
  370. package/lib/generated/services/sagemaker.js +6 -6
  371. package/lib/generated/services/savingsplans.js +4 -4
  372. package/lib/generated/services/scheduler.js +4 -4
  373. package/lib/generated/services/schemas.js +4 -4
  374. package/lib/generated/services/scn.js +4 -4
  375. package/lib/generated/services/sdb.js +3 -3
  376. package/lib/generated/services/secretsmanager.js +4 -4
  377. package/lib/generated/services/security-ir.js +4 -4
  378. package/lib/generated/services/securityagent.d.ts +8 -0
  379. package/lib/generated/services/securityagent.js +17 -5
  380. package/lib/generated/services/securityhub.js +4 -4
  381. package/lib/generated/services/securitylake.js +4 -4
  382. package/lib/generated/services/serverlessrepo.js +4 -4
  383. package/lib/generated/services/servicecatalog.js +4 -4
  384. package/lib/generated/services/servicediscovery.js +4 -4
  385. package/lib/generated/services/serviceextract.js +1 -1
  386. package/lib/generated/services/servicequotas.js +4 -4
  387. package/lib/generated/services/ses.js +4 -4
  388. package/lib/generated/services/shield.js +4 -4
  389. package/lib/generated/services/signer.js +4 -4
  390. package/lib/generated/services/signin.js +4 -4
  391. package/lib/generated/services/simspaceweaver.js +3 -3
  392. package/lib/generated/services/sms-voice.d.ts +2 -0
  393. package/lib/generated/services/sms-voice.js +11 -6
  394. package/lib/generated/services/sms.js +1 -1
  395. package/lib/generated/services/snow-device-management.js +4 -4
  396. package/lib/generated/services/snowball.js +2 -2
  397. package/lib/generated/services/sns.js +4 -4
  398. package/lib/generated/services/social-messaging.d.ts +6 -0
  399. package/lib/generated/services/social-messaging.js +11 -5
  400. package/lib/generated/services/sqlworkbench.js +3 -3
  401. package/lib/generated/services/sqs.js +4 -4
  402. package/lib/generated/services/ssm-contacts.js +4 -4
  403. package/lib/generated/services/ssm-guiconnect.js +2 -2
  404. package/lib/generated/services/ssm-incidents.js +4 -4
  405. package/lib/generated/services/ssm-quicksetup.js +4 -4
  406. package/lib/generated/services/ssm-sap.js +4 -4
  407. package/lib/generated/services/ssm.js +4 -4
  408. package/lib/generated/services/ssmmessages.js +2 -2
  409. package/lib/generated/services/sso-directory.js +1 -1
  410. package/lib/generated/services/sso-oauth.js +3 -3
  411. package/lib/generated/services/sso.js +4 -4
  412. package/lib/generated/services/states.js +4 -4
  413. package/lib/generated/services/storagegateway.js +4 -4
  414. package/lib/generated/services/sts.js +4 -4
  415. package/lib/generated/services/support-console.js +1 -1
  416. package/lib/generated/services/support.js +2 -2
  417. package/lib/generated/services/supportapp.js +2 -2
  418. package/lib/generated/services/supportauthz.js +4 -4
  419. package/lib/generated/services/supportplans.js +1 -1
  420. package/lib/generated/services/sustainability.js +2 -2
  421. package/lib/generated/services/swf.js +4 -4
  422. package/lib/generated/services/synthetics.js +4 -4
  423. package/lib/generated/services/tag.js +2 -2
  424. package/lib/generated/services/tax.js +2 -2
  425. package/lib/generated/services/textract.js +4 -4
  426. package/lib/generated/services/thinclient.js +4 -4
  427. package/lib/generated/services/timestream-influxdb.js +4 -4
  428. package/lib/generated/services/timestream.js +4 -4
  429. package/lib/generated/services/tiros.js +1 -1
  430. package/lib/generated/services/tnb.js +4 -4
  431. package/lib/generated/services/transcribe.d.ts +2 -0
  432. package/lib/generated/services/transcribe.js +7 -5
  433. package/lib/generated/services/transfer.js +4 -4
  434. package/lib/generated/services/transform-custom.js +3 -3
  435. package/lib/generated/services/transform.js +3 -3
  436. package/lib/generated/services/translate.js +4 -4
  437. package/lib/generated/services/trustedadvisor.js +3 -3
  438. package/lib/generated/services/ts.js +3 -3
  439. package/lib/generated/services/user-subscriptions.js +2 -2
  440. package/lib/generated/services/uxc.js +2 -2
  441. package/lib/generated/services/vendor-insights.js +3 -3
  442. package/lib/generated/services/verified-access.js +1 -1
  443. package/lib/generated/services/verifiedpermissions.js +4 -4
  444. package/lib/generated/services/voiceid.js +4 -4
  445. package/lib/generated/services/vpc-lattice-svcs.js +3 -3
  446. package/lib/generated/services/vpc-lattice.js +4 -4
  447. package/lib/generated/services/vpce.js +2 -2
  448. package/lib/generated/services/waf-regional.js +4 -4
  449. package/lib/generated/services/waf.js +4 -4
  450. package/lib/generated/services/wafv2.js +4 -4
  451. package/lib/generated/services/wam.js +1 -1
  452. package/lib/generated/services/wellarchitected.js +4 -4
  453. package/lib/generated/services/wickr.js +4 -4
  454. package/lib/generated/services/wisdom.js +4 -4
  455. package/lib/generated/services/workdocs.js +3 -3
  456. package/lib/generated/services/worklink.js +3 -3
  457. package/lib/generated/services/workmail.js +4 -4
  458. package/lib/generated/services/workmailmessageflow.js +3 -3
  459. package/lib/generated/services/workspaces-instances.js +4 -4
  460. package/lib/generated/services/workspaces-web.js +4 -4
  461. package/lib/generated/services/workspaces.js +4 -4
  462. package/lib/generated/services/xray.js +4 -4
  463. package/package.json +1 -1
@@ -16,7 +16,7 @@ class SecurityagentActions {
16
16
  }
17
17
  exports.SecurityagentActions = SecurityagentActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- SecurityagentActions[_a] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentActions", version: "1.25.0" };
19
+ SecurityagentActions[_a] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentActions", version: "1.27.0" };
20
20
  /** The IAM service prefix. */
21
21
  SecurityagentActions.SERVICE_PREFIX = "securityagent";
22
22
  /** [Write] securityagent:AddArtifact */
@@ -65,6 +65,8 @@ SecurityagentActions.BatchGetThreatModelJobs = "securityagent:BatchGetThreatMode
65
65
  SecurityagentActions.BatchGetThreatModels = "securityagent:BatchGetThreatModels";
66
66
  /** [Read] securityagent:BatchGetThreats */
67
67
  SecurityagentActions.BatchGetThreats = "securityagent:BatchGetThreats";
68
+ /** [Read] securityagent:BatchGetValidationRuns */
69
+ SecurityagentActions.BatchGetValidationRuns = "securityagent:BatchGetValidationRuns";
68
70
  /** [Write] securityagent:BatchUpdateSecurityRequirements */
69
71
  SecurityagentActions.BatchUpdateSecurityRequirements = "securityagent:BatchUpdateSecurityRequirements";
70
72
  /** [Write] securityagent:CreateAgentSpace */
@@ -157,6 +159,8 @@ SecurityagentActions.ListCodeReviews = "securityagent:ListCodeReviews";
157
159
  SecurityagentActions.ListDesignReviewComments = "securityagent:ListDesignReviewComments";
158
160
  /** [List] securityagent:ListDesignReviews */
159
161
  SecurityagentActions.ListDesignReviews = "securityagent:ListDesignReviews";
162
+ /** [List] securityagent:ListDiscoveredDomains */
163
+ SecurityagentActions.ListDiscoveredDomains = "securityagent:ListDiscoveredDomains";
160
164
  /** [List] securityagent:ListDiscoveredEndpoints */
161
165
  SecurityagentActions.ListDiscoveredEndpoints = "securityagent:ListDiscoveredEndpoints";
162
166
  /** [List] securityagent:ListFindings */
@@ -203,6 +207,8 @@ SecurityagentActions.StartCodeReviewJob = "securityagent:StartCodeReviewJob";
203
207
  SecurityagentActions.StartPentestJob = "securityagent:StartPentestJob";
204
208
  /** [Write] securityagent:StartThreatModelJob */
205
209
  SecurityagentActions.StartThreatModelJob = "securityagent:StartThreatModelJob";
210
+ /** [Write] securityagent:StartValidationRun */
211
+ SecurityagentActions.StartValidationRun = "securityagent:StartValidationRun";
206
212
  /** [Write] securityagent:StopCodeReviewJob */
207
213
  SecurityagentActions.StopCodeReviewJob = "securityagent:StopCodeReviewJob";
208
214
  /** [Write] securityagent:StopPentestJob */
@@ -221,6 +227,8 @@ SecurityagentActions.UpdateAgentSpace = "securityagent:UpdateAgentSpace";
221
227
  SecurityagentActions.UpdateApplication = "securityagent:UpdateApplication";
222
228
  /** [Write] securityagent:UpdateCodeReview */
223
229
  SecurityagentActions.UpdateCodeReview = "securityagent:UpdateCodeReview";
230
+ /** [Write] securityagent:UpdateDiscoveredDomains */
231
+ SecurityagentActions.UpdateDiscoveredDomains = "securityagent:UpdateDiscoveredDomains";
224
232
  /** [Write] securityagent:UpdateFinding */
225
233
  SecurityagentActions.UpdateFinding = "securityagent:UpdateFinding";
226
234
  /** [Write] securityagent:UpdateIntegratedResources */
@@ -259,6 +267,7 @@ SecurityagentActions.AllReadActions = [
259
267
  SecurityagentActions.BatchGetThreatModelJobs,
260
268
  SecurityagentActions.BatchGetThreatModels,
261
269
  SecurityagentActions.BatchGetThreats,
270
+ SecurityagentActions.BatchGetValidationRuns,
262
271
  SecurityagentActions.DescribePrivateConnection,
263
272
  SecurityagentActions.actionGetApplication,
264
273
  SecurityagentActions.actionGetArtifact,
@@ -313,6 +322,7 @@ SecurityagentActions.AllWriteActions = [
313
322
  SecurityagentActions.StartCodeReviewJob,
314
323
  SecurityagentActions.StartPentestJob,
315
324
  SecurityagentActions.StartThreatModelJob,
325
+ SecurityagentActions.StartValidationRun,
316
326
  SecurityagentActions.StopCodeReviewJob,
317
327
  SecurityagentActions.StopPentestJob,
318
328
  SecurityagentActions.StopThreatModelJob,
@@ -320,6 +330,7 @@ SecurityagentActions.AllWriteActions = [
320
330
  SecurityagentActions.UpdateAgentSpace,
321
331
  SecurityagentActions.UpdateApplication,
322
332
  SecurityagentActions.UpdateCodeReview,
333
+ SecurityagentActions.UpdateDiscoveredDomains,
323
334
  SecurityagentActions.UpdateFinding,
324
335
  SecurityagentActions.UpdateIntegratedResources,
325
336
  SecurityagentActions.UpdatePentest,
@@ -341,6 +352,7 @@ SecurityagentActions.AllListActions = [
341
352
  SecurityagentActions.ListCodeReviews,
342
353
  SecurityagentActions.ListDesignReviewComments,
343
354
  SecurityagentActions.ListDesignReviews,
355
+ SecurityagentActions.ListDiscoveredDomains,
344
356
  SecurityagentActions.ListDiscoveredEndpoints,
345
357
  SecurityagentActions.ListFindings,
346
358
  SecurityagentActions.ListIntegratedResources,
@@ -547,7 +559,7 @@ class SecurityagentResources {
547
559
  }
548
560
  exports.SecurityagentResources = SecurityagentResources;
549
561
  _b = JSII_RTTI_SYMBOL_1;
550
- SecurityagentResources[_b] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentResources", version: "1.25.0" };
562
+ SecurityagentResources[_b] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentResources", version: "1.27.0" };
551
563
  /**
552
564
  * API operation to required IAM actions mapping for securityagent.
553
565
  */
@@ -555,7 +567,7 @@ class SecurityagentOperations {
555
567
  }
556
568
  exports.SecurityagentOperations = SecurityagentOperations;
557
569
  _c = JSII_RTTI_SYMBOL_1;
558
- SecurityagentOperations[_c] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentOperations", version: "1.25.0" };
570
+ SecurityagentOperations[_c] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentOperations", version: "1.27.0" };
559
571
  /** IAM actions required for the AddArtifact API call. */
560
572
  SecurityagentOperations.AddArtifact = ["securityagent:AddArtifact"];
561
573
  /** IAM actions required for the BatchCreateSecurityRequirements API call. */
@@ -915,7 +927,7 @@ class SecurityagentConditions {
915
927
  }
916
928
  exports.SecurityagentConditions = SecurityagentConditions;
917
929
  _d = JSII_RTTI_SYMBOL_1;
918
- SecurityagentConditions[_d] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentConditions", version: "1.25.0" };
930
+ SecurityagentConditions[_d] = { fqn: "@cdk_utils/iam.securityagent.SecurityagentConditions", version: "1.27.0" };
919
931
  /** Condition keys applicable to the CreateAgentSpace action. */
920
932
  SecurityagentConditions.CreateAgentSpaceConditionKeys = [
921
933
  "aws:RequestTag/${TagKey}",
@@ -954,4 +966,4 @@ SecurityagentConditions.AWS_REQUEST_TAG = "aws:RequestTag/${TagKey}";
954
966
  SecurityagentConditions.AWS_RESOURCE_TAG = "aws:ResourceTag/${TagKey}";
955
967
  /** Condition key: aws:TagKeys (ArrayOfString) */
956
968
  SecurityagentConditions.AWS_TAG_KEYS = "aws:TagKeys";
957
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHlhZ2VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvc2VydmljZXMvc2VjdXJpdHlhZ2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdGQUFnRjtBQUNoRiw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzFELG9EQUFvRDtBQUNwRCxvREFBb0Q7QUFDcEQsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7O0FBQWpDLG9EQThZQzs7O0FBN1lBLDhCQUE4QjtBQUNkLG1DQUFjLEdBQUcsZUFBZSxDQUFDO0FBRWpELHdDQUF3QztBQUN4QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELDREQUE0RDtBQUM1QyxvREFBK0IsR0FDOUMsK0NBQStDLENBQUM7QUFDakQsbURBQW1EO0FBQ25DLDJDQUFzQixHQUNyQyxzQ0FBc0MsQ0FBQztBQUN4QyxnREFBZ0Q7QUFDaEMsd0NBQW1CLEdBQUcsbUNBQW1DLENBQUM7QUFDMUUsNERBQTREO0FBQzVDLG9EQUErQixHQUM5QywrQ0FBK0MsQ0FBQztBQUNqRCxvREFBb0Q7QUFDcEMsNENBQXVCLEdBQ3RDLHVDQUF1QyxDQUFDO0FBQ3pDLCtDQUErQztBQUMvQix1Q0FBa0IsR0FBRyxrQ0FBa0MsQ0FBQztBQUN4RSwrQ0FBK0M7QUFDL0Isd0NBQW1CLEdBQUcsbUNBQW1DLENBQUM7QUFDMUUsb0RBQW9EO0FBQ3BDLDZDQUF3QixHQUN2Qyx3Q0FBd0MsQ0FBQztBQUMxQyxzREFBc0Q7QUFDdEMsK0NBQTBCLEdBQ3pDLDBDQUEwQyxDQUFDO0FBQzVDLGtEQUFrRDtBQUNsQywyQ0FBc0IsR0FDckMsc0NBQXNDLENBQUM7QUFDeEMsK0NBQStDO0FBQy9CLHdDQUFtQixHQUFHLG1DQUFtQyxDQUFDO0FBQzFFLDRDQUE0QztBQUM1QixxQ0FBZ0IsR0FBRyxnQ0FBZ0MsQ0FBQztBQUNwRSw2REFBNkQ7QUFDN0Msc0RBQWlDLEdB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LGFBQWE7Q0FDYixDQUFDO0FBQ0YsaUVBQWlFO0FBQ2pELHNEQUE4QixHQUFhO0lBQzFELDBCQUEwQjtJQUMxQixhQUFhO0NBQ2IsQ0FBQztBQUNGLGlFQUFpRTtBQUNqRCxzREFBOEIsR0FBYTtJQUMxRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRix1RUFBdUU7QUFDdkQsNERBQW9DLEdBQWE7SUFDaEUsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0YsNkVBQTZFO0FBQzdELGtFQUEwQyxHQUFhO0lBQ3RFLDBCQUEwQjtJQUMxQixhQUFhO0NBQ2IsQ0FBQztBQUNGLDJEQUEyRDtBQUMzQyxnREFBd0IsR0FBYTtJQUNwRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRiw2REFBNkQ7QUFDN0Msa0RBQTBCLEdBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUV2RSx1REFBdUQ7QUFDdkMsdUNBQWUsR0FBRywwQkFBMEIsQ0FBQztBQUM3RCx3REFBd0Q7QUFDeEMsd0NBQWdCLEdBQUcsMkJBQTJCLENBQUM7QUFDL0QsaURBQWlEO0FBQ2pDLG9DQUFZLEdBQUcsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEFVVE8tR0VORVJBVEVEIEZJTEUg4oCUIERPIE5PVCBFRElUIE1BTlVBTExZXG4vLyBHZW5lcmF0ZWQgZnJvbSBBV1MgU2VydmljZSBBdXRob3JpemF0aW9uIFJlZmVyZW5jZSBkYXRhXG4vLyBTb3VyY2U6IGRhdGEvc2VydmljZS1yZWZlcmVuY2Uvc2VjdXJpdHlhZ2VudC5qc29uXG4vLyBSdW4gYG5weCBwcm9qZW4gZ2VuZXJhdGUtY29uc3RhbnRzYCB0byByZWdlbmVyYXRlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIElBTSBhY3Rpb24gY29uc3RhbnRzIGZvciB0aGUgc2VjdXJpdHlhZ2VudCBzZXJ2aWNlLlxuICovXG5leHBvcnQgY2xhc3MgU2VjdXJpdHlhZ2VudEFjdGlvbnMge1xuXHQvKiogVGhlIElBTSBzZXJ2aWNlIHByZWZpeC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNFUlZJQ0VfUFJFRklYID0gXCJzZWN1cml0eWFnZW50XCI7XG5cblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpBZGRBcnRpZmFjdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWRkQXJ0aWZhY3QgPSBcInNlY3VyaXR5YWdlbnQ6QWRkQXJ0aWZhY3RcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpCYXRjaENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50c1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlQ29kZVJldmlld3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlQ29kZVJldmlld3MgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZUNvZGVSZXZpZXdzXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVQZW50ZXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVQZW50ZXN0cyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVBlbnRlc3RzXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50cyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudHNcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVRocmVhdE1vZGVscyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVUaHJlYXRNb2RlbHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVRocmVhdE1vZGVsc1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlVGhyZWF0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVUaHJlYXRzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlVGhyZWF0c1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRBZ2VudFNwYWNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRBZ2VudFNwYWNlcyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldEFnZW50U3BhY2VzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldEFydGlmYWN0TWV0YWRhdGEgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0QXJ0aWZhY3RNZXRhZGF0YSA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0QXJ0aWZhY3RNZXRhZGF0YVwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3Sm9iVGFza3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3Sm9iVGFza3NcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0Q29kZVJldmlld0pvYnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0Q29kZVJldmlld0pvYnMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldENvZGVSZXZpZXdKb2JzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldENvZGVSZXZpZXdzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldENvZGVSZXZpZXdzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0Q29kZVJldmlld3NcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0RmluZGluZ3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0RmluZGluZ3MgPSBcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRGaW5kaW5nc1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRQZW50ZXN0Sm9iQ29udGVudE1ldGFkYXRhICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFBlbnRlc3RKb2JDb250ZW50TWV0YWRhdGEgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RKb2JDb250ZW50TWV0YWRhdGFcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdEpvYlRhc2tzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFBlbnRlc3RKb2JUYXNrcyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdEpvYlRhc2tzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RKb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFBlbnRlc3RKb2JzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdEpvYnNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0UGVudGVzdHMgPSBcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRQZW50ZXN0c1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRTZWN1cml0eVJlcXVpcmVtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRTZWN1cml0eVJlcXVpcmVtZW50cyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0U2VjdXJpdHlSZXF1aXJlbWVudHNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0VGFyZ2V0RG9tYWlucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUYXJnZXREb21haW5zID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0VGFyZ2V0RG9tYWluc1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFRocmVhdE1vZGVsSm9iVGFza3MgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVsSm9iVGFza3NcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0TW9kZWxKb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFRocmVhdE1vZGVsSm9icyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0TW9kZWxKb2JzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVscyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRNb2RlbHMgPSBcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRNb2RlbHNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0c1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkJhdGNoVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaFVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlQWdlbnRTcGFjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWdlbnRTcGFjZSA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVBZ2VudFNwYWNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlQXBwbGljYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcGxpY2F0aW9uID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZUFwcGxpY2F0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlQ29kZVJldmlldyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29kZVJldmlldyA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVDb2RlUmV2aWV3XCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlRGVzaWduUmV2aWV3ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEZXNpZ25SZXZpZXcgPSBcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlRGVzaWduUmV2aWV3XCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlSW50ZWdyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUludGVncmF0aW9uID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZUludGVncmF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlTWVtYmVyc2hpcCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlTWVtYmVyc2hpcCA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVNZW1iZXJzaGlwXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlT25lVGltZUxvZ2luU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT25lVGltZUxvZ2luU2Vzc2lvbiA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZU9uZVRpbWVMb2dpblNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVQZW50ZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQZW50ZXN0ID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZVBlbnRlc3RcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVQcml2YXRlQ29ubmVjdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUHJpdmF0ZUNvbm5lY3Rpb24gPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVQcml2YXRlQ29ubmVjdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkNyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnQgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50XCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2tcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVUYXJnZXREb21haW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRhcmdldERvbWFpbiA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVUYXJnZXREb21haW5cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVUaHJlYXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRocmVhdCA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVUaHJlYXRcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVUaHJlYXRNb2RlbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGhyZWF0TW9kZWwgPSBcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlVGhyZWF0TW9kZWxcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVBZ2VudFNwYWNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZ2VudFNwYWNlID0gXCJzZWN1cml0eWFnZW50OkRlbGV0ZUFnZW50U3BhY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVBcHBsaWNhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXBwbGljYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6RGVsZXRlQXBwbGljYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVBcnRpZmFjdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXJ0aWZhY3QgPSBcInNlY3VyaXR5YWdlbnQ6RGVsZXRlQXJ0aWZhY3RcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVEZXNpZ25SZXZpZXcgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURlc2lnblJldmlldyA9IFwic2VjdXJpdHlhZ2VudDpEZWxldGVEZXNpZ25SZXZpZXdcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVJbnRlZ3JhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW50ZWdyYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6RGVsZXRlSW50ZWdyYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVNZW1iZXJzaGlwID0gXCJzZWN1cml0eWFnZW50OkRlbGV0ZU1lbWJlcnNoaXBcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVQcml2YXRlQ29ubmVjdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUHJpdmF0ZUNvbm5lY3Rpb24gPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpEZWxldGVQcml2YXRlQ29ubmVjdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnQgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50XCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6RGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2tcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVUYXJnZXREb21haW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRhcmdldERvbWFpbiA9IFwic2VjdXJpdHlhZ2VudDpEZWxldGVUYXJnZXREb21haW5cIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkRlc2NyaWJlUHJpdmF0ZUNvbm5lY3Rpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlUHJpdmF0ZUNvbm5lY3Rpb24gPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpEZXNjcmliZVByaXZhdGVDb25uZWN0aW9uXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpHZXRBcHBsaWNhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QXBwbGljYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6R2V0QXBwbGljYXRpb25cIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkdldEFydGlmYWN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBcnRpZmFjdCA9IFwic2VjdXJpdHlhZ2VudDpHZXRBcnRpZmFjdFwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6R2V0RGVzaWduUmV2aWV3ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZXNpZ25SZXZpZXcgPSBcInNlY3VyaXR5YWdlbnQ6R2V0RGVzaWduUmV2aWV3XCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpHZXREZXNpZ25SZXZpZXdBcnRpZmFjdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVzaWduUmV2aWV3QXJ0aWZhY3QgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpHZXREZXNpZ25SZXZpZXdBcnRpZmFjdFwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6R2V0RGVzaWduUmV2aWV3RmVlZGJhY2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlc2lnblJldmlld0ZlZWRiYWNrID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6R2V0RGVzaWduUmV2aWV3RmVlZGJhY2tcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkdldEludGVncmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRJbnRlZ3JhdGlvbiA9IFwic2VjdXJpdHlhZ2VudDpHZXRJbnRlZ3JhdGlvblwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6R2V0UHJvdmlkZXJSZWdpc3RyYXRpb25NYW5pZmVzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UHJvdmlkZXJSZWdpc3RyYXRpb25NYW5pZmVzdCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkdldFByb3ZpZGVyUmVnaXN0cmF0aW9uTWFuaWZlc3RcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkdldFNlY3VyaXR5UmVxdWlyZW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFNlY3VyaXR5UmVxdWlyZW1lbnQgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpHZXRTZWN1cml0eVJlcXVpcmVtZW50XCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpHZXRTZWN1cml0eVJlcXVpcmVtZW50UGFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpHZXRTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkhhbmRsZVByb3ZpZGVyUmVnaXN0cmF0aW9uQ2FsbGJhY2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IEhhbmRsZVByb3ZpZGVyUmVnaXN0cmF0aW9uQ2FsbGJhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpIYW5kbGVQcm92aWRlclJlZ2lzdHJhdGlvbkNhbGxiYWNrXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6SW1wb3J0U2VjdXJpdHlSZXF1aXJlbWVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydFNlY3VyaXR5UmVxdWlyZW1lbnRzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6SW1wb3J0U2VjdXJpdHlSZXF1aXJlbWVudHNcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpJbml0aWF0ZVByb3ZpZGVyUmVnaXN0cmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBJbml0aWF0ZVByb3ZpZGVyUmVnaXN0cmF0aW9uID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6SW5pdGlhdGVQcm92aWRlclJlZ2lzdHJhdGlvblwiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdEFnZW50U3BhY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRTcGFjZXMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdEFnZW50U3BhY2VzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0QXBwbGljYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwbGljYXRpb25zID0gXCJzZWN1cml0eWFnZW50Okxpc3RBcHBsaWNhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RBcnRpZmFjdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcnRpZmFjdHMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdEFydGlmYWN0c1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdENvZGVSZXZpZXdKb2JUYXNrcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVSZXZpZXdKb2JUYXNrcyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RDb2RlUmV2aWV3Sm9iVGFza3NcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXcgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXcgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0Q29kZVJldmlld0pvYnNGb3JDb2RlUmV2aWV3XCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0Q29kZVJldmlld3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb2RlUmV2aWV3cyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0Q29kZVJldmlld3NcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3REZXNpZ25SZXZpZXdDb21tZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlc2lnblJldmlld0NvbW1lbnRzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdERlc2lnblJldmlld0NvbW1lbnRzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0RGVzaWduUmV2aWV3cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlc2lnblJldmlld3MgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdERlc2lnblJldmlld3NcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3REaXNjb3ZlcmVkRW5kcG9pbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGlzY292ZXJlZEVuZHBvaW50cyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3REaXNjb3ZlcmVkRW5kcG9pbnRzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0RmluZGluZ3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RGaW5kaW5ncyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0RmluZGluZ3NcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RJbnRlZ3JhdGVkUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW50ZWdyYXRlZFJlc291cmNlcyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RJbnRlZ3JhdGVkUmVzb3VyY2VzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0SW50ZWdyYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW50ZWdyYXRpb25zID0gXCJzZWN1cml0eWFnZW50Okxpc3RJbnRlZ3JhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RNZW1iZXJzaGlwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbWJlcnNoaXBzID0gXCJzZWN1cml0eWFnZW50Okxpc3RNZW1iZXJzaGlwc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RKb2JUYXNrcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBlbnRlc3RKb2JUYXNrcyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0UGVudGVzdEpvYlRhc2tzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0UGVudGVzdEpvYnNGb3JQZW50ZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGVudGVzdEpvYnNGb3JQZW50ZXN0ID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RKb2JzRm9yUGVudGVzdFwiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGVudGVzdHMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0UHJpdmF0ZUNvbm5lY3Rpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UHJpdmF0ZUNvbm5lY3Rpb25zID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFByaXZhdGVDb25uZWN0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFJlc291cmNlc0Zyb21JbnRlZ3JhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc291cmNlc0Zyb21JbnRlZ3JhdGlvbiA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RSZXNvdXJjZXNGcm9tSW50ZWdyYXRpb25cIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RTZWN1cml0eVJlcXVpcmVtZW50UGFja3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZWN1cml0eVJlcXVpcmVtZW50UGFja3MgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0U2VjdXJpdHlSZXF1aXJlbWVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZWN1cml0eVJlcXVpcmVtZW50cyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RTZWN1cml0eVJlcXVpcmVtZW50c1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6TGlzdFRhZ3NGb3JSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZSA9IFwic2VjdXJpdHlhZ2VudDpMaXN0VGFnc0ZvclJlc291cmNlXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0VGFyZ2V0RG9tYWlucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhcmdldERvbWFpbnMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdFRhcmdldERvbWFpbnNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbEpvYlRhc2tzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0TW9kZWxKb2JUYXNrcyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbEpvYlRhc2tzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0TW9kZWxKb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0TW9kZWxKb2JzID0gXCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbEpvYnNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUaHJlYXRNb2RlbHMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdE1vZGVsc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUaHJlYXRzID0gXCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRzXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6UHV0RGVzaWduUmV2aWV3RmVlZGJhY2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERlc2lnblJldmlld0ZlZWRiYWNrID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6UHV0RGVzaWduUmV2aWV3RmVlZGJhY2tcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdGFydENvZGVSZW1lZGlhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRDb2RlUmVtZWRpYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6U3RhcnRDb2RlUmVtZWRpYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdGFydENvZGVSZXZpZXdKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0Q29kZVJldmlld0pvYiA9IFwic2VjdXJpdHlhZ2VudDpTdGFydENvZGVSZXZpZXdKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdGFydFBlbnRlc3RKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UGVudGVzdEpvYiA9IFwic2VjdXJpdHlhZ2VudDpTdGFydFBlbnRlc3RKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdGFydFRocmVhdE1vZGVsSm9iICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFRocmVhdE1vZGVsSm9iID0gXCJzZWN1cml0eWFnZW50OlN0YXJ0VGhyZWF0TW9kZWxKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdG9wQ29kZVJldmlld0pvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcENvZGVSZXZpZXdKb2IgPSBcInNlY3VyaXR5YWdlbnQ6U3RvcENvZGVSZXZpZXdKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdG9wUGVudGVzdEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcFBlbnRlc3RKb2IgPSBcInNlY3VyaXR5YWdlbnQ6U3RvcFBlbnRlc3RKb2JcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpTdG9wVGhyZWF0TW9kZWxKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BUaHJlYXRNb2RlbEpvYiA9IFwic2VjdXJpdHlhZ2VudDpTdG9wVGhyZWF0TW9kZWxKb2JcIjtcblx0LyoqIFtUYWdnaW5nXSBzZWN1cml0eWFnZW50OlRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZSA9IFwic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlRvZ2dsZU1hbmFnZWRTZWN1cml0eVJlcXVpcmVtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBUb2dnbGVNYW5hZ2VkU2VjdXJpdHlSZXF1aXJlbWVudCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OlRvZ2dsZU1hbmFnZWRTZWN1cml0eVJlcXVpcmVtZW50XCI7XG5cdC8qKiBbVGFnZ2luZ10gc2VjdXJpdHlhZ2VudDpVbnRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlID0gXCJzZWN1cml0eWFnZW50OlVudGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVBZ2VudFNwYWNlICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBZ2VudFNwYWNlID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZUFnZW50U3BhY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVBcHBsaWNhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXBwbGljYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6VXBkYXRlQXBwbGljYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVDb2RlUmV2aWV3ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb2RlUmV2aWV3ID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZUNvZGVSZXZpZXdcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVGaW5kaW5nICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVGaW5kaW5nID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZUZpbmRpbmdcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVJbnRlZ3JhdGVkUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVJbnRlZ3JhdGVkUmVzb3VyY2VzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6VXBkYXRlSW50ZWdyYXRlZFJlc291cmNlc1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVBlbnRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBlbnRlc3QgPSBcInNlY3VyaXR5YWdlbnQ6VXBkYXRlUGVudGVzdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGUgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVQcml2YXRlQ29ubmVjdGlvbkNlcnRpZmljYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6VXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVRhcmdldERvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGFyZ2V0RG9tYWluID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZVRhcmdldERvbWFpblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVRocmVhdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGhyZWF0ID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZVRocmVhdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVRocmVhdE1vZGVsICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUaHJlYXRNb2RlbCA9IFwic2VjdXJpdHlhZ2VudDpVcGRhdGVUaHJlYXRNb2RlbFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlZlcmlmeVRhcmdldERvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5VGFyZ2V0RG9tYWluID0gXCJzZWN1cml0eWFnZW50OlZlcmlmeVRhcmdldERvbWFpblwiO1xuXG5cdC8qKiBBbGwgcmVhZC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUmVhZEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0QWdlbnRTcGFjZXMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRBcnRpZmFjdE1ldGFkYXRhLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0Q29kZVJldmlld0pvYnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRDb2RlUmV2aWV3cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldEZpbmRpbmdzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0UGVudGVzdEpvYkNvbnRlbnRNZXRhZGF0YSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFBlbnRlc3RKb2JUYXNrcyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFBlbnRlc3RKb2JzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0UGVudGVzdHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRTZWN1cml0eVJlcXVpcmVtZW50cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFRhcmdldERvbWFpbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0VGhyZWF0TW9kZWxKb2JzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0VGhyZWF0TW9kZWxzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0VGhyZWF0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZXNjcmliZVByaXZhdGVDb25uZWN0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldEFwcGxpY2F0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldEFydGlmYWN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldERlc2lnblJldmlldyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5hY3Rpb25HZXREZXNpZ25SZXZpZXdBcnRpZmFjdCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5hY3Rpb25HZXREZXNpZ25SZXZpZXdGZWVkYmFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5hY3Rpb25HZXRJbnRlZ3JhdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5hY3Rpb25HZXRQcm92aWRlclJlZ2lzdHJhdGlvbk1hbmlmZXN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldFNlY3VyaXR5UmVxdWlyZW1lbnQsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuYWN0aW9uR2V0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2ssXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFRhZ3NGb3JSZXNvdXJjZSxcblx0XTtcblx0LyoqIEFsbCB3cml0ZS1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsV3JpdGVBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5BZGRBcnRpZmFjdCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoRGVsZXRlQ29kZVJldmlld3MsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hEZWxldGVQZW50ZXN0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoRGVsZXRlVGhyZWF0TW9kZWxzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoRGVsZXRlVGhyZWF0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaFVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZUFnZW50U3BhY2UsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlQXBwbGljYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlQ29kZVJldmlldyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVEZXNpZ25SZXZpZXcsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlSW50ZWdyYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlTWVtYmVyc2hpcCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVPbmVUaW1lTG9naW5TZXNzaW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZVBlbnRlc3QsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlUHJpdmF0ZUNvbm5lY3Rpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVUYXJnZXREb21haW4sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlVGhyZWF0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZVRocmVhdE1vZGVsLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkRlbGV0ZUFnZW50U3BhY2UsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlQXBwbGljYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlQXJ0aWZhY3QsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlRGVzaWduUmV2aWV3LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkRlbGV0ZUludGVncmF0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkRlbGV0ZU1lbWJlcnNoaXAsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlUHJpdmF0ZUNvbm5lY3Rpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVUYXJnZXREb21haW4sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuSGFuZGxlUHJvdmlkZXJSZWdpc3RyYXRpb25DYWxsYmFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5JbXBvcnRTZWN1cml0eVJlcXVpcmVtZW50cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5Jbml0aWF0ZVByb3ZpZGVyUmVnaXN0cmF0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlB1dERlc2lnblJldmlld0ZlZWRiYWNrLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlN0YXJ0Q29kZVJlbWVkaWF0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlN0YXJ0Q29kZVJldmlld0pvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdGFydFBlbnRlc3RKb2IsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuU3RhcnRUaHJlYXRNb2RlbEpvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdG9wQ29kZVJldmlld0pvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdG9wUGVudGVzdEpvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdG9wVGhyZWF0TW9kZWxKb2IsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVG9nZ2xlTWFuYWdlZFNlY3VyaXR5UmVxdWlyZW1lbnQsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlQWdlbnRTcGFjZSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVBcHBsaWNhdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVDb2RlUmV2aWV3LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZUZpbmRpbmcsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlSW50ZWdyYXRlZFJlc291cmNlcyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVQZW50ZXN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGUsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVUYXJnZXREb21haW4sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlVGhyZWF0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZVRocmVhdE1vZGVsLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlZlcmlmeVRhcmdldERvbWFpbixcblx0XTtcblx0LyoqIEFsbCBsaXN0LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxMaXN0QWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEFnZW50U3BhY2VzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RBcHBsaWNhdGlvbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEFydGlmYWN0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0Q29kZVJldmlld0pvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXcsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdENvZGVSZXZpZXdzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3REZXNpZ25SZXZpZXdDb21tZW50cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0RGVzaWduUmV2aWV3cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0RGlzY292ZXJlZEVuZHBvaW50cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0RmluZGluZ3MsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEludGVncmF0ZWRSZXNvdXJjZXMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEludGVncmF0aW9ucyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0TWVtYmVyc2hpcHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFBlbnRlc3RKb2JUYXNrcyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0UGVudGVzdEpvYnNGb3JQZW50ZXN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RQZW50ZXN0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0UHJpdmF0ZUNvbm5lY3Rpb25zLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RSZXNvdXJjZXNGcm9tSW50ZWdyYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrcyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0U2VjdXJpdHlSZXF1aXJlbWVudHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFRhcmdldERvbWFpbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFRocmVhdE1vZGVsSm9iVGFza3MsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFRocmVhdE1vZGVsSm9icyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0VGhyZWF0TW9kZWxzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RUaHJlYXRzLFxuXHRdO1xuXHQvKiogQWxsIHBlcm1pc3Npb24tbWFuYWdlbWVudC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUGVybWlzc2lvbk1hbmFnZW1lbnRBY3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogQWxsIHRhZ2dpbmctbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFRhZ2dpbmdBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5UYWdSZXNvdXJjZSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VbnRhZ1Jlc291cmNlLFxuXHRdO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgQWdlbnRTcGFjZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudEFnZW50U3BhY2VBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQWdlbnRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYWdlbnRJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIEFnZW50U3BhY2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRBZ2VudFNwYWNlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBZ2VudElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYWdlbnRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgQXBwbGljYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRBcHBsaWNhdGlvbkFyblByb3BzIHtcblx0LyoqIFRoZSBBcHBsaWNhdGlvbklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhcHBsaWNhdGlvbklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgQXBwbGljYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRBcHBsaWNhdGlvbkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQXBwbGljYXRpb25JZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFwcGxpY2F0aW9uSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIEludGVncmF0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50SW50ZWdyYXRpb25Bcm5Qcm9wcyB7XG5cdC8qKiBUaGUgSW50ZWdyYXRpb25JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaW50ZWdyYXRpb25JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIEludGVncmF0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50SW50ZWdyYXRpb25Bcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEludGVncmF0aW9uSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBpbnRlZ3JhdGlvbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBQcml2YXRlQ29ubmVjdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudFByaXZhdGVDb25uZWN0aW9uQXJuUHJvcHMge1xuXHQvKiogVGhlIFByaXZhdGVDb25uZWN0aW9uTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcHJpdmF0ZUNvbm5lY3Rpb25OYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgUHJpdmF0ZUNvbm5lY3Rpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRQcml2YXRlQ29ubmVjdGlvbkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUHJpdmF0ZUNvbm5lY3Rpb25OYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcHJpdmF0ZUNvbm5lY3Rpb25OYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuUHJvcHMge1xuXHQvKiogVGhlIFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBTZWN1cml0eVJlcXVpcmVtZW50UGFja0lkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgc2VjdXJpdHlSZXF1aXJlbWVudFBhY2tJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgVGFyZ2V0RG9tYWluIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50VGFyZ2V0RG9tYWluQXJuUHJvcHMge1xuXHQvKiogVGhlIFRhcmdldERvbWFpbklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0YXJnZXREb21haW5JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIFRhcmdldERvbWFpbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudFRhcmdldERvbWFpbkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVGFyZ2V0RG9tYWluSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0YXJnZXREb21haW5JZDogc3RyaW5nO1xufVxuXG5jb25zdCBBZ2VudFNwYWNlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlY3VyaXR5YWdlbnQ6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTphZ2VudC1zcGFjZVxcLyg/PGFnZW50SWQ+W146Lz9dKykkLztcbmNvbnN0IEFwcGxpY2F0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlY3VyaXR5YWdlbnQ6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTphcHBsaWNhdGlvblxcLyg/PGFwcGxpY2F0aW9uSWQ+W146Lz9dKykkLztcbmNvbnN0IEludGVncmF0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlY3VyaXR5YWdlbnQ6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTppbnRlZ3JhdGlvblxcLyg/PGludGVncmF0aW9uSWQ+W146Lz9dKykkLztcbmNvbnN0IFByaXZhdGVDb25uZWN0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlY3VyaXR5YWdlbnQ6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpwcml2YXRlLWNvbm5lY3Rpb25cXC8oPzxwcml2YXRlQ29ubmVjdGlvbk5hbWU+W146Lz9dKykkLztcbmNvbnN0IFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlY3VyaXR5YWdlbnQ6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpzZWN1cml0eS1yZXF1aXJlbWVudC1wYWNrXFwvKD88c2VjdXJpdHlSZXF1aXJlbWVudFBhY2tJZD5bXjovP10rKSQvO1xuY29uc3QgVGFyZ2V0RG9tYWluQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnNlY3VyaXR5YWdlbnQ6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0YXJnZXQtZG9tYWluXFwvKD88dGFyZ2V0RG9tYWluSWQ+W146Lz9dKykkLztcblxuLyoqXG4gKiBBUk4gYnVpbGRlcnMsIHZhbGlkYXRvcnMsIGFuZCBwYXJzZXJzIGZvciBzZWN1cml0eWFnZW50IHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlY3VyaXR5YWdlbnRSZXNvdXJjZXMge1xuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIEFnZW50U3BhY2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYWdlbnRTcGFjZShwcm9wczogU2VjdXJpdHlhZ2VudEFnZW50U3BhY2VBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VjdXJpdHlhZ2VudDoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTphZ2VudC1zcGFjZS8ke3Byb3BzLmFnZW50SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIEFnZW50U3BhY2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFnZW50U3BhY2VBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQWdlbnRTcGFjZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBBZ2VudFNwYWNlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUFnZW50U3BhY2VBcm4oYXJuOiBzdHJpbmcpOiBTZWN1cml0eWFnZW50QWdlbnRTcGFjZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQWdlbnRTcGFjZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBBZ2VudFNwYWNlIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGFnZW50SWQ6IG1hdGNoLmdyb3VwcyEuYWdlbnRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBBcHBsaWNhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBhcHBsaWNhdGlvbihwcm9wczogU2VjdXJpdHlhZ2VudEFwcGxpY2F0aW9uQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlY3VyaXR5YWdlbnQ6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YXBwbGljYXRpb24vJHtwcm9wcy5hcHBsaWNhdGlvbklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBBcHBsaWNhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQXBwbGljYXRpb25Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQXBwbGljYXRpb25Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgQXBwbGljYXRpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQXBwbGljYXRpb25Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlY3VyaXR5YWdlbnRBcHBsaWNhdGlvbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQXBwbGljYXRpb25Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgQXBwbGljYXRpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YXBwbGljYXRpb25JZDogbWF0Y2guZ3JvdXBzIS5hcHBsaWNhdGlvbklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIEludGVncmF0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGludGVncmF0aW9uKHByb3BzOiBTZWN1cml0eWFnZW50SW50ZWdyYXRpb25Bcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VjdXJpdHlhZ2VudDoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTppbnRlZ3JhdGlvbi8ke3Byb3BzLmludGVncmF0aW9uSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIEludGVncmF0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRJbnRlZ3JhdGlvbkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBJbnRlZ3JhdGlvbkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBJbnRlZ3JhdGlvbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VJbnRlZ3JhdGlvbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VjdXJpdHlhZ2VudEludGVncmF0aW9uQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBJbnRlZ3JhdGlvbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBJbnRlZ3JhdGlvbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRpbnRlZ3JhdGlvbklkOiBtYXRjaC5ncm91cHMhLmludGVncmF0aW9uSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgUHJpdmF0ZUNvbm5lY3Rpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcHJpdmF0ZUNvbm5lY3Rpb24oXG5cdFx0cHJvcHM6IFNlY3VyaXR5YWdlbnRQcml2YXRlQ29ubmVjdGlvbkFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlY3VyaXR5YWdlbnQ6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cHJpdmF0ZS1jb25uZWN0aW9uLyR7cHJvcHMucHJpdmF0ZUNvbm5lY3Rpb25OYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBQcml2YXRlQ29ubmVjdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUHJpdmF0ZUNvbm5lY3Rpb25Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUHJpdmF0ZUNvbm5lY3Rpb25Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgUHJpdmF0ZUNvbm5lY3Rpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUHJpdmF0ZUNvbm5lY3Rpb25Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlY3VyaXR5YWdlbnRQcml2YXRlQ29ubmVjdGlvbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUHJpdmF0ZUNvbm5lY3Rpb25Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgUHJpdmF0ZUNvbm5lY3Rpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cHJpdmF0ZUNvbm5lY3Rpb25OYW1lOiBtYXRjaC5ncm91cHMhLnByaXZhdGVDb25uZWN0aW9uTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBTZWN1cml0eVJlcXVpcmVtZW50UGFjayByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBzZWN1cml0eVJlcXVpcmVtZW50UGFjayhcblx0XHRwcm9wczogU2VjdXJpdHlhZ2VudFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06c2VjdXJpdHlhZ2VudDoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpzZWN1cml0eS1yZXF1aXJlbWVudC1wYWNrLyR7cHJvcHMuc2VjdXJpdHlSZXF1aXJlbWVudFBhY2tJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZWN1cml0eWFnZW50U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWQ6IG1hdGNoLmdyb3VwcyEuc2VjdXJpdHlSZXF1aXJlbWVudFBhY2tJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBUYXJnZXREb21haW4gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgdGFyZ2V0RG9tYWluKHByb3BzOiBTZWN1cml0eWFnZW50VGFyZ2V0RG9tYWluQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlY3VyaXR5YWdlbnQ6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dGFyZ2V0LWRvbWFpbi8ke3Byb3BzLnRhcmdldERvbWFpbklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBUYXJnZXREb21haW4gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFRhcmdldERvbWFpbkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBUYXJnZXREb21haW5Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgVGFyZ2V0RG9tYWluIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVRhcmdldERvbWFpbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VjdXJpdHlhZ2VudFRhcmdldERvbWFpbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gVGFyZ2V0RG9tYWluQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIFRhcmdldERvbWFpbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0YXJnZXREb21haW5JZDogbWF0Y2guZ3JvdXBzIS50YXJnZXREb21haW5JZCxcblx0XHR9O1xuXHR9XG59XG5cbi8qKlxuICogQVBJIG9wZXJhdGlvbiB0byByZXF1aXJlZCBJQU0gYWN0aW9ucyBtYXBwaW5nIGZvciBzZWN1cml0eWFnZW50LlxuICovXG5leHBvcnQgY2xhc3MgU2VjdXJpdHlhZ2VudE9wZXJhdGlvbnMge1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBBZGRBcnRpZmFjdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZEFydGlmYWN0OiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6QWRkQXJ0aWZhY3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaERlbGV0ZUNvZGVSZXZpZXdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVDb2RlUmV2aWV3czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlQ29kZVJldmlld3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hEZWxldGVQZW50ZXN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlUGVudGVzdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVBlbnRlc3RzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaERlbGV0ZVRocmVhdE1vZGVscyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlVGhyZWF0TW9kZWxzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVUaHJlYXRNb2RlbHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRBZ2VudFNwYWNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0QWdlbnRTcGFjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldEFnZW50U3BhY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0QXJ0aWZhY3RNZXRhZGF0YSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0QXJ0aWZhY3RNZXRhZGF0YTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0QXJ0aWZhY3RNZXRhZGF0YVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldENvZGVSZXZpZXdKb2JUYXNrcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3Sm9iVGFza3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRDb2RlUmV2aWV3Sm9icyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0Q29kZVJldmlld0pvYnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldENvZGVSZXZpZXdKb2JzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0Q29kZVJldmlld3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldENvZGVSZXZpZXdzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldEZpbmRpbmdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRGaW5kaW5nczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0RmluZGluZ3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRQZW50ZXN0Sm9iVGFza3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFBlbnRlc3RKb2JUYXNrczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdEpvYlRhc2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0UGVudGVzdEpvYnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFBlbnRlc3RKb2JzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRQZW50ZXN0Sm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldFBlbnRlc3RzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRQZW50ZXN0czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRTZWN1cml0eVJlcXVpcmVtZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0U2VjdXJpdHlSZXF1aXJlbWVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFNlY3VyaXR5UmVxdWlyZW1lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0VGFyZ2V0RG9tYWlucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0VGFyZ2V0RG9tYWluczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0VGFyZ2V0RG9tYWluc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldFRocmVhdE1vZGVsSm9iVGFza3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFRocmVhdE1vZGVsSm9iVGFza3M6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVsSm9iVGFza3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFRocmVhdE1vZGVsSm9iczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0TW9kZWxKb2JzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0VGhyZWF0TW9kZWxzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRNb2RlbHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVsc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldFRocmVhdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFRocmVhdHM6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaFVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBZ2VudFNwYWNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWdlbnRTcGFjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZUFnZW50U3BhY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBcHBsaWNhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcGxpY2F0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlQXBwbGljYXRpb25cIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb2RlUmV2aWV3IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29kZVJldmlldzogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZUNvZGVSZXZpZXdcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlSW50ZWdyYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbnRlZ3JhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZUludGVncmF0aW9uXCIsXG5cdFx0XCJzZWN1cml0eWFnZW50OlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZU1lbWJlcnNoaXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVNZW1iZXJzaGlwOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlTWVtYmVyc2hpcFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQZW50ZXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGVudGVzdDogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OkNyZWF0ZVBlbnRlc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVByaXZhdGVDb25uZWN0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUHJpdmF0ZUNvbm5lY3Rpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVQcml2YXRlQ29ubmVjdGlvblwiLFxuXHRcdFwic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2tcIixcblx0XHRcInNlY3VyaXR5YWdlbnQ6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlVGFyZ2V0RG9tYWluIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGFyZ2V0RG9tYWluOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlVGFyZ2V0RG9tYWluXCIsXG5cdFx0XCJzZWN1cml0eWFnZW50OlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRocmVhdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRocmVhdDogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OkNyZWF0ZVRocmVhdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlVGhyZWF0TW9kZWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUaHJlYXRNb2RlbDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZVRocmVhdE1vZGVsXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFnZW50U3BhY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZ2VudFNwYWNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlQWdlbnRTcGFjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBcHBsaWNhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcGxpY2F0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlQXBwbGljYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQXJ0aWZhY3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcnRpZmFjdDogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OkRlbGV0ZUFydGlmYWN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVJbnRlZ3JhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUludGVncmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlSW50ZWdyYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlTWVtYmVyc2hpcCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbWJlcnNoaXA6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpEZWxldGVNZW1iZXJzaGlwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVByaXZhdGVDb25uZWN0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUHJpdmF0ZUNvbm5lY3Rpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpEZWxldGVQcml2YXRlQ29ubmVjdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2tcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVGFyZ2V0RG9tYWluIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGFyZ2V0RG9tYWluOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlVGFyZ2V0RG9tYWluXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlUHJpdmF0ZUNvbm5lY3Rpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVByaXZhdGVDb25uZWN0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVzY3JpYmVQcml2YXRlQ29ubmVjdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcHBsaWNhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QXBwbGljYXRpb246IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpHZXRBcHBsaWNhdGlvblwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXJ0aWZhY3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFydGlmYWN0OiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6R2V0QXJ0aWZhY3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEludGVncmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRJbnRlZ3JhdGlvbjogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OkdldEludGVncmF0aW9uXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2s6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpHZXRTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbXBvcnRTZWN1cml0eVJlcXVpcmVtZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydFNlY3VyaXR5UmVxdWlyZW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6SW1wb3J0U2VjdXJpdHlSZXF1aXJlbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgSW5pdGlhdGVQcm92aWRlclJlZ2lzdHJhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEluaXRpYXRlUHJvdmlkZXJSZWdpc3RyYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpJbml0aWF0ZVByb3ZpZGVyUmVnaXN0cmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBZ2VudFNwYWNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFNwYWNlczogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50Okxpc3RBZ2VudFNwYWNlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcGxpY2F0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBsaWNhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0QXBwbGljYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcnRpZmFjdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXJ0aWZhY3RzOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6TGlzdEFydGlmYWN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvZGVSZXZpZXdKb2JUYXNrcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb2RlUmV2aWV3Sm9iVGFza3M6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0Q29kZVJldmlld0pvYlRhc2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29kZVJldmlld0pvYnNGb3JDb2RlUmV2aWV3OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdENvZGVSZXZpZXdKb2JzRm9yQ29kZVJldmlld1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q29kZVJldmlld3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29kZVJldmlld3M6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpMaXN0Q29kZVJldmlld3NcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3REaXNjb3ZlcmVkRW5kcG9pbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERpc2NvdmVyZWRFbmRwb2ludHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0RGlzY292ZXJlZEVuZHBvaW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RmluZGluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RmluZGluZ3M6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpMaXN0RmluZGluZ3NcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RJbnRlZ3JhdGVkUmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEludGVncmF0ZWRSZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0SW50ZWdyYXRlZFJlc291cmNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0SW50ZWdyYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEludGVncmF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RJbnRlZ3JhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdE1lbWJlcnNoaXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbWJlcnNoaXBzOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6TGlzdE1lbWJlcnNoaXBzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UGVudGVzdEpvYlRhc2tzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBlbnRlc3RKb2JUYXNrczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RQZW50ZXN0Sm9iVGFza3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBlbnRlc3RKb2JzRm9yUGVudGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQZW50ZXN0Sm9ic0ZvclBlbnRlc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0UGVudGVzdEpvYnNGb3JQZW50ZXN0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQZW50ZXN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQZW50ZXN0czogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50Okxpc3RQZW50ZXN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFByaXZhdGVDb25uZWN0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQcml2YXRlQ29ubmVjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0UHJpdmF0ZUNvbm5lY3Rpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTZWN1cml0eVJlcXVpcmVtZW50UGFja3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U2VjdXJpdHlSZXF1aXJlbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2VjdXJpdHlSZXF1aXJlbWVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0U2VjdXJpdHlSZXF1aXJlbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRhZ3NGb3JSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0VGFnc0ZvclJlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUYXJnZXREb21haW5zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhcmdldERvbWFpbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0VGFyZ2V0RG9tYWluc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGhyZWF0TW9kZWxKb2JUYXNrcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUaHJlYXRNb2RlbEpvYlRhc2tzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdE1vZGVsSm9iVGFza3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRocmVhdE1vZGVsSm9icyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUaHJlYXRNb2RlbEpvYnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0TW9kZWxKb2JzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUaHJlYXRNb2RlbHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0TW9kZWxzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdE1vZGVsc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGhyZWF0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUaHJlYXRzOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0Q29kZVJlbWVkaWF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRDb2RlUmVtZWRpYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpTdGFydENvZGVSZW1lZGlhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydENvZGVSZXZpZXdKb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydENvZGVSZXZpZXdKb2I6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpTdGFydENvZGVSZXZpZXdKb2JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRQZW50ZXN0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRQZW50ZXN0Sm9iOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6U3RhcnRQZW50ZXN0Sm9iXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydFRocmVhdE1vZGVsSm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRUaHJlYXRNb2RlbEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlN0YXJ0VGhyZWF0TW9kZWxKb2JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcENvZGVSZXZpZXdKb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQ29kZVJldmlld0pvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlN0b3BDb2RlUmV2aWV3Sm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BQZW50ZXN0Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcFBlbnRlc3RKb2I6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpTdG9wUGVudGVzdEpvYlwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcFRocmVhdE1vZGVsSm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcFRocmVhdE1vZGVsSm9iOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6U3RvcFRocmVhdE1vZGVsSm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFRhZ1Jlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2U6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVW50YWdSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVudGFnUmVzb3VyY2U6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpVbnRhZ1Jlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBZ2VudFNwYWNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWdlbnRTcGFjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInNlY3VyaXR5YWdlbnQ6VXBkYXRlQWdlbnRTcGFjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBcHBsaWNhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcGxpY2F0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVBcHBsaWNhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVDb2RlUmV2aWV3IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29kZVJldmlldzogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZUNvZGVSZXZpZXdcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlRmluZGluZyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUZpbmRpbmc6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpVcGRhdGVGaW5kaW5nXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVJbnRlZ3JhdGVkUmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlSW50ZWdyYXRlZFJlc291cmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZUludGVncmF0ZWRSZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUGVudGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBlbnRlc3Q6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpVcGRhdGVQZW50ZXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVQcml2YXRlQ29ubmVjdGlvbkNlcnRpZmljYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUHJpdmF0ZUNvbm5lY3Rpb25DZXJ0aWZpY2F0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjazogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVRhcmdldERvbWFpbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRhcmdldERvbWFpbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZVRhcmdldERvbWFpblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVUaHJlYXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUaHJlYXQ6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpVcGRhdGVUaHJlYXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVRocmVhdE1vZGVsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGhyZWF0TW9kZWw6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVUaHJlYXRNb2RlbFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBWZXJpZnlUYXJnZXREb21haW4gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBWZXJpZnlUYXJnZXREb21haW46IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpWZXJpZnlUYXJnZXREb21haW5cIixcblx0XTtcbn1cblxuLyoqXG4gKiBDb25kaXRpb24ga2V5IGNvbnN0YW50cyBhbmQgYnVpbGRlcnMgZm9yIHNlY3VyaXR5YWdlbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZWN1cml0eWFnZW50Q29uZGl0aW9ucyB7XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVBZ2VudFNwYWNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50U3BhY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFwcGxpY2F0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcGxpY2F0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVJbnRlZ3JhdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbnRlZ3JhdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUHJpdmF0ZUNvbm5lY3Rpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUHJpdmF0ZUNvbm5lY3Rpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBUYWdSZXNvdXJjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVW50YWdSZXNvdXJjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJhd3M6VGFnS2V5c1wiXTtcblxuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfUkVRVUVTVF9UQUcgPSBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFU09VUkNFX1RBRyA9IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlRhZ0tleXMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfVEFHX0tFWVMgPSBcImF3czpUYWdLZXlzXCI7XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVxdWVzdFRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVzb3VyY2VUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6VGFnS2V5c2AuXG5cdCAqL1xuXHRzdGF0aWMgdGFnS2V5cyh2YWx1ZXM6IHN0cmluZ1tdKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHsgXCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHsgXCJhd3M6VGFnS2V5c1wiOiB2YWx1ZXMgfSB9O1xuXHR9XG59XG4iXX0=
969
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHlhZ2VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvc2VydmljZXMvc2VjdXJpdHlhZ2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdGQUFnRjtBQUNoRiw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzFELG9EQUFvRDtBQUNwRCxvREFBb0Q7QUFDcEQsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7O0FBQWpDLG9EQTRaQzs7O0FBM1pBLDhCQUE4QjtBQUNkLG1DQUFjLEdBQUcsZUFBZSxDQUFDO0FBRWpELHdDQUF3QztBQUN4QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELDREQUE0RDtBQUM1QyxvREFBK0IsR0FDOUMsK0NBQStDLENBQUM7QUFDakQsbURBQW1EO0FBQ25DLDJDQUFzQixHQUNyQyxzQ0FBc0MsQ0FBQztBQUN4QyxnREFBZ0Q7QUFDaEMsd0NBQW1CLEdBQUcsbUNBQW1DLENBQUM7QUFDMUUsNERBQTREO0FBQzVDLG9EQUErQixHQUM5QywrQ0FBK0MsQ0FBQztBQUNqRCxvREFBb0Q7QUFDcEMsNENBQXVCLEdBQ3RDLHVDQUF1QyxDQUFDO0FBQ3pDLCtDQUErQztBQUMvQix1Q0FBa0IsR0FBRyxrQ0FBa0MsQ0FBQztBQUN4RSwrQ0FBK0M7QUFDL0Isd0NBQW1CLEdBQUcsbUNBQW1DLENBQUM7QUFDMUUsb0RBQW9EO0FBQ3BDLDZDQUF3QixHQUN2Qyx3Q0FBd0MsQ0FBQztBQUMxQyxzREFBc0Q7QUFDdEMsK0NBQTBCLEdBQ3pDLDBDQUEwQyxDQUFDO0FBQzVDLGtEQUFrRDtBQUNsQywyQ0FBc0IsR0FDckMsc0NBQXNDLENBQUM7QUFDeEMsK0NBQStDO0FBQy9CLHdDQUFtQixHQUFHLG1DQUFtQyxDQUFDO0FBQzFFLDRDQUE0QztBQUM1QixxQ0FBZ0IsR0FBRyxnQ0FBZ0MsQ0FBQztBQUNwRSw2REFBNkQ7QUFDN0Msc0RBQWlDLEdB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QUFDLFdBQVcsQ0FBQyxLQUFhO1FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSwyQkFBMkIsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBZ0I7UUFDOUIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUM7SUFDbkUsQ0FBQzs7QUE1REYsMERBNkRDOzs7QUE1REEsZ0VBQWdFO0FBQ2hELHFEQUE2QixHQUFhO0lBQ3pELDBCQUEwQjtJQUMxQixhQUFhO0NBQ2IsQ0FBQztBQUNGLGlFQUFpRTtBQUNqRCxzREFBOEIsR0FBYTtJQUMxRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRixpRUFBaUU7QUFDakQsc0RBQThCLEdBQWE7SUFDMUQsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0YsdUVBQXVFO0FBQ3ZELDREQUFvQyxHQUFhO0lBQ2hFLDBCQUEwQjtJQUMxQixhQUFhO0NBQ2IsQ0FBQztBQUNGLDZFQUE2RTtBQUM3RCxrRUFBMEMsR0FBYTtJQUN0RSwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRiwyREFBMkQ7QUFDM0MsZ0RBQXdCLEdBQWE7SUFDcEQsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0YsNkRBQTZEO0FBQzdDLGtEQUEwQixHQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7QUFFdkUsdURBQXVEO0FBQ3ZDLHVDQUFlLEdBQUcsMEJBQTBCLENBQUM7QUFDN0Qsd0RBQXdEO0FBQ3hDLHdDQUFnQixHQUFHLDJCQUEyQixDQUFDO0FBQy9ELGlEQUFpRDtBQUNqQyxvQ0FBWSxHQUFHLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBVVRPLUdFTkVSQVRFRCBGSUxFIOKAlCBETyBOT1QgRURJVCBNQU5VQUxMWVxuLy8gR2VuZXJhdGVkIGZyb20gQVdTIFNlcnZpY2UgQXV0aG9yaXphdGlvbiBSZWZlcmVuY2UgZGF0YVxuLy8gU291cmNlOiBkYXRhL3NlcnZpY2UtcmVmZXJlbmNlL3NlY3VyaXR5YWdlbnQuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIHNlY3VyaXR5YWdlbnQgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlY3VyaXR5YWdlbnRBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwic2VjdXJpdHlhZ2VudFwiO1xuXG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6QWRkQXJ0aWZhY3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZEFydGlmYWN0ID0gXCJzZWN1cml0eWFnZW50OkFkZEFydGlmYWN0XCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50cyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudHNcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZUNvZGVSZXZpZXdzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaERlbGV0ZUNvZGVSZXZpZXdzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVDb2RlUmV2aWV3c1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlUGVudGVzdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlUGVudGVzdHMgPSBcInNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVQZW50ZXN0c1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVUaHJlYXRNb2RlbHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlVGhyZWF0TW9kZWxzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVUaHJlYXRNb2RlbHNcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVRocmVhdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlVGhyZWF0cyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZVRocmVhdHNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0QWdlbnRTcGFjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0QWdlbnRTcGFjZXMgPSBcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRBZ2VudFNwYWNlc1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRBcnRpZmFjdE1ldGFkYXRhICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldEFydGlmYWN0TWV0YWRhdGEgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldEFydGlmYWN0TWV0YWRhdGFcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldENvZGVSZXZpZXdKb2JUYXNrcyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldENvZGVSZXZpZXdKb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldENvZGVSZXZpZXdKb2JzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3Sm9ic1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRDb2RlUmV2aWV3cyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldENvZGVSZXZpZXdzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldEZpbmRpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldEZpbmRpbmdzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0RmluZGluZ3NcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdEpvYkNvbnRlbnRNZXRhZGF0YSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRQZW50ZXN0Sm9iQ29udGVudE1ldGFkYXRhID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRQZW50ZXN0Sm9iQ29udGVudE1ldGFkYXRhXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RKb2JUYXNrcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRQZW50ZXN0Sm9iVGFza3MgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RKb2JUYXNrc1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRQZW50ZXN0Sm9icyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRQZW50ZXN0Sm9icyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RKb2JzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFBlbnRlc3RzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdHNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0U2VjdXJpdHlSZXF1aXJlbWVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0U2VjdXJpdHlSZXF1aXJlbWVudHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFNlY3VyaXR5UmVxdWlyZW1lbnRzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFRhcmdldERvbWFpbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0VGFyZ2V0RG9tYWlucyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRhcmdldERvbWFpbnNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0TW9kZWxKb2JUYXNrcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVsSm9icyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYnMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVsSm9ic1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRNb2RlbHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0VGhyZWF0TW9kZWxzID0gXCJzZWN1cml0eWFnZW50OkJhdGNoR2V0VGhyZWF0TW9kZWxzXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0VGhyZWF0cyA9IFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdHNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkJhdGNoR2V0VmFsaWRhdGlvblJ1bnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0VmFsaWRhdGlvblJ1bnMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFZhbGlkYXRpb25SdW5zXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6QmF0Y2hVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50cyA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudHNcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVBZ2VudFNwYWNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZ2VudFNwYWNlID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZUFnZW50U3BhY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVBcHBsaWNhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBwbGljYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlQXBwbGljYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVDb2RlUmV2aWV3ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb2RlUmV2aWV3ID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZUNvZGVSZXZpZXdcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVEZXNpZ25SZXZpZXcgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURlc2lnblJldmlldyA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVEZXNpZ25SZXZpZXdcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVJbnRlZ3JhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW50ZWdyYXRpb24gPSBcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlSW50ZWdyYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVNZW1iZXJzaGlwID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZU1lbWJlcnNoaXBcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVPbmVUaW1lTG9naW5TZXNzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPbmVUaW1lTG9naW5TZXNzaW9uID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlT25lVGltZUxvZ2luU2Vzc2lvblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkNyZWF0ZVBlbnRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBlbnRlc3QgPSBcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlUGVudGVzdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkNyZWF0ZVByaXZhdGVDb25uZWN0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQcml2YXRlQ29ubmVjdGlvbiA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZVByaXZhdGVDb25uZWN0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6Q3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkNyZWF0ZVRhcmdldERvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGFyZ2V0RG9tYWluID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZVRhcmdldERvbWFpblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkNyZWF0ZVRocmVhdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGhyZWF0ID0gXCJzZWN1cml0eWFnZW50OkNyZWF0ZVRocmVhdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkNyZWF0ZVRocmVhdE1vZGVsICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUaHJlYXRNb2RlbCA9IFwic2VjdXJpdHlhZ2VudDpDcmVhdGVUaHJlYXRNb2RlbFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZUFnZW50U3BhY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFnZW50U3BhY2UgPSBcInNlY3VyaXR5YWdlbnQ6RGVsZXRlQWdlbnRTcGFjZVwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZUFwcGxpY2F0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBsaWNhdGlvbiA9IFwic2VjdXJpdHlhZ2VudDpEZWxldGVBcHBsaWNhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZUFydGlmYWN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcnRpZmFjdCA9IFwic2VjdXJpdHlhZ2VudDpEZWxldGVBcnRpZmFjdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZURlc2lnblJldmlldyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRGVzaWduUmV2aWV3ID0gXCJzZWN1cml0eWFnZW50OkRlbGV0ZURlc2lnblJldmlld1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZUludGVncmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJbnRlZ3JhdGlvbiA9IFwic2VjdXJpdHlhZ2VudDpEZWxldGVJbnRlZ3JhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZU1lbWJlcnNoaXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbWJlcnNoaXAgPSBcInNlY3VyaXR5YWdlbnQ6RGVsZXRlTWVtYmVyc2hpcFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZVByaXZhdGVDb25uZWN0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQcml2YXRlQ29ubmVjdGlvbiA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZVByaXZhdGVDb25uZWN0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6RGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkRlbGV0ZVRhcmdldERvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGFyZ2V0RG9tYWluID0gXCJzZWN1cml0eWFnZW50OkRlbGV0ZVRhcmdldERvbWFpblwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6RGVzY3JpYmVQcml2YXRlQ29ubmVjdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVQcml2YXRlQ29ubmVjdGlvbiA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkRlc2NyaWJlUHJpdmF0ZUNvbm5lY3Rpb25cIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkdldEFwcGxpY2F0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBcHBsaWNhdGlvbiA9IFwic2VjdXJpdHlhZ2VudDpHZXRBcHBsaWNhdGlvblwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6R2V0QXJ0aWZhY3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFydGlmYWN0ID0gXCJzZWN1cml0eWFnZW50OkdldEFydGlmYWN0XCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpHZXREZXNpZ25SZXZpZXcgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldERlc2lnblJldmlldyA9IFwic2VjdXJpdHlhZ2VudDpHZXREZXNpZ25SZXZpZXdcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkdldERlc2lnblJldmlld0FydGlmYWN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREZXNpZ25SZXZpZXdBcnRpZmFjdCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkdldERlc2lnblJldmlld0FydGlmYWN0XCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpHZXREZXNpZ25SZXZpZXdGZWVkYmFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGVzaWduUmV2aWV3RmVlZGJhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpHZXREZXNpZ25SZXZpZXdGZWVkYmFja1wiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6R2V0SW50ZWdyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEludGVncmF0aW9uID0gXCJzZWN1cml0eWFnZW50OkdldEludGVncmF0aW9uXCI7XG5cdC8qKiBbUmVhZF0gc2VjdXJpdHlhZ2VudDpHZXRQcm92aWRlclJlZ2lzdHJhdGlvbk1hbmlmZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQcm92aWRlclJlZ2lzdHJhdGlvbk1hbmlmZXN0ID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6R2V0UHJvdmlkZXJSZWdpc3RyYXRpb25NYW5pZmVzdFwiO1xuXHQvKiogW1JlYWRdIHNlY3VyaXR5YWdlbnQ6R2V0U2VjdXJpdHlSZXF1aXJlbWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0U2VjdXJpdHlSZXF1aXJlbWVudCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkdldFNlY3VyaXR5UmVxdWlyZW1lbnRcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50OkdldFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTZWN1cml0eVJlcXVpcmVtZW50UGFjayA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkdldFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6SGFuZGxlUHJvdmlkZXJSZWdpc3RyYXRpb25DYWxsYmFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSGFuZGxlUHJvdmlkZXJSZWdpc3RyYXRpb25DYWxsYmFjayA9XG5cdFx0XCJzZWN1cml0eWFnZW50OkhhbmRsZVByb3ZpZGVyUmVnaXN0cmF0aW9uQ2FsbGJhY2tcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpJbXBvcnRTZWN1cml0eVJlcXVpcmVtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW1wb3J0U2VjdXJpdHlSZXF1aXJlbWVudHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpJbXBvcnRTZWN1cml0eVJlcXVpcmVtZW50c1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OkluaXRpYXRlUHJvdmlkZXJSZWdpc3RyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IEluaXRpYXRlUHJvdmlkZXJSZWdpc3RyYXRpb24gPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpJbml0aWF0ZVByb3ZpZGVyUmVnaXN0cmF0aW9uXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0QWdlbnRTcGFjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFNwYWNlcyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0QWdlbnRTcGFjZXNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RBcHBsaWNhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBsaWNhdGlvbnMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdEFwcGxpY2F0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdEFydGlmYWN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFydGlmYWN0cyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0QXJ0aWZhY3RzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0Q29kZVJldmlld0pvYlRhc2tzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29kZVJldmlld0pvYlRhc2tzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdENvZGVSZXZpZXdKb2JUYXNrc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdENvZGVSZXZpZXdKb2JzRm9yQ29kZVJldmlldyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVSZXZpZXdKb2JzRm9yQ29kZVJldmlldyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXdcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RDb2RlUmV2aWV3cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVSZXZpZXdzID0gXCJzZWN1cml0eWFnZW50Okxpc3RDb2RlUmV2aWV3c1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdERlc2lnblJldmlld0NvbW1lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGVzaWduUmV2aWV3Q29tbWVudHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0RGVzaWduUmV2aWV3Q29tbWVudHNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3REZXNpZ25SZXZpZXdzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGVzaWduUmV2aWV3cyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0RGVzaWduUmV2aWV3c1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdERpc2NvdmVyZWREb21haW5zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGlzY292ZXJlZERvbWFpbnMgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdERpc2NvdmVyZWREb21haW5zXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0RGlzY292ZXJlZEVuZHBvaW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERpc2NvdmVyZWRFbmRwb2ludHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0RGlzY292ZXJlZEVuZHBvaW50c1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdEZpbmRpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RmluZGluZ3MgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdEZpbmRpbmdzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0SW50ZWdyYXRlZFJlc291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEludGVncmF0ZWRSZXNvdXJjZXMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0SW50ZWdyYXRlZFJlc291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdEludGVncmF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEludGVncmF0aW9ucyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0SW50ZWdyYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0TWVtYmVyc2hpcHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1iZXJzaGlwcyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0TWVtYmVyc2hpcHNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RQZW50ZXN0Sm9iVGFza3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQZW50ZXN0Sm9iVGFza3MgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RKb2JUYXNrc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RKb2JzRm9yUGVudGVzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBlbnRlc3RKb2JzRm9yUGVudGVzdCA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RQZW50ZXN0Sm9ic0ZvclBlbnRlc3RcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RQZW50ZXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBlbnRlc3RzID0gXCJzZWN1cml0eWFnZW50Okxpc3RQZW50ZXN0c1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFByaXZhdGVDb25uZWN0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFByaXZhdGVDb25uZWN0aW9ucyA9XG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RQcml2YXRlQ29ubmVjdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RSZXNvdXJjZXNGcm9tSW50ZWdyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZXNGcm9tSW50ZWdyYXRpb24gPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0UmVzb3VyY2VzRnJvbUludGVncmF0aW9uXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2VjdXJpdHlSZXF1aXJlbWVudHMgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0U2VjdXJpdHlSZXF1aXJlbWVudHNcIjtcblx0LyoqIFtSZWFkXSBzZWN1cml0eWFnZW50Okxpc3RUYWdzRm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2UgPSBcInNlY3VyaXR5YWdlbnQ6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFRhcmdldERvbWFpbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYXJnZXREb21haW5zID0gXCJzZWN1cml0eWFnZW50Okxpc3RUYXJnZXREb21haW5zXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0TW9kZWxKb2JUYXNrcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRocmVhdE1vZGVsSm9iVGFza3MgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0TW9kZWxKb2JUYXNrc1wiO1xuXHQvKiogW0xpc3RdIHNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdE1vZGVsSm9icyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRocmVhdE1vZGVsSm9icyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0TW9kZWxKb2JzXCI7XG5cdC8qKiBbTGlzdF0gc2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0TW9kZWxzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0TW9kZWxzID0gXCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbHNcIjtcblx0LyoqIFtMaXN0XSBzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0cyA9IFwic2VjdXJpdHlhZ2VudDpMaXN0VGhyZWF0c1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlB1dERlc2lnblJldmlld0ZlZWRiYWNrICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREZXNpZ25SZXZpZXdGZWVkYmFjayA9XG5cdFx0XCJzZWN1cml0eWFnZW50OlB1dERlc2lnblJldmlld0ZlZWRiYWNrXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RhcnRDb2RlUmVtZWRpYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0Q29kZVJlbWVkaWF0aW9uID0gXCJzZWN1cml0eWFnZW50OlN0YXJ0Q29kZVJlbWVkaWF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RhcnRDb2RlUmV2aWV3Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydENvZGVSZXZpZXdKb2IgPSBcInNlY3VyaXR5YWdlbnQ6U3RhcnRDb2RlUmV2aWV3Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RhcnRQZW50ZXN0Sm9iICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFBlbnRlc3RKb2IgPSBcInNlY3VyaXR5YWdlbnQ6U3RhcnRQZW50ZXN0Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RhcnRUaHJlYXRNb2RlbEpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRUaHJlYXRNb2RlbEpvYiA9IFwic2VjdXJpdHlhZ2VudDpTdGFydFRocmVhdE1vZGVsSm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RhcnRWYWxpZGF0aW9uUnVuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFZhbGlkYXRpb25SdW4gPSBcInNlY3VyaXR5YWdlbnQ6U3RhcnRWYWxpZGF0aW9uUnVuXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RvcENvZGVSZXZpZXdKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BDb2RlUmV2aWV3Sm9iID0gXCJzZWN1cml0eWFnZW50OlN0b3BDb2RlUmV2aWV3Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RvcFBlbnRlc3RKb2IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BQZW50ZXN0Sm9iID0gXCJzZWN1cml0eWFnZW50OlN0b3BQZW50ZXN0Sm9iXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6U3RvcFRocmVhdE1vZGVsSm9iICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wVGhyZWF0TW9kZWxKb2IgPSBcInNlY3VyaXR5YWdlbnQ6U3RvcFRocmVhdE1vZGVsSm9iXCI7XG5cdC8qKiBbVGFnZ2luZ10gc2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2UgPSBcInNlY3VyaXR5YWdlbnQ6VGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpUb2dnbGVNYW5hZ2VkU2VjdXJpdHlSZXF1aXJlbWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVG9nZ2xlTWFuYWdlZFNlY3VyaXR5UmVxdWlyZW1lbnQgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpUb2dnbGVNYW5hZ2VkU2VjdXJpdHlSZXF1aXJlbWVudFwiO1xuXHQvKiogW1RhZ2dpbmddIHNlY3VyaXR5YWdlbnQ6VW50YWdSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZSA9IFwic2VjdXJpdHlhZ2VudDpVbnRhZ1Jlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6VXBkYXRlQWdlbnRTcGFjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWdlbnRTcGFjZSA9IFwic2VjdXJpdHlhZ2VudDpVcGRhdGVBZ2VudFNwYWNlXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6VXBkYXRlQXBwbGljYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcGxpY2F0aW9uID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZUFwcGxpY2F0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6VXBkYXRlQ29kZVJldmlldyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29kZVJldmlldyA9IFwic2VjdXJpdHlhZ2VudDpVcGRhdGVDb2RlUmV2aWV3XCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6VXBkYXRlRGlzY292ZXJlZERvbWFpbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZURpc2NvdmVyZWREb21haW5zID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6VXBkYXRlRGlzY292ZXJlZERvbWFpbnNcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVGaW5kaW5nICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVGaW5kaW5nID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZUZpbmRpbmdcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVJbnRlZ3JhdGVkUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVJbnRlZ3JhdGVkUmVzb3VyY2VzID1cblx0XHRcInNlY3VyaXR5YWdlbnQ6VXBkYXRlSW50ZWdyYXRlZFJlc291cmNlc1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVBlbnRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBlbnRlc3QgPSBcInNlY3VyaXR5YWdlbnQ6VXBkYXRlUGVudGVzdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGUgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVQcml2YXRlQ29ubmVjdGlvbkNlcnRpZmljYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHNlY3VyaXR5YWdlbnQ6VXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudCA9XG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gc2VjdXJpdHlhZ2VudDpVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgPVxuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVRhcmdldERvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGFyZ2V0RG9tYWluID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZVRhcmdldERvbWFpblwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVRocmVhdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGhyZWF0ID0gXCJzZWN1cml0eWFnZW50OlVwZGF0ZVRocmVhdFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlVwZGF0ZVRocmVhdE1vZGVsICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUaHJlYXRNb2RlbCA9IFwic2VjdXJpdHlhZ2VudDpVcGRhdGVUaHJlYXRNb2RlbFwiO1xuXHQvKiogW1dyaXRlXSBzZWN1cml0eWFnZW50OlZlcmlmeVRhcmdldERvbWFpbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5VGFyZ2V0RG9tYWluID0gXCJzZWN1cml0eWFnZW50OlZlcmlmeVRhcmdldERvbWFpblwiO1xuXG5cdC8qKiBBbGwgcmVhZC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUmVhZEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0QWdlbnRTcGFjZXMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRBcnRpZmFjdE1ldGFkYXRhLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0Q29kZVJldmlld0pvYnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRDb2RlUmV2aWV3cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldEZpbmRpbmdzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0UGVudGVzdEpvYkNvbnRlbnRNZXRhZGF0YSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFBlbnRlc3RKb2JUYXNrcyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFBlbnRlc3RKb2JzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0UGVudGVzdHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRTZWN1cml0eVJlcXVpcmVtZW50cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFRhcmdldERvbWFpbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0VGhyZWF0TW9kZWxKb2JzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0VGhyZWF0TW9kZWxzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoR2V0VGhyZWF0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaEdldFZhbGlkYXRpb25SdW5zLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkRlc2NyaWJlUHJpdmF0ZUNvbm5lY3Rpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuYWN0aW9uR2V0QXBwbGljYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuYWN0aW9uR2V0QXJ0aWZhY3QsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuYWN0aW9uR2V0RGVzaWduUmV2aWV3LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldERlc2lnblJldmlld0FydGlmYWN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldERlc2lnblJldmlld0ZlZWRiYWNrLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldEludGVncmF0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLmFjdGlvbkdldFByb3ZpZGVyUmVnaXN0cmF0aW9uTWFuaWZlc3QsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuYWN0aW9uR2V0U2VjdXJpdHlSZXF1aXJlbWVudCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5hY3Rpb25HZXRTZWN1cml0eVJlcXVpcmVtZW50UGFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0VGFnc0ZvclJlc291cmNlLFxuXHRdO1xuXHQvKiogQWxsIHdyaXRlLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkFkZEFydGlmYWN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hEZWxldGVDb2RlUmV2aWV3cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5CYXRjaERlbGV0ZVBlbnRlc3RzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hEZWxldGVUaHJlYXRNb2RlbHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQmF0Y2hEZWxldGVUaHJlYXRzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkJhdGNoVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlQWdlbnRTcGFjZSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVBcHBsaWNhdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVDb2RlUmV2aWV3LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZURlc2lnblJldmlldyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVJbnRlZ3JhdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVNZW1iZXJzaGlwLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZU9uZVRpbWVMb2dpblNlc3Npb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlUGVudGVzdCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVQcml2YXRlQ29ubmVjdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkNyZWF0ZVRhcmdldERvbWFpbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5DcmVhdGVUaHJlYXQsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuQ3JlYXRlVGhyZWF0TW9kZWwsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlQWdlbnRTcGFjZSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVBcHBsaWNhdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVBcnRpZmFjdCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVEZXNpZ25SZXZpZXcsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlSW50ZWdyYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuRGVsZXRlTWVtYmVyc2hpcCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVQcml2YXRlQ29ubmVjdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5EZWxldGVTZWN1cml0eVJlcXVpcmVtZW50LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkRlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkRlbGV0ZVRhcmdldERvbWFpbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5IYW5kbGVQcm92aWRlclJlZ2lzdHJhdGlvbkNhbGxiYWNrLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkltcG9ydFNlY3VyaXR5UmVxdWlyZW1lbnRzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkluaXRpYXRlUHJvdmlkZXJSZWdpc3RyYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuUHV0RGVzaWduUmV2aWV3RmVlZGJhY2ssXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuU3RhcnRDb2RlUmVtZWRpYXRpb24sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuU3RhcnRDb2RlUmV2aWV3Sm9iLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlN0YXJ0UGVudGVzdEpvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdGFydFRocmVhdE1vZGVsSm9iLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlN0YXJ0VmFsaWRhdGlvblJ1bixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdG9wQ29kZVJldmlld0pvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdG9wUGVudGVzdEpvYixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5TdG9wVGhyZWF0TW9kZWxKb2IsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVG9nZ2xlTWFuYWdlZFNlY3VyaXR5UmVxdWlyZW1lbnQsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlQWdlbnRTcGFjZSxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVBcHBsaWNhdGlvbixcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVDb2RlUmV2aWV3LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZURpc2NvdmVyZWREb21haW5zLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZUZpbmRpbmcsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlSW50ZWdyYXRlZFJlc291cmNlcyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVQZW50ZXN0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGUsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5VcGRhdGVUYXJnZXREb21haW4sXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVXBkYXRlVGhyZWF0LFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlVwZGF0ZVRocmVhdE1vZGVsLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLlZlcmlmeVRhcmdldERvbWFpbixcblx0XTtcblx0LyoqIEFsbCBsaXN0LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxMaXN0QWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEFnZW50U3BhY2VzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RBcHBsaWNhdGlvbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEFydGlmYWN0cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0Q29kZVJldmlld0pvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXcsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdENvZGVSZXZpZXdzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3REZXNpZ25SZXZpZXdDb21tZW50cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0RGVzaWduUmV2aWV3cyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0RGlzY292ZXJlZERvbWFpbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdERpc2NvdmVyZWRFbmRwb2ludHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdEZpbmRpbmdzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RJbnRlZ3JhdGVkUmVzb3VyY2VzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RJbnRlZ3JhdGlvbnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdE1lbWJlcnNoaXBzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RQZW50ZXN0Sm9iVGFza3MsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFBlbnRlc3RKb2JzRm9yUGVudGVzdCxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0UGVudGVzdHMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFByaXZhdGVDb25uZWN0aW9ucyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0UmVzb3VyY2VzRnJvbUludGVncmF0aW9uLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RTZWN1cml0eVJlcXVpcmVtZW50UGFja3MsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RUYXJnZXREb21haW5zLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RUaHJlYXRNb2RlbEpvYlRhc2tzLFxuXHRcdFNlY3VyaXR5YWdlbnRBY3Rpb25zLkxpc3RUaHJlYXRNb2RlbEpvYnMsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuTGlzdFRocmVhdE1vZGVscyxcblx0XHRTZWN1cml0eWFnZW50QWN0aW9ucy5MaXN0VGhyZWF0cyxcblx0XTtcblx0LyoqIEFsbCBwZXJtaXNzaW9uLW1hbmFnZW1lbnQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFBlcm1pc3Npb25NYW5hZ2VtZW50QWN0aW9uczogc3RyaW5nW10gPSBbXTtcblx0LyoqIEFsbCB0YWdnaW5nLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxUYWdnaW5nQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVGFnUmVzb3VyY2UsXG5cdFx0U2VjdXJpdHlhZ2VudEFjdGlvbnMuVW50YWdSZXNvdXJjZSxcblx0XTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIEFnZW50U3BhY2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRBZ2VudFNwYWNlQXJuUHJvcHMge1xuXHQvKiogVGhlIEFnZW50SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGFnZW50SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBBZ2VudFNwYWNlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50QWdlbnRTcGFjZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQWdlbnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFnZW50SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIEFwcGxpY2F0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50QXBwbGljYXRpb25Bcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQXBwbGljYXRpb25JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYXBwbGljYXRpb25JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIEFwcGxpY2F0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50QXBwbGljYXRpb25Bcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFwcGxpY2F0aW9uSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBhcHBsaWNhdGlvbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBJbnRlZ3JhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudEludGVncmF0aW9uQXJuUHJvcHMge1xuXHQvKiogVGhlIEludGVncmF0aW9uSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGludGVncmF0aW9uSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBJbnRlZ3JhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudEludGVncmF0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBJbnRlZ3JhdGlvbklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgaW50ZWdyYXRpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgUHJpdmF0ZUNvbm5lY3Rpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRQcml2YXRlQ29ubmVjdGlvbkFyblByb3BzIHtcblx0LyoqIFRoZSBQcml2YXRlQ29ubmVjdGlvbk5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHByaXZhdGVDb25uZWN0aW9uTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIFByaXZhdGVDb25uZWN0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eWFnZW50UHJpdmF0ZUNvbm5lY3Rpb25Bcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFByaXZhdGVDb25uZWN0aW9uTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHByaXZhdGVDb25uZWN0aW9uTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRTZWN1cml0eVJlcXVpcmVtZW50UGFja0FyblByb3BzIHtcblx0LyoqIFRoZSBTZWN1cml0eVJlcXVpcmVtZW50UGFja0lkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzZWN1cml0eVJlcXVpcmVtZW50UGFja0lkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRTZWN1cml0eVJlcXVpcmVtZW50UGFja0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgU2VjdXJpdHlSZXF1aXJlbWVudFBhY2tJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIFRhcmdldERvbWFpbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlhZ2VudFRhcmdldERvbWFpbkFyblByb3BzIHtcblx0LyoqIFRoZSBUYXJnZXREb21haW5JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdGFyZ2V0RG9tYWluSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBUYXJnZXREb21haW4gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5YWdlbnRUYXJnZXREb21haW5Bcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRhcmdldERvbWFpbklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdGFyZ2V0RG9tYWluSWQ6IHN0cmluZztcbn1cblxuY29uc3QgQWdlbnRTcGFjZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZWN1cml0eWFnZW50Oig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6YWdlbnQtc3BhY2VcXC8oPzxhZ2VudElkPlteOi8/XSspJC87XG5jb25zdCBBcHBsaWNhdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZWN1cml0eWFnZW50Oig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6YXBwbGljYXRpb25cXC8oPzxhcHBsaWNhdGlvbklkPlteOi8/XSspJC87XG5jb25zdCBJbnRlZ3JhdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZWN1cml0eWFnZW50Oig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6aW50ZWdyYXRpb25cXC8oPzxpbnRlZ3JhdGlvbklkPlteOi8/XSspJC87XG5jb25zdCBQcml2YXRlQ29ubmVjdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZWN1cml0eWFnZW50Oig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cHJpdmF0ZS1jb25uZWN0aW9uXFwvKD88cHJpdmF0ZUNvbm5lY3Rpb25OYW1lPlteOi8/XSspJC87XG5jb25zdCBTZWN1cml0eVJlcXVpcmVtZW50UGFja0FyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZWN1cml0eWFnZW50Oig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c2VjdXJpdHktcmVxdWlyZW1lbnQtcGFja1xcLyg/PHNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWQ+W146Lz9dKykkLztcbmNvbnN0IFRhcmdldERvbWFpbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpzZWN1cml0eWFnZW50Oig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6dGFyZ2V0LWRvbWFpblxcLyg/PHRhcmdldERvbWFpbklkPlteOi8/XSspJC87XG5cbi8qKlxuICogQVJOIGJ1aWxkZXJzLCB2YWxpZGF0b3JzLCBhbmQgcGFyc2VycyBmb3Igc2VjdXJpdHlhZ2VudCByZXNvdXJjZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZWN1cml0eWFnZW50UmVzb3VyY2VzIHtcblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBBZ2VudFNwYWNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFnZW50U3BhY2UocHJvcHM6IFNlY3VyaXR5YWdlbnRBZ2VudFNwYWNlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlY3VyaXR5YWdlbnQ6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YWdlbnQtc3BhY2UvJHtwcm9wcy5hZ2VudElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBBZ2VudFNwYWNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBZ2VudFNwYWNlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFnZW50U3BhY2VBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgQWdlbnRTcGFjZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VBZ2VudFNwYWNlQXJuKGFybjogc3RyaW5nKTogU2VjdXJpdHlhZ2VudEFnZW50U3BhY2VBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFnZW50U3BhY2VBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgQWdlbnRTcGFjZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRhZ2VudElkOiBtYXRjaC5ncm91cHMhLmFnZW50SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgQXBwbGljYXRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYXBwbGljYXRpb24ocHJvcHM6IFNlY3VyaXR5YWdlbnRBcHBsaWNhdGlvbkFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZWN1cml0eWFnZW50OiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmFwcGxpY2F0aW9uLyR7cHJvcHMuYXBwbGljYXRpb25JZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgQXBwbGljYXRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFwcGxpY2F0aW9uQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFwcGxpY2F0aW9uQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIEFwcGxpY2F0aW9uIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUFwcGxpY2F0aW9uQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZWN1cml0eWFnZW50QXBwbGljYXRpb25Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFwcGxpY2F0aW9uQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEFwcGxpY2F0aW9uIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGFwcGxpY2F0aW9uSWQ6IG1hdGNoLmdyb3VwcyEuYXBwbGljYXRpb25JZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBJbnRlZ3JhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpbnRlZ3JhdGlvbihwcm9wczogU2VjdXJpdHlhZ2VudEludGVncmF0aW9uQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlY3VyaXR5YWdlbnQ6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06aW50ZWdyYXRpb24vJHtwcm9wcy5pbnRlZ3JhdGlvbklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBJbnRlZ3JhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkSW50ZWdyYXRpb25Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSW50ZWdyYXRpb25Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgSW50ZWdyYXRpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlSW50ZWdyYXRpb25Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlY3VyaXR5YWdlbnRJbnRlZ3JhdGlvbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gSW50ZWdyYXRpb25Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgSW50ZWdyYXRpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aW50ZWdyYXRpb25JZDogbWF0Y2guZ3JvdXBzIS5pbnRlZ3JhdGlvbklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIFByaXZhdGVDb25uZWN0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHByaXZhdGVDb25uZWN0aW9uKFxuXHRcdHByb3BzOiBTZWN1cml0eWFnZW50UHJpdmF0ZUNvbm5lY3Rpb25Bcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZWN1cml0eWFnZW50OiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnByaXZhdGUtY29ubmVjdGlvbi8ke3Byb3BzLnByaXZhdGVDb25uZWN0aW9uTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgUHJpdmF0ZUNvbm5lY3Rpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFByaXZhdGVDb25uZWN0aW9uQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFByaXZhdGVDb25uZWN0aW9uQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIFByaXZhdGVDb25uZWN0aW9uIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVByaXZhdGVDb25uZWN0aW9uQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBTZWN1cml0eWFnZW50UHJpdmF0ZUNvbm5lY3Rpb25Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFByaXZhdGVDb25uZWN0aW9uQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIFByaXZhdGVDb25uZWN0aW9uIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHByaXZhdGVDb25uZWN0aW9uTmFtZTogbWF0Y2guZ3JvdXBzIS5wcml2YXRlQ29ubmVjdGlvbk5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgc2VjdXJpdHlSZXF1aXJlbWVudFBhY2soXG5cdFx0cHJvcHM6IFNlY3VyaXR5YWdlbnRTZWN1cml0eVJlcXVpcmVtZW50UGFja0FyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnNlY3VyaXR5YWdlbnQ6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c2VjdXJpdHktcmVxdWlyZW1lbnQtcGFjay8ke3Byb3BzLnNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRTZWN1cml0eVJlcXVpcmVtZW50UGFja0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBTZWN1cml0eVJlcXVpcmVtZW50UGFja0FyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VTZWN1cml0eVJlcXVpcmVtZW50UGFja0Fybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogU2VjdXJpdHlhZ2VudFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBTZWN1cml0eVJlcXVpcmVtZW50UGFja0FyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBTZWN1cml0eVJlcXVpcmVtZW50UGFjayBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRzZWN1cml0eVJlcXVpcmVtZW50UGFja0lkOiBtYXRjaC5ncm91cHMhLnNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgVGFyZ2V0RG9tYWluIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHRhcmdldERvbWFpbihwcm9wczogU2VjdXJpdHlhZ2VudFRhcmdldERvbWFpbkFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpzZWN1cml0eWFnZW50OiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRhcmdldC1kb21haW4vJHtwcm9wcy50YXJnZXREb21haW5JZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgVGFyZ2V0RG9tYWluIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRUYXJnZXREb21haW5Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gVGFyZ2V0RG9tYWluQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIFRhcmdldERvbWFpbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VUYXJnZXREb21haW5Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFNlY3VyaXR5YWdlbnRUYXJnZXREb21haW5Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFRhcmdldERvbWFpbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBUYXJnZXREb21haW4gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGFyZ2V0RG9tYWluSWQ6IG1hdGNoLmdyb3VwcyEudGFyZ2V0RG9tYWluSWQsXG5cdFx0fTtcblx0fVxufVxuXG4vKipcbiAqIEFQSSBvcGVyYXRpb24gdG8gcmVxdWlyZWQgSUFNIGFjdGlvbnMgbWFwcGluZyBmb3Igc2VjdXJpdHlhZ2VudC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlY3VyaXR5YWdlbnRPcGVyYXRpb25zIHtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWRkQXJ0aWZhY3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRBcnRpZmFjdDogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OkFkZEFydGlmYWN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaENyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hEZWxldGVDb2RlUmV2aWV3cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlQ29kZVJldmlld3M6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaERlbGV0ZUNvZGVSZXZpZXdzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoRGVsZXRlUGVudGVzdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaERlbGV0ZVBlbnRlc3RzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hEZWxldGVQZW50ZXN0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaERlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hEZWxldGVUaHJlYXRNb2RlbHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaERlbGV0ZVRocmVhdE1vZGVsczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoRGVsZXRlVGhyZWF0TW9kZWxzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0QWdlbnRTcGFjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldEFnZW50U3BhY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRBZ2VudFNwYWNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldEFydGlmYWN0TWV0YWRhdGEgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldEFydGlmYWN0TWV0YWRhdGE6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldEFydGlmYWN0TWV0YWRhdGFcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRDb2RlUmV2aWV3Sm9iVGFza3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldENvZGVSZXZpZXdKb2JUYXNrczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0Q29kZVJldmlld0pvYlRhc2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0Q29kZVJldmlld0pvYnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldENvZGVSZXZpZXdKb2JzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRDb2RlUmV2aWV3Sm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldENvZGVSZXZpZXdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRDb2RlUmV2aWV3czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0Q29kZVJldmlld3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRGaW5kaW5ncyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0RmluZGluZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldEZpbmRpbmdzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0UGVudGVzdEpvYlRhc2tzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRQZW50ZXN0Sm9iVGFza3M6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RKb2JUYXNrc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldFBlbnRlc3RKb2JzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRQZW50ZXN0Sm9iczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoR2V0UGVudGVzdEpvYnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRQZW50ZXN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0UGVudGVzdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFBlbnRlc3RzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0U2VjdXJpdHlSZXF1aXJlbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFNlY3VyaXR5UmVxdWlyZW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRTZWN1cml0eVJlcXVpcmVtZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldFRhcmdldERvbWFpbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaEdldFRhcmdldERvbWFpbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRhcmdldERvbWFpbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRNb2RlbEpvYlRhc2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoR2V0VGhyZWF0TW9kZWxKb2JzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRNb2RlbEpvYnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpCYXRjaEdldFRocmVhdE1vZGVsSm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaEdldFRocmVhdE1vZGVscyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoR2V0VGhyZWF0TW9kZWxzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRNb2RlbHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hHZXRUaHJlYXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hHZXRUaHJlYXRzOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6QmF0Y2hHZXRUaHJlYXRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaFVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkJhdGNoVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQWdlbnRTcGFjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50U3BhY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVBZ2VudFNwYWNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInNlY3VyaXR5YWdlbnQ6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQXBwbGljYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcHBsaWNhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZUFwcGxpY2F0aW9uXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInNlY3VyaXR5YWdlbnQ6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQ29kZVJldmlldyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvZGVSZXZpZXc6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVDb2RlUmV2aWV3XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUludGVncmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW50ZWdyYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVJbnRlZ3JhdGlvblwiLFxuXHRcdFwic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVNZW1iZXJzaGlwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlTWVtYmVyc2hpcDogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZU1lbWJlcnNoaXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUGVudGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBlbnRlc3Q6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpDcmVhdGVQZW50ZXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQcml2YXRlQ29ubmVjdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVByaXZhdGVDb25uZWN0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6Q3JlYXRlUHJpdmF0ZUNvbm5lY3Rpb25cIixcblx0XHRcInNlY3VyaXR5YWdlbnQ6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjazogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrXCIsXG5cdFx0XCJzZWN1cml0eWFnZW50OlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRhcmdldERvbWFpbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRhcmdldERvbWFpbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkNyZWF0ZVRhcmdldERvbWFpblwiLFxuXHRcdFwic2VjdXJpdHlhZ2VudDpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVUaHJlYXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUaHJlYXQ6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpDcmVhdGVUaHJlYXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRocmVhdE1vZGVsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGhyZWF0TW9kZWw6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpDcmVhdGVUaHJlYXRNb2RlbFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBZ2VudFNwYWNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWdlbnRTcGFjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZUFnZW50U3BhY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQXBwbGljYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBsaWNhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZUFwcGxpY2F0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFydGlmYWN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXJ0aWZhY3Q6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpEZWxldGVBcnRpZmFjdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlSW50ZWdyYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVJbnRlZ3JhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZUludGVncmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZU1lbWJlcnNoaXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVNZW1iZXJzaGlwOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlTWVtYmVyc2hpcFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQcml2YXRlQ29ubmVjdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVByaXZhdGVDb25uZWN0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6RGVsZXRlUHJpdmF0ZUNvbm5lY3Rpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZWN1cml0eVJlcXVpcmVtZW50UGFjazogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVRhcmdldERvbWFpbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRhcmdldERvbWFpbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkRlbGV0ZVRhcmdldERvbWFpblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVByaXZhdGVDb25uZWN0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVQcml2YXRlQ29ubmVjdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkRlc2NyaWJlUHJpdmF0ZUNvbm5lY3Rpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QXBwbGljYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFwcGxpY2F0aW9uOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6R2V0QXBwbGljYXRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFydGlmYWN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBcnRpZmFjdDogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OkdldEFydGlmYWN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRJbnRlZ3JhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SW50ZWdyYXRpb246IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpHZXRJbnRlZ3JhdGlvblwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6R2V0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgSW1wb3J0U2VjdXJpdHlSZXF1aXJlbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbXBvcnRTZWN1cml0eVJlcXVpcmVtZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OkltcG9ydFNlY3VyaXR5UmVxdWlyZW1lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEluaXRpYXRlUHJvdmlkZXJSZWdpc3RyYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbml0aWF0ZVByb3ZpZGVyUmVnaXN0cmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6SW5pdGlhdGVQcm92aWRlclJlZ2lzdHJhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWdlbnRTcGFjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRTcGFjZXM6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpMaXN0QWdlbnRTcGFjZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBsaWNhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwbGljYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdEFwcGxpY2F0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXJ0aWZhY3RzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFydGlmYWN0czogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50Okxpc3RBcnRpZmFjdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDb2RlUmV2aWV3Sm9iVGFza3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29kZVJldmlld0pvYlRhc2tzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdENvZGVSZXZpZXdKb2JUYXNrc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q29kZVJldmlld0pvYnNGb3JDb2RlUmV2aWV3IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVSZXZpZXdKb2JzRm9yQ29kZVJldmlldzogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RDb2RlUmV2aWV3Sm9ic0ZvckNvZGVSZXZpZXdcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvZGVSZXZpZXdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVSZXZpZXdzOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6TGlzdENvZGVSZXZpZXdzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RGlzY292ZXJlZEVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REaXNjb3ZlcmVkRW5kcG9pbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdERpc2NvdmVyZWRFbmRwb2ludHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEZpbmRpbmdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEZpbmRpbmdzOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6TGlzdEZpbmRpbmdzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0SW50ZWdyYXRlZFJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbnRlZ3JhdGVkUmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdEludGVncmF0ZWRSZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEludGVncmF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbnRlZ3JhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0SW50ZWdyYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNZW1iZXJzaGlwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1iZXJzaGlwczogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50Okxpc3RNZW1iZXJzaGlwc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBlbnRlc3RKb2JUYXNrcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQZW50ZXN0Sm9iVGFza3M6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpMaXN0UGVudGVzdEpvYlRhc2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQZW50ZXN0Sm9ic0ZvclBlbnRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGVudGVzdEpvYnNGb3JQZW50ZXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFBlbnRlc3RKb2JzRm9yUGVudGVzdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UGVudGVzdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGVudGVzdHM6IHN0cmluZ1tdID0gW1wic2VjdXJpdHlhZ2VudDpMaXN0UGVudGVzdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQcml2YXRlQ29ubmVjdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UHJpdmF0ZUNvbm5lY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFByaXZhdGVDb25uZWN0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U2VjdXJpdHlSZXF1aXJlbWVudFBhY2tzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RTZWN1cml0eVJlcXVpcmVtZW50UGFja3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFNlY3VyaXR5UmVxdWlyZW1lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUYWdzRm9yUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGFyZ2V0RG9tYWlucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYXJnZXREb21haW5zOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFRhcmdldERvbWFpbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRocmVhdE1vZGVsSm9iVGFza3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0TW9kZWxKb2JUYXNrczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbEpvYlRhc2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUaHJlYXRNb2RlbEpvYnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0TW9kZWxKb2JzOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6TGlzdFRocmVhdE1vZGVsSm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGhyZWF0TW9kZWxzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRocmVhdE1vZGVsczogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRNb2RlbHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRocmVhdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGhyZWF0czogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50Okxpc3RUaHJlYXRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydENvZGVSZW1lZGlhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0Q29kZVJlbWVkaWF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6U3RhcnRDb2RlUmVtZWRpYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRDb2RlUmV2aWV3Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRDb2RlUmV2aWV3Sm9iOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6U3RhcnRDb2RlUmV2aWV3Sm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0UGVudGVzdEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UGVudGVzdEpvYjogc3RyaW5nW10gPSBbXCJzZWN1cml0eWFnZW50OlN0YXJ0UGVudGVzdEpvYlwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRUaHJlYXRNb2RlbEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0VGhyZWF0TW9kZWxKb2I6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpTdGFydFRocmVhdE1vZGVsSm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BDb2RlUmV2aWV3Sm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcENvZGVSZXZpZXdKb2I6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpTdG9wQ29kZVJldmlld0pvYlwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wUGVudGVzdEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BQZW50ZXN0Sm9iOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6U3RvcFBlbnRlc3RKb2JcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BUaHJlYXRNb2RlbEpvYiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BUaHJlYXRNb2RlbEpvYjogc3RyaW5nW10gPSBbXG5cdFx0XCJzZWN1cml0eWFnZW50OlN0b3BUaHJlYXRNb2RlbEpvYlwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBUYWdSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6VGFnUmVzb3VyY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVudGFnUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6VW50YWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQWdlbnRTcGFjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFnZW50U3BhY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJzZWN1cml0eWFnZW50OlVwZGF0ZUFnZW50U3BhY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXBwbGljYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBsaWNhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInNlY3VyaXR5YWdlbnQ6VXBkYXRlQXBwbGljYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ29kZVJldmlldyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvZGVSZXZpZXc6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVDb2RlUmV2aWV3XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUZpbmRpbmcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVGaW5kaW5nOiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6VXBkYXRlRmluZGluZ1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlSW50ZWdyYXRlZFJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUludGVncmF0ZWRSZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVJbnRlZ3JhdGVkUmVzb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVBlbnRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQZW50ZXN0OiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6VXBkYXRlUGVudGVzdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUHJpdmF0ZUNvbm5lY3Rpb25DZXJ0aWZpY2F0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVByaXZhdGVDb25uZWN0aW9uQ2VydGlmaWNhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVQcml2YXRlQ29ubmVjdGlvbkNlcnRpZmljYXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVNlY3VyaXR5UmVxdWlyZW1lbnRQYWNrIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VjdXJpdHlSZXF1aXJlbWVudFBhY2s6IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFja1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVUYXJnZXREb21haW4gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUYXJnZXREb21haW46IHN0cmluZ1tdID0gW1xuXHRcdFwic2VjdXJpdHlhZ2VudDpVcGRhdGVUYXJnZXREb21haW5cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlVGhyZWF0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVGhyZWF0OiBzdHJpbmdbXSA9IFtcInNlY3VyaXR5YWdlbnQ6VXBkYXRlVGhyZWF0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVUaHJlYXRNb2RlbCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRocmVhdE1vZGVsOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6VXBkYXRlVGhyZWF0TW9kZWxcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVmVyaWZ5VGFyZ2V0RG9tYWluIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVmVyaWZ5VGFyZ2V0RG9tYWluOiBzdHJpbmdbXSA9IFtcblx0XHRcInNlY3VyaXR5YWdlbnQ6VmVyaWZ5VGFyZ2V0RG9tYWluXCIsXG5cdF07XG59XG5cbi8qKlxuICogQ29uZGl0aW9uIGtleSBjb25zdGFudHMgYW5kIGJ1aWxkZXJzIGZvciBzZWN1cml0eWFnZW50LlxuICovXG5leHBvcnQgY2xhc3MgU2VjdXJpdHlhZ2VudENvbmRpdGlvbnMge1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQWdlbnRTcGFjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZ2VudFNwYWNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVBcHBsaWNhdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcHBsaWNhdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlSW50ZWdyYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW50ZWdyYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVByaXZhdGVDb25uZWN0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVByaXZhdGVDb25uZWN0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFjayBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZWN1cml0eVJlcXVpcmVtZW50UGFja0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVudGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wiYXdzOlRhZ0tleXNcIl07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFUVVFU1RfVEFHID0gXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19SRVNPVVJDRV9UQUcgPSBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpUYWdLZXlzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1RBR19LRVlTID0gXCJhd3M6VGFnS2V5c1wiO1xuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlcXVlc3RUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlRhZ0tleXNgLlxuXHQgKi9cblx0c3RhdGljIHRhZ0tleXModmFsdWVzOiBzdHJpbmdbXSk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwiYXdzOlRhZ0tleXNcIjogdmFsdWVzIH0gfTtcblx0fVxufVxuIl19
@@ -16,7 +16,7 @@ class SecurityHubActions {
16
16
  }
17
17
  exports.SecurityHubActions = SecurityHubActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- SecurityHubActions[_a] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubActions", version: "1.25.0" };
19
+ SecurityHubActions[_a] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubActions", version: "1.27.0" };
20
20
  /** The IAM service prefix. */
21
21
  SecurityHubActions.SERVICE_PREFIX = "securityhub";
22
22
  /** [Write] securityhub:AcceptAdministratorInvitation */
@@ -718,7 +718,7 @@ class SecurityHubResources {
718
718
  }
719
719
  exports.SecurityHubResources = SecurityHubResources;
720
720
  _b = JSII_RTTI_SYMBOL_1;
721
- SecurityHubResources[_b] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubResources", version: "1.25.0" };
721
+ SecurityHubResources[_b] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubResources", version: "1.27.0" };
722
722
  /**
723
723
  * API operation to required IAM actions mapping for securityhub.
724
724
  */
@@ -726,7 +726,7 @@ class SecurityHubOperations {
726
726
  }
727
727
  exports.SecurityHubOperations = SecurityHubOperations;
728
728
  _c = JSII_RTTI_SYMBOL_1;
729
- SecurityHubOperations[_c] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubOperations", version: "1.25.0" };
729
+ SecurityHubOperations[_c] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubOperations", version: "1.27.0" };
730
730
  /** IAM actions required for the AcceptAdministratorInvitation API call. */
731
731
  SecurityHubOperations.AcceptAdministratorInvitation = [
732
732
  "securityhub:AcceptAdministratorInvitation",
@@ -1199,7 +1199,7 @@ class SecurityHubConditions {
1199
1199
  }
1200
1200
  exports.SecurityHubConditions = SecurityHubConditions;
1201
1201
  _d = JSII_RTTI_SYMBOL_1;
1202
- SecurityHubConditions[_d] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubConditions", version: "1.25.0" };
1202
+ SecurityHubConditions[_d] = { fqn: "@cdk_utils/iam.securityhub.SecurityHubConditions", version: "1.27.0" };
1203
1203
  /** Condition keys applicable to the BatchImportFindings action. */
1204
1204
  SecurityHubConditions.BatchImportFindingsConditionKeys = [
1205
1205
  "securityhub:TargetAccount",