@cdk_utils/iam 1.33.0 → 1.35.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 (466) 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.d.ts +8 -0
  7. package/lib/generated/services/account.js +17 -5
  8. package/lib/generated/services/acm-pca.js +4 -4
  9. package/lib/generated/services/acm.js +4 -4
  10. package/lib/generated/services/aco-automation.js +4 -4
  11. package/lib/generated/services/action-recommendations.js +1 -1
  12. package/lib/generated/services/activate.js +1 -1
  13. package/lib/generated/services/agent-registry.js +4 -4
  14. package/lib/generated/services/agentaccess-mcp.js +2 -2
  15. package/lib/generated/services/aidevops.js +4 -4
  16. package/lib/generated/services/aiops.js +4 -4
  17. package/lib/generated/services/airflow-serverless.js +4 -4
  18. package/lib/generated/services/airflow.js +4 -4
  19. package/lib/generated/services/amplify.js +4 -4
  20. package/lib/generated/services/amplifybackend.js +3 -3
  21. package/lib/generated/services/amplifyuibuilder.js +4 -4
  22. package/lib/generated/services/aoss.js +4 -4
  23. package/lib/generated/services/apigateway.js +4 -4
  24. package/lib/generated/services/app-integrations.js +4 -4
  25. package/lib/generated/services/appconfig.js +4 -4
  26. package/lib/generated/services/appfabric.js +4 -4
  27. package/lib/generated/services/appflow.js +4 -4
  28. package/lib/generated/services/application-autoscaling.js +4 -4
  29. package/lib/generated/services/application-signals-mcp.js +3 -3
  30. package/lib/generated/services/application-signals.js +4 -4
  31. package/lib/generated/services/application-transformation.js +1 -1
  32. package/lib/generated/services/applicationinsights.js +3 -3
  33. package/lib/generated/services/appmesh-preview.js +2 -2
  34. package/lib/generated/services/appmesh.js +4 -4
  35. package/lib/generated/services/apprunner.js +4 -4
  36. package/lib/generated/services/appstream.js +4 -4
  37. package/lib/generated/services/appstudio.js +2 -2
  38. package/lib/generated/services/appsync.js +4 -4
  39. package/lib/generated/services/apptest.js +3 -3
  40. package/lib/generated/services/aps.js +4 -4
  41. package/lib/generated/services/arc-region-switch.js +4 -4
  42. package/lib/generated/services/arc-zonal-shift.js +4 -4
  43. package/lib/generated/services/arsenal.js +1 -1
  44. package/lib/generated/services/artifact.js +4 -4
  45. package/lib/generated/services/athena.js +4 -4
  46. package/lib/generated/services/auditmanager.js +4 -4
  47. package/lib/generated/services/autoscaling-plans.js +2 -2
  48. package/lib/generated/services/autoscaling.js +4 -4
  49. package/lib/generated/services/aws-external-anthropic.js +3 -3
  50. package/lib/generated/services/aws-marketplace-management.js +1 -1
  51. package/lib/generated/services/aws-marketplace.js +6 -5
  52. package/lib/generated/services/aws-portal.js +1 -1
  53. package/lib/generated/services/awsconnector.js +1 -1
  54. package/lib/generated/services/b2bi.js +4 -4
  55. package/lib/generated/services/backup-gateway.js +4 -4
  56. package/lib/generated/services/backup-search.js +4 -4
  57. package/lib/generated/services/backup-storage.js +1 -1
  58. package/lib/generated/services/backup.js +4 -4
  59. package/lib/generated/services/batch.js +4 -4
  60. package/lib/generated/services/bcm-dashboards.js +4 -4
  61. package/lib/generated/services/bcm-data-exports.js +4 -4
  62. package/lib/generated/services/bcm-pricing-calculator.js +4 -4
  63. package/lib/generated/services/bcm-recommended-actions.js +2 -2
  64. package/lib/generated/services/bedrock-agentcore.js +4 -4
  65. package/lib/generated/services/bedrock-mantle.js +3 -3
  66. package/lib/generated/services/bedrock-websearch.js +2 -2
  67. package/lib/generated/services/bedrock.js +4 -4
  68. package/lib/generated/services/billing.js +4 -4
  69. package/lib/generated/services/billingconductor.js +4 -4
  70. package/lib/generated/services/braket.js +4 -4
  71. package/lib/generated/services/budgets.js +4 -4
  72. package/lib/generated/services/bugbust.js +3 -3
  73. package/lib/generated/services/cases.js +4 -4
  74. package/lib/generated/services/cassandra.js +4 -4
  75. package/lib/generated/services/ce.js +4 -4
  76. package/lib/generated/services/chatbot.js +4 -4
  77. package/lib/generated/services/chime.js +4 -4
  78. package/lib/generated/services/cleanrooms-ml.js +4 -4
  79. package/lib/generated/services/cleanrooms.js +4 -4
  80. package/lib/generated/services/cloud9.js +4 -4
  81. package/lib/generated/services/clouddirectory.js +3 -3
  82. package/lib/generated/services/cloudformation.js +4 -4
  83. package/lib/generated/services/cloudfront-keyvaluestore.js +3 -3
  84. package/lib/generated/services/cloudfront.js +4 -4
  85. package/lib/generated/services/cloudhsm.js +4 -4
  86. package/lib/generated/services/cloudsearch.js +3 -3
  87. package/lib/generated/services/cloudshell.js +3 -3
  88. package/lib/generated/services/cloudtrail-data.js +4 -4
  89. package/lib/generated/services/cloudtrail.js +4 -4
  90. package/lib/generated/services/cloudwatch.js +4 -4
  91. package/lib/generated/services/codeartifact.js +4 -4
  92. package/lib/generated/services/codebuild.js +4 -4
  93. package/lib/generated/services/codecatalyst.js +4 -4
  94. package/lib/generated/services/codecommit.js +4 -4
  95. package/lib/generated/services/codeconnections.js +4 -4
  96. package/lib/generated/services/codedeploy-commands-secure.js +1 -1
  97. package/lib/generated/services/codedeploy.js +4 -4
  98. package/lib/generated/services/codeguru-profiler.js +4 -4
  99. package/lib/generated/services/codeguru-reviewer.js +4 -4
  100. package/lib/generated/services/codeguru-security.js +4 -4
  101. package/lib/generated/services/codeguru.js +1 -1
  102. package/lib/generated/services/codepipeline.js +4 -4
  103. package/lib/generated/services/codestar-connections.js +4 -4
  104. package/lib/generated/services/codestar-notifications.js +4 -4
  105. package/lib/generated/services/codestar.js +3 -3
  106. package/lib/generated/services/codewhisperer.js +3 -3
  107. package/lib/generated/services/cognito-identity.js +4 -4
  108. package/lib/generated/services/cognito-idp.js +4 -4
  109. package/lib/generated/services/cognito-sync.js +3 -3
  110. package/lib/generated/services/comprehend.js +4 -4
  111. package/lib/generated/services/comprehendmedical.js +3 -3
  112. package/lib/generated/services/compute-optimizer.js +3 -3
  113. package/lib/generated/services/config.js +4 -4
  114. package/lib/generated/services/connect-campaigns.js +4 -4
  115. package/lib/generated/services/connect.js +4 -4
  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.d.ts +0 -28
  128. package/lib/generated/services/datazone.js +5 -47
  129. package/lib/generated/services/dax.js +4 -4
  130. package/lib/generated/services/dbqms.js +1 -1
  131. package/lib/generated/services/deadline.js +4 -4
  132. package/lib/generated/services/detective.js +4 -4
  133. package/lib/generated/services/devicefarm.js +4 -4
  134. package/lib/generated/services/devops-guru.js +4 -4
  135. package/lib/generated/services/directconnect.js +4 -4
  136. package/lib/generated/services/discovery.js +3 -3
  137. package/lib/generated/services/dlm.js +4 -4
  138. package/lib/generated/services/dms.js +4 -4
  139. package/lib/generated/services/docdb-elastic.js +4 -4
  140. package/lib/generated/services/drs.js +4 -4
  141. package/lib/generated/services/ds-data.js +4 -4
  142. package/lib/generated/services/ds.js +4 -4
  143. package/lib/generated/services/dsql.js +4 -4
  144. package/lib/generated/services/dynamodb.js +4 -4
  145. package/lib/generated/services/ebs.js +4 -4
  146. package/lib/generated/services/ec2-instance-connect.js +4 -4
  147. package/lib/generated/services/ec2.js +4 -4
  148. package/lib/generated/services/ec2messages.js +2 -2
  149. package/lib/generated/services/ecr-public.js +4 -4
  150. package/lib/generated/services/ecr.js +4 -4
  151. package/lib/generated/services/ecs-mcp.js +1 -1
  152. package/lib/generated/services/ecs.js +7 -5
  153. package/lib/generated/services/eks-auth.js +4 -4
  154. package/lib/generated/services/eks-mcp.js +1 -1
  155. package/lib/generated/services/eks.js +4 -4
  156. package/lib/generated/services/elasticache.d.ts +6 -0
  157. package/lib/generated/services/elasticache.js +13 -5
  158. package/lib/generated/services/elasticbeanstalk.js +4 -4
  159. package/lib/generated/services/elasticfilesystem.js +4 -4
  160. package/lib/generated/services/elasticloadbalancing.js +5 -6
  161. package/lib/generated/services/elasticmapreduce.js +4 -4
  162. package/lib/generated/services/elastictranscoder.js +2 -2
  163. package/lib/generated/services/elemental-activations.js +1 -1
  164. package/lib/generated/services/elemental-appliances-software.js +2 -2
  165. package/lib/generated/services/elemental-inference.js +4 -4
  166. package/lib/generated/services/elemental-support-cases.js +3 -3
  167. package/lib/generated/services/elemental-support-content.js +1 -1
  168. package/lib/generated/services/emr-containers.js +4 -4
  169. package/lib/generated/services/emr-serverless.js +4 -4
  170. package/lib/generated/services/entityresolution.js +4 -4
  171. package/lib/generated/services/es.js +4 -4
  172. package/lib/generated/services/events.js +4 -4
  173. package/lib/generated/services/eventsbilltoaws.js +3 -3
  174. package/lib/generated/services/evidently.js +3 -3
  175. package/lib/generated/services/evs.js +4 -4
  176. package/lib/generated/services/execute-api.js +4 -4
  177. package/lib/generated/services/finops-agent.js +1 -1
  178. package/lib/generated/services/finspace-api.js +3 -3
  179. package/lib/generated/services/finspace.js +4 -4
  180. package/lib/generated/services/firehose.js +4 -4
  181. package/lib/generated/services/fis.js +4 -4
  182. package/lib/generated/services/fms.js +4 -4
  183. package/lib/generated/services/forecast.js +4 -4
  184. package/lib/generated/services/frauddetector.js +4 -4
  185. package/lib/generated/services/freertos.js +3 -3
  186. package/lib/generated/services/freetier.js +2 -2
  187. package/lib/generated/services/fsx.js +4 -4
  188. package/lib/generated/services/gamelift.js +4 -4
  189. package/lib/generated/services/gameliftstreams.js +4 -4
  190. package/lib/generated/services/geo-maps.js +3 -3
  191. package/lib/generated/services/geo-places.js +3 -3
  192. package/lib/generated/services/geo-routes.js +3 -3
  193. package/lib/generated/services/geo.js +4 -4
  194. package/lib/generated/services/glacier.js +4 -4
  195. package/lib/generated/services/globalaccelerator.js +4 -4
  196. package/lib/generated/services/glue.js +4 -4
  197. package/lib/generated/services/grafana.js +4 -4
  198. package/lib/generated/services/greengrass.js +4 -4
  199. package/lib/generated/services/groundstation.js +4 -4
  200. package/lib/generated/services/groundtruthlabeling.js +1 -1
  201. package/lib/generated/services/guardduty.js +4 -4
  202. package/lib/generated/services/health-agent.js +4 -4
  203. package/lib/generated/services/health.js +4 -4
  204. package/lib/generated/services/healthlake.js +4 -4
  205. package/lib/generated/services/honeycode.js +2 -2
  206. package/lib/generated/services/iam.js +4 -4
  207. package/lib/generated/services/identity-sync.js +2 -2
  208. package/lib/generated/services/identitystore-auth.js +1 -1
  209. package/lib/generated/services/identitystore.d.ts +6 -0
  210. package/lib/generated/services/identitystore.js +17 -5
  211. package/lib/generated/services/imagebuilder.js +4 -4
  212. package/lib/generated/services/importexport.js +2 -2
  213. package/lib/generated/services/inspector-scan.js +2 -2
  214. package/lib/generated/services/inspector.js +2 -2
  215. package/lib/generated/services/inspector2-telemetry.js +1 -1
  216. package/lib/generated/services/inspector2.js +4 -4
  217. package/lib/generated/services/interconnect.js +4 -4
  218. package/lib/generated/services/internetmonitor.js +4 -4
  219. package/lib/generated/services/invoicing.js +4 -4
  220. package/lib/generated/services/iot-device-tester.js +1 -1
  221. package/lib/generated/services/iot.js +4 -4
  222. package/lib/generated/services/iotanalytics.js +3 -3
  223. package/lib/generated/services/iotdeviceadvisor.js +4 -4
  224. package/lib/generated/services/iotevents.js +3 -3
  225. package/lib/generated/services/iotfleethub.js +3 -3
  226. package/lib/generated/services/iotfleetwise.js +4 -4
  227. package/lib/generated/services/iotjobsdata.js +4 -4
  228. package/lib/generated/services/iotmanagedintegrations.js +4 -4
  229. package/lib/generated/services/iotsitewise.js +4 -4
  230. package/lib/generated/services/iottwinmaker.js +4 -4
  231. package/lib/generated/services/iotwireless.js +4 -4
  232. package/lib/generated/services/iq-permission.js +2 -2
  233. package/lib/generated/services/iq.js +2 -2
  234. package/lib/generated/services/ivs.js +4 -4
  235. package/lib/generated/services/ivschat.js +4 -4
  236. package/lib/generated/services/kafka-cluster.js +3 -3
  237. package/lib/generated/services/kafka.js +4 -4
  238. package/lib/generated/services/kafkaconnect.js +4 -4
  239. package/lib/generated/services/kendra-ranking.js +4 -4
  240. package/lib/generated/services/kendra.js +4 -4
  241. package/lib/generated/services/kinesis.js +4 -4
  242. package/lib/generated/services/kinesisanalytics.js +4 -4
  243. package/lib/generated/services/kinesisvideo.js +4 -4
  244. package/lib/generated/services/kms.js +4 -4
  245. package/lib/generated/services/lakeformation.js +3 -3
  246. package/lib/generated/services/lambda.js +4 -4
  247. package/lib/generated/services/launchwizard.js +4 -4
  248. package/lib/generated/services/lex.js +4 -4
  249. package/lib/generated/services/license-manager-linux-subscriptions.js +4 -4
  250. package/lib/generated/services/license-manager-user-subscriptions.js +4 -4
  251. package/lib/generated/services/license-manager.js +4 -4
  252. package/lib/generated/services/lightsail.js +4 -4
  253. package/lib/generated/services/logs.js +4 -4
  254. package/lib/generated/services/lookoutequipment.js +4 -4
  255. package/lib/generated/services/lookoutmetrics.js +3 -3
  256. package/lib/generated/services/lookoutvision.js +3 -3
  257. package/lib/generated/services/m2.js +4 -4
  258. package/lib/generated/services/machinelearning.js +3 -3
  259. package/lib/generated/services/macie2.js +4 -4
  260. package/lib/generated/services/managedblockchain-query.js +2 -2
  261. package/lib/generated/services/managedblockchain.js +4 -4
  262. package/lib/generated/services/mapcredits.js +2 -2
  263. package/lib/generated/services/marketplacecommerceanalytics.js +2 -2
  264. package/lib/generated/services/mechanicalturk.js +2 -2
  265. package/lib/generated/services/mediaconnect.js +4 -4
  266. package/lib/generated/services/mediaconvert.js +4 -4
  267. package/lib/generated/services/mediaimport.js +1 -1
  268. package/lib/generated/services/medialive.js +4 -4
  269. package/lib/generated/services/mediapackage-vod.js +4 -4
  270. package/lib/generated/services/mediapackage.js +4 -4
  271. package/lib/generated/services/mediapackagev2.js +4 -4
  272. package/lib/generated/services/mediastore.js +4 -4
  273. package/lib/generated/services/mediatailor.js +4 -4
  274. package/lib/generated/services/medical-imaging.js +4 -4
  275. package/lib/generated/services/memorydb.js +4 -4
  276. package/lib/generated/services/mgh.js +4 -4
  277. package/lib/generated/services/mgn.js +4 -4
  278. package/lib/generated/services/migrationhub-orchestrator.js +4 -4
  279. package/lib/generated/services/migrationhub-strategy.js +2 -2
  280. package/lib/generated/services/mobileanalytics.js +1 -1
  281. package/lib/generated/services/mobiletargeting.js +4 -4
  282. package/lib/generated/services/monitron.js +3 -3
  283. package/lib/generated/services/mpa.js +4 -4
  284. package/lib/generated/services/mq.js +4 -4
  285. package/lib/generated/services/neptune-db.js +4 -4
  286. package/lib/generated/services/neptune-graph.js +4 -4
  287. package/lib/generated/services/network-firewall.js +4 -4
  288. package/lib/generated/services/network-security-director.js +1 -1
  289. package/lib/generated/services/network-security-manager.js +4 -4
  290. package/lib/generated/services/networkflowmonitor.js +4 -4
  291. package/lib/generated/services/networkmanager-chat.js +1 -1
  292. package/lib/generated/services/networkmanager.js +4 -4
  293. package/lib/generated/services/networkmonitor.js +4 -4
  294. package/lib/generated/services/nimble.js +3 -3
  295. package/lib/generated/services/notifications-contacts.js +4 -4
  296. package/lib/generated/services/notifications.js +4 -4
  297. package/lib/generated/services/nova-act.js +3 -3
  298. package/lib/generated/services/oam.js +4 -4
  299. package/lib/generated/services/observabilityadmin.js +4 -4
  300. package/lib/generated/services/odb.js +4 -4
  301. package/lib/generated/services/omics.js +4 -4
  302. package/lib/generated/services/one.js +3 -3
  303. package/lib/generated/services/opensearch.js +3 -3
  304. package/lib/generated/services/opsworks-cm.js +2 -2
  305. package/lib/generated/services/opsworks.js +2 -2
  306. package/lib/generated/services/organizations.js +4 -4
  307. package/lib/generated/services/osis.js +4 -4
  308. package/lib/generated/services/outposts.js +4 -4
  309. package/lib/generated/services/panorama.js +3 -3
  310. package/lib/generated/services/partnercentral-account-management.js +2 -2
  311. package/lib/generated/services/partnercentral.js +4 -4
  312. package/lib/generated/services/payment-cryptography.js +4 -4
  313. package/lib/generated/services/payments.js +3 -3
  314. package/lib/generated/services/pca-connector-ad.js +4 -4
  315. package/lib/generated/services/pca-connector-scep.js +4 -4
  316. package/lib/generated/services/pcs.js +4 -4
  317. package/lib/generated/services/personalize.js +4 -4
  318. package/lib/generated/services/pi.js +4 -4
  319. package/lib/generated/services/pipes.js +4 -4
  320. package/lib/generated/services/polly.js +3 -3
  321. package/lib/generated/services/pricing.js +2 -2
  322. package/lib/generated/services/pricingplanmanager.js +3 -3
  323. package/lib/generated/services/private-networks.js +3 -3
  324. package/lib/generated/services/profile.js +4 -4
  325. package/lib/generated/services/proton.js +4 -4
  326. package/lib/generated/services/purchase-orders.js +3 -3
  327. package/lib/generated/services/q.js +3 -3
  328. package/lib/generated/services/qapps.js +4 -4
  329. package/lib/generated/services/qbusiness.js +4 -4
  330. package/lib/generated/services/qdeveloper.js +3 -3
  331. package/lib/generated/services/qldb.js +3 -3
  332. package/lib/generated/services/quicksight.js +4 -4
  333. package/lib/generated/services/ram.js +4 -4
  334. package/lib/generated/services/rbin.js +4 -4
  335. package/lib/generated/services/rds-data.js +4 -4
  336. package/lib/generated/services/rds-db.js +2 -2
  337. package/lib/generated/services/rds.js +5 -6
  338. package/lib/generated/services/redshift-data.js +4 -4
  339. package/lib/generated/services/redshift-serverless.js +4 -4
  340. package/lib/generated/services/redshift.js +4 -4
  341. package/lib/generated/services/refactor-spaces.js +4 -4
  342. package/lib/generated/services/rekognition.js +4 -4
  343. package/lib/generated/services/repostspace.js +4 -4
  344. package/lib/generated/services/researchstudio.js +1 -1
  345. package/lib/generated/services/resiliencehub.js +4 -4
  346. package/lib/generated/services/resource-explorer-2.js +4 -4
  347. package/lib/generated/services/resource-explorer.js +1 -1
  348. package/lib/generated/services/resource-groups.js +4 -4
  349. package/lib/generated/services/rhelkb.js +1 -1
  350. package/lib/generated/services/robomaker.js +3 -3
  351. package/lib/generated/services/rolesanywhere.js +4 -4
  352. package/lib/generated/services/route53-recovery-cluster.js +4 -4
  353. package/lib/generated/services/route53-recovery-control-config.js +4 -4
  354. package/lib/generated/services/route53-recovery-readiness.js +4 -4
  355. package/lib/generated/services/route53.js +4 -4
  356. package/lib/generated/services/route53domains.js +2 -2
  357. package/lib/generated/services/route53globalresolver.js +4 -4
  358. package/lib/generated/services/route53profiles.js +4 -4
  359. package/lib/generated/services/route53resolver.js +4 -4
  360. package/lib/generated/services/rtbfabric.js +4 -4
  361. package/lib/generated/services/rum.js +4 -4
  362. package/lib/generated/services/s3-object-lambda.js +3 -3
  363. package/lib/generated/services/s3-outposts.js +4 -4
  364. package/lib/generated/services/s3.js +4 -4
  365. package/lib/generated/services/s3express.js +3 -3
  366. package/lib/generated/services/s3files.js +4 -4
  367. package/lib/generated/services/s3tables.js +4 -4
  368. package/lib/generated/services/s3vectors.d.ts +12 -0
  369. package/lib/generated/services/s3vectors.js +25 -5
  370. package/lib/generated/services/sagemaker-data-science-assistant.js +1 -1
  371. package/lib/generated/services/sagemaker-geospatial.js +4 -4
  372. package/lib/generated/services/sagemaker-mlflow.js +3 -3
  373. package/lib/generated/services/sagemaker-unified-studio-mcp.js +1 -1
  374. package/lib/generated/services/sagemaker.js +6 -5
  375. package/lib/generated/services/savingsplans.js +4 -4
  376. package/lib/generated/services/scheduler.js +4 -4
  377. package/lib/generated/services/schemas.js +4 -4
  378. package/lib/generated/services/scn.js +4 -4
  379. package/lib/generated/services/sdb.js +3 -3
  380. package/lib/generated/services/secretsmanager.js +4 -4
  381. package/lib/generated/services/security-ir.js +4 -4
  382. package/lib/generated/services/securityagent.d.ts +2 -0
  383. package/lib/generated/services/securityagent.js +9 -5
  384. package/lib/generated/services/securityhub.d.ts +4 -0
  385. package/lib/generated/services/securityhub.js +11 -5
  386. package/lib/generated/services/securitylake.js +4 -4
  387. package/lib/generated/services/serverlessrepo.js +4 -4
  388. package/lib/generated/services/servicecatalog.js +5 -11
  389. package/lib/generated/services/servicediscovery.js +4 -4
  390. package/lib/generated/services/serviceextract.js +1 -1
  391. package/lib/generated/services/servicequotas.js +4 -4
  392. package/lib/generated/services/ses.js +4 -4
  393. package/lib/generated/services/shield.js +4 -4
  394. package/lib/generated/services/signer.js +4 -4
  395. package/lib/generated/services/signin.js +4 -4
  396. package/lib/generated/services/simspaceweaver.js +3 -3
  397. package/lib/generated/services/sms-voice.js +4 -4
  398. package/lib/generated/services/sms.js +1 -1
  399. package/lib/generated/services/snow-device-management.js +4 -4
  400. package/lib/generated/services/snowball.js +2 -2
  401. package/lib/generated/services/sns.js +4 -4
  402. package/lib/generated/services/social-messaging.js +4 -4
  403. package/lib/generated/services/sqlworkbench.js +3 -3
  404. package/lib/generated/services/sqs.js +4 -4
  405. package/lib/generated/services/ssm-contacts.js +4 -4
  406. package/lib/generated/services/ssm-guiconnect.js +2 -2
  407. package/lib/generated/services/ssm-incidents.js +4 -4
  408. package/lib/generated/services/ssm-quicksetup.js +4 -4
  409. package/lib/generated/services/ssm-sap.js +4 -4
  410. package/lib/generated/services/ssm.js +4 -4
  411. package/lib/generated/services/ssmmessages.js +2 -2
  412. package/lib/generated/services/sso-directory.js +1 -1
  413. package/lib/generated/services/sso-oauth.js +3 -3
  414. package/lib/generated/services/sso.js +4 -4
  415. package/lib/generated/services/startups.js +1 -1
  416. package/lib/generated/services/states.js +4 -4
  417. package/lib/generated/services/storagegateway.js +4 -4
  418. package/lib/generated/services/sts.js +4 -4
  419. package/lib/generated/services/support-console.js +1 -1
  420. package/lib/generated/services/support.js +2 -2
  421. package/lib/generated/services/supportapp.js +2 -2
  422. package/lib/generated/services/supportauthz.js +4 -4
  423. package/lib/generated/services/supportplans.js +1 -1
  424. package/lib/generated/services/sustainability.js +2 -2
  425. package/lib/generated/services/swf.js +4 -4
  426. package/lib/generated/services/synthetics.js +4 -4
  427. package/lib/generated/services/tag.js +2 -2
  428. package/lib/generated/services/tax.js +2 -2
  429. package/lib/generated/services/textract.js +4 -4
  430. package/lib/generated/services/thinclient.js +4 -4
  431. package/lib/generated/services/timestream-influxdb.js +4 -4
  432. package/lib/generated/services/timestream.js +4 -4
  433. package/lib/generated/services/tiros.js +1 -1
  434. package/lib/generated/services/tnb.js +4 -4
  435. package/lib/generated/services/transcribe.js +4 -4
  436. package/lib/generated/services/transfer.js +4 -4
  437. package/lib/generated/services/transform-custom.js +3 -3
  438. package/lib/generated/services/transform.js +3 -3
  439. package/lib/generated/services/translate.js +4 -4
  440. package/lib/generated/services/trustedadvisor.js +3 -3
  441. package/lib/generated/services/ts.js +3 -3
  442. package/lib/generated/services/user-subscriptions.js +2 -2
  443. package/lib/generated/services/uxc.js +2 -2
  444. package/lib/generated/services/vendor-insights.js +3 -3
  445. package/lib/generated/services/verified-access.js +1 -1
  446. package/lib/generated/services/verifiedpermissions.js +4 -4
  447. package/lib/generated/services/voiceid.js +4 -4
  448. package/lib/generated/services/vpc-lattice-svcs.js +3 -3
  449. package/lib/generated/services/vpc-lattice.js +4 -4
  450. package/lib/generated/services/vpce.js +2 -2
  451. package/lib/generated/services/waf-regional.js +4 -4
  452. package/lib/generated/services/waf.js +4 -4
  453. package/lib/generated/services/wafv2.js +4 -4
  454. package/lib/generated/services/wam.js +1 -1
  455. package/lib/generated/services/wellarchitected.js +4 -4
  456. package/lib/generated/services/wickr.js +4 -4
  457. package/lib/generated/services/wisdom.js +4 -4
  458. package/lib/generated/services/workdocs.js +3 -3
  459. package/lib/generated/services/worklink.js +3 -3
  460. package/lib/generated/services/workmail.js +4 -4
  461. package/lib/generated/services/workmailmessageflow.js +3 -3
  462. package/lib/generated/services/workspaces-instances.js +4 -4
  463. package/lib/generated/services/workspaces-web.js +4 -4
  464. package/lib/generated/services/workspaces.js +4 -4
  465. package/lib/generated/services/xray.js +4 -4
  466. package/package.json +1 -1
@@ -16,7 +16,7 @@ class IdentitystoreActions {
16
16
  }
17
17
  exports.IdentitystoreActions = IdentitystoreActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- IdentitystoreActions[_a] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreActions", version: "1.33.0" };
19
+ IdentitystoreActions[_a] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  IdentitystoreActions.SERVICE_PREFIX = "identitystore";
22
22
  /** [Write] identitystore:AddRegion */
@@ -325,7 +325,7 @@ class IdentitystoreResources {
325
325
  }
326
326
  exports.IdentitystoreResources = IdentitystoreResources;
327
327
  _b = JSII_RTTI_SYMBOL_1;
328
- IdentitystoreResources[_b] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreResources", version: "1.33.0" };
328
+ IdentitystoreResources[_b] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreResources", version: "1.35.0" };
329
329
  /**
330
330
  * API operation to required IAM actions mapping for identitystore.
331
331
  */
@@ -333,7 +333,7 @@ class IdentitystoreOperations {
333
333
  }
334
334
  exports.IdentitystoreOperations = IdentitystoreOperations;
335
335
  _c = JSII_RTTI_SYMBOL_1;
336
- IdentitystoreOperations[_c] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreOperations", version: "1.33.0" };
336
+ IdentitystoreOperations[_c] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreOperations", version: "1.35.0" };
337
337
  /** IAM actions required for the CreateGroup API call. */
338
338
  IdentitystoreOperations.CreateGroup = [
339
339
  "identitystore:CreateGroup",
@@ -376,6 +376,10 @@ IdentitystoreOperations.DescribeGroupMembership = [
376
376
  "sso-directory:ListGroupsForMember",
377
377
  "sso-directory:ListGroupsForUser",
378
378
  ];
379
+ /** IAM actions required for the DescribeIdentityStore API call. */
380
+ IdentitystoreOperations.DescribeIdentityStore = [
381
+ "identitystore:DescribeIdentityStore",
382
+ ];
379
383
  /** IAM actions required for the DescribeUser API call. */
380
384
  IdentitystoreOperations.DescribeUser = [
381
385
  "identitystore:DescribeUser",
@@ -421,6 +425,10 @@ IdentitystoreOperations.ListGroups = [
421
425
  "sso-directory:ListGroups",
422
426
  "sso-directory:SearchGroups",
423
427
  ];
428
+ /** IAM actions required for the ListIdentityStores API call. */
429
+ IdentitystoreOperations.ListIdentityStores = [
430
+ "identitystore:ListIdentityStores",
431
+ ];
424
432
  /** IAM actions required for the ListUsers API call. */
425
433
  IdentitystoreOperations.ListUsers = [
426
434
  "identitystore:ListUsers",
@@ -433,6 +441,10 @@ IdentitystoreOperations.UpdateGroup = [
433
441
  "sso-directory:UpdateGroup",
434
442
  "sso-directory:UpdateGroupDisplayName",
435
443
  ];
444
+ /** IAM actions required for the UpdateIdentityStore API call. */
445
+ IdentitystoreOperations.UpdateIdentityStore = [
446
+ "identitystore:UpdateIdentityStore",
447
+ ];
436
448
  /** IAM actions required for the UpdateUser API call. */
437
449
  IdentitystoreOperations.UpdateUser = [
438
450
  "identitystore:UpdateUser",
@@ -490,7 +502,7 @@ class IdentitystoreConditions {
490
502
  }
491
503
  exports.IdentitystoreConditions = IdentitystoreConditions;
492
504
  _d = JSII_RTTI_SYMBOL_1;
493
- IdentitystoreConditions[_d] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreConditions", version: "1.33.0" };
505
+ IdentitystoreConditions[_d] = { fqn: "@cdk_utils/iam.identitystore.IdentitystoreConditions", version: "1.35.0" };
494
506
  /** Condition keys applicable to the CreateGroup action. */
495
507
  IdentitystoreConditions.CreateGroupConditionKeys = [
496
508
  "identitystore:GroupExternalIdIssuers",
@@ -606,4 +618,4 @@ IdentitystoreConditions.RESERVED_USER_ID = "identitystore:ReservedUserId";
606
618
  IdentitystoreConditions.USER_EXTERNAL_ID_ISSUERS = "identitystore:UserExternalIdIssuers";
607
619
  /** Condition key: identitystore:UserId (String) */
608
620
  IdentitystoreConditions.USER_ID = "identitystore:UserId";
609
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHlzdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvc2VydmljZXMvaWRlbnRpdHlzdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdGQUFnRjtBQUNoRiw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzFELG9EQUFvRDtBQUNwRCxvREFBb0Q7QUFDcEQsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7O0FBQWpDLG9EQTRHQzs7O0FBM0dBLDhCQUE4QjtBQUNkLG1DQUFjLEdBQUcsZUFBZSxDQUFDO0FBRWpELHNDQUFzQztBQUN0Qiw4QkFBUyxHQUFHLHlCQUF5QixDQUFDO0FBQ3RELHdDQUF3QztBQUN4QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELGtEQUFrRDtBQUNsQywwQ0FBcUIsR0FBRyxxQ0FBcUMsQ0FBQztBQUM5RSxnREFBZ0Q7QUFDaEMsd0NBQW1CLEdBQUcsbUNBQW1DLENBQUM7QUFDMUUsdUNBQXVDO0FBQ3ZCLCtCQUFVLEdBQUcsMEJBQTBCLENBQUM7QUFDeEQsd0NBQXdDO0FBQ3hCLGdDQUFXLEdBQUcsMkJBQTJCLENBQUM7QUFDMUQsa0RBQWtEO0FBQ2xDLDBDQUFxQixHQUFHLHFDQUFxQyxDQUFDO0FBQzlFLGdEQUFnRDtBQUNoQyx3Q0FBbUIsR0FBRyxtQ0FBbUMsQ0FBQztBQUMxRSx1Q0FBdUM7QUFDdkIsK0JBQVUsR0FBRywwQkFBMEIsQ0FBQztBQUN4RCx5Q0FBeUM7QUFDekIsa0NBQWEsR0FBRyw2QkFBNkIsQ0FBQztBQUM5RCxtREFBbUQ7QUFDbkMsNENBQXVCLEdBQ3RDLHVDQUF1QyxDQUFDO0FBQ3pDLGlEQUFpRDtBQUNqQywwQ0FBcUIsR0FBRyxxQ0FBcUMsQ0FBQztBQUM5RSwwQ0FBMEM7QUFDMUIsbUNBQWMsR0FBRyw4QkFBOEIsQ0FBQztBQUNoRSx3Q0FBd0M7QUFDeEIsaUNBQVksR0FBRyw0QkFBNEIsQ0FB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PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBVVRPLUdFTkVSQVRFRCBGSUxFIOKAlCBETyBOT1QgRURJVCBNQU5VQUxMWVxuLy8gR2VuZXJhdGVkIGZyb20gQVdTIFNlcnZpY2UgQXV0aG9yaXphdGlvbiBSZWZlcmVuY2UgZGF0YVxuLy8gU291cmNlOiBkYXRhL3NlcnZpY2UtcmVmZXJlbmNlL2lkZW50aXR5c3RvcmUuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIGlkZW50aXR5c3RvcmUgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIElkZW50aXR5c3RvcmVBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwiaWRlbnRpdHlzdG9yZVwiO1xuXG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6QWRkUmVnaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRSZWdpb24gPSBcImlkZW50aXR5c3RvcmU6QWRkUmVnaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOkNyZWF0ZUdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlR3JvdXBNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHcm91cE1lbWJlcnNoaXAgPSBcImlkZW50aXR5c3RvcmU6Q3JlYXRlR3JvdXBNZW1iZXJzaGlwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlSWRlbnRpdHlTdG9yZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpDcmVhdGVJZGVudGl0eVN0b3JlXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVXNlciA9IFwiaWRlbnRpdHlzdG9yZTpDcmVhdGVVc2VyXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOkRlbGV0ZUdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHcm91cE1lbWJlcnNoaXAgPSBcImlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBNZW1iZXJzaGlwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlSWRlbnRpdHlTdG9yZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpEZWxldGVJZGVudGl0eVN0b3JlXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVXNlciA9IFwiaWRlbnRpdHlzdG9yZTpEZWxldGVVc2VyXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpEZXNjcmliZUdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUdyb3VwTWVtYmVyc2hpcCA9XG5cdFx0XCJpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBNZW1iZXJzaGlwXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpEZXNjcmliZUlkZW50aXR5U3RvcmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpEZXNjcmliZUlkZW50aXR5U3RvcmVcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOkRlc2NyaWJlUmVnaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlZ2lvbiA9IFwiaWRlbnRpdHlzdG9yZTpEZXNjcmliZVJlZ2lvblwiO1xuXHQvKiogW1JlYWRdIGlkZW50aXR5c3RvcmU6RGVzY3JpYmVVc2VyICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVVzZXIgPSBcImlkZW50aXR5c3RvcmU6RGVzY3JpYmVVc2VyXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpHZXRHcm91cElkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHcm91cElkID0gXCJpZGVudGl0eXN0b3JlOkdldEdyb3VwSWRcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOkdldEdyb3VwTWVtYmVyc2hpcElkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHcm91cE1lbWJlcnNoaXBJZCA9XG5cdFx0XCJpZGVudGl0eXN0b3JlOkdldEdyb3VwTWVtYmVyc2hpcElkXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpHZXRVc2VySWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFVzZXJJZCA9IFwiaWRlbnRpdHlzdG9yZTpHZXRVc2VySWRcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOklzTWVtYmVySW5Hcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IElzTWVtYmVySW5Hcm91cHMgPSBcImlkZW50aXR5c3RvcmU6SXNNZW1iZXJJbkdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIGlkZW50aXR5c3RvcmU6TGlzdEdyb3VwTWVtYmVyc2hpcHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzID0gXCJpZGVudGl0eXN0b3JlOkxpc3RHcm91cE1lbWJlcnNoaXBzXCI7XG5cdC8qKiBbTGlzdF0gaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3VwTWVtYmVyc2hpcHNGb3JNZW1iZXIgPVxuXHRcdFwiaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlclwiO1xuXHQvKiogW0xpc3RdIGlkZW50aXR5c3RvcmU6TGlzdEdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3VwcyA9IFwiaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBzXCI7XG5cdC8qKiBbTGlzdF0gaWRlbnRpdHlzdG9yZTpMaXN0SWRlbnRpdHlTdG9yZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0eVN0b3JlcyA9IFwiaWRlbnRpdHlzdG9yZTpMaXN0SWRlbnRpdHlTdG9yZXNcIjtcblx0LyoqIFtMaXN0XSBpZGVudGl0eXN0b3JlOkxpc3RSZWdpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVnaW9ucyA9IFwiaWRlbnRpdHlzdG9yZTpMaXN0UmVnaW9uc1wiO1xuXHQvKiogW0xpc3RdIGlkZW50aXR5c3RvcmU6TGlzdFVzZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VXNlcnMgPSBcImlkZW50aXR5c3RvcmU6TGlzdFVzZXJzXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6UmVtb3ZlUmVnaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVSZWdpb24gPSBcImlkZW50aXR5c3RvcmU6UmVtb3ZlUmVnaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6UmVzZXJ2ZVVzZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2VydmVVc2VyID0gXCJpZGVudGl0eXN0b3JlOlJlc2VydmVVc2VyXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6VXBkYXRlR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOlVwZGF0ZUdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6VXBkYXRlSWRlbnRpdHlTdG9yZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpVcGRhdGVJZGVudGl0eVN0b3JlXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6VXBkYXRlVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVXNlciA9IFwiaWRlbnRpdHlzdG9yZTpVcGRhdGVVc2VyXCI7XG5cblx0LyoqIEFsbCByZWFkLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxSZWFkQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVzY3JpYmVHcm91cCxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5EZXNjcmliZUdyb3VwTWVtYmVyc2hpcCxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5EZXNjcmliZUlkZW50aXR5U3RvcmUsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVzY3JpYmVSZWdpb24sXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVzY3JpYmVVc2VyLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLmFjdGlvbkdldEdyb3VwSWQsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuYWN0aW9uR2V0R3JvdXBNZW1iZXJzaGlwSWQsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuYWN0aW9uR2V0VXNlcklkLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLklzTWVtYmVySW5Hcm91cHMsXG5cdF07XG5cdC8qKiBBbGwgd3JpdGUtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFdyaXRlQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuQWRkUmVnaW9uLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkNyZWF0ZUdyb3VwLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkNyZWF0ZUdyb3VwTWVtYmVyc2hpcCxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5DcmVhdGVJZGVudGl0eVN0b3JlLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkNyZWF0ZVVzZXIsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVsZXRlR3JvdXAsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVsZXRlR3JvdXBNZW1iZXJzaGlwLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkRlbGV0ZUlkZW50aXR5U3RvcmUsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVsZXRlVXNlcixcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5SZW1vdmVSZWdpb24sXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuUmVzZXJ2ZVVzZXIsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuVXBkYXRlR3JvdXAsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuVXBkYXRlSWRlbnRpdHlTdG9yZSxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5VcGRhdGVVc2VyLFxuXHRdO1xuXHQvKiogQWxsIGxpc3QtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbExpc3RBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0R3JvdXBNZW1iZXJzaGlwcyxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlcixcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0R3JvdXBzLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkxpc3RJZGVudGl0eVN0b3Jlcyxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0UmVnaW9ucyxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0VXNlcnMsXG5cdF07XG5cdC8qKiBBbGwgcGVybWlzc2lvbi1tYW5hZ2VtZW50LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxQZXJtaXNzaW9uTWFuYWdlbWVudEFjdGlvbnM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW107XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBBbGxHcm91cE1lbWJlcnNoaXBzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsR3JvdXBNZW1iZXJzaGlwc0FyblByb3BzIHtcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBBbGxHcm91cE1lbWJlcnNoaXBzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsR3JvdXBNZW1iZXJzaGlwc0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBBbGxHcm91cHMgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5c3RvcmVBbGxHcm91cHNBcm5Qcm9wcyB7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgQWxsR3JvdXBzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsR3JvdXBzQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIEFsbFVzZXJzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsVXNlcnNBcm5Qcm9wcyB7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgQWxsVXNlcnMgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5c3RvcmVBbGxVc2Vyc0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBHcm91cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpdHlzdG9yZUdyb3VwQXJuUHJvcHMge1xuXHQvKiogVGhlIEdyb3VwSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGdyb3VwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBHcm91cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpdHlzdG9yZUdyb3VwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBHcm91cElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZ3JvdXBJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgR3JvdXBNZW1iZXJzaGlwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlR3JvdXBNZW1iZXJzaGlwQXJuUHJvcHMge1xuXHQvKiogVGhlIE1lbWJlcnNoaXBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbWVtYmVyc2hpcElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgR3JvdXBNZW1iZXJzaGlwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlR3JvdXBNZW1iZXJzaGlwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBNZW1iZXJzaGlwSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBtZW1iZXJzaGlwSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIElkZW50aXR5c3RvcmUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5c3RvcmVJZGVudGl0eXN0b3JlQXJuUHJvcHMge1xuXHQvKiogVGhlIElkZW50aXR5U3RvcmVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaWRlbnRpdHlTdG9yZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBJZGVudGl0eXN0b3JlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlSWRlbnRpdHlzdG9yZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIElkZW50aXR5U3RvcmVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGlkZW50aXR5U3RvcmVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgVXNlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpdHlzdG9yZVVzZXJBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgVXNlcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB1c2VySWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBVc2VyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlVXNlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVXNlcklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdXNlcklkOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFsbEdyb3VwTWVtYmVyc2hpcHNBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6aWRlbnRpdHlzdG9yZTo6Om1lbWJlcnNoaXBcXC8uKiQvO1xuY29uc3QgQWxsR3JvdXBzQXJuUmVnZXggPSAvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmlkZW50aXR5c3RvcmU6Ojpncm91cFxcLy4qJC87XG5jb25zdCBBbGxVc2Vyc0FyblJlZ2V4ID0gL15hcm46KD88cGFydGl0aW9uPlteOl0rKTppZGVudGl0eXN0b3JlOjo6dXNlclxcLy4qJC87XG5jb25zdCBHcm91cEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTppZGVudGl0eXN0b3JlOjo6Z3JvdXBcXC8oPzxncm91cElkPlteOi8/XSspJC87XG5jb25zdCBHcm91cE1lbWJlcnNoaXBBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6aWRlbnRpdHlzdG9yZTo6Om1lbWJlcnNoaXBcXC8oPzxtZW1iZXJzaGlwSWQ+W146Lz9dKykkLztcbmNvbnN0IElkZW50aXR5c3RvcmVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6aWRlbnRpdHlzdG9yZTo6KD88YWNjb3VudD5bXjpdKik6aWRlbnRpdHlzdG9yZVxcLyg/PGlkZW50aXR5U3RvcmVJZD5bXjovP10rKSQvO1xuY29uc3QgVXNlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTppZGVudGl0eXN0b3JlOjo6dXNlclxcLyg/PHVzZXJJZD5bXjovP10rKSQvO1xuXG4vKipcbiAqIEFSTiBidWlsZGVycywgdmFsaWRhdG9ycywgYW5kIHBhcnNlcnMgZm9yIGlkZW50aXR5c3RvcmUgcmVzb3VyY2VzLlxuICovXG5leHBvcnQgY2xhc3MgSWRlbnRpdHlzdG9yZVJlc291cmNlcyB7XG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgQWxsR3JvdXBNZW1iZXJzaGlwcyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBhbGxHcm91cE1lbWJlcnNoaXBzKFxuXHRcdHByb3BzOiBJZGVudGl0eXN0b3JlQWxsR3JvdXBNZW1iZXJzaGlwc0FyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmlkZW50aXR5c3RvcmU6OjptZW1iZXJzaGlwLypgO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgQWxsR3JvdXBNZW1iZXJzaGlwcyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQWxsR3JvdXBNZW1iZXJzaGlwc0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBbGxHcm91cE1lbWJlcnNoaXBzQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIEFsbEdyb3VwTWVtYmVyc2hpcHMgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWxsR3JvdXBNZW1iZXJzaGlwc0Fybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogSWRlbnRpdHlzdG9yZUFsbEdyb3VwTWVtYmVyc2hpcHNBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFsbEdyb3VwTWVtYmVyc2hpcHNBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgQWxsR3JvdXBNZW1iZXJzaGlwcyBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgQWxsR3JvdXBzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFsbEdyb3Vwcyhwcm9wczogSWRlbnRpdHlzdG9yZUFsbEdyb3Vwc0FyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTppZGVudGl0eXN0b3JlOjo6Z3JvdXAvKmA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBBbGxHcm91cHMgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFsbEdyb3Vwc0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBbGxHcm91cHNBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgQWxsR3JvdXBzIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUFsbEdyb3Vwc0Fybihhcm46IHN0cmluZyk6IElkZW50aXR5c3RvcmVBbGxHcm91cHNBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFsbEdyb3Vwc0FyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBBbGxHcm91cHMgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIEFsbFVzZXJzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFsbFVzZXJzKHByb3BzOiBJZGVudGl0eXN0b3JlQWxsVXNlcnNBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06aWRlbnRpdHlzdG9yZTo6OnVzZXIvKmA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBBbGxVc2VycyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQWxsVXNlcnNBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQWxsVXNlcnNBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgQWxsVXNlcnMgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWxsVXNlcnNBcm4oYXJuOiBzdHJpbmcpOiBJZGVudGl0eXN0b3JlQWxsVXNlcnNBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFsbFVzZXJzQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEFsbFVzZXJzIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBHcm91cCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBncm91cChwcm9wczogSWRlbnRpdHlzdG9yZUdyb3VwQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmlkZW50aXR5c3RvcmU6Ojpncm91cC8ke3Byb3BzLmdyb3VwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIEdyb3VwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRHcm91cEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBHcm91cEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBHcm91cCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VHcm91cEFybihhcm46IHN0cmluZyk6IElkZW50aXR5c3RvcmVHcm91cEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gR3JvdXBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgR3JvdXAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Z3JvdXBJZDogbWF0Y2guZ3JvdXBzIS5ncm91cElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIEdyb3VwTWVtYmVyc2hpcCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBncm91cE1lbWJlcnNoaXAocHJvcHM6IElkZW50aXR5c3RvcmVHcm91cE1lbWJlcnNoaXBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06aWRlbnRpdHlzdG9yZTo6Om1lbWJlcnNoaXAvJHtwcm9wcy5tZW1iZXJzaGlwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIEdyb3VwTWVtYmVyc2hpcCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkR3JvdXBNZW1iZXJzaGlwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEdyb3VwTWVtYmVyc2hpcEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBHcm91cE1lbWJlcnNoaXAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlR3JvdXBNZW1iZXJzaGlwQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBJZGVudGl0eXN0b3JlR3JvdXBNZW1iZXJzaGlwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBHcm91cE1lbWJlcnNoaXBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgR3JvdXBNZW1iZXJzaGlwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdG1lbWJlcnNoaXBJZDogbWF0Y2guZ3JvdXBzIS5tZW1iZXJzaGlwSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgSWRlbnRpdHlzdG9yZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpZGVudGl0eXN0b3JlKHByb3BzOiBJZGVudGl0eXN0b3JlSWRlbnRpdHlzdG9yZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTppZGVudGl0eXN0b3JlOjoke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmlkZW50aXR5c3RvcmUvJHtwcm9wcy5pZGVudGl0eVN0b3JlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIElkZW50aXR5c3RvcmUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZElkZW50aXR5c3RvcmVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSWRlbnRpdHlzdG9yZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBJZGVudGl0eXN0b3JlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUlkZW50aXR5c3RvcmVBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IElkZW50aXR5c3RvcmVJZGVudGl0eXN0b3JlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBJZGVudGl0eXN0b3JlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIElkZW50aXR5c3RvcmUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aWRlbnRpdHlTdG9yZUlkOiBtYXRjaC5ncm91cHMhLmlkZW50aXR5U3RvcmVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBVc2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHVzZXIocHJvcHM6IElkZW50aXR5c3RvcmVVc2VyQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmlkZW50aXR5c3RvcmU6Ojp1c2VyLyR7cHJvcHMudXNlcklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBVc2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRVc2VyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFVzZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgVXNlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VVc2VyQXJuKGFybjogc3RyaW5nKTogSWRlbnRpdHlzdG9yZVVzZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFVzZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgVXNlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR1c2VySWQ6IG1hdGNoLmdyb3VwcyEudXNlcklkLFxuXHRcdH07XG5cdH1cbn1cblxuLyoqXG4gKiBBUEkgb3BlcmF0aW9uIHRvIHJlcXVpcmVkIElBTSBhY3Rpb25zIG1hcHBpbmcgZm9yIGlkZW50aXR5c3RvcmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBJZGVudGl0eXN0b3JlT3BlcmF0aW9ucyB7XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpDcmVhdGVHcm91cFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpDcmVhdGVHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVHcm91cE1lbWJlcnNoaXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHcm91cE1lbWJlcnNoaXA6IHN0cmluZ1tdID0gW1xuXHRcdFwic3NvLWRpcmVjdG9yeTpBZGRNZW1iZXJUb0dyb3VwXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOkNyZWF0ZUdyb3VwTWVtYmVyc2hpcFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVXNlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkNyZWF0ZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6Q3JlYXRlVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVsZXRlR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlR3JvdXBNZW1iZXJzaGlwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR3JvdXBNZW1iZXJzaGlwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBNZW1iZXJzaGlwXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OlJlbW92ZU1lbWJlckZyb21Hcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVXNlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkRlbGV0ZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVsZXRlVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVzY3JpYmVHcm91cFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpEZXNjcmliZUdyb3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUdyb3VwTWVtYmVyc2hpcCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlR3JvdXBNZW1iZXJzaGlwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVzY3JpYmVHcm91cE1lbWJlcnNoaXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdEdyb3Vwc0Zvck1lbWJlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpMaXN0R3JvdXBzRm9yVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVVzZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVVzZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpEZXNjcmliZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVzY3JpYmVVc2VyXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OkRlc2NyaWJlVXNlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0R3JvdXBJZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0R3JvdXBJZDogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdldEdyb3VwSWRcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6R2V0R3JvdXBJZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRHcm91cE1lbWJlcnNoaXBJZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0R3JvdXBNZW1iZXJzaGlwSWQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpHZXRHcm91cE1lbWJlcnNoaXBJZFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpMaXN0R3JvdXBzRm9yTWVtYmVyXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5Okxpc3RHcm91cHNGb3JVc2VyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFVzZXJJZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0VXNlcklkOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6R2V0VXNlcklkXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OkdldFVzZXJJZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJc01lbWJlckluR3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSXNNZW1iZXJJbkdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJzc28tZGlyZWN0b3J5OklzTWVtYmVySW5Hcm91cFwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpJc01lbWJlckluR3JvdXBzXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OklzTWVtYmVySW5Hcm91cHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEdyb3VwTWVtYmVyc2hpcHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R3JvdXBNZW1iZXJzaGlwczogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkxpc3RHcm91cE1lbWJlcnNoaXBzXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5Okxpc3RNZW1iZXJzSW5Hcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzRm9yTWVtYmVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6TGlzdEdyb3VwTWVtYmVyc2hpcHNGb3JNZW1iZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdEdyb3Vwc0Zvck1lbWJlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpMaXN0R3JvdXBzRm9yVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0R3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkxpc3RHcm91cHNcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdEdyb3Vwc1wiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpTZWFyY2hHcm91cHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFVzZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFVzZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6TGlzdFVzZXJzXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5Okxpc3RVc2Vyc1wiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpTZWFyY2hVc2Vyc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6VXBkYXRlR3JvdXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6VXBkYXRlR3JvdXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6VXBkYXRlR3JvdXBEaXNwbGF5TmFtZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVXNlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlVwZGF0ZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6VXBkYXRlVXNlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpVcGRhdGVVc2VyTmFtZVwiLFxuXHRdO1xufVxuXG4vKipcbiAqIENvbmRpdGlvbiBrZXkgY29uc3RhbnRzIGFuZCBidWlsZGVycyBmb3IgaWRlbnRpdHlzdG9yZS5cbiAqL1xuZXhwb3J0IGNsYXNzIElkZW50aXR5c3RvcmVDb25kaXRpb25zIHtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdyb3VwRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlR3JvdXBNZW1iZXJzaGlwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdyb3VwTWVtYmVyc2hpcENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpQcmltYXJ5UmVnaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVVzZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpSZXNlcnZlZFVzZXJJZFwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpVc2VyRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdyb3VwRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlR3JvdXBNZW1iZXJzaGlwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwTWVtYmVyc2hpcENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpQcmltYXJ5UmVnaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVVzZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpVc2VyRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlR3JvdXBNZW1iZXJzaGlwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlR3JvdXBNZW1iZXJzaGlwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlSWRlbnRpdHlTdG9yZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUlkZW50aXR5U3RvcmVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVSZWdpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWdpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlVXNlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpQcmltYXJ5UmVnaW9uXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOlVzZXJFeHRlcm5hbElkSXNzdWVyc1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0R3JvdXBJZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHcm91cElkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEdyb3VwTWVtYmVyc2hpcElkIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEdyb3VwTWVtYmVyc2hpcElkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFVzZXJJZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRVc2VySWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgSXNNZW1iZXJJbkdyb3VwcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBJc01lbWJlckluR3JvdXBzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RHcm91cE1lbWJlcnNoaXBzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RHcm91cE1lbWJlcnNoaXBzRm9yTWVtYmVyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzRm9yTWVtYmVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RHcm91cHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3Vwc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RSZWdpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWdpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RVc2VycyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VXNlcnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpVc2VyRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlc2VydmVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2VydmVVc2VyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdyb3VwRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlVXNlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVVc2VyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XHRcImlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzXCIsXG5cdF07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGlkZW50aXR5c3RvcmU6R3JvdXBFeHRlcm5hbElkSXNzdWVycyAoQXJyYXlPZkFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IEdST1VQX0VYVEVSTkFMX0lEX0lTU1VFUlMgPVxuXHRcdFwiaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBpZGVudGl0eXN0b3JlOklkZW50aXR5U3RvcmVBcm4gKEFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IElERU5USVRZX1NUT1JFX0FSTiA9IFwiaWRlbnRpdHlzdG9yZTpJZGVudGl0eVN0b3JlQXJuXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb24gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBSSU1BUllfUkVHSU9OID0gXCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGlkZW50aXR5c3RvcmU6UmVzZXJ2ZWRVc2VySWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJFU0VSVkVEX1VTRVJfSUQgPSBcImlkZW50aXR5c3RvcmU6UmVzZXJ2ZWRVc2VySWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzIChBcnJheU9mQVJOKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVVNFUl9FWFRFUk5BTF9JRF9JU1NVRVJTID1cblx0XHRcImlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBpZGVudGl0eXN0b3JlOlVzZXJJZCAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVVNFUl9JRCA9IFwiaWRlbnRpdHlzdG9yZTpVc2VySWRcIjtcblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzYC5cblx0ICovXG5cdHN0YXRpYyBncm91cEV4dGVybmFsSWRJc3N1ZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpBcm5FcXVhbHNcIjoge1xuXHRcdFx0XHRcImlkZW50aXR5c3RvcmU6R3JvdXBFeHRlcm5hbElkSXNzdWVyc1wiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgaWRlbnRpdHlzdG9yZTpJZGVudGl0eVN0b3JlQXJuYC5cblx0ICovXG5cdHN0YXRpYyBpZGVudGl0eVN0b3JlQVJOKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBBcm5FcXVhbHM6IHsgXCJpZGVudGl0eXN0b3JlOklkZW50aXR5U3RvcmVBcm5cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvbmAuXG5cdCAqL1xuXHRzdGF0aWMgcHJpbWFyeVJlZ2lvbih2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgaWRlbnRpdHlzdG9yZTpSZXNlcnZlZFVzZXJJZGAuXG5cdCAqL1xuXHRzdGF0aWMgcmVzZXJ2ZWRVc2VySWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJpZGVudGl0eXN0b3JlOlJlc2VydmVkVXNlcklkXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBpZGVudGl0eXN0b3JlOlVzZXJFeHRlcm5hbElkSXNzdWVyc2AuXG5cdCAqL1xuXHRzdGF0aWMgdXNlckV4dGVybmFsSWRJc3N1ZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpBcm5FcXVhbHNcIjoge1xuXHRcdFx0XHRcImlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzXCI6IHZhbHVlcyxcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBpZGVudGl0eXN0b3JlOlVzZXJJZGAuXG5cdCAqL1xuXHRzdGF0aWMgdXNlcklkKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiaWRlbnRpdHlzdG9yZTpVc2VySWRcIjogdmFsdWUgfSB9O1xuXHR9XG59XG4iXX0=
621
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHlzdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvc2VydmljZXMvaWRlbnRpdHlzdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdGQUFnRjtBQUNoRiw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzFELG9EQUFvRDtBQUNwRCxvREFBb0Q7QUFDcEQsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7O0FBQWpDLG9EQTRHQzs7O0FBM0dBLDhCQUE4QjtBQUNkLG1DQUFjLEdBQUcsZUFBZSxDQUFDO0FBRWpELHNDQUFzQztBQUN0Qiw4QkFBUyxHQUFHLHlCQUF5QixDQUFDO0FBQ3RELHdDQUF3QztBQUN4QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELGtEQUFrRDtBQUNsQywwQ0FBcUIsR0FBRyxxQ0FBcUMsQ0FBQztBQUM5RSxnREFBZ0Q7QUFDaEMsd0NBQW1CLEdBQUcsbUNBQW1DLENBQUM7QUFDMUUsdUNBQXVDO0FBQ3ZCLCtCQUFVLEdBQUcsMEJBQTBCLENBQUM7QUFDeEQsd0NBQXdDO0FBQ3hCLGdDQUFXLEdBQUcsMkJBQTJCLENBQUM7QUFDMUQsa0RBQWtEO0FBQ2xDLDBDQUFxQixHQUFHLHFDQUFxQyxDQUFDO0FBQzlFLGdEQUFnRDtBQUNoQyx3Q0FBbUIsR0FBRyxtQ0FBbUMsQ0FBQztBQUMxRSx1Q0FBdUM7QUFDdkIsK0JBQVUsR0FBRywwQkFBMEIsQ0FBQztBQUN4RCx5Q0FBeUM7QUFDekIsa0NBQWEsR0FBRyw2QkFBNkIsQ0FBQztBQUM5RCxtREFBbUQ7QUFDbkMsNENBQXVCLEdBQ3RDLHVDQUF1QyxDQUFDO0FBQ3pDLGlEQUFpRDtBQUNqQywwQ0FBcUIsR0FBRyxxQ0FBcUMsQ0FBQztBQUM5RSwwQ0FBMEM7QUFDMUIsbUNBQWMsR0FBRyw4QkFBOEIsQ0FBQztBQUNoRSx3Q0FBd0M7QUFDeEIsaUNBQVksR0FBRyw0QkFBNEIsQ0FBQztBQUM1RCxzQ0FBc0M7QUFDdEIscUNBQWdCLEdBQUcsMEJBQTBCLENBQUM7QUFDOUQsZ0RBQWdEO0FBQ2hDLCtDQUEwQixHQUN6QyxvQ0FBb0MsQ0FBQztBQUN0QyxxQ0FBcUM7QUFDckIsb0NBQWUsR0FBRyx5QkFBeUIsQ0FBQztBQUM1RCw0Q0FBNEM7QUFDNUIscUNBQWdCLEdBQUcsZ0NBQWdDLENBQUM7QUFDcEUsZ0RBQWdEO0FBQ2hDLHlDQUFvQixHQUFHLG9DQUFvQyxDQUFDO0FBQzVFLHlEQUF5RDtBQUN6QyxrREFBNkIsR0FDNUMsNkNBQTZDLENBQUM7QUFDL0Msc0NBQXNDO0FBQ3RCLCtCQUFVLEdBQUcsMEJBQTBCLENBQUM7QUFDeEQsOENBQThDO0FBQzlCLHVDQUFrQixHQUFHLGtDQUFrQyxDQUFDO0FBQ3hFLHVDQUF1QztBQUN2QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELHFDQUFxQztBQUNyQiw4QkFBUyxHQUFHLHlCQUF5QixDQUFDO0FBQ3RELHlDQUF5QztBQUN6QixpQ0FBWSxHQUFHLDRCQUE0QixDQUFDO0FBQzVELHdDQUF3QztBQUN4QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELHdDQUF3QztBQUN4QixnQ0FBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELGdEQUFnRDtBQUNoQyx3Q0FBbUIsR0FBRyxtQ0FBbUMsQ0FBQztBQUMxRSx1Q0FBdUM7QUFDdkIsK0JBQVUsR0FBRywwQkFBMEIsQ0FBQztBQUV4RCw4QkFBOEI7QUFDZCxtQ0FBYyxHQUFhO0lBQzFDLG9CQUFvQixDQUFDLGFBQWE7SUFDbEMsb0JBQW9CLENBQUMsdUJBQXVCO0lBQzVDLG9CQUFvQixDQUFDLHFCQUFxQjtJQUMxQyxvQkFBb0IsQ0FBQyxjQUFjO0lBQ25DLG9CQUFvQixDQUFDLFlBQVk7SUFDakMsb0JBQW9CLENBQUMsZ0JBQWdCO0lBQ3JDLG9CQUFvQixDQUFDLDBCQUEwQjtJQUMvQyxvQkFBb0IsQ0FBQyxlQUFlO0lBQ3BDLG9CQUFvQixDQUFDLGdCQUFnQjtDQUNyQyxDQUFDO0FBQ0YsK0JBQStCO0FBQ2Ysb0NBQWUsR0FBYTtJQUMzQyxvQkFBb0IsQ0FBQyxTQUFTO0lBQzlCLG9CQUFvQixDQUFDLFdBQVc7SUFDaEMsb0JBQW9CLENBQUMscUJBQXFCO0lBQzFDLG9CQUFvQixDQUFDLG1CQUFtQjtJQUN4QyxvQkFBb0IsQ0FBQyxVQUFVO0lBQy9CLG9CQUFvQixDQUFDLFdBQVc7SUFDaEMsb0JBQW9CLENBQUMscUJBQXFCO0lBQzFDLG9CQUFvQixDQUFDLG1CQUFtQjtJQUN4QyxvQkFBb0IsQ0FBQyxVQUFVO0lBQy9CLG9CQUFvQixDQUFDLFlBQVk7SUFDakMsb0JBQW9CLENBQUMsV0FBVztJQUNoQyxvQkFBb0IsQ0FBQyxXQUFXO0lBQ2hDLG9CQUFvQixDQUFDLG1CQUFtQjtJQUN4QyxvQkFBb0IsQ0FBQyxVQUFVO0NBQy9CLENBQUM7QUFDRiw4QkFBOEI7QUFDZCxtQ0FBYyxHQUFhO0lBQzFDLG9CQUFvQixDQUFDLG9CQUFvQjtJQUN6QyxvQkFBb0IsQ0FBQyw2QkFBNkI7SUFDbEQsb0JBQW9CLENBQUMsVUFBVTtJQUMvQixvQkFBb0IsQ0FBQyxrQkFBa0I7SUFDdkMsb0JBQW9CLENBQUMsV0FBVztJQUNoQyxvQkFBb0IsQ0FBQyxTQUFTO0NBQzlCLENBQUM7QUFDRiwrQ0FBK0M7QUFDL0IsbURBQThCLEdBQWEsRUFBRSxDQUFDO0FBQzlELGlDQUFpQztBQUNqQixzQ0FBaUIsR0FBYSxFQUFFLENBQUM7QUF1TGxELE1BQU0sMkJBQTJCLEdBQ2hDLDBEQUEwRCxDQUFDO0FBQzVELE1BQU0saUJBQWlCLEdBQUcscURBQXFELENBQUM7QUFDaEYsTUFBTSxnQkFBZ0IsR0FBRyxvREFBb0QsQ0FBQztBQUM5RSxNQUFNLGFBQWEsR0FDbEIsc0VBQXNFLENBQUM7QUFDeEUsTUFBTSx1QkFBdUIsR0FDNUIsZ0ZBQWdGLENBQUM7QUFDbEYsTUFBTSxxQkFBcUIsR0FDMUIsdUdBQXVHLENBQUM7QUFDekcsTUFBTSxZQUFZLEdBQ2pCLG9FQUFvRSxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsTUFBYSxzQkFBc0I7SUFDbEM7O09BRUc7SUFDSCxNQUFNLENBQUMsbUJBQW1CLENBQ3pCLEtBQStDO1FBRS9DLE9BQU8sT0FBTyxLQUFLLENBQUMsU0FBUyxJQUFJLEtBQUssK0JBQStCLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLDZCQUE2QixDQUFDLEdBQVc7UUFDL0MsT0FBTywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQywyQkFBMkIsQ0FDakMsR0FBVztRQUVYLE1BQU0sS0FBSyxHQUFHLDJCQUEyQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNELE9BQU87WUFDTixTQUFTLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTO1lBQ2pDLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU07WUFDM0IsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTztTQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFxQztRQUNyRCxPQUFPLE9BQU8sS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLDBCQUEwQixDQUFDO0lBQ2xFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFXO1FBQ3JDLE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBVztRQUNuQyxNQUFNLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFDRCxPQUFPO1lBQ04sU0FBUyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUztZQUNqQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNO1lBQzNCLE9BQU8sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU87U0FDN0IsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBb0M7UUFDbkQsT0FBTyxPQUFPLEtBQUssQ0FBQyxTQUFTLElBQUksS0FBSyx5QkFBeUIsQ0FBQztJQUNqRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBVztRQUNwQyxPQUFPLGdCQUFnQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEdBQVc7UUFDbEMsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsT0FBTztZQUNOLFNBQVMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFDakMsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTTtZQUMzQixPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPO1NBQzdCLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQWlDO1FBQzdDLE9BQU8sT0FBTyxLQUFLLENBQUMsU0FBUyxJQUFJLEtBQUssMEJBQTBCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqRixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQVc7UUFDakMsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsYUFBYSxDQUFDLEdBQVc7UUFDL0IsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELE9BQU87WUFDTixTQUFTLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTO1lBQ2pDLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU07WUFDM0IsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTztZQUM3QixPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU8sQ0FBQyxPQUFPO1NBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQTJDO1FBQ2pFLE9BQU8sT0FBTyxLQUFLLENBQUMsU0FBUyxJQUFJLEtBQUssK0JBQStCLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzRixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMseUJBQXlCLENBQUMsR0FBVztRQUMzQyxPQUFPLHVCQUF1QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLHVCQUF1QixDQUM3QixHQUFXO1FBRVgsTUFBTSxLQUFLLEdBQUcsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTztZQUNOLFNBQVMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFDakMsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTTtZQUMzQixPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPO1lBQzdCLFlBQVksRUFBRSxLQUFLLENBQUMsTUFBTyxDQUFDLFlBQVk7U0FDeEMsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBeUM7UUFDN0QsT0FBTyxPQUFPLEtBQUssQ0FBQyxTQUFTLElBQUksS0FBSyxtQkFBbUIsS0FBSyxDQUFDLE9BQU8sSUFBSSxHQUFHLGtCQUFrQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDeEgsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLHVCQUF1QixDQUFDLEdBQVc7UUFDekMsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxxQkFBcUIsQ0FDM0IsR0FBVztRQUVYLE1BQU0sS0FBSyxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUNELE9BQU87WUFDTixTQUFTLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTO1lBQ2pDLE9BQU8sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU87WUFDN0IsZUFBZSxFQUFFLEtBQUssQ0FBQyxNQUFPLENBQUMsZUFBZTtTQUM5QyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFnQztRQUMzQyxPQUFPLE9BQU8sS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLHlCQUF5QixLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDL0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFXO1FBQ2hDLE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFXO1FBQzlCLE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxPQUFPO1lBQ04sU0FBUyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUztZQUNqQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNO1lBQzNCLE9BQU8sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU87WUFDN0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFPLENBQUMsTUFBTTtTQUM1QixDQUFDO0lBQ0gsQ0FBQzs7QUE1TkYsd0RBNk5DOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsdUJBQXVCOztBQUFwQywwREFzSEM7OztBQXJIQSx5REFBeUQ7QUFDekMsbUNBQVcsR0FBYTtJQUN2QywyQkFBMkI7SUFDM0IsMkJBQTJCO0NBQzNCLENBQUM7QUFDRixtRUFBbUU7QUFDbkQsNkNBQXFCLEdBQWE7SUFDakQsZ0NBQWdDO0lBQ2hDLHFDQUFxQztDQUNyQyxDQUFDO0FBQ0Ysd0RBQXdEO0FBQ3hDLGtDQUFVLEdBQWE7SUFDdEMsMEJBQTBCO0lBQzFCLDBCQUEwQjtDQUMxQixDQUFDO0FBQ0YseURBQXlEO0FBQ3pDLG1DQUFXLEdBQWE7SUFDdkMsMkJBQTJCO0lBQzNCLDJCQUEyQjtDQUMzQixDQUFDO0FBQ0YsbUVBQW1FO0FBQ25ELDZDQUFxQixHQUFhO0lBQ2pELHFDQUFxQztJQUNyQyxxQ0FBcUM7Q0FDckMsQ0FBQztBQUNGLHdEQUF3RDtBQUN4QyxrQ0FBVSxHQUFhO0lBQ3RDLDBCQUEwQjtJQUMxQiwwQkFBMEI7Q0FDMUIsQ0FBQztBQUNGLDJEQUEyRDtBQUMzQyxxQ0FBYSxHQUFhO0lBQ3pDLDZCQUE2QjtJQUM3Qiw2QkFBNkI7SUFDN0IsOEJBQThCO0NBQzlCLENBQUM7QUFDRixxRUFBcUU7QUFDckQsK0NBQXVCLEdBQWE7SUFDbkQsdUNBQXVDO0lBQ3ZDLG1DQUFtQztJQUNuQyxpQ0FBaUM7Q0FDakMsQ0FBQztBQUNGLG1FQUFtRTtBQUNuRCw2Q0FBcUIsR0FBYTtJQUNqRCxxQ0FBcUM7Q0FDckMsQ0FBQztBQUNGLDBEQUEwRDtBQUMxQyxvQ0FBWSxHQUFhO0lBQ3hDLDRCQUE0QjtJQUM1Qiw0QkFBNEI7SUFDNUIsNkJBQTZCO0NBQzdCLENBQUM7QUFDRix3REFBd0Q7QUFDeEMsb0NBQVksR0FBYTtJQUN4QywwQkFBMEI7SUFDMUIsMEJBQTBCO0NBQzFCLENBQUM7QUFDRixrRUFBa0U7QUFDbEQsOENBQXNCLEdBQWE7SUFDbEQsb0NBQW9DO0lBQ3BDLG1DQUFtQztJQUNuQyxpQ0FBaUM7Q0FDakMsQ0FBQztBQUNGLHVEQUF1RDtBQUN2QyxtQ0FBVyxHQUFhO0lBQ3ZDLHlCQUF5QjtJQUN6Qix5QkFBeUI7Q0FDekIsQ0FBQztBQUNGLDhEQUE4RDtBQUM5Qyx3Q0FBZ0IsR0FBYTtJQUM1QywrQkFBK0I7SUFDL0IsZ0NBQWdDO0lBQ2hDLGdDQUFnQztDQUNoQyxDQUFDO0FBQ0Ysa0VBQWtFO0FBQ2xELDRDQUFvQixHQUFhO0lBQ2hELG9DQUFvQztJQUNwQyxrQ0FBa0M7Q0FDbEMsQ0FBQztBQUNGLDJFQUEyRTtBQUMzRCxxREFBNkIsR0FBYTtJQUN6RCw2Q0FBNkM7SUFDN0MsbUNBQW1DO0lBQ25DLGlDQUFpQztDQUNqQyxDQUFDO0FBQ0Ysd0RBQXdEO0FBQ3hDLGtDQUFVLEdBQWE7SUFDdEMsMEJBQTBCO0lBQzFCLDBCQUEwQjtJQUMxQiw0QkFBNEI7Q0FDNUIsQ0FBQztBQUNGLGdFQUFnRTtBQUNoRCwwQ0FBa0IsR0FBYTtJQUM5QyxrQ0FBa0M7Q0FDbEMsQ0FBQztBQUNGLHVEQUF1RDtBQUN2QyxpQ0FBUyxHQUFhO0lBQ3JDLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIsMkJBQTJCO0NBQzNCLENBQUM7QUFDRix5REFBeUQ7QUFDekMsbUNBQVcsR0FBYTtJQUN2QywyQkFBMkI7SUFDM0IsMkJBQTJCO0lBQzNCLHNDQUFzQztDQUN0QyxDQUFDO0FBQ0YsaUVBQWlFO0FBQ2pELDJDQUFtQixHQUFhO0lBQy9DLG1DQUFtQztDQUNuQyxDQUFDO0FBQ0Ysd0RBQXdEO0FBQ3hDLGtDQUFVLEdBQWE7SUFDdEMsMEJBQTBCO0lBQzFCLDBCQUEwQjtJQUMxQiw4QkFBOEI7Q0FDOUIsQ0FBQztBQUdIOztHQUVHO0FBQ0gsTUFBYSx1QkFBdUI7SUF3SG5DOztPQUVHO0lBQ0gsTUFBTSxDQUFDLHNCQUFzQixDQUM1QixNQUFnQjtRQUVoQixPQUFPO1lBQ04sd0JBQXdCLEVBQUU7Z0JBQ3pCLHNDQUFzQyxFQUFFLE1BQU07YUFDOUM7U0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUN0QixLQUFhO1FBRWIsT0FBTyxFQUFFLFNBQVMsRUFBRSxFQUFFLGdDQUFnQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDbkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFhO1FBQ2pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSw2QkFBNkIsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBYTtRQUNsQyxPQUFPLEVBQUUsWUFBWSxFQUFFLEVBQUUsOEJBQThCLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMscUJBQXFCLENBQzNCLE1BQWdCO1FBRWhCLE9BQU87WUFDTix3QkFBd0IsRUFBRTtnQkFDekIscUNBQXFDLEVBQUUsTUFBTTthQUM3QztTQUNELENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQWE7UUFDMUIsT0FBTyxFQUFFLFlBQVksRUFBRSxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDNUQsQ0FBQzs7QUE5S0YsMERBK0tDOzs7QUE5S0EsMkRBQTJEO0FBQzNDLGdEQUF3QixHQUFhO0lBQ3BELHNDQUFzQztJQUN0Qyw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLHFFQUFxRTtBQUNyRCwwREFBa0MsR0FBYTtJQUM5RCw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLDBEQUEwRDtBQUMxQywrQ0FBdUIsR0FBYTtJQUNuRCw2QkFBNkI7SUFDN0IsOEJBQThCO0lBQzlCLHFDQUFxQztDQUNyQyxDQUFDO0FBQ0YsMkRBQTJEO0FBQzNDLGdEQUF3QixHQUFhO0lBQ3BELHNDQUFzQztJQUN0Qyw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLHFFQUFxRTtBQUNyRCwwREFBa0MsR0FBYTtJQUM5RCw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLDBEQUEwRDtBQUMxQywrQ0FBdUIsR0FBYTtJQUNuRCw2QkFBNkI7SUFDN0IscUNBQXFDO0NBQ3JDLENBQUM7QUFDRiw2REFBNkQ7QUFDN0Msa0RBQTBCLEdBQWE7SUFDdEQsc0NBQXNDO0lBQ3RDLDZCQUE2QjtDQUM3QixDQUFDO0FBQ0YsdUVBQXVFO0FBQ3ZELDREQUFvQyxHQUFhO0lBQ2hFLDZCQUE2QjtDQUM3QixDQUFDO0FBQ0YscUVBQXFFO0FBQ3JELDBEQUFrQyxHQUFhO0lBQzlELDZCQUE2QjtDQUM3QixDQUFDO0FBQ0YsOERBQThEO0FBQzlDLG1EQUEyQixHQUFhO0lBQ3ZELDZCQUE2QjtDQUM3QixDQUFDO0FBQ0YsNERBQTREO0FBQzVDLGlEQUF5QixHQUFhO0lBQ3JELDZCQUE2QjtJQUM3QixxQ0FBcUM7Q0FDckMsQ0FBQztBQUNGLDBEQUEwRDtBQUMxQyxxREFBNkIsR0FBYTtJQUN6RCw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLG9FQUFvRTtBQUNwRCwrREFBdUMsR0FBYTtJQUNuRSw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLHlEQUF5RDtBQUN6QyxvREFBNEIsR0FBYTtJQUN4RCw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLGdFQUFnRTtBQUNoRCxxREFBNkIsR0FBYTtJQUN6RCw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLG9FQUFvRTtBQUNwRCx5REFBaUMsR0FBYTtJQUM3RCw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLDZFQUE2RTtBQUM3RCxrRUFBMEMsR0FBYTtJQUN0RSw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLDBEQUEwRDtBQUMxQywrQ0FBdUIsR0FBYTtJQUNuRCxzQ0FBc0M7SUFDdEMsNkJBQTZCO0NBQzdCLENBQUM7QUFDRiwyREFBMkQ7QUFDM0MsZ0RBQXdCLEdBQWE7SUFDcEQsNkJBQTZCO0NBQzdCLENBQUM7QUFDRix5REFBeUQ7QUFDekMsOENBQXNCLEdBQWE7SUFDbEQsNkJBQTZCO0lBQzdCLHFDQUFxQztDQUNyQyxDQUFDO0FBQ0YsMkRBQTJEO0FBQzNDLGdEQUF3QixHQUFhO0lBQ3BELDZCQUE2QjtDQUM3QixDQUFDO0FBQ0YsMkRBQTJEO0FBQzNDLGdEQUF3QixHQUFhO0lBQ3BELHNDQUFzQztJQUN0Qyw2QkFBNkI7Q0FDN0IsQ0FBQztBQUNGLDBEQUEwRDtBQUMxQywrQ0FBdUIsR0FBYTtJQUNuRCw2QkFBNkI7SUFDN0IscUNBQXFDO0NBQ3JDLENBQUM7QUFFRix1RUFBdUU7QUFDdkQsaURBQXlCLEdBQ3hDLHNDQUFzQyxDQUFDO0FBQ3hDLDBEQUEwRDtBQUMxQywwQ0FBa0IsR0FBRyxnQ0FBZ0MsQ0FBQztBQUN0RSwwREFBMEQ7QUFDMUMsc0NBQWMsR0FBRyw2QkFBNkIsQ0FBQztBQUMvRCwyREFBMkQ7QUFDM0Msd0NBQWdCLEdBQUcsOEJBQThCLENBQUM7QUFDbEUsc0VBQXNFO0FBQ3RELGdEQUF3QixHQUN2QyxxQ0FBcUMsQ0FBQztBQUN2QyxtREFBbUQ7QUFDbkMsK0JBQU8sR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBVVRPLUdFTkVSQVRFRCBGSUxFIOKAlCBETyBOT1QgRURJVCBNQU5VQUxMWVxuLy8gR2VuZXJhdGVkIGZyb20gQVdTIFNlcnZpY2UgQXV0aG9yaXphdGlvbiBSZWZlcmVuY2UgZGF0YVxuLy8gU291cmNlOiBkYXRhL3NlcnZpY2UtcmVmZXJlbmNlL2lkZW50aXR5c3RvcmUuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIGlkZW50aXR5c3RvcmUgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIElkZW50aXR5c3RvcmVBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwiaWRlbnRpdHlzdG9yZVwiO1xuXG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6QWRkUmVnaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRSZWdpb24gPSBcImlkZW50aXR5c3RvcmU6QWRkUmVnaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOkNyZWF0ZUdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlR3JvdXBNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHcm91cE1lbWJlcnNoaXAgPSBcImlkZW50aXR5c3RvcmU6Q3JlYXRlR3JvdXBNZW1iZXJzaGlwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlSWRlbnRpdHlTdG9yZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpDcmVhdGVJZGVudGl0eVN0b3JlXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6Q3JlYXRlVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVXNlciA9IFwiaWRlbnRpdHlzdG9yZTpDcmVhdGVVc2VyXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOkRlbGV0ZUdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHcm91cE1lbWJlcnNoaXAgPSBcImlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBNZW1iZXJzaGlwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlSWRlbnRpdHlTdG9yZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpEZWxldGVJZGVudGl0eVN0b3JlXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6RGVsZXRlVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVXNlciA9IFwiaWRlbnRpdHlzdG9yZTpEZWxldGVVc2VyXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpEZXNjcmliZUdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBNZW1iZXJzaGlwICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUdyb3VwTWVtYmVyc2hpcCA9XG5cdFx0XCJpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBNZW1iZXJzaGlwXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpEZXNjcmliZUlkZW50aXR5U3RvcmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpEZXNjcmliZUlkZW50aXR5U3RvcmVcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOkRlc2NyaWJlUmVnaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlZ2lvbiA9IFwiaWRlbnRpdHlzdG9yZTpEZXNjcmliZVJlZ2lvblwiO1xuXHQvKiogW1JlYWRdIGlkZW50aXR5c3RvcmU6RGVzY3JpYmVVc2VyICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVVzZXIgPSBcImlkZW50aXR5c3RvcmU6RGVzY3JpYmVVc2VyXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpHZXRHcm91cElkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHcm91cElkID0gXCJpZGVudGl0eXN0b3JlOkdldEdyb3VwSWRcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOkdldEdyb3VwTWVtYmVyc2hpcElkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHcm91cE1lbWJlcnNoaXBJZCA9XG5cdFx0XCJpZGVudGl0eXN0b3JlOkdldEdyb3VwTWVtYmVyc2hpcElkXCI7XG5cdC8qKiBbUmVhZF0gaWRlbnRpdHlzdG9yZTpHZXRVc2VySWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFVzZXJJZCA9IFwiaWRlbnRpdHlzdG9yZTpHZXRVc2VySWRcIjtcblx0LyoqIFtSZWFkXSBpZGVudGl0eXN0b3JlOklzTWVtYmVySW5Hcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IElzTWVtYmVySW5Hcm91cHMgPSBcImlkZW50aXR5c3RvcmU6SXNNZW1iZXJJbkdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIGlkZW50aXR5c3RvcmU6TGlzdEdyb3VwTWVtYmVyc2hpcHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzID0gXCJpZGVudGl0eXN0b3JlOkxpc3RHcm91cE1lbWJlcnNoaXBzXCI7XG5cdC8qKiBbTGlzdF0gaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3VwTWVtYmVyc2hpcHNGb3JNZW1iZXIgPVxuXHRcdFwiaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlclwiO1xuXHQvKiogW0xpc3RdIGlkZW50aXR5c3RvcmU6TGlzdEdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3VwcyA9IFwiaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBzXCI7XG5cdC8qKiBbTGlzdF0gaWRlbnRpdHlzdG9yZTpMaXN0SWRlbnRpdHlTdG9yZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0eVN0b3JlcyA9IFwiaWRlbnRpdHlzdG9yZTpMaXN0SWRlbnRpdHlTdG9yZXNcIjtcblx0LyoqIFtMaXN0XSBpZGVudGl0eXN0b3JlOkxpc3RSZWdpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVnaW9ucyA9IFwiaWRlbnRpdHlzdG9yZTpMaXN0UmVnaW9uc1wiO1xuXHQvKiogW0xpc3RdIGlkZW50aXR5c3RvcmU6TGlzdFVzZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VXNlcnMgPSBcImlkZW50aXR5c3RvcmU6TGlzdFVzZXJzXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6UmVtb3ZlUmVnaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVSZWdpb24gPSBcImlkZW50aXR5c3RvcmU6UmVtb3ZlUmVnaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6UmVzZXJ2ZVVzZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2VydmVVc2VyID0gXCJpZGVudGl0eXN0b3JlOlJlc2VydmVVc2VyXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6VXBkYXRlR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdyb3VwID0gXCJpZGVudGl0eXN0b3JlOlVwZGF0ZUdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6VXBkYXRlSWRlbnRpdHlTdG9yZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlSWRlbnRpdHlTdG9yZSA9IFwiaWRlbnRpdHlzdG9yZTpVcGRhdGVJZGVudGl0eVN0b3JlXCI7XG5cdC8qKiBbV3JpdGVdIGlkZW50aXR5c3RvcmU6VXBkYXRlVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVXNlciA9IFwiaWRlbnRpdHlzdG9yZTpVcGRhdGVVc2VyXCI7XG5cblx0LyoqIEFsbCByZWFkLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxSZWFkQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVzY3JpYmVHcm91cCxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5EZXNjcmliZUdyb3VwTWVtYmVyc2hpcCxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5EZXNjcmliZUlkZW50aXR5U3RvcmUsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVzY3JpYmVSZWdpb24sXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVzY3JpYmVVc2VyLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLmFjdGlvbkdldEdyb3VwSWQsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuYWN0aW9uR2V0R3JvdXBNZW1iZXJzaGlwSWQsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuYWN0aW9uR2V0VXNlcklkLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLklzTWVtYmVySW5Hcm91cHMsXG5cdF07XG5cdC8qKiBBbGwgd3JpdGUtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFdyaXRlQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuQWRkUmVnaW9uLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkNyZWF0ZUdyb3VwLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkNyZWF0ZUdyb3VwTWVtYmVyc2hpcCxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5DcmVhdGVJZGVudGl0eVN0b3JlLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkNyZWF0ZVVzZXIsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVsZXRlR3JvdXAsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVsZXRlR3JvdXBNZW1iZXJzaGlwLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkRlbGV0ZUlkZW50aXR5U3RvcmUsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuRGVsZXRlVXNlcixcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5SZW1vdmVSZWdpb24sXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuUmVzZXJ2ZVVzZXIsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuVXBkYXRlR3JvdXAsXG5cdFx0SWRlbnRpdHlzdG9yZUFjdGlvbnMuVXBkYXRlSWRlbnRpdHlTdG9yZSxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5VcGRhdGVVc2VyLFxuXHRdO1xuXHQvKiogQWxsIGxpc3QtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbExpc3RBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0R3JvdXBNZW1iZXJzaGlwcyxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlcixcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0R3JvdXBzLFxuXHRcdElkZW50aXR5c3RvcmVBY3Rpb25zLkxpc3RJZGVudGl0eVN0b3Jlcyxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0UmVnaW9ucyxcblx0XHRJZGVudGl0eXN0b3JlQWN0aW9ucy5MaXN0VXNlcnMsXG5cdF07XG5cdC8qKiBBbGwgcGVybWlzc2lvbi1tYW5hZ2VtZW50LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxQZXJtaXNzaW9uTWFuYWdlbWVudEFjdGlvbnM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW107XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBBbGxHcm91cE1lbWJlcnNoaXBzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsR3JvdXBNZW1iZXJzaGlwc0FyblByb3BzIHtcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBBbGxHcm91cE1lbWJlcnNoaXBzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsR3JvdXBNZW1iZXJzaGlwc0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBBbGxHcm91cHMgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5c3RvcmVBbGxHcm91cHNBcm5Qcm9wcyB7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgQWxsR3JvdXBzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsR3JvdXBzQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIEFsbFVzZXJzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlQWxsVXNlcnNBcm5Qcm9wcyB7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgQWxsVXNlcnMgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5c3RvcmVBbGxVc2Vyc0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBHcm91cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpdHlzdG9yZUdyb3VwQXJuUHJvcHMge1xuXHQvKiogVGhlIEdyb3VwSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGdyb3VwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBHcm91cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpdHlzdG9yZUdyb3VwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBHcm91cElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZ3JvdXBJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgR3JvdXBNZW1iZXJzaGlwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlR3JvdXBNZW1iZXJzaGlwQXJuUHJvcHMge1xuXHQvKiogVGhlIE1lbWJlcnNoaXBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbWVtYmVyc2hpcElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgR3JvdXBNZW1iZXJzaGlwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlR3JvdXBNZW1iZXJzaGlwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBNZW1iZXJzaGlwSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBtZW1iZXJzaGlwSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIElkZW50aXR5c3RvcmUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5c3RvcmVJZGVudGl0eXN0b3JlQXJuUHJvcHMge1xuXHQvKiogVGhlIElkZW50aXR5U3RvcmVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaWRlbnRpdHlTdG9yZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBJZGVudGl0eXN0b3JlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlSWRlbnRpdHlzdG9yZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIElkZW50aXR5U3RvcmVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGlkZW50aXR5U3RvcmVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgVXNlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpdHlzdG9yZVVzZXJBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgVXNlcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB1c2VySWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBVc2VyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJZGVudGl0eXN0b3JlVXNlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVXNlcklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdXNlcklkOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFsbEdyb3VwTWVtYmVyc2hpcHNBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6aWRlbnRpdHlzdG9yZTo6Om1lbWJlcnNoaXBcXC8uKiQvO1xuY29uc3QgQWxsR3JvdXBzQXJuUmVnZXggPSAvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmlkZW50aXR5c3RvcmU6Ojpncm91cFxcLy4qJC87XG5jb25zdCBBbGxVc2Vyc0FyblJlZ2V4ID0gL15hcm46KD88cGFydGl0aW9uPlteOl0rKTppZGVudGl0eXN0b3JlOjo6dXNlclxcLy4qJC87XG5jb25zdCBHcm91cEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTppZGVudGl0eXN0b3JlOjo6Z3JvdXBcXC8oPzxncm91cElkPlteOi8/XSspJC87XG5jb25zdCBHcm91cE1lbWJlcnNoaXBBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6aWRlbnRpdHlzdG9yZTo6Om1lbWJlcnNoaXBcXC8oPzxtZW1iZXJzaGlwSWQ+W146Lz9dKykkLztcbmNvbnN0IElkZW50aXR5c3RvcmVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6aWRlbnRpdHlzdG9yZTo6KD88YWNjb3VudD5bXjpdKik6aWRlbnRpdHlzdG9yZVxcLyg/PGlkZW50aXR5U3RvcmVJZD5bXjovP10rKSQvO1xuY29uc3QgVXNlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTppZGVudGl0eXN0b3JlOjo6dXNlclxcLyg/PHVzZXJJZD5bXjovP10rKSQvO1xuXG4vKipcbiAqIEFSTiBidWlsZGVycywgdmFsaWRhdG9ycywgYW5kIHBhcnNlcnMgZm9yIGlkZW50aXR5c3RvcmUgcmVzb3VyY2VzLlxuICovXG5leHBvcnQgY2xhc3MgSWRlbnRpdHlzdG9yZVJlc291cmNlcyB7XG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgQWxsR3JvdXBNZW1iZXJzaGlwcyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBhbGxHcm91cE1lbWJlcnNoaXBzKFxuXHRcdHByb3BzOiBJZGVudGl0eXN0b3JlQWxsR3JvdXBNZW1iZXJzaGlwc0FyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmlkZW50aXR5c3RvcmU6OjptZW1iZXJzaGlwLypgO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgQWxsR3JvdXBNZW1iZXJzaGlwcyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQWxsR3JvdXBNZW1iZXJzaGlwc0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBbGxHcm91cE1lbWJlcnNoaXBzQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIEFsbEdyb3VwTWVtYmVyc2hpcHMgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWxsR3JvdXBNZW1iZXJzaGlwc0Fybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogSWRlbnRpdHlzdG9yZUFsbEdyb3VwTWVtYmVyc2hpcHNBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFsbEdyb3VwTWVtYmVyc2hpcHNBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgQWxsR3JvdXBNZW1iZXJzaGlwcyBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgQWxsR3JvdXBzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFsbEdyb3Vwcyhwcm9wczogSWRlbnRpdHlzdG9yZUFsbEdyb3Vwc0FyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTppZGVudGl0eXN0b3JlOjo6Z3JvdXAvKmA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBBbGxHcm91cHMgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFsbEdyb3Vwc0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBbGxHcm91cHNBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgQWxsR3JvdXBzIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUFsbEdyb3Vwc0Fybihhcm46IHN0cmluZyk6IElkZW50aXR5c3RvcmVBbGxHcm91cHNBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFsbEdyb3Vwc0FyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBBbGxHcm91cHMgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIEFsbFVzZXJzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFsbFVzZXJzKHByb3BzOiBJZGVudGl0eXN0b3JlQWxsVXNlcnNBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06aWRlbnRpdHlzdG9yZTo6OnVzZXIvKmA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBBbGxVc2VycyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQWxsVXNlcnNBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQWxsVXNlcnNBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgQWxsVXNlcnMgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWxsVXNlcnNBcm4oYXJuOiBzdHJpbmcpOiBJZGVudGl0eXN0b3JlQWxsVXNlcnNBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFsbFVzZXJzQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEFsbFVzZXJzIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBHcm91cCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBncm91cChwcm9wczogSWRlbnRpdHlzdG9yZUdyb3VwQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmlkZW50aXR5c3RvcmU6Ojpncm91cC8ke3Byb3BzLmdyb3VwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIEdyb3VwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRHcm91cEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBHcm91cEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBHcm91cCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VHcm91cEFybihhcm46IHN0cmluZyk6IElkZW50aXR5c3RvcmVHcm91cEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gR3JvdXBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgR3JvdXAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Z3JvdXBJZDogbWF0Y2guZ3JvdXBzIS5ncm91cElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIEdyb3VwTWVtYmVyc2hpcCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBncm91cE1lbWJlcnNoaXAocHJvcHM6IElkZW50aXR5c3RvcmVHcm91cE1lbWJlcnNoaXBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06aWRlbnRpdHlzdG9yZTo6Om1lbWJlcnNoaXAvJHtwcm9wcy5tZW1iZXJzaGlwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIEdyb3VwTWVtYmVyc2hpcCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkR3JvdXBNZW1iZXJzaGlwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEdyb3VwTWVtYmVyc2hpcEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBHcm91cE1lbWJlcnNoaXAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlR3JvdXBNZW1iZXJzaGlwQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBJZGVudGl0eXN0b3JlR3JvdXBNZW1iZXJzaGlwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBHcm91cE1lbWJlcnNoaXBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgR3JvdXBNZW1iZXJzaGlwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdG1lbWJlcnNoaXBJZDogbWF0Y2guZ3JvdXBzIS5tZW1iZXJzaGlwSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgSWRlbnRpdHlzdG9yZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpZGVudGl0eXN0b3JlKHByb3BzOiBJZGVudGl0eXN0b3JlSWRlbnRpdHlzdG9yZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTppZGVudGl0eXN0b3JlOjoke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmlkZW50aXR5c3RvcmUvJHtwcm9wcy5pZGVudGl0eVN0b3JlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIElkZW50aXR5c3RvcmUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZElkZW50aXR5c3RvcmVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSWRlbnRpdHlzdG9yZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBJZGVudGl0eXN0b3JlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUlkZW50aXR5c3RvcmVBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IElkZW50aXR5c3RvcmVJZGVudGl0eXN0b3JlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBJZGVudGl0eXN0b3JlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIElkZW50aXR5c3RvcmUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aWRlbnRpdHlTdG9yZUlkOiBtYXRjaC5ncm91cHMhLmlkZW50aXR5U3RvcmVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBVc2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHVzZXIocHJvcHM6IElkZW50aXR5c3RvcmVVc2VyQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmlkZW50aXR5c3RvcmU6Ojp1c2VyLyR7cHJvcHMudXNlcklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBVc2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRVc2VyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFVzZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgVXNlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VVc2VyQXJuKGFybjogc3RyaW5nKTogSWRlbnRpdHlzdG9yZVVzZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFVzZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgVXNlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR1c2VySWQ6IG1hdGNoLmdyb3VwcyEudXNlcklkLFxuXHRcdH07XG5cdH1cbn1cblxuLyoqXG4gKiBBUEkgb3BlcmF0aW9uIHRvIHJlcXVpcmVkIElBTSBhY3Rpb25zIG1hcHBpbmcgZm9yIGlkZW50aXR5c3RvcmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBJZGVudGl0eXN0b3JlT3BlcmF0aW9ucyB7XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpDcmVhdGVHcm91cFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpDcmVhdGVHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVHcm91cE1lbWJlcnNoaXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHcm91cE1lbWJlcnNoaXA6IHN0cmluZ1tdID0gW1xuXHRcdFwic3NvLWRpcmVjdG9yeTpBZGRNZW1iZXJUb0dyb3VwXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOkNyZWF0ZUdyb3VwTWVtYmVyc2hpcFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVXNlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkNyZWF0ZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6Q3JlYXRlVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVsZXRlR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlR3JvdXBNZW1iZXJzaGlwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR3JvdXBNZW1iZXJzaGlwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVsZXRlR3JvdXBNZW1iZXJzaGlwXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OlJlbW92ZU1lbWJlckZyb21Hcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVXNlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkRlbGV0ZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVsZXRlVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkRlc2NyaWJlR3JvdXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6RGVzY3JpYmVHcm91cFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpEZXNjcmliZUdyb3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUdyb3VwTWVtYmVyc2hpcCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlR3JvdXBNZW1iZXJzaGlwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVzY3JpYmVHcm91cE1lbWJlcnNoaXBcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdEdyb3Vwc0Zvck1lbWJlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpMaXN0R3JvdXBzRm9yVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUlkZW50aXR5U3RvcmUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUlkZW50aXR5U3RvcmU6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpEZXNjcmliZUlkZW50aXR5U3RvcmVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVVc2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6RGVzY3JpYmVVc2VyXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OkRlc2NyaWJlVXNlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpEZXNjcmliZVVzZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEdyb3VwSWQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEdyb3VwSWQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpHZXRHcm91cElkXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OkdldEdyb3VwSWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0R3JvdXBNZW1iZXJzaGlwSWQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEdyb3VwTWVtYmVyc2hpcElkOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6R2V0R3JvdXBNZW1iZXJzaGlwSWRcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdEdyb3Vwc0Zvck1lbWJlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpMaXN0R3JvdXBzRm9yVXNlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRVc2VySWQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFVzZXJJZDogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdldFVzZXJJZFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpHZXRVc2VySWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgSXNNZW1iZXJJbkdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IElzTWVtYmVySW5Hcm91cHM6IHN0cmluZ1tdID0gW1xuXHRcdFwic3NvLWRpcmVjdG9yeTpJc01lbWJlckluR3JvdXBcIixcblx0XHRcImlkZW50aXR5c3RvcmU6SXNNZW1iZXJJbkdyb3Vwc1wiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpJc01lbWJlckluR3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RHcm91cE1lbWJlcnNoaXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3VwTWVtYmVyc2hpcHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBNZW1iZXJzaGlwc1wiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpMaXN0TWVtYmVyc0luR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEdyb3VwTWVtYmVyc2hpcHNGb3JNZW1iZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R3JvdXBNZW1iZXJzaGlwc0Zvck1lbWJlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkxpc3RHcm91cE1lbWJlcnNoaXBzRm9yTWVtYmVyXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5Okxpc3RHcm91cHNGb3JNZW1iZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdEdyb3Vwc0ZvclVzZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpMaXN0R3JvdXBzXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5Okxpc3RHcm91cHNcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6U2VhcmNoR3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RJZGVudGl0eVN0b3JlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJZGVudGl0eVN0b3Jlczogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkxpc3RJZGVudGl0eVN0b3Jlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VXNlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VXNlcnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpMaXN0VXNlcnNcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6TGlzdFVzZXJzXCIsXG5cdFx0XCJzc28tZGlyZWN0b3J5OlNlYXJjaFVzZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpVcGRhdGVHcm91cFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpVcGRhdGVHcm91cFwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpVcGRhdGVHcm91cERpc3BsYXlOYW1lXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUlkZW50aXR5U3RvcmUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVJZGVudGl0eVN0b3JlOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6VXBkYXRlSWRlbnRpdHlTdG9yZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVVc2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVXNlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlVwZGF0ZVVzZXJcIixcblx0XHRcInNzby1kaXJlY3Rvcnk6VXBkYXRlVXNlclwiLFxuXHRcdFwic3NvLWRpcmVjdG9yeTpVcGRhdGVVc2VyTmFtZVwiLFxuXHRdO1xufVxuXG4vKipcbiAqIENvbmRpdGlvbiBrZXkgY29uc3RhbnRzIGFuZCBidWlsZGVycyBmb3IgaWRlbnRpdHlzdG9yZS5cbiAqL1xuZXhwb3J0IGNsYXNzIElkZW50aXR5c3RvcmVDb25kaXRpb25zIHtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdyb3VwRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlR3JvdXBNZW1iZXJzaGlwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdyb3VwTWVtYmVyc2hpcENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpQcmltYXJ5UmVnaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVVzZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpSZXNlcnZlZFVzZXJJZFwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpVc2VyRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlbGV0ZUdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdyb3VwRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlR3JvdXBNZW1iZXJzaGlwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdyb3VwTWVtYmVyc2hpcENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpQcmltYXJ5UmVnaW9uXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVVzZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpVc2VyRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlR3JvdXBNZW1iZXJzaGlwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlR3JvdXBNZW1iZXJzaGlwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlSWRlbnRpdHlTdG9yZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUlkZW50aXR5U3RvcmVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVSZWdpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWdpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVzY3JpYmVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlVXNlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpQcmltYXJ5UmVnaW9uXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOlVzZXJFeHRlcm5hbElkSXNzdWVyc1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0R3JvdXBJZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHcm91cElkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldEdyb3VwTWVtYmVyc2hpcElkIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEdyb3VwTWVtYmVyc2hpcElkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEdldFVzZXJJZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRVc2VySWRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgSXNNZW1iZXJJbkdyb3VwcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBJc01lbWJlckluR3JvdXBzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RHcm91cE1lbWJlcnNoaXBzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RHcm91cE1lbWJlcnNoaXBzRm9yTWVtYmVyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHcm91cE1lbWJlcnNoaXBzRm9yTWVtYmVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RHcm91cHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdyb3Vwc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzXCIsXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RSZWdpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWdpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RVc2VycyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VXNlcnNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRcdFwiaWRlbnRpdHlzdG9yZTpVc2VyRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlc2VydmVVc2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2VydmVVc2VyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVwZGF0ZUdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOkdyb3VwRXh0ZXJuYWxJZElzc3VlcnNcIixcblx0XHRcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVXBkYXRlVXNlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVVc2VyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIixcblx0XHRcImlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzXCIsXG5cdF07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGlkZW50aXR5c3RvcmU6R3JvdXBFeHRlcm5hbElkSXNzdWVycyAoQXJyYXlPZkFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IEdST1VQX0VYVEVSTkFMX0lEX0lTU1VFUlMgPVxuXHRcdFwiaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBpZGVudGl0eXN0b3JlOklkZW50aXR5U3RvcmVBcm4gKEFSTikgKi9cblx0c3RhdGljIHJlYWRvbmx5IElERU5USVRZX1NUT1JFX0FSTiA9IFwiaWRlbnRpdHlzdG9yZTpJZGVudGl0eVN0b3JlQXJuXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb24gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBSSU1BUllfUkVHSU9OID0gXCJpZGVudGl0eXN0b3JlOlByaW1hcnlSZWdpb25cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGlkZW50aXR5c3RvcmU6UmVzZXJ2ZWRVc2VySWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJFU0VSVkVEX1VTRVJfSUQgPSBcImlkZW50aXR5c3RvcmU6UmVzZXJ2ZWRVc2VySWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzIChBcnJheU9mQVJOKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVVNFUl9FWFRFUk5BTF9JRF9JU1NVRVJTID1cblx0XHRcImlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBpZGVudGl0eXN0b3JlOlVzZXJJZCAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVVNFUl9JRCA9IFwiaWRlbnRpdHlzdG9yZTpVc2VySWRcIjtcblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgaWRlbnRpdHlzdG9yZTpHcm91cEV4dGVybmFsSWRJc3N1ZXJzYC5cblx0ICovXG5cdHN0YXRpYyBncm91cEV4dGVybmFsSWRJc3N1ZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpBcm5FcXVhbHNcIjoge1xuXHRcdFx0XHRcImlkZW50aXR5c3RvcmU6R3JvdXBFeHRlcm5hbElkSXNzdWVyc1wiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgaWRlbnRpdHlzdG9yZTpJZGVudGl0eVN0b3JlQXJuYC5cblx0ICovXG5cdHN0YXRpYyBpZGVudGl0eVN0b3JlQVJOKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBBcm5FcXVhbHM6IHsgXCJpZGVudGl0eXN0b3JlOklkZW50aXR5U3RvcmVBcm5cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvbmAuXG5cdCAqL1xuXHRzdGF0aWMgcHJpbWFyeVJlZ2lvbih2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImlkZW50aXR5c3RvcmU6UHJpbWFyeVJlZ2lvblwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgaWRlbnRpdHlzdG9yZTpSZXNlcnZlZFVzZXJJZGAuXG5cdCAqL1xuXHRzdGF0aWMgcmVzZXJ2ZWRVc2VySWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJpZGVudGl0eXN0b3JlOlJlc2VydmVkVXNlcklkXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBpZGVudGl0eXN0b3JlOlVzZXJFeHRlcm5hbElkSXNzdWVyc2AuXG5cdCAqL1xuXHRzdGF0aWMgdXNlckV4dGVybmFsSWRJc3N1ZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpBcm5FcXVhbHNcIjoge1xuXHRcdFx0XHRcImlkZW50aXR5c3RvcmU6VXNlckV4dGVybmFsSWRJc3N1ZXJzXCI6IHZhbHVlcyxcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBpZGVudGl0eXN0b3JlOlVzZXJJZGAuXG5cdCAqL1xuXHRzdGF0aWMgdXNlcklkKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiaWRlbnRpdHlzdG9yZTpVc2VySWRcIjogdmFsdWUgfSB9O1xuXHR9XG59XG4iXX0=
@@ -16,7 +16,7 @@ class ImageBuilderActions {
16
16
  }
17
17
  exports.ImageBuilderActions = ImageBuilderActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- ImageBuilderActions[_a] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderActions", version: "1.33.0" };
19
+ ImageBuilderActions[_a] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  ImageBuilderActions.SERVICE_PREFIX = "imagebuilder";
22
22
  /** [Write] imagebuilder:CancelImageCreation */
@@ -750,7 +750,7 @@ class ImageBuilderResources {
750
750
  }
751
751
  exports.ImageBuilderResources = ImageBuilderResources;
752
752
  _b = JSII_RTTI_SYMBOL_1;
753
- ImageBuilderResources[_b] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderResources", version: "1.33.0" };
753
+ ImageBuilderResources[_b] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderResources", version: "1.35.0" };
754
754
  /**
755
755
  * API operation to required IAM actions mapping for imagebuilder.
756
756
  */
@@ -758,7 +758,7 @@ class ImageBuilderOperations {
758
758
  }
759
759
  exports.ImageBuilderOperations = ImageBuilderOperations;
760
760
  _c = JSII_RTTI_SYMBOL_1;
761
- ImageBuilderOperations[_c] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderOperations", version: "1.33.0" };
761
+ ImageBuilderOperations[_c] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderOperations", version: "1.35.0" };
762
762
  /** IAM actions required for the CancelImageCreation API call. */
763
763
  ImageBuilderOperations.CancelImageCreation = [
764
764
  "imagebuilder:CancelImageCreation",
@@ -1151,7 +1151,7 @@ class ImageBuilderConditions {
1151
1151
  }
1152
1152
  exports.ImageBuilderConditions = ImageBuilderConditions;
1153
1153
  _d = JSII_RTTI_SYMBOL_1;
1154
- ImageBuilderConditions[_d] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderConditions", version: "1.33.0" };
1154
+ ImageBuilderConditions[_d] = { fqn: "@cdk_utils/iam.imagebuilder.ImageBuilderConditions", version: "1.35.0" };
1155
1155
  /** Condition keys applicable to the CreateComponent action. */
1156
1156
  ImageBuilderConditions.CreateComponentConditionKeys = [
1157
1157
  "aws:RequestTag/${TagKey}",
@@ -16,7 +16,7 @@ class ImportexportActions {
16
16
  }
17
17
  exports.ImportexportActions = ImportexportActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- ImportexportActions[_a] = { fqn: "@cdk_utils/iam.importexport.ImportexportActions", version: "1.33.0" };
19
+ ImportexportActions[_a] = { fqn: "@cdk_utils/iam.importexport.ImportexportActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  ImportexportActions.SERVICE_PREFIX = "importexport";
22
22
  /** [Write] importexport:CancelJob */
@@ -55,7 +55,7 @@ class ImportexportOperations {
55
55
  }
56
56
  exports.ImportexportOperations = ImportexportOperations;
57
57
  _b = JSII_RTTI_SYMBOL_1;
58
- ImportexportOperations[_b] = { fqn: "@cdk_utils/iam.importexport.ImportexportOperations", version: "1.33.0" };
58
+ ImportexportOperations[_b] = { fqn: "@cdk_utils/iam.importexport.ImportexportOperations", version: "1.35.0" };
59
59
  /** IAM actions required for the CancelJob API call. */
60
60
  ImportexportOperations.CancelJob = [];
61
61
  /** IAM actions required for the CreateJob API call. */
@@ -16,7 +16,7 @@ class InspectorScanActions {
16
16
  }
17
17
  exports.InspectorScanActions = InspectorScanActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- InspectorScanActions[_a] = { fqn: "@cdk_utils/iam.inspector_scan.InspectorScanActions", version: "1.33.0" };
19
+ InspectorScanActions[_a] = { fqn: "@cdk_utils/iam.inspector_scan.InspectorScanActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  InspectorScanActions.SERVICE_PREFIX = "inspector-scan";
22
22
  /** [Read] inspector-scan:ScanSbom */
@@ -38,7 +38,7 @@ class InspectorScanOperations {
38
38
  }
39
39
  exports.InspectorScanOperations = InspectorScanOperations;
40
40
  _b = JSII_RTTI_SYMBOL_1;
41
- InspectorScanOperations[_b] = { fqn: "@cdk_utils/iam.inspector_scan.InspectorScanOperations", version: "1.33.0" };
41
+ InspectorScanOperations[_b] = { fqn: "@cdk_utils/iam.inspector_scan.InspectorScanOperations", version: "1.35.0" };
42
42
  /** IAM actions required for the ScanSbom API call. */
43
43
  InspectorScanOperations.ScanSbom = ["inspector-scan:ScanSbom"];
44
44
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdG9yLXNjYW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ2VuZXJhdGVkL3NlcnZpY2VzL2luc3BlY3Rvci1zY2FuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0ZBQWdGO0FBQ2hGLDZDQUE2QztBQUM3QywwREFBMEQ7QUFDMUQscURBQXFEO0FBQ3JELG9EQUFvRDtBQUNwRCxnRkFBZ0Y7QUFFaEY7O0dBRUc7QUFDSCxNQUFhLG9CQUFvQjs7QUFBakMsb0RBaUJDOzs7QUFoQkEsOEJBQThCO0FBQ2QsbUNBQWMsR0FBRyxnQkFBZ0IsQ0FBQztBQUVsRCxxQ0FBcUM7QUFDckIsNkJBQVEsR0FBRyx5QkFBeUIsQ0FBQztBQUVyRCw4QkFBOEI7QUFDZCxtQ0FBYyxHQUFhLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDM0UsK0JBQStCO0FBQ2Ysb0NBQWUsR0FBYSxFQUFFLENBQUM7QUFDL0MsOEJBQThCO0FBQ2QsbUNBQWMsR0FBYSxFQUFFLENBQUM7QUFDOUMsK0NBQStDO0FBQy9CLG1EQUE4QixHQUFhLEVBQUUsQ0FBQztBQUM5RCxpQ0FBaUM7QUFDakIsc0NBQWlCLEdBQWEsRUFBRSxDQUFDO0FBR2xEOztHQUVHO0FBQ0gsTUFBYSx1QkFBdUI7O0FBQXBDLDBEQUdDOzs7QUFGQSxzREFBc0Q7QUFDdEMsZ0NBQVEsR0FBYSxDQUFDLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQVVUTy1HRU5FUkFURUQgRklMRSDigJQgRE8gTk9UIEVESVQgTUFOVUFMTFlcbi8vIEdlbmVyYXRlZCBmcm9tIEFXUyBTZXJ2aWNlIEF1dGhvcml6YXRpb24gUmVmZXJlbmNlIGRhdGFcbi8vIFNvdXJjZTogZGF0YS9zZXJ2aWNlLXJlZmVyZW5jZS9pbnNwZWN0b3Itc2Nhbi5qc29uXG4vLyBSdW4gYG5weCBwcm9qZW4gZ2VuZXJhdGUtY29uc3RhbnRzYCB0byByZWdlbmVyYXRlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIElBTSBhY3Rpb24gY29uc3RhbnRzIGZvciB0aGUgaW5zcGVjdG9yLXNjYW4gc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEluc3BlY3RvclNjYW5BY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwiaW5zcGVjdG9yLXNjYW5cIjtcblxuXHQvKiogW1JlYWRdIGluc3BlY3Rvci1zY2FuOlNjYW5TYm9tICovXG5cdHN0YXRpYyByZWFkb25seSBTY2FuU2JvbSA9IFwiaW5zcGVjdG9yLXNjYW46U2NhblNib21cIjtcblxuXHQvKiogQWxsIHJlYWQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFJlYWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtJbnNwZWN0b3JTY2FuQWN0aW9ucy5TY2FuU2JvbV07XG5cdC8qKiBBbGwgd3JpdGUtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFdyaXRlQWN0aW9uczogc3RyaW5nW10gPSBbXTtcblx0LyoqIEFsbCBsaXN0LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxMaXN0QWN0aW9uczogc3RyaW5nW10gPSBbXTtcblx0LyoqIEFsbCBwZXJtaXNzaW9uLW1hbmFnZW1lbnQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFBlcm1pc3Npb25NYW5hZ2VtZW50QWN0aW9uczogc3RyaW5nW10gPSBbXTtcblx0LyoqIEFsbCB0YWdnaW5nLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxUYWdnaW5nQWN0aW9uczogc3RyaW5nW10gPSBbXTtcbn1cblxuLyoqXG4gKiBBUEkgb3BlcmF0aW9uIHRvIHJlcXVpcmVkIElBTSBhY3Rpb25zIG1hcHBpbmcgZm9yIGluc3BlY3Rvci1zY2FuLlxuICovXG5leHBvcnQgY2xhc3MgSW5zcGVjdG9yU2Nhbk9wZXJhdGlvbnMge1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTY2FuU2JvbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNjYW5TYm9tOiBzdHJpbmdbXSA9IFtcImluc3BlY3Rvci1zY2FuOlNjYW5TYm9tXCJdO1xufVxuIl19
@@ -16,7 +16,7 @@ class InspectorActions {
16
16
  }
17
17
  exports.InspectorActions = InspectorActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- InspectorActions[_a] = { fqn: "@cdk_utils/iam.inspector.InspectorActions", version: "1.33.0" };
19
+ InspectorActions[_a] = { fqn: "@cdk_utils/iam.inspector.InspectorActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  InspectorActions.SERVICE_PREFIX = "inspector";
22
22
  /** [Write] inspector:AddAttributesToFindings */
@@ -151,7 +151,7 @@ class InspectorOperations {
151
151
  }
152
152
  exports.InspectorOperations = InspectorOperations;
153
153
  _b = JSII_RTTI_SYMBOL_1;
154
- InspectorOperations[_b] = { fqn: "@cdk_utils/iam.inspector.InspectorOperations", version: "1.33.0" };
154
+ InspectorOperations[_b] = { fqn: "@cdk_utils/iam.inspector.InspectorOperations", version: "1.35.0" };
155
155
  /** IAM actions required for the AddAttributesToFindings API call. */
156
156
  InspectorOperations.AddAttributesToFindings = [
157
157
  "inspector:AddAttributesToFindings",
@@ -16,7 +16,7 @@ class Inspector2TelemetryActions {
16
16
  }
17
17
  exports.Inspector2TelemetryActions = Inspector2TelemetryActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- Inspector2TelemetryActions[_a] = { fqn: "@cdk_utils/iam.inspector2_telemetry.Inspector2TelemetryActions", version: "1.33.0" };
19
+ Inspector2TelemetryActions[_a] = { fqn: "@cdk_utils/iam.inspector2_telemetry.Inspector2TelemetryActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  Inspector2TelemetryActions.SERVICE_PREFIX = "inspector2-telemetry";
22
22
  /** [Write] inspector2-telemetry:NotifyHeartbeat */
@@ -16,7 +16,7 @@ class Inspector2Actions {
16
16
  }
17
17
  exports.Inspector2Actions = Inspector2Actions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- Inspector2Actions[_a] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Actions", version: "1.33.0" };
19
+ Inspector2Actions[_a] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Actions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  Inspector2Actions.SERVICE_PREFIX = "inspector2";
22
22
  /** [Write] inspector2:AssociateMember */
@@ -460,7 +460,7 @@ class Inspector2Resources {
460
460
  }
461
461
  exports.Inspector2Resources = Inspector2Resources;
462
462
  _b = JSII_RTTI_SYMBOL_1;
463
- Inspector2Resources[_b] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Resources", version: "1.33.0" };
463
+ Inspector2Resources[_b] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Resources", version: "1.35.0" };
464
464
  /**
465
465
  * API operation to required IAM actions mapping for inspector2.
466
466
  */
@@ -468,7 +468,7 @@ class Inspector2Operations {
468
468
  }
469
469
  exports.Inspector2Operations = Inspector2Operations;
470
470
  _c = JSII_RTTI_SYMBOL_1;
471
- Inspector2Operations[_c] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Operations", version: "1.33.0" };
471
+ Inspector2Operations[_c] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Operations", version: "1.35.0" };
472
472
  /** IAM actions required for the AssociateMember API call. */
473
473
  Inspector2Operations.AssociateMember = ["inspector2:AssociateMember"];
474
474
  /** IAM actions required for the BatchAssociateCodeSecurityScanConfiguration API call. */
@@ -779,7 +779,7 @@ class Inspector2Conditions {
779
779
  }
780
780
  exports.Inspector2Conditions = Inspector2Conditions;
781
781
  _d = JSII_RTTI_SYMBOL_1;
782
- Inspector2Conditions[_d] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Conditions", version: "1.33.0" };
782
+ Inspector2Conditions[_d] = { fqn: "@cdk_utils/iam.inspector2.Inspector2Conditions", version: "1.35.0" };
783
783
  /** Condition keys applicable to the CreateCisScanConfiguration action. */
784
784
  Inspector2Conditions.CreateCisScanConfigurationConditionKeys = [
785
785
  "aws:RequestTag/${TagKey}",
@@ -16,7 +16,7 @@ class InterconnectActions {
16
16
  }
17
17
  exports.InterconnectActions = InterconnectActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- InterconnectActions[_a] = { fqn: "@cdk_utils/iam.interconnect.InterconnectActions", version: "1.33.0" };
19
+ InterconnectActions[_a] = { fqn: "@cdk_utils/iam.interconnect.InterconnectActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  InterconnectActions.SERVICE_PREFIX = "interconnect";
22
22
  /** [Write] interconnect:AcceptConnectionProposal */
@@ -137,7 +137,7 @@ class InterconnectResources {
137
137
  }
138
138
  exports.InterconnectResources = InterconnectResources;
139
139
  _b = JSII_RTTI_SYMBOL_1;
140
- InterconnectResources[_b] = { fqn: "@cdk_utils/iam.interconnect.InterconnectResources", version: "1.33.0" };
140
+ InterconnectResources[_b] = { fqn: "@cdk_utils/iam.interconnect.InterconnectResources", version: "1.35.0" };
141
141
  /**
142
142
  * API operation to required IAM actions mapping for interconnect.
143
143
  */
@@ -145,7 +145,7 @@ class InterconnectOperations {
145
145
  }
146
146
  exports.InterconnectOperations = InterconnectOperations;
147
147
  _c = JSII_RTTI_SYMBOL_1;
148
- InterconnectOperations[_c] = { fqn: "@cdk_utils/iam.interconnect.InterconnectOperations", version: "1.33.0" };
148
+ InterconnectOperations[_c] = { fqn: "@cdk_utils/iam.interconnect.InterconnectOperations", version: "1.35.0" };
149
149
  /** IAM actions required for the AcceptConnectionProposal API call. */
150
150
  InterconnectOperations.AcceptConnectionProposal = [
151
151
  "interconnect:AcceptConnectionProposal",
@@ -221,7 +221,7 @@ class InterconnectConditions {
221
221
  }
222
222
  exports.InterconnectConditions = InterconnectConditions;
223
223
  _d = JSII_RTTI_SYMBOL_1;
224
- InterconnectConditions[_d] = { fqn: "@cdk_utils/iam.interconnect.InterconnectConditions", version: "1.33.0" };
224
+ InterconnectConditions[_d] = { fqn: "@cdk_utils/iam.interconnect.InterconnectConditions", version: "1.35.0" };
225
225
  /** Condition keys applicable to the AcceptConnectionProposal action. */
226
226
  InterconnectConditions.AcceptConnectionProposalConditionKeys = [
227
227
  "aws:RequestTag/${TagKey}",
@@ -16,7 +16,7 @@ class InternetmonitorActions {
16
16
  }
17
17
  exports.InternetmonitorActions = InternetmonitorActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- InternetmonitorActions[_a] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorActions", version: "1.33.0" };
19
+ InternetmonitorActions[_a] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  InternetmonitorActions.SERVICE_PREFIX = "internetmonitor";
22
22
  /** [Write] internetmonitor:CreateMonitor */
@@ -178,7 +178,7 @@ class InternetmonitorResources {
178
178
  }
179
179
  exports.InternetmonitorResources = InternetmonitorResources;
180
180
  _b = JSII_RTTI_SYMBOL_1;
181
- InternetmonitorResources[_b] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorResources", version: "1.33.0" };
181
+ InternetmonitorResources[_b] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorResources", version: "1.35.0" };
182
182
  /**
183
183
  * API operation to required IAM actions mapping for internetmonitor.
184
184
  */
@@ -186,7 +186,7 @@ class InternetmonitorOperations {
186
186
  }
187
187
  exports.InternetmonitorOperations = InternetmonitorOperations;
188
188
  _c = JSII_RTTI_SYMBOL_1;
189
- InternetmonitorOperations[_c] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorOperations", version: "1.33.0" };
189
+ InternetmonitorOperations[_c] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorOperations", version: "1.35.0" };
190
190
  /** IAM actions required for the CreateMonitor API call. */
191
191
  InternetmonitorOperations.CreateMonitor = [
192
192
  "internetmonitor:CreateMonitor",
@@ -261,7 +261,7 @@ class InternetmonitorConditions {
261
261
  }
262
262
  exports.InternetmonitorConditions = InternetmonitorConditions;
263
263
  _d = JSII_RTTI_SYMBOL_1;
264
- InternetmonitorConditions[_d] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorConditions", version: "1.33.0" };
264
+ InternetmonitorConditions[_d] = { fqn: "@cdk_utils/iam.internetmonitor.InternetmonitorConditions", version: "1.35.0" };
265
265
  /** Condition keys applicable to the CreateMonitor action. */
266
266
  InternetmonitorConditions.CreateMonitorConditionKeys = [
267
267
  "aws:RequestTag/${TagKey}",
@@ -16,7 +16,7 @@ class InvoicingActions {
16
16
  }
17
17
  exports.InvoicingActions = InvoicingActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- InvoicingActions[_a] = { fqn: "@cdk_utils/iam.invoicing.InvoicingActions", version: "1.33.0" };
19
+ InvoicingActions[_a] = { fqn: "@cdk_utils/iam.invoicing.InvoicingActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  InvoicingActions.SERVICE_PREFIX = "invoicing";
22
22
  /** [Read] invoicing:BatchGetInvoiceProfile */
@@ -174,7 +174,7 @@ class InvoicingResources {
174
174
  }
175
175
  exports.InvoicingResources = InvoicingResources;
176
176
  _b = JSII_RTTI_SYMBOL_1;
177
- InvoicingResources[_b] = { fqn: "@cdk_utils/iam.invoicing.InvoicingResources", version: "1.33.0" };
177
+ InvoicingResources[_b] = { fqn: "@cdk_utils/iam.invoicing.InvoicingResources", version: "1.35.0" };
178
178
  /**
179
179
  * API operation to required IAM actions mapping for invoicing.
180
180
  */
@@ -182,7 +182,7 @@ class InvoicingOperations {
182
182
  }
183
183
  exports.InvoicingOperations = InvoicingOperations;
184
184
  _c = JSII_RTTI_SYMBOL_1;
185
- InvoicingOperations[_c] = { fqn: "@cdk_utils/iam.invoicing.InvoicingOperations", version: "1.33.0" };
185
+ InvoicingOperations[_c] = { fqn: "@cdk_utils/iam.invoicing.InvoicingOperations", version: "1.35.0" };
186
186
  /** IAM actions required for the BatchGetInvoiceProfile API call. */
187
187
  InvoicingOperations.BatchGetInvoiceProfile = [
188
188
  "invoicing:BatchGetInvoiceProfile",
@@ -284,7 +284,7 @@ class InvoicingConditions {
284
284
  }
285
285
  exports.InvoicingConditions = InvoicingConditions;
286
286
  _d = JSII_RTTI_SYMBOL_1;
287
- InvoicingConditions[_d] = { fqn: "@cdk_utils/iam.invoicing.InvoicingConditions", version: "1.33.0" };
287
+ InvoicingConditions[_d] = { fqn: "@cdk_utils/iam.invoicing.InvoicingConditions", version: "1.35.0" };
288
288
  /** Condition keys applicable to the CreateInvoiceUnit action. */
289
289
  InvoicingConditions.CreateInvoiceUnitConditionKeys = [
290
290
  "aws:RequestTag/${TagKey}",
@@ -16,7 +16,7 @@ class IotDeviceTesterActions {
16
16
  }
17
17
  exports.IotDeviceTesterActions = IotDeviceTesterActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- IotDeviceTesterActions[_a] = { fqn: "@cdk_utils/iam.iot_device_tester.IotDeviceTesterActions", version: "1.33.0" };
19
+ IotDeviceTesterActions[_a] = { fqn: "@cdk_utils/iam.iot_device_tester.IotDeviceTesterActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  IotDeviceTesterActions.SERVICE_PREFIX = "iot-device-tester";
22
22
  /** [Read] iot-device-tester:CheckVersion */
@@ -16,7 +16,7 @@ class IotActions {
16
16
  }
17
17
  exports.IotActions = IotActions;
18
18
  _a = JSII_RTTI_SYMBOL_1;
19
- IotActions[_a] = { fqn: "@cdk_utils/iam.iot.IotActions", version: "1.33.0" };
19
+ IotActions[_a] = { fqn: "@cdk_utils/iam.iot.IotActions", version: "1.35.0" };
20
20
  /** The IAM service prefix. */
21
21
  IotActions.SERVICE_PREFIX = "iot";
22
22
  /** [Write] iot:AcceptCertificateTransfer */
@@ -1880,7 +1880,7 @@ class IotResources {
1880
1880
  }
1881
1881
  exports.IotResources = IotResources;
1882
1882
  _b = JSII_RTTI_SYMBOL_1;
1883
- IotResources[_b] = { fqn: "@cdk_utils/iam.iot.IotResources", version: "1.33.0" };
1883
+ IotResources[_b] = { fqn: "@cdk_utils/iam.iot.IotResources", version: "1.35.0" };
1884
1884
  /**
1885
1885
  * API operation to required IAM actions mapping for iot.
1886
1886
  */
@@ -1888,7 +1888,7 @@ class IotOperations {
1888
1888
  }
1889
1889
  exports.IotOperations = IotOperations;
1890
1890
  _c = JSII_RTTI_SYMBOL_1;
1891
- IotOperations[_c] = { fqn: "@cdk_utils/iam.iot.IotOperations", version: "1.33.0" };
1891
+ IotOperations[_c] = { fqn: "@cdk_utils/iam.iot.IotOperations", version: "1.35.0" };
1892
1892
  /** IAM actions required for the AcceptCertificateTransfer API call. */
1893
1893
  IotOperations.AcceptCertificateTransfer = [
1894
1894
  "iot:AcceptCertificateTransfer",
@@ -2901,7 +2901,7 @@ class IotConditions {
2901
2901
  }
2902
2902
  exports.IotConditions = IotConditions;
2903
2903
  _d = JSII_RTTI_SYMBOL_1;
2904
- IotConditions[_d] = { fqn: "@cdk_utils/iam.iot.IotConditions", version: "1.33.0" };
2904
+ IotConditions[_d] = { fqn: "@cdk_utils/iam.iot.IotConditions", version: "1.35.0" };
2905
2905
  /** Condition keys applicable to the AttachThingPrincipal action. */
2906
2906
  IotConditions.AttachThingPrincipalConditionKeys = [
2907
2907
  "iot:thingArn",