iam-floyd 0.366.0 → 0.367.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 (339) hide show
  1. package/.jsii +29 -12
  2. package/README.md +1 -1
  3. package/lib/collection/index.js +1 -1
  4. package/lib/generated/accountmanagement.js +1 -1
  5. package/lib/generated/activate.js +1 -1
  6. package/lib/generated/alexaforbusiness.js +1 -1
  7. package/lib/generated/amplify.js +1 -1
  8. package/lib/generated/amplifyadmin.js +1 -1
  9. package/lib/generated/amplifyuibuilder.js +1 -1
  10. package/lib/generated/apachekafkaapisforamazonmskclusters.js +1 -1
  11. package/lib/generated/apigateway.js +1 -1
  12. package/lib/generated/apigatewaymanagement.js +1 -1
  13. package/lib/generated/apigatewaymanagementv2.js +1 -1
  14. package/lib/generated/appconfig.js +1 -1
  15. package/lib/generated/appflow.js +1 -1
  16. package/lib/generated/appintegrations.js +1 -1
  17. package/lib/generated/applicationautoscaling.js +1 -1
  18. package/lib/generated/applicationcostprofilerservice.js +1 -1
  19. package/lib/generated/applicationdiscovery.js +1 -1
  20. package/lib/generated/applicationdiscoveryarsenal.js +1 -1
  21. package/lib/generated/applicationmigrationservice.js +1 -1
  22. package/lib/generated/appmesh.js +1 -1
  23. package/lib/generated/appmeshpreview.js +1 -1
  24. package/lib/generated/apprunner.js +1 -1
  25. package/lib/generated/appstream2-0.js +1 -1
  26. package/lib/generated/appsync.js +1 -1
  27. package/lib/generated/artifact.js +1 -1
  28. package/lib/generated/athena.js +1 -1
  29. package/lib/generated/auditmanager.js +1 -1
  30. package/lib/generated/autoscaling.js +1 -1
  31. package/lib/generated/backup.js +1 -1
  32. package/lib/generated/backupgateway.js +1 -1
  33. package/lib/generated/backupstorage.js +1 -1
  34. package/lib/generated/batch.js +1 -1
  35. package/lib/generated/billing.js +1 -1
  36. package/lib/generated/billingconductor.js +1 -1
  37. package/lib/generated/braket.js +1 -1
  38. package/lib/generated/budgetservice.js +1 -1
  39. package/lib/generated/bugbust.js +1 -1
  40. package/lib/generated/certificatemanager.js +1 -1
  41. package/lib/generated/certificatemanagerprivatecertificateauthority.js +1 -1
  42. package/lib/generated/chatbot.js +1 -1
  43. package/lib/generated/chime.js +1 -1
  44. package/lib/generated/cloud9.js +1 -1
  45. package/lib/generated/cloudcontrolapi.js +1 -1
  46. package/lib/generated/clouddirectory.js +1 -1
  47. package/lib/generated/cloudformation.js +1 -1
  48. package/lib/generated/cloudfront.js +1 -1
  49. package/lib/generated/cloudhsm.js +1 -1
  50. package/lib/generated/cloudmap.js +1 -1
  51. package/lib/generated/cloudsearch.js +1 -1
  52. package/lib/generated/cloudshell.js +1 -1
  53. package/lib/generated/cloudtrail.js +1 -1
  54. package/lib/generated/cloudwatch.js +1 -1
  55. package/lib/generated/cloudwatchapplicationinsights.js +1 -1
  56. package/lib/generated/cloudwatchevidently.js +1 -1
  57. package/lib/generated/cloudwatchlogs.js +1 -1
  58. package/lib/generated/cloudwatchrum.js +1 -1
  59. package/lib/generated/cloudwatchsynthetics.js +1 -1
  60. package/lib/generated/codeartifact.js +1 -1
  61. package/lib/generated/codebuild.js +1 -1
  62. package/lib/generated/codecommit.js +1 -1
  63. package/lib/generated/codedeploy.js +1 -1
  64. package/lib/generated/codedeploysecurehostcommandsservice.js +1 -1
  65. package/lib/generated/codeguru.js +1 -1
  66. package/lib/generated/codeguruprofiler.js +1 -1
  67. package/lib/generated/codegurureviewer.js +1 -1
  68. package/lib/generated/codepipeline.js +1 -1
  69. package/lib/generated/codestar.js +1 -1
  70. package/lib/generated/codestarconnections.js +1 -1
  71. package/lib/generated/codestarnotifications.js +1 -1
  72. package/lib/generated/cognitoidentity.js +1 -1
  73. package/lib/generated/cognitosync.js +1 -1
  74. package/lib/generated/cognitouserpools.js +1 -1
  75. package/lib/generated/comprehend.js +1 -1
  76. package/lib/generated/comprehendmedical.js +1 -1
  77. package/lib/generated/computeoptimizer.js +1 -1
  78. package/lib/generated/config.js +1 -1
  79. package/lib/generated/connect.js +1 -1
  80. package/lib/generated/connectcustomerprofiles.js +1 -1
  81. package/lib/generated/connectorservice.js +1 -1
  82. package/lib/generated/connectvoiceid.js +1 -1
  83. package/lib/generated/connectwisdom.js +1 -1
  84. package/lib/generated/controltower.js +1 -1
  85. package/lib/generated/costandusagereport.js +1 -1
  86. package/lib/generated/costexplorerservice.js +1 -1
  87. package/lib/generated/databasemigrationservice.js +1 -1
  88. package/lib/generated/databasequerymetadataservice.js +1 -1
  89. package/lib/generated/dataexchange.js +1 -1
  90. package/lib/generated/datalifecyclemanager.js +1 -1
  91. package/lib/generated/datapipeline.js +1 -1
  92. package/lib/generated/datasync.js +1 -1
  93. package/lib/generated/deepcomposer.js +1 -1
  94. package/lib/generated/deeplens.js +1 -1
  95. package/lib/generated/deepracer.js +1 -1
  96. package/lib/generated/detective.js +1 -1
  97. package/lib/generated/devicefarm.js +1 -1
  98. package/lib/generated/devopsguru.js +1 -1
  99. package/lib/generated/directconnect.js +1 -1
  100. package/lib/generated/directoryservice.js +1 -1
  101. package/lib/generated/dynamodb.js +1 -1
  102. package/lib/generated/dynamodbacceleratordax.js +1 -1
  103. package/lib/generated/ec2.js +1 -1
  104. package/lib/generated/ec2autoscaling.js +1 -1
  105. package/lib/generated/ec2imagebuilder.js +1 -1
  106. package/lib/generated/ec2instanceconnect.js +1 -1
  107. package/lib/generated/elasticache.js +1 -1
  108. package/lib/generated/elasticbeanstalk.js +1 -1
  109. package/lib/generated/elasticblockstore.js +1 -1
  110. package/lib/generated/elasticcontainerregistry.js +1 -1
  111. package/lib/generated/elasticcontainerregistrypublic.js +1 -1
  112. package/lib/generated/elasticcontainerservice.js +1 -1
  113. package/lib/generated/elasticdisasterrecovery.js +1 -1
  114. package/lib/generated/elasticfilesystem.js +1 -1
  115. package/lib/generated/elasticinference.js +1 -1
  116. package/lib/generated/elastickubernetesservice.js +1 -1
  117. package/lib/generated/elasticloadbalancing.js +1 -1
  118. package/lib/generated/elasticloadbalancingv2.js +1 -1
  119. package/lib/generated/elasticmapreduce.js +1 -1
  120. package/lib/generated/elastictranscoder.js +1 -1
  121. package/lib/generated/elementalappliancesandsoftware.js +1 -1
  122. package/lib/generated/elementalappliancesandsoftwareactivationservice.js +1 -1
  123. package/lib/generated/elementalmediaconnect.js +1 -1
  124. package/lib/generated/elementalmediaconvert.js +1 -1
  125. package/lib/generated/elementalmedialive.js +1 -1
  126. package/lib/generated/elementalmediapackage.js +1 -1
  127. package/lib/generated/elementalmediapackagevod.js +1 -1
  128. package/lib/generated/elementalmediastore.js +1 -1
  129. package/lib/generated/elementalmediatailor.js +1 -1
  130. package/lib/generated/elementalsupportcases.js +1 -1
  131. package/lib/generated/elementalsupportcontent.js +1 -1
  132. package/lib/generated/emroneksemrcontainers.js +1 -1
  133. package/lib/generated/eventbridge.js +1 -1
  134. package/lib/generated/eventbridgeschemas.js +1 -1
  135. package/lib/generated/faultinjectionsimulator.js +1 -1
  136. package/lib/generated/finspace.js +1 -1
  137. package/lib/generated/firewallmanager.js +1 -1
  138. package/lib/generated/forecast.js +1 -1
  139. package/lib/generated/frauddetector.js +1 -1
  140. package/lib/generated/freertos.js +1 -1
  141. package/lib/generated/fsx.js +1 -1
  142. package/lib/generated/gamelift.js +1 -1
  143. package/lib/generated/gamesparks.js +1 -1
  144. package/lib/generated/globalaccelerator.js +1 -1
  145. package/lib/generated/glue.js +1 -1
  146. package/lib/generated/gluedatabrew.js +1 -1
  147. package/lib/generated/groundstation.js +1 -1
  148. package/lib/generated/groundtruthlabeling.js +1 -1
  149. package/lib/generated/guardduty.js +1 -1
  150. package/lib/generated/healthapisandnotifications.js +1 -1
  151. package/lib/generated/healthlake.js +1 -1
  152. package/lib/generated/high-volumeoutboundcommunications.js +1 -1
  153. package/lib/generated/honeycode.js +1 -1
  154. package/lib/generated/iamaccessanalyzer.js +1 -1
  155. package/lib/generated/identityandaccessmanagement.js +1 -1
  156. package/lib/generated/identitystore.js +1 -1
  157. package/lib/generated/identitysynchronizationservice.js +1 -1
  158. package/lib/generated/importexportdiskservice.js +1 -1
  159. package/lib/generated/inspector.js +1 -1
  160. package/lib/generated/inspector2.js +1 -1
  161. package/lib/generated/interactivevideoservice.js +1 -1
  162. package/lib/generated/interactivevideoservicechat.js +1 -1
  163. package/lib/generated/iot.js +1 -1
  164. package/lib/generated/iot1-click.js +1 -1
  165. package/lib/generated/iotanalytics.js +1 -1
  166. package/lib/generated/iotcoredeviceadvisor.js +1 -1
  167. package/lib/generated/iotcoreforlorawan.js +1 -1
  168. package/lib/generated/iotdevicetester.js +1 -1
  169. package/lib/generated/iotevents.js +1 -1
  170. package/lib/generated/iotfleethubfordevicemanagement.js +1 -1
  171. package/lib/generated/iotfleetwise.js +1 -1
  172. package/lib/generated/iotgreengrass.js +1 -1
  173. package/lib/generated/iotgreengrassv2.js +1 -1
  174. package/lib/generated/iotjobsdataplane.js +1 -1
  175. package/lib/generated/iotroborunner.js +1 -1
  176. package/lib/generated/iotsitewise.js +1 -1
  177. package/lib/generated/iotthingsgraph.js +1 -1
  178. package/lib/generated/iottwinmaker.js +1 -1
  179. package/lib/generated/iq.js +1 -1
  180. package/lib/generated/iqpermissions.js +1 -1
  181. package/lib/generated/kendra.js +1 -1
  182. package/lib/generated/keymanagementservice.js +1 -1
  183. package/lib/generated/keyspacesforapachecassandra.js +1 -1
  184. package/lib/generated/kinesis.js +1 -1
  185. package/lib/generated/kinesisanalytics.js +1 -1
  186. package/lib/generated/kinesisanalyticsv2.js +1 -1
  187. package/lib/generated/kinesisfirehose.js +1 -1
  188. package/lib/generated/kinesisvideostreams.js +1 -1
  189. package/lib/generated/lakeformation.js +1 -1
  190. package/lib/generated/lambda.js +1 -1
  191. package/lib/generated/launchwizard.js +1 -1
  192. package/lib/generated/lex.js +1 -1
  193. package/lib/generated/lexv2.js +1 -1
  194. package/lib/generated/licensemanager.js +1 -1
  195. package/lib/generated/lightsail.js +1 -1
  196. package/lib/generated/location.js +1 -1
  197. package/lib/generated/lookoutforequipment.js +1 -1
  198. package/lib/generated/lookoutformetrics.js +1 -1
  199. package/lib/generated/lookoutforvision.js +1 -1
  200. package/lib/generated/machinelearning.js +1 -1
  201. package/lib/generated/macie.js +1 -1
  202. package/lib/generated/macieclassic.js +1 -1
  203. package/lib/generated/managedblockchain.js +1 -1
  204. package/lib/generated/managedgrafana.js +1 -1
  205. package/lib/generated/managedserviceforprometheus.js +1 -1
  206. package/lib/generated/managedstreamingforapachekafka.js +1 -1
  207. package/lib/generated/managedstreamingforkafkaconnect.js +1 -1
  208. package/lib/generated/managedworkflowsforapacheairflow.js +1 -1
  209. package/lib/generated/marketplace.js +1 -1
  210. package/lib/generated/marketplacecatalog.js +1 -1
  211. package/lib/generated/marketplacecommerceanalyticsservice.js +1 -1
  212. package/lib/generated/marketplaceentitlementservice.js +1 -1
  213. package/lib/generated/marketplaceimagebuildingservice.js +1 -1
  214. package/lib/generated/marketplacemanagementportal.js +1 -1
  215. package/lib/generated/marketplacemeteringservice.js +1 -1
  216. package/lib/generated/marketplaceprivatemarketplace.js +1 -1
  217. package/lib/generated/marketplaceprocurementsystemsintegration.js +1 -1
  218. package/lib/generated/mechanicalturk.js +1 -1
  219. package/lib/generated/mediaimport.js +1 -1
  220. package/lib/generated/memorydb.js +1 -1
  221. package/lib/generated/messagedeliveryservice.js +1 -1
  222. package/lib/generated/microserviceextractorfor-net.js +1 -1
  223. package/lib/generated/migrationhub.js +1 -1
  224. package/lib/generated/migrationhuborchestrator.js +1 -1
  225. package/lib/generated/migrationhubrefactorspaces.js +1 -1
  226. package/lib/generated/migrationhubstrategyrecommendations.js +1 -1
  227. package/lib/generated/mobileanalytics.js +1 -1
  228. package/lib/generated/mobilehub.js +1 -1
  229. package/lib/generated/monitron.js +1 -1
  230. package/lib/generated/mq.js +1 -1
  231. package/lib/generated/neptune.js +1 -1
  232. package/lib/generated/networkfirewall.js +1 -1
  233. package/lib/generated/networkmanager.js +1 -1
  234. package/lib/generated/nimblestudio.js +1 -1
  235. package/lib/generated/opensearchservicesuccessortoamazonelasticsearchservice.js +1 -1
  236. package/lib/generated/opsworks.js +1 -1
  237. package/lib/generated/opsworksconfigurationmanagement.js +1 -1
  238. package/lib/generated/organizations.js +1 -1
  239. package/lib/generated/outposts.js +1 -1
  240. package/lib/generated/panorama.js +1 -1
  241. package/lib/generated/performanceinsights.js +1 -1
  242. package/lib/generated/personalize.js +1 -1
  243. package/lib/generated/pinpoint.js +1 -1
  244. package/lib/generated/pinpointemailservice.js +1 -1
  245. package/lib/generated/pinpointsmsandvoiceservice.js +1 -1
  246. package/lib/generated/pinpointsmsvoicev2.js +1 -1
  247. package/lib/generated/polly.js +1 -1
  248. package/lib/generated/pricelist.js +1 -1
  249. package/lib/generated/proton.js +1 -1
  250. package/lib/generated/purchaseordersconsole.js +1 -1
  251. package/lib/generated/qldb.js +1 -1
  252. package/lib/generated/quicksight.js +1 -1
  253. package/lib/generated/rds.js +1 -1
  254. package/lib/generated/rdsdataapi.js +1 -1
  255. package/lib/generated/rdsiamauthentication.js +1 -1
  256. package/lib/generated/recyclebin.js +1 -1
  257. package/lib/generated/redshift.js +1 -1
  258. package/lib/generated/redshiftdataapi.js +1 -1
  259. package/lib/generated/rekognition.js +1 -1
  260. package/lib/generated/resiliencehubservice.js +1 -1
  261. package/lib/generated/resourceaccessmanager.js +1 -1
  262. package/lib/generated/resourcegroups.js +1 -1
  263. package/lib/generated/resourcegrouptaggingapi.js +1 -1
  264. package/lib/generated/rhelknowledgebaseportal.js +1 -1
  265. package/lib/generated/robomaker.js +1 -1
  266. package/lib/generated/route53.js +1 -1
  267. package/lib/generated/route53domains.js +1 -1
  268. package/lib/generated/route53recoverycluster.js +1 -1
  269. package/lib/generated/route53recoverycontrols.js +1 -1
  270. package/lib/generated/route53recoveryreadiness.js +1 -1
  271. package/lib/generated/route53resolver.js +1 -1
  272. package/lib/generated/s3.js +1 -1
  273. package/lib/generated/s3glacier.js +1 -1
  274. package/lib/generated/s3objectlambda.js +1 -1
  275. package/lib/generated/s3onoutposts.js +1 -1
  276. package/lib/generated/sagemaker.js +1 -1
  277. package/lib/generated/savingsplans.js +1 -1
  278. package/lib/generated/secretsmanager.js +1 -1
  279. package/lib/generated/securityhub.js +1 -1
  280. package/lib/generated/securitytokenservice.js +1 -1
  281. package/lib/generated/serverlessapplicationrepository.js +1 -1
  282. package/lib/generated/servermigrationservice.js +1 -1
  283. package/lib/generated/servicecatalog.js +1 -1
  284. package/lib/generated/servicequotas.js +1 -1
  285. package/lib/generated/ses.js +1 -1
  286. package/lib/generated/sessionmanagermessagegatewayservice.js +1 -1
  287. package/lib/generated/shield.js +1 -1
  288. package/lib/generated/signer.js +1 -1
  289. package/lib/generated/simpledb.js +1 -1
  290. package/lib/generated/simpleemailservicev2.js +1 -1
  291. package/lib/generated/simpleworkflowservice.js +1 -1
  292. package/lib/generated/snowball.js +1 -1
  293. package/lib/generated/snowdevicemanagement.js +1 -1
  294. package/lib/generated/sns.js +1 -1
  295. package/lib/generated/sqlworkbench.d.ts +8 -0
  296. package/lib/generated/sqlworkbench.js +13 -2
  297. package/lib/generated/sqs.js +1 -1
  298. package/lib/generated/sso.js +1 -1
  299. package/lib/generated/ssodirectory.js +1 -1
  300. package/lib/generated/stepfunctions.js +1 -1
  301. package/lib/generated/storagegateway.js +1 -1
  302. package/lib/generated/sumerian.js +1 -1
  303. package/lib/generated/support.js +1 -1
  304. package/lib/generated/sustainability.js +1 -1
  305. package/lib/generated/systemsmanager.js +1 -1
  306. package/lib/generated/systemsmanagerguiconnect.js +1 -1
  307. package/lib/generated/systemsmanagerincidentmanager.js +1 -1
  308. package/lib/generated/systemsmanagerincidentmanagercontacts.js +1 -1
  309. package/lib/generated/tageditor.js +1 -1
  310. package/lib/generated/taxsettings.js +1 -1
  311. package/lib/generated/textract.js +1 -1
  312. package/lib/generated/timestream.js +1 -1
  313. package/lib/generated/tiros.js +1 -1
  314. package/lib/generated/transcribe.js +1 -1
  315. package/lib/generated/transferfamily.js +1 -1
  316. package/lib/generated/translate.js +1 -1
  317. package/lib/generated/trustedadvisor.js +1 -1
  318. package/lib/generated/waf.js +1 -1
  319. package/lib/generated/wafregional.js +1 -1
  320. package/lib/generated/wafv2.js +1 -1
  321. package/lib/generated/well-architectedtool.js +1 -1
  322. package/lib/generated/workdocs.js +1 -1
  323. package/lib/generated/worklink.js +1 -1
  324. package/lib/generated/workmail.js +1 -1
  325. package/lib/generated/workmailmessageflow.js +1 -1
  326. package/lib/generated/workspaces.js +1 -1
  327. package/lib/generated/workspacesapplicationmanager.js +1 -1
  328. package/lib/generated/workspacesweb.js +1 -1
  329. package/lib/generated/x-ray.js +1 -1
  330. package/lib/shared/all.js +1 -1
  331. package/lib/shared/operators.js +1 -1
  332. package/lib/shared/policy-statement/1-base.js +1 -1
  333. package/lib/shared/policy-statement/2-conditions.js +1 -1
  334. package/lib/shared/policy-statement/3-actions.js +1 -1
  335. package/lib/shared/policy-statement/4-resources.js +1 -1
  336. package/lib/shared/policy-statement/5-effect.js +1 -1
  337. package/lib/shared/policy-statement/6-principals.js +1 -1
  338. package/lib/shared/policy-statement/9-final.js +1 -1
  339. package/package.json +1 -1
@@ -33,7 +33,7 @@ class PolicyStatementBase {
33
33
  }
34
34
  exports.PolicyStatementBase = PolicyStatementBase;
35
35
  _a = JSII_RTTI_SYMBOL_1;
36
- PolicyStatementBase[_a] = { fqn: "iam-floyd.PolicyStatementBase", version: "0.366.0" };
36
+ PolicyStatementBase[_a] = { fqn: "iam-floyd.PolicyStatementBase", version: "0.367.0" };
37
37
  /**
38
38
  * The default partition for ARNs (such as one of [aws, aws-us-gov, aws-cn]). In
39
39
  * CDK applications, this is a reference to the current partition, otherwise, 'aws'.
@@ -628,7 +628,7 @@ class PolicyStatementWithCondition extends _1_base_1.PolicyStatementBase {
628
628
  }
629
629
  exports.PolicyStatementWithCondition = PolicyStatementWithCondition;
630
630
  _a = JSII_RTTI_SYMBOL_1;
631
- PolicyStatementWithCondition[_a] = { fqn: "iam-floyd.PolicyStatementWithCondition", version: "0.366.0" };
631
+ PolicyStatementWithCondition[_a] = { fqn: "iam-floyd.PolicyStatementWithCondition", version: "0.367.0" };
632
632
  function dateToString(value) {
633
633
  if (typeof value.getMonth === 'function') {
634
634
  value = value.toISOString();
@@ -281,5 +281,5 @@ class PolicyStatementWithActions extends _2_conditions_1.PolicyStatementWithCond
281
281
  }
282
282
  exports.PolicyStatementWithActions = PolicyStatementWithActions;
283
283
  _a = JSII_RTTI_SYMBOL_1;
284
- PolicyStatementWithActions[_a] = { fqn: "iam-floyd.PolicyStatementWithActions", version: "0.366.0" };
284
+ PolicyStatementWithActions[_a] = { fqn: "iam-floyd.PolicyStatementWithActions", version: "0.367.0" };
285
285
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMy1hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiMy1hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0VBQW9EO0FBQ3BELDRDQUE2QztBQUU3QyxrREFBOEM7QUFFOUMsa0RBQThEO0FBVzlEOztHQUVHO0FBQ0gsTUFBYSwwQkFBMkIsU0FBUSw0Q0FBNEI7SUFBNUU7O1FBQ1ksb0JBQWUsR0FBb0IsRUFBRSxDQUFDO1FBQ3hDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFDekIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLGNBQVMsR0FBRyxLQUFLLENBQUM7S0ErUjNCO0lBN1JDOzs7O09BSUc7SUFDSSxNQUFNO1FBQ1gsa0RBQWtEO1FBQ2xELElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxJQUFJLFVBQVUsRUFBRTtZQUMxQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsT0FBTyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDdkI7UUFDRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUN6RCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWxCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ3ZCO1lBQ0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU87aUJBQ3pCLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFB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QUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztpQkFDakIsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FDckIsQ0FBQztZQUNGLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzVCLGNBQWMsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxxQ0FBcUM7WUFDcEUsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILGNBQWM7YUFDWCxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNqQixnRkFBZ0Y7WUFDaEYsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUM7YUFDRCxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNsQiw0RUFBNEU7WUFDNUUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUFDO1FBRUwsbUNBQW1DO1FBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsaUJBQWlCLENBQUM7SUFDbkMsQ0FBQzs7QUFuU0gsZ0VBb1NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN1YnN0cmluZ3MgZnJvbSAnQHVkb25kYW4vY29tbW9uLXN1YnN0cmluZ3MnO1xuaW1wb3J0IFJlZ2V4UGFyc2VyID0gcmVxdWlyZSgncmVnZXgtcGFyc2VyJyk7XG5cbmltcG9ydCB7IEFjY2Vzc0xldmVsIH0gZnJvbSAnLi4vYWNjZXNzLWxldmVsJztcbmltcG9ydCB7IEFjY2Vzc0xldmVsTGlzdCB9IGZyb20gJy4uL2FjY2Vzcy1sZXZlbCc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnRXaXRoQ29uZGl0aW9uIH0gZnJvbSAnLi8yLWNvbmRpdGlvbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbiB7XG4gIHVybDogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBhY2Nlc3NMZXZlbDogc3RyaW5nO1xuICByZXNvdXJjZVR5cGVzPzogYW55O1xuICBjb25kaXRpb25zPzogc3RyaW5nW107XG4gIGRlcGVuZGVudEFjdGlvbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBBZGRzIFwiYWN0aW9uXCIgZnVuY3Rpb25hbGl0eSB0byB0aGUgUG9saWN5IFN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgUG9saWN5U3RhdGVtZW50V2l0aEFjdGlvbnMgZXh0ZW5kcyBQb2xpY3lTdGF0ZW1lbnRXaXRoQ29uZGl0aW9uIHtcbiAgcHJvdGVjdGVkIGFjY2Vzc0xldmVsTGlzdDogQWNjZXNzTGV2ZWxMaXN0ID0ge307XG4gIHByaXZhdGUgdXNlTm90QWN0aW9ucyA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgYWN0aW9uczogc3RyaW5nW10gPSBbXTtcbiAgcHJpdmF0ZSBjZGtBY3Rpb25zQXBwbGllZCA9IGZhbHNlO1xuICBwcml2YXRlIGlzQ29tcGFjdCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmplY3RzIGFjdGlvbnMgaW50byB0aGUgc3RhdGVtZW50LlxuICAgKlxuICAgKiBPbmx5IHJlbGV2YW50IGZvciB0aGUgbWFpbiBwYWNrYWdlLiBJbiBDREsgbW9kZSB0aGlzIG9ubHkgY2FsbHMgc3VwZXIuXG4gICAqL1xuICBwdWJsaWMgdG9KU09OKCk6IGFueSB7XG4gICAgLy8gQHRzLWlnbm9yZSBvbmx5IGF2YWlsYWJsZSBhZnRlciBzd2FwcGluZyAxLWJhc2VcbiAgICBpZiAodHlwZW9mIHRoaXMuYWRkUmVzb3VyY2VzID09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuY2RrQXBwbHlBY3Rpb25zKCk7XG4gICAgICByZXR1cm4gc3VwZXIudG9KU09OKCk7XG4gICAgfVxuICAgIGNvbnN0IG1vZGUgPSB0aGlzLnVzZU5vdEFjdGlvbnMgPyAnTm90QWN0aW9uJyA6ICdBY3Rpb24nO1xuICAgIGNvbnN0IHN0YXRlbWVudCA9IHN1cGVyLnRvSlNPTigpO1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuXG4gICAgaWYgKHRoaXMuaGFzQWN0aW9ucygpKSB7XG4gICAgICBpZiAodGhpcy5pc0NvbXBhY3QpIHtcbiAgICAgICAgdGhpcy5jb21wYWN0QWN0aW9ucygpO1xuICAgICAgfVxuICAgICAgY29uc3QgYWN0aW9ucyA9IHRoaXMuYWN0aW9uc1xuICAgICAgICAuZmlsdGVyKChlbGVtLCBwb3MpID0+IHtcbiAgICAgICAgICByZXR1cm4gc2VsZi5hY3Rpb25zLmluZGV4T2YoZWxlbSkgPT0gcG9zO1xuICAgICAgICB9KVxuICAgICAgICAuc29ydCgpO1xuICAgICAgc3RhdGVtZW50W21vZGVdID0gYWN0aW9ucy5sZW5ndGggPiAxID8gYWN0aW9ucyA6IGFjdGlvbnNbMF07XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyB0b1N0YXRlbWVudEpzb24oKTogYW55IHtcbiAgICB0aGlzLmNka0FwcGx5QWN0aW9ucygpO1xuICAgIC8vIEB0cy1pZ25vcmUgb25seSBhdmFpbGFibGUgYWZ0ZXIgc3dhcHBpbmcgMS1iYXNlXG4gICAgcmV0dXJuIHN1cGVyLnRvU3RhdGVtZW50SnNvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBjZGtBcHBseUFjdGlvbnMoKSB7XG4gICAgaWYgKCF0aGlzLmNka0FjdGlvbnNBcHBsaWVkKSB7XG4gICAgICBjb25zdCBtb2RlID0gdGhpcy51c2VOb3RBY3Rpb25zID8gJ2FkZE5vdEFjdGlvbnMnIDogJ2FkZEFjdGlvbnMnO1xuICAgICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgICBpZiAodGhpcy5pc0NvbXBhY3QpIHtcbiAgICAgICAgdGhpcy5jb21wYWN0QWN0aW9ucygpO1xuICAgICAgfVxuICAgICAgY29uc3QgdW5pcXVlQWN0aW9ucyA9IHRoaXMuYWN0aW9uc1xuICAgICAgICAuZmlsdGVyKChlbGVtLCBwb3MpID0+IHtcbiAgICAgICAgICByZXR1cm4gc2VsZi5hY3Rpb25zLmluZGV4T2YoZWxlbSkgPT0gcG9zO1xuICAgICAgICB9KVxuICAgICAgICAuc29ydCgpO1xuICAgICAgLy8gQHRzLWlnbm9yZSBvbmx5IGF2YWlsYWJsZSBhZnRlciBzd2FwcGluZyAxLWJhc2VcbiAgICAgIHRoaXNbbW9kZV0oLi4udW5pcXVlQWN0aW9ucyk7XG4gICAgfVxuICAgIHRoaXMuY2RrQWN0aW9uc0FwcGxpZWQgPSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFN3aXRjaGVzIHRoZSBzdGF0ZW1lbnQgdG8gdXNlIFtgTm90QWN0aW9uYF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19ub3RhY3Rpb24uaHRtbCkuXG4gICAqL1xuICBwdWJsaWMgbm90QWN0aW9ucygpIHtcbiAgICB0aGlzLnVzZU5vdEFjdGlvbnMgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyB3ZWF0aGVyIGFjdGlvbnMgaGF2ZSBiZWVuIGFwcGxpZWQgdG8gdGhlIHBvbGljeS5cbiAgICovXG4gIHB1YmxpYyBoYXNBY3Rpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFjdGlvbnMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFjdGlvbnMgYnkgbmFtZS5cbiAgICpcbiAgICogRGVwZW5kaW5nIG9uIHRoZSBcIm1vZGVcIiwgYWN0aW9ucyB3aWxsIGJlIGVpdGhlciBhZGRlZCB0byB0aGUgbGlzdCBvZiBbYEFjdGlvbnNgXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX2FjdGlvbi5odG1sKSBvciBbYE5vdEFjdGlvbnNgXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX25vdGFjdGlvbi5odG1sKS5cbiAgICpcbiAgICogVGhlIG1vZGUgY2FuIGJlIHN3aXRjaGVkIGJ5IGNhbGxpbmcgYG5vdEFjdGlvbnMoKWAuXG4gICAqXG4gICAqIElmIHRoZSBhY3Rpb24gZG9lcyBub3QgY29udGFpbiBhIGNvbG9uLCB0aGUgYWN0aW9uIHdpbGwgYmUgcHJlZml4ZWQgd2l0aCB0aGUgc2VydmljZSBwcmVmaXggb2YgdGhlIGNsYXNzLCBlLmcuIGBlYzI6YFxuICAgKlxuICAgKiBAcGFyYW0gYWN0aW9uIEFjdGlvbnMgdGhhdCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBzdGF0ZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgdG8oYWN0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5zZXJ2aWNlUHJlZml4Lmxlbmd0aCAmJiBhY3Rpb24uaW5kZXhPZignOicpIDwgMCkge1xuICAgICAgYWN0aW9uID0gdGhpcy5zZXJ2aWNlUHJlZml4ICsgJzonICsgYWN0aW9uO1xuICAgIH1cblxuICAgIHRoaXMuYWN0aW9ucy5wdXNoKGFjdGlvbik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbGwgYWN0aW9ucyBvZiB0aGUgc3RhdGVtZW50IHByb3ZpZGVyIHRvIHRoZSBzdGF0ZW1lbnQsIGUuZy4gYGFjdGlvbnM6ICdlYzI6KidgXG4gICAqL1xuICBwdWJsaWMgYWxsQWN0aW9ucygpIHtcbiAgICBpZiAodGhpcy5zZXJ2aWNlUHJlZml4Lmxlbmd0aCkge1xuICAgICAgdGhpcy50byhgJHt0aGlzLnNlcnZpY2VQcmVmaXh9OipgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy50bygnKicpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFsbCBhY3Rpb25zIHRoYXQgbWF0Y2ggb25lIG9mIHRoZSBnaXZlbiByZWd1bGFyIGV4cHJlc3Npb25zLlxuICAgKlxuICAgKiBAcGFyYW0gZXhwcmVzc2lvbnMgT25lIG9yIG1vcmUgcmVndWxhciBleHByZXNzaW9ucy4gVGhlIHJlZ3VsYXIgZXhwcmVzc2lvbnMgbmVlZCB0byBiZSBpbiBbUGVybC9KYXZhU2NyaXB0IGxpdGVyYWwgc3R5bGVdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvR3VpZGUvUmVndWxhcl9FeHByZXNzaW9ucykgYW5kIG5lZWQgdG8gYmUgcGFzc2VkIGFzIHN0cmluZ3MsXG4gICAqIEZvciBleGFtcGxlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGFsbE1hdGNoaW5nQWN0aW9ucygnL3Zwbi9pJylcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgYWxsTWF0Y2hpbmdBY3Rpb25zKC4uLmV4cHJlc3Npb25zOiBzdHJpbmdbXSkge1xuICAgIGV4cHJlc3Npb25zLmZvckVhY2goKGV4cHJlc3Npb24pID0+IHtcbiAgICAgIGZvciAoY29uc3QgW18sIGFjdGlvbnNdIG9mIE9iamVjdC5lbnRyaWVzKHRoaXMuYWNjZXNzTGV2ZWxMaXN0KSkge1xuICAgICAgICBhY3Rpb25zLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgICAgIGlmIChhY3Rpb24ubWF0Y2goUmVnZXhQYXJzZXIoZXhwcmVzc2lvbikpKSB7XG4gICAgICAgICAgICB0aGlzLnRvKGAke3RoaXMuc2VydmljZVByZWZpeH06JHthY3Rpb259YCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFsbCBhY3Rpb25zIHdpdGggW2FjY2VzcyBsZXZlbF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2FjY2Vzc19wb2xpY2llc191bmRlcnN0YW5kLXBvbGljeS1zdW1tYXJ5LWFjY2Vzcy1sZXZlbC1zdW1tYXJpZXMuaHRtbCNhY2Nlc3NfcG9saWNpZXNfYWNjZXNzLWxldmVsKSBMSVNUIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogUGVybWlzc2lvbiB0byBsaXN0IHJlc291cmNlcyB3aXRoaW4gdGhlIHNlcnZpY2UgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgYW4gb2JqZWN0IGV4aXN0cy5cbiAgICpcbiAgICogQWN0aW9ucyB3aXRoIHRoaXMgbGV2ZWwgb2YgYWNjZXNzIGNhbiBsaXN0IG9iamVjdHMgYnV0IGNhbm5vdCBzZWUgdGhlIGNvbnRlbnRzIG9mIGEgcmVzb3VyY2UuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCB0aGUgQW1hem9uIFMzIGFjdGlvbiBgTGlzdEJ1Y2tldGAgaGFzIHRoZSBMaXN0IGFjY2VzcyBsZXZlbC5cbiAgICovXG4gIHB1YmxpYyBhbGxMaXN0QWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5hZGRBY2Nlc3NMZXZlbChBY2Nlc3NMZXZlbC5MSVNUKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFsbCBhY3Rpb25zIHdpdGggW2FjY2VzcyBsZXZlbF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2FjY2Vzc19wb2xpY2llc191bmRlcnN0YW5kLXBvbGljeS1zdW1tYXJ5LWFjY2Vzcy1sZXZlbC1zdW1tYXJpZXMuaHRtbCNhY2Nlc3NfcG9saWNpZXNfYWNjZXNzLWxldmVsKSBSRUFEIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogUGVybWlzc2lvbiB0byByZWFkIGJ1dCBub3QgZWRpdCB0aGUgY29udGVudHMgYW5kIGF0dHJpYnV0ZXMgb2YgcmVzb3VyY2VzIGluIHRoZSBzZXJ2aWNlLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgdGhlIEFtYXpvbiBTMyBhY3Rpb25zIGBHZXRPYmplY3RgIGFuZCBgR2V0QnVja2V0TG9jYXRpb25gIGhhdmUgdGhlIFJlYWQgYWNjZXNzIGxldmVsLlxuICAgKi9cbiAgcHVibGljIGFsbFJlYWRBY3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLmFkZEFjY2Vzc0xldmVsKEFjY2Vzc0xldmVsLlJFQUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYWxsIGFjdGlvbnMgd2l0aCBbYWNjZXNzIGxldmVsXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvYWNjZXNzX3BvbGljaWVzX3VuZGVyc3RhbmQtcG9saWN5LXN1bW1hcnktYWNjZXNzLWxldmVsLXN1bW1hcmllcy5odG1sI2FjY2Vzc19wb2xpY2llc19hY2Nlc3MtbGV2ZWwpIFdSSVRFIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogUGVybWlzc2lvbiB0byBjcmVhdGUsIGRlbGV0ZSwgb3IgbW9kaWZ5IHJlc291cmNlcyBpbiB0aGUgc2VydmljZS5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIHRoZSBBbWF6b24gUzMgYWN0aW9ucyBgQ3JlYXRlQnVja2V0YCwgYERlbGV0ZUJ1Y2tldGAgYW5kIGBQdXRPYmplY3RgIGhhdmUgdGhlIFdyaXRlIGFjY2VzcyBsZXZlbC5cbiAgICpcbiAgICogV3JpdGUgYWN0aW9ucyBtaWdodCBhbHNvIGFsbG93IG1vZGlmeWluZyBhIHJlc291cmNlIHRhZy4gSG93ZXZlciwgYW4gYWN0aW9uIHRoYXQgYWxsb3dzIG9ubHkgY2hhbmdlcyB0byB0YWdzIGhhcyB0aGUgVGFnZ2luZyBhY2Nlc3MgbGV2ZWwuXG4gICAqL1xuICBwdWJsaWMgYWxsV3JpdGVBY3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLmFkZEFjY2Vzc0xldmVsKEFjY2Vzc0xldmVsLldSSVRFKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFsbCBhY3Rpb25zIHdpdGggW2FjY2VzcyBsZXZlbF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2FjY2Vzc19wb2xpY2llc191bmRlcnN0YW5kLXBvbGljeS1zdW1tYXJ5LWFjY2Vzcy1sZXZlbC1zdW1tYXJpZXMuaHRtbCNhY2Nlc3NfcG9saWNpZXNfYWNjZXNzLWxldmVsKSBQRVJNSVNTSU9OIE1BTkFHRU1FTlQgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBQZXJtaXNzaW9uIHRvIGdyYW50IG9yIG1vZGlmeSByZXNvdXJjZSBwZXJtaXNzaW9ucyBpbiB0aGUgc2VydmljZS5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIG1vc3QgSUFNIGFuZCBBV1MgT3JnYW5pemF0aW9ucyBhY3Rpb25zLCBhcyB3ZWxsIGFzIGFjdGlvbnMgbGlrZSB0aGUgQW1hem9uIFMzIGFjdGlvbnMgYFB1dEJ1Y2tldFBvbGljeWAgYW5kIGBEZWxldGVCdWNrZXRQb2xpY3lgIGhhdmUgdGhlIFBlcm1pc3Npb25zIG1hbmFnZW1lbnQgYWNjZXNzIGxldmVsLlxuICAgKi9cbiAgcHVibGljIGFsbFBlcm1pc3Npb25NYW5hZ2VtZW50QWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5hZGRBY2Nlc3NMZXZlbChBY2Nlc3NMZXZlbC5QRVJNSVNTSU9OX01BTkFHRU1FTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYWxsIGFjdGlvbnMgd2l0aCBbYWNjZXNzIGxldmVsXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvYWNjZXNzX3BvbGljaWVzX3VuZGVyc3RhbmQtcG9saWN5LXN1bW1hcnktYWNjZXNzLWxldmVsLXN1bW1hcmllcy5odG1sI2FjY2Vzc19wb2xpY2llc19hY2Nlc3MtbGV2ZWwpIFRBR0dJTkcgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBQZXJtaXNzaW9uIHRvIHBlcmZvcm0gYWN0aW9ucyB0aGF0IG9ubHkgY2hhbmdlIHRoZSBzdGF0ZSBvZiByZXNvdXJjZSB0YWdzLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgdGhlIElBTSBhY3Rpb25zIGBUYWdSb2xlYCBhbmQgYFVudGFnUm9sZWAgaGF2ZSB0aGUgVGFnZ2luZyBhY2Nlc3MgbGV2ZWwgYmVjYXVzZSB0aGV5IGFsbG93IG9ubHkgdGFnZ2luZyBvciB1bnRhZ2dpbmcgYSByb2xlLiBIb3dldmVyLCB0aGUgYENyZWF0ZVJvbGVgIGFjdGlvbiBhbGxvd3MgdGFnZ2luZyBhIHJvbGUgcmVzb3VyY2Ugd2hlbiB5b3UgY3JlYXRlIHRoYXQgcm9sZS4gQmVjYXVzZSB0aGUgYWN0aW9uIGRvZXMgbm90IG9ubHkgYWRkIGEgdGFnLCBpdCBoYXMgdGhlIFdyaXRlIGFjY2VzcyBsZXZlbC5cbiAgICovXG4gIHB1YmxpYyBhbGxUYWdnaW5nQWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5hZGRBY2Nlc3NMZXZlbChBY2Nlc3NMZXZlbC5UQUdHSU5HKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkQWNjZXNzTGV2ZWwoYWNjZXNzTGV2ZWw6IEFjY2Vzc0xldmVsKSB7XG4gICAgaWYgKGFjY2Vzc0xldmVsIGluIHRoaXMuYWNjZXNzTGV2ZWxMaXN0KSB7XG4gICAgICB0aGlzLmFjY2Vzc0xldmVsTGlzdFthY2Nlc3NMZXZlbF0uZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIHRoaXMudG8oYCR7dGhpcy5zZXJ2aWNlUHJlZml4fToke2FjdGlvbn1gKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25kZW5zZSBhY3Rpb24gbGlzdCBkb3duIHRvIGEgbGlzdCBvZiBwYXR0ZXJucy5cbiAgICpcbiAgICogVXNpbmcgdGhpcyBtZXRob2QgY2FuIGhlbHAgdG8gcmVkdWNlIHRoZSBwb2xpY3kgc2l6ZS5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGFsbCBhY3Rpb25zIHdpdGggYWNjZXNzIGxldmVsIGBsaXN0YCBjb3VsZCBiZSByZWR1Y2VkIHRvIGEgc21hbGwgcGF0dGVybiBgTGlzdCpgLlxuICAgKi9cbiAgcHVibGljIGNvbXBhY3QoKSB7XG4gICAgdGhpcy5pc0NvbXBhY3QgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBjb21wYWN0QWN0aW9ucygpIHtcbiAgICAvLyBhY3Rpb25zIHRoYXQgd2lsbCBiZSBpbmNsdWRlZCwgc2VydmljZSBwcmVmaXggaXMgcmVtb3ZlZFxuICAgIGNvbnN0IGluY2x1ZGVBY3Rpb25zID0gdGhpcy5hY3Rpb25zLm1hcCgoZWxlbSkgPT4ge1xuICAgICAgcmV0dXJuIGVsZW0uc3Vic3RyKGVsZW0uaW5kZXhPZignOicpICsgMSk7XG4gICAgfSk7XG5cbiAgICAvLyBhY3Rpb25zIHRoYXQgd2lsbCBub3QgYmUgaW5jbHVkZWQsIHRoZSBvcHBvc2l0ZSBvZiBpbmNsdWRlQWN0aW9uc1xuICAgIGNvbnN0IGV4Y2x1ZGVBY3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgW18sIGFjdGlvbnNdIG9mIE9iamVjdC5lbnRyaWVzKHRoaXMuYWNjZXNzTGV2ZWxMaXN0KSkge1xuICAgICAgYWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IHtcbiAgICAgICAgaWYgKCFpbmNsdWRlQWN0aW9ucy5pbmNsdWRlcyhhY3Rpb24pKSB7XG4gICAgICAgICAgZXhjbHVkZUFjdGlvbnMucHVzaChgXiR7YWN0aW9ufSRgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gd2lsbCBjb250YWluIHRoZSBpbmRleCBvZiBlbGVtZW50cyB0aGF0IGFyZSBjb3ZlcmVkIGJ5IHN1YnN0cmluZ3NcbiAgICBsZXQgY292ZXJlZDogbnVtYmVyW10gPSBbXTtcblxuICAgIGNvbnN0IHN1YnMgPSBzdWJzdHJpbmdzKFxuICAgICAgaW5jbHVkZUFjdGlvbnMubWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIGBeJHthY3Rpb259JGA7XG4gICAgICB9KSxcbiAgICAgIHtcbiAgICAgICAgbWluTGVuZ3RoOiAzLFxuICAgICAgICBtaW5PY2N1cnJlbmNlOiAyLFxuICAgICAgfVxuICAgIClcbiAgICAgIC5maWx0ZXIoKHN1YikgPT4ge1xuICAgICAgICAvLyByZW1vdmUgYWxsIHN1YnN0cmluZ3MsIHRoYXQgbWF0Y2ggYW4gYWN0aW9uIHdlIGhhdmUgbm90IHNlbGVjdGVkXG4gICAgICAgIGZvciAobGV0IGFjdGlvbiBvZiBleGNsdWRlQWN0aW9ucykge1xuICAgICAgICAgIGlmIChhY3Rpb24uaW5jbHVkZXMoc3ViLm5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgIC8vIHNvcnQgbGlzdCBieSB0aGUgbnVtYmVyIG9mIG1hdGNoZXNcbiAgICAgICAgaWYgKGEuc291cmNlLmxlbmd0aCA8IGIuc291cmNlLmxlbmd0aCkgcmV0dXJuIDE7XG4gICAgICAgIGlmIChhLnNvdXJjZS5sZW5ndGggPiBiLnNvdXJjZS5sZW5ndGgpIHJldHVybiAtMTtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcigoc3ViKSA9PiB7XG4gICAgICAgIC8vIHJlbW92ZXMgc3Vic3RyaW5ncywgdGhhdCBoYXZlIGFscmVhZHkgYmVlbiBjb3ZlcmVkIGJ5IG90aGVyIHN1YnN0cmluZ3NcbiAgICAgICAgY29uc3Qgc291cmNlcyA9IHN1Yi5zb3VyY2UuZmlsdGVyKChzb3VyY2UpID0+IHtcbiAgICAgICAgICByZXR1cm4gIWNvdmVyZWQuaW5jbHVkZXMoc291cmNlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChzb3VyY2VzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAvL2FkZCBsaXN0IG9mIHNvdXJjZXMgdG8gdGhlIGdsb2JhbCBsaXN0IG9mIGNvdmVyZWQgYWN0aW9uc1xuICAgICAgICAgIGNvdmVyZWQgPSBjb3ZlcmVkLmNvbmNhdChzb3VyY2VzKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9KTtcblxuICAgIC8vIHN0b3JlcyB0aGUgbGlzdCBvZiBwYXR0ZXJuc1xuICAgIGNvbnN0IGNvbXBhY3RBY3Rpb25MaXN0OiBzdHJpbmdbXSA9IFtdO1xuICAgIHN1YnMuZm9yRWFjaCgoc3ViKSA9PiB7XG4gICAgICBjb21wYWN0QWN0aW9uTGlzdC5wdXNoKFxuICAgICAgICBgJHt0aGlzLnNlcnZpY2VQcmVmaXh9Oioke3N1Yi5uYW1lfSpgXG4gICAgICAgICAgLnJlcGxhY2UoJypeJywgJycpXG4gICAgICAgICAgLnJlcGxhY2UoJyQqJywgJycpXG4gICAgICApO1xuICAgICAgc3ViLnNvdXJjZS5mb3JFYWNoKChzb3VyY2UpID0+IHtcbiAgICAgICAgaW5jbHVkZUFjdGlvbnNbc291cmNlXSA9ICcnOyAvLyBpbnZhbGlkYXRlLCB3aWxsIGJlIGZpbHRlcmVkIGxhdGVyXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGluY2x1ZGVBY3Rpb25zXG4gICAgICAuZmlsdGVyKChhY3Rpb24pID0+IHtcbiAgICAgICAgLy8gcmVtb3ZlIGVsZW1lbnRzIHRoYXQgaGF2ZSBiZWVuIGNvdmVyZWQgYnkgcGF0dGVybnMsIHdlIGludmFsaWRhdGVkIHRoZW0gYWJvdmVcbiAgICAgICAgcmV0dXJuIGFjdGlvbi5sZW5ndGggPiAwO1xuICAgICAgfSlcbiAgICAgIC5mb3JFYWNoKChhY3Rpb24pID0+IHtcbiAgICAgICAgLy8gYWRkIGFjdGlvbnMgdGhhdCBoYXZlIG5vdCBiZWVuIGNvdmVyZWQgYnkgcGF0dGVybnMgdG8gdGhlIG5ldyBhY3Rpb24gbGlzdFxuICAgICAgICBjb21wYWN0QWN0aW9uTGlzdC5wdXNoKGAke3RoaXMuc2VydmljZVByZWZpeH06JHthY3Rpb259YCk7XG4gICAgICB9KTtcblxuICAgIC8vIHdlJ3JlIGRvbmUuIG92ZXJyaWRlIGFjdGlvbiBsaXN0XG4gICAgdGhpcy5hY3Rpb25zID0gY29tcGFjdEFjdGlvbkxpc3Q7XG4gIH1cbn1cbiJdfQ==
@@ -112,5 +112,5 @@ class PolicyStatementWithResources extends _3_actions_1.PolicyStatementWithActio
112
112
  }
113
113
  exports.PolicyStatementWithResources = PolicyStatementWithResources;
114
114
  _a = JSII_RTTI_SYMBOL_1;
115
- PolicyStatementWithResources[_a] = { fqn: "iam-floyd.PolicyStatementWithResources", version: "0.366.0" };
115
+ PolicyStatementWithResources[_a] = { fqn: "iam-floyd.PolicyStatementWithResources", version: "0.367.0" };
116
116
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNC1yZXNvdXJjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyI0LXJlc291cmNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDRDQUF5RDtBQWF6RDs7R0FFRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsdUNBQTBCO0lBQTVFOztRQUNVLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGNBQVMsR0FBYSxFQUFFLENBQUM7UUFDekIscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzNCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztLQXdHckM7SUF0R0M7Ozs7T0FJRztJQUNJLE1BQU07UUFDWCxrREFBa0Q7UUFDbEQsSUFBSSxPQUFPLElBQUksQ0FBQyxZQUFZLElBQUksVUFBVSxFQUFFO1lBQzFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3ZCO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDL0QsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztRQUVsQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFdEIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTtZQUN6QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDcEQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUM7WUFDN0MsQ0FBQyxDQUFDLENBQUM7WUFDSCxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLGtEQUFrRDtRQUNsRCxPQUFPLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztZQUN2RSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7WUFDbEIsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQzFELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDO1lBQzdDLENBQUMsQ0FBQyxDQUFDO1lBQ0gsa0RBQWtEO1lBQ2xELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxZQUFZO1FBQ2pCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksWUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEVBQUUsQ0FBQyxHQUFHLElBQWM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksY0FBYztRQUNuQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUFFLE9BQU87UUFDaEMsa0RBQWtEO1FBQ2xELElBQUksSUFBSSxDQUFDLFdBQVc7WUFBRSxPQUFPO1FBQzdCLGtEQUFrRDtRQUNsRCxJQUFJLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTyxDQUFDLHdDQUF3QztRQUN2RSxJQUFJLElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPO1FBRWxDLDRGQUE0RjtRQUM1RixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxhQUFhO1FBQ2xCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7QUEzR0gsb0VBNEdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50V2l0aEFjdGlvbnMgfSBmcm9tICcuLzMtYWN0aW9ucyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VUeXBlcyB7XG4gIFtrZXk6IHN0cmluZ106IFJlc291cmNlVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZVR5cGUge1xuICBuYW1lOiBzdHJpbmc7XG4gIHVybDogc3RyaW5nO1xuICBhcm46IHN0cmluZztcbiAgY29uZGl0aW9uS2V5czogc3RyaW5nW107XG59XG5cbi8qKlxuICogQWRkcyBcInJlc291cmNlXCIgZnVuY3Rpb25hbGl0eSB0byB0aGUgUG9saWN5IFN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgUG9saWN5U3RhdGVtZW50V2l0aFJlc291cmNlcyBleHRlbmRzIFBvbGljeVN0YXRlbWVudFdpdGhBY3Rpb25zIHtcbiAgcHJpdmF0ZSB1c2VOb3RSZXNvdXJjZXMgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIHJlc291cmNlczogc3RyaW5nW10gPSBbXTtcbiAgcHJvdGVjdGVkIHNraXBBdXRvUmVzb3VyY2UgPSBmYWxzZTtcbiAgcHJpdmF0ZSBjZGtSZXNvdXJjZXNBcHBsaWVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluamVjdHMgcmVzb3VyY2VzIGludG8gdGhlIHN0YXRlbWVudC5cbiAgICpcbiAgICogT25seSByZWxldmFudCBmb3IgdGhlIG1haW4gcGFja2FnZS4gSW4gQ0RLIG1vZGUgdGhpcyBvbmx5IGNhbGxzIHN1cGVyLlxuICAgKi9cbiAgcHVibGljIHRvSlNPTigpOiBhbnkge1xuICAgIC8vIEB0cy1pZ25vcmUgb25seSBhdmFpbGFibGUgYWZ0ZXIgc3dhcHBpbmcgMS1iYXNlXG4gICAgaWYgKHR5cGVvZiB0aGlzLmFkZFJlc291cmNlcyA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzLmNka0FwcGx5UmVzb3VyY2VzKCk7XG4gICAgICByZXR1cm4gc3VwZXIudG9KU09OKCk7XG4gICAgfVxuICAgIGNvbnN0IG1vZGUgPSB0aGlzLnVzZU5vdFJlc291cmNlcyA/ICdOb3RSZXNvdXJjZScgOiAnUmVzb3VyY2UnO1xuICAgIGNvbnN0IHN0YXRlbWVudCA9IHN1cGVyLnRvSlNPTigpO1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuXG4gICAgdGhpcy5lbnN1cmVSZXNvdXJjZSgpO1xuXG4gICAgaWYgKHRoaXMucmVzb3VyY2VzLmxlbmd0aCkge1xuICAgICAgY29uc3QgcmVzb3VyY2VzID0gdGhpcy5yZXNvdXJjZXMuZmlsdGVyKChlbGVtLCBwb3MpID0+IHtcbiAgICAgICAgcmV0dXJuIHNlbGYucmVzb3VyY2VzLmluZGV4T2YoZWxlbSkgPT0gcG9zO1xuICAgICAgfSk7XG4gICAgICBzdGF0ZW1lbnRbbW9kZV0gPSByZXNvdXJjZXMubGVuZ3RoID4gMSA/IHJlc291cmNlcyA6IHJlc291cmNlc1swXTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGVtZW50O1xuICB9XG5cbiAgcHVibGljIHRvU3RhdGVtZW50SnNvbigpOiBhbnkge1xuICAgIHRoaXMuZW5zdXJlUmVzb3VyY2UoKTtcbiAgICB0aGlzLmNka0FwcGx5UmVzb3VyY2VzKCk7XG4gICAgLy8gQHRzLWlnbm9yZSBvbmx5IGF2YWlsYWJsZSBhZnRlciBzd2FwcGluZyAxLWJhc2VcbiAgICByZXR1cm4gc3VwZXIudG9TdGF0ZW1lbnRKc29uKCk7XG4gIH1cblxuICBwcml2YXRlIGNka0FwcGx5UmVzb3VyY2VzKCkge1xuICAgIGlmICghdGhpcy5jZGtSZXNvdXJjZXNBcHBsaWVkKSB7XG4gICAgICBjb25zdCBtb2RlID0gdGhpcy51c2VOb3RSZXNvdXJjZXMgPyAnYWRkTm90UmVzb3VyY2VzJyA6ICdhZGRSZXNvdXJjZXMnO1xuICAgICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgICBjb25zdCB1bmlxdWVSZXNvdXJjZXMgPSB0aGlzLnJlc291cmNlcy5maWx0ZXIoKGVsZW0sIHBvcykgPT4ge1xuICAgICAgICByZXR1cm4gc2VsZi5yZXNvdXJjZXMuaW5kZXhPZihlbGVtKSA9PSBwb3M7XG4gICAgICB9KTtcbiAgICAgIC8vIEB0cy1pZ25vcmUgb25seSBhdmFpbGFibGUgYWZ0ZXIgc3dhcHBpbmcgMS1iYXNlXG4gICAgICB0aGlzW21vZGVdKC4uLnVuaXF1ZVJlc291cmNlcyk7XG4gICAgICB0aGlzLmNka1Jlc291cmNlc0FwcGxpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTd2l0Y2hlcyB0aGUgc3RhdGVtZW50IHRvIHVzZSBbYE5vdFJlc291cmNlYF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19ub3RyZXNvdXJjZS5odG1sKS5cbiAgICovXG4gIHB1YmxpYyBub3RSZXNvdXJjZXMoKSB7XG4gICAgdGhpcy51c2VOb3RSZXNvdXJjZXMgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyB3ZWF0aGVyIGFueSByZXNvdXJjZSB3YXMgYXBwbGllZCB0byB0aGUgcG9saWN5LlxuICAgKi9cbiAgcHVibGljIGhhc1Jlc291cmNlcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZXMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaW1pdCBzdGF0ZW1lbnQgdG8gc3BlY2lmaWVkIHJlc291cmNlcy5cbiAgICpcbiAgICogVG8gYWxsb3cgYWxsIHJlc291cmNlcywgcGFzcyBgKmBcbiAgICovXG4gIHB1YmxpYyBvbiguLi5hcm5zOiBzdHJpbmdbXSkge1xuICAgIHRoaXMucmVzb3VyY2VzLnB1c2goLi4uYXJucyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGFsbCByZXNvdXJjZXMgKGAqYCkgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBUaGlzIGlzIHRoZSBkZWZhdWx0IGJlaGF2aW9yLCB1bmxlc3MgdGhlIHN0YXRlbWVudCBoYXMgcHJpbmNpcGFscy5cbiAgICovXG4gIHB1YmxpYyBvbkFsbFJlc291cmNlcygpIHtcbiAgICB0aGlzLnJlc291cmNlcy5wdXNoKCcqJyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIGVuc3VyZVJlc291cmNlKCkge1xuICAgIGlmICh0aGlzLmhhc1Jlc291cmNlcygpKSByZXR1cm47XG4gICAgLy8gQHRzLWlnbm9yZSBvbmx5IGF2YWlsYWJsZSBhZnRlciBzd2FwcGluZyAxLWJhc2VcbiAgICBpZiAodGhpcy5oYXNSZXNvdXJjZSkgcmV0dXJuO1xuICAgIC8vIEB0cy1pZ25vcmUgb25seSBhdmFpbGFibGUgYWZ0ZXIgc3dhcHBpbmcgMS1iYXNlXG4gICAgaWYgKHRoaXMuaGFzUHJpbmNpcGFsKSByZXR1cm47IC8vYXNzdW1lIHBvbGljaWVzIG1heSBub3QgaGF2ZSByZXNvdXJjZXNcbiAgICBpZiAodGhpcy5za2lwQXV0b1Jlc291cmNlKSByZXR1cm47XG5cbiAgICAvLyBhIHN0YXRlbWVudCByZXF1aXJlcyByZXNvdXJjZXMuIGlmIG5vbmUgd2FzIGFkZGVkLCB3ZSBhc3N1bWUgdGhlIHVzZXIgd2FudHMgYWxsIHJlc291cmNlc1xuICAgIHRoaXMub25BbGxSZXNvdXJjZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEdW1teSBtZXRob2QuIFdpbGwgYmUgb3ZlcnJpZGRlbiBieSA2LXByaW5jaXBhbC50c1xuICAgKlxuICAgKiBXZSBqdXN0IG5lZWQgaXQgaGVyZSBzbyB3ZSBjYW4gcmVmZXJlbmNlIGl0IGluIG1ldGhvZCBgZW5zdXJlUmVzb3VyY2VgXG4gICAqL1xuICBwdWJsaWMgaGFzUHJpbmNpcGFscygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
@@ -51,5 +51,5 @@ class PolicyStatementWithEffect extends _4_resources_1.PolicyStatementWithResour
51
51
  }
52
52
  exports.PolicyStatementWithEffect = PolicyStatementWithEffect;
53
53
  _a = JSII_RTTI_SYMBOL_1;
54
- PolicyStatementWithEffect[_a] = { fqn: "iam-floyd.PolicyStatementWithEffect", version: "0.366.0" };
54
+ PolicyStatementWithEffect[_a] = { fqn: "iam-floyd.PolicyStatementWithEffect", version: "0.367.0" };
55
55
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNS1lZmZlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyI1LWVmZmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdEQUE2RDtBQUU3RDs7R0FFRztBQUNILElBQVksTUFHWDtBQUhELFdBQVksTUFBTTtJQUNoQix5QkFBZSxDQUFBO0lBQ2YsdUJBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxNQUFNLEdBQU4sY0FBTSxLQUFOLGNBQU0sUUFHakI7QUFFRDs7R0FFRztBQUNILE1BQWEseUJBQTBCLFNBQVEsMkNBQTRCO0lBQTNFOztRQUNTLFdBQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO0tBZ0M5QjtJQTlCQzs7OztPQUlHO0lBQ0ksTUFBTTtRQUNYLGtEQUFrRDtRQUNsRCxJQUFJLE9BQU8sSUFBSSxDQUFDLFlBQVksSUFBSSxVQUFVLEVBQUU7WUFDMUMsT0FBTyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDdkI7UUFDRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakMsU0FBUyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQy9CLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUs7UUFDVixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxJQUFJO1FBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7QUFoQ0gsOERBaUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50V2l0aFJlc291cmNlcyB9IGZyb20gJy4vNC1yZXNvdXJjZXMnO1xuXG4vKipcbiAqIFBvbGljeSBlZmZlY3RzXG4gKi9cbmV4cG9ydCBlbnVtIEVmZmVjdCB7XG4gIEFMTE9XID0gJ0FsbG93JyxcbiAgREVOWSA9ICdEZW55Jyxcbn1cblxuLyoqXG4gKiBBZGRzIFwiZWZmZWN0XCIgZnVuY3Rpb25hbGl0eSB0byB0aGUgUG9saWN5IFN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgUG9saWN5U3RhdGVtZW50V2l0aEVmZmVjdCBleHRlbmRzIFBvbGljeVN0YXRlbWVudFdpdGhSZXNvdXJjZXMge1xuICBwdWJsaWMgZWZmZWN0ID0gRWZmZWN0LkFMTE9XO1xuXG4gIC8qKlxuICAgKiBJbmplY3RzIGVmZmVjdCBpbnRvIHRoZSBzdGF0ZW1lbnQuXG4gICAqXG4gICAqIE9ubHkgcmVsZXZhbnQgZm9yIHRoZSBtYWluIHBhY2thZ2UuIEluIENESyBtb2RlIHRoaXMgb25seSBjYWxscyBzdXBlci5cbiAgICovXG4gIHB1YmxpYyB0b0pTT04oKTogYW55IHtcbiAgICAvLyBAdHMtaWdub3JlIG9ubHkgYXZhaWxhYmxlIGFmdGVyIHN3YXBwaW5nIDEtYmFzZVxuICAgIGlmICh0eXBlb2YgdGhpcy5hZGRSZXNvdXJjZXMgPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIHN1cGVyLnRvSlNPTigpO1xuICAgIH1cbiAgICBjb25zdCBzdGF0ZW1lbnQgPSBzdXBlci50b0pTT04oKTtcbiAgICBzdGF0ZW1lbnQuRWZmZWN0ID0gdGhpcy5lZmZlY3Q7XG4gICAgcmV0dXJuIHN0YXRlbWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvdyB0aGUgYWN0aW9ucyBpbiB0aGlzIHN0YXRlbWVudFxuICAgKi9cbiAgcHVibGljIGFsbG93KCkge1xuICAgIHRoaXMuZWZmZWN0ID0gRWZmZWN0LkFMTE9XO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbnkgdGhlIGFjdGlvbnMgaW4gdGhpcyBzdGF0ZW1lbnRcbiAgICovXG4gIHB1YmxpYyBkZW55KCkge1xuICAgIHRoaXMuZWZmZWN0ID0gRWZmZWN0LkRFTlk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdfQ==
@@ -200,5 +200,5 @@ class PolicyStatementWithPrincipal extends _5_effect_1.PolicyStatementWithEffect
200
200
  }
201
201
  exports.PolicyStatementWithPrincipal = PolicyStatementWithPrincipal;
202
202
  _a = JSII_RTTI_SYMBOL_1;
203
- PolicyStatementWithPrincipal[_a] = { fqn: "iam-floyd.PolicyStatementWithPrincipal", version: "0.366.0" };
203
+ PolicyStatementWithPrincipal[_a] = { fqn: "iam-floyd.PolicyStatementWithPrincipal", version: "0.367.0" };
204
204
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNi1wcmluY2lwYWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiNi1wcmluY2lwYWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMENBQXVEO0FBU3ZELElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2Qiw0QkFBVyxDQUFBO0lBQ1gsd0NBQXVCLENBQUE7SUFDdkIsaURBQWdDLENBQUE7SUFDaEMsb0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUxXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBS3hCO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLDRCQUE2QixTQUFRLHFDQUF5QjtJQUEzRTs7UUFDWSxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsaUJBQVksR0FBZSxFQUFFLENBQUM7S0FzT3pDO0lBcE9DOzs7O09BSUc7SUFDSSxNQUFNO1FBQ1gsa0RBQWtEO1FBQ2xELElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxJQUFJLFVBQVUsRUFBRTtZQUMxQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixPQUFPLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUN2QjtRQUVELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDbEUsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRWpDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQ3hCLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQ3JDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsa0RBQWtEO1FBQ2xELE9BQU8sS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFUyxr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Q2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNuRCxDQUFDOztBQXZPSCxvRUF3T0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnRXaXRoRWZmZWN0IH0gZnJvbSAnLi81LWVmZmVjdCc7XG5cbi8qKlxuICogQSBjb2xsZWN0aW9uIG9mIFByaW5jaXBhbCdzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJpbmNpcGFscyB7XG4gIFtrZXk6IHN0cmluZ106IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgZW51bSBQcmluY2lwYWxUeXBlIHtcbiAgQVdTID0gJ0FXUycsXG4gIEZFREVSQVRFRCA9ICdGZWRlcmF0ZWQnLFxuICBDQU5PTklDQUxfVVNFUiA9ICdDYW5vbmljYWxVc2VyJyxcbiAgU0VSVklDRSA9ICdTZXJ2aWNlJyxcbn1cblxuLyoqXG4gKiBBZGRzIFwicHJpbmNpcGFsXCIgZnVuY3Rpb25hbGl0eSB0byB0aGUgUG9saWN5IFN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgUG9saWN5U3RhdGVtZW50V2l0aFByaW5jaXBhbCBleHRlbmRzIFBvbGljeVN0YXRlbWVudFdpdGhFZmZlY3Qge1xuICBwcm90ZWN0ZWQgdXNlTm90UHJpbmNpcGFscyA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgbXlQcmluY2lwYWxzOiBQcmluY2lwYWxzID0ge307XG5cbiAgLyoqXG4gICAqIEluamVjdHMgcHJpbmNpcGFscyBpbnRvIHRoZSBzdGF0ZW1lbnQuXG4gICAqXG4gICAqIE9ubHkgcmVsZXZhbnQgZm9yIHRoZSBtYWluIHBhY2thZ2UuIEluIENESyBtb2RlIHRoaXMgb25seSBjYWxscyBzdXBlci5cbiAgICovXG4gIHB1YmxpYyB0b0pTT04oKTogYW55IHtcbiAgICAvLyBAdHMtaWdub3JlIG9ubHkgYXZhaWxhYmxlIGFmdGVyIHN3YXBwaW5nIDEtYmFzZVxuICAgIGlmICh0eXBlb2YgdGhpcy5hZGRSZXNvdXJjZXMgPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5jZGtBcHBseVByaW5jaXBhbHMoKTtcbiAgICAgIHJldHVybiBzdXBlci50b0pTT04oKTtcbiAgICB9XG5cbiAgICBjb25zdCBtb2RlID0gdGhpcy51c2VOb3RQcmluY2lwYWxzID8gJ05vdFByaW5jaXBhbCcgOiAnUHJpbmNpcGFsJztcbiAgICBjb25zdCBzdGF0ZW1lbnQgPSBzdXBlci50b0pTT04oKTtcblxuICAgIGlmICh0aGlzLmhhc1ByaW5jaXBhbHMoKSkge1xuICAgICAgc3RhdGVtZW50W21vZGVdID0gdGhpcy5teVByaW5jaXBhbHM7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyB0b1N0YXRlbWVudEpzb24oKTogYW55IHtcbiAgICB0aGlzLmNka0FwcGx5UHJpbmNpcGFscygpO1xuICAgIC8vIEB0cy1pZ25vcmUgb25seSBhdmFpbGFibGUgYWZ0ZXIgc3dhcHBpbmcgMS1iYXNlXG4gICAgcmV0dXJuIHN1cGVyLnRvU3RhdGVtZW50SnNvbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNka0FwcGx5UHJpbmNpcGFscygpIHt9XG5cbiAgLyoqXG4gICAqIFN3aXRjaGVzIHRoZSBzdGF0ZW1lbnQgdG8gdXNlIFtgbm90UHJpbmNpcGFsYF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19ub3RwcmluY2lwYWwuaHRtbCkuXG4gICAqL1xuICBwdWJsaWMgbm90UHJpbmNpcGFscygpIHtcbiAgICB0aGlzLnVzZU5vdFByaW5jaXBhbHMgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyB3ZWF0aGVyIGEgcHJpbmNpcGFsIHdhcyBhcHBsaWVkIHRvIHRoZSBwb2xpY3lcbiAgICovXG4gIHB1YmxpYyBoYXNQcmluY2lwYWxzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLm15UHJpbmNpcGFscykubGVuZ3RoID4gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcHJpbmNpcGFsIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogQHBhcmFtIHByZWZpeCBPbmUgb2YgKipBV1MqKiwgKipGZWRlcmF0ZWQqKiwgKipDYW5vbmljYWxVc2VyKiogb3IgKipTZXJ2aWNlKipcbiAgICogQHBhcmFtIHByaW5jaXBhbCBUaGUgcHJpbmNpcGFsIHN0cmluZ1xuICAgKi9cbiAgcHJvdGVjdGVkIGFkZFByaW5jaXBhbChwcmVmaXg6IHN0cmluZywgcHJpbmNpcGFsOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNraXBBdXRvUmVzb3VyY2UgPSB0cnVlO1xuICAgIGlmICghKHByZWZpeCBpbiB0aGlzLm15UHJpbmNpcGFscykpIHtcbiAgICAgIHRoaXMubXlQcmluY2lwYWxzW3ByZWZpeF0gPSBbXTtcbiAgICB9XG4gICAgdGhpcy5teVByaW5jaXBhbHNbcHJlZml4XS5wdXNoKHByaW5jaXBhbCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbnkgcHJpbmNpcGFsIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogQHBhcmFtIGFybiBUaGUgQVJOIG9mIHRoZSBwcmluY2lwYWxcbiAgICogQHBhcmFtIHByZWZpeCBPbmUgb2YgKipBV1MqKiwgKipGZWRlcmF0ZWQqKiwgKipDYW5vbmljYWxVc2VyKiogb3IgKipTZXJ2aWNlKiogLSBEZWZhdWx0OiAqKkFXUyoqXG4gICAqL1xuICBwdWJsaWMgZm9yKGFybjogc3RyaW5nLCBwcmVmaXg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5hZGRQcmluY2lwYWwocHJlZml4IHx8IFByaW5jaXBhbFR5cGUuQVdTLCBhcm4pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgb25lIG9yIG1vcmUgYWNjb3VudCBwcmluY2lwYWxzIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogQHBhcmFtIGFjY291bnRzIElEIG9mIHRoZSBBV1MgYWNjb3VudFxuICAgKi9cbiAgcHVibGljIGZvckFjY291bnQoLi4uYWNjb3VudHM6IHN0cmluZ1tdKSB7XG4gICAgYWNjb3VudHMuZm9yRWFjaCgoYWNjb3VudCkgPT5cbiAgICAgIHRoaXMuYWRkUHJpbmNpcGFsKFByaW5jaXBhbFR5cGUuQVdTLCBgYXJuOiR7UG9saWN5U3RhdGVtZW50V2l0aFByaW5jaXBhbC5kZWZhdWx0UGFydGl0aW9ufTppYW06OiR7YWNjb3VudH06cm9vdGApXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG9uZSBvciBtb3JlIFtmZWRlcmF0ZWRdKGh0dHBzOi8vYXdzLmFtYXpvbi5jb20vaWRlbnRpdHkvZmVkZXJhdGlvbi8pICh3ZWIgaWRlbnRpdHkpIHByaW5jaXBhbHMgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBAcGFyYW0gcHJvdmlkZXJzIElEIG9mIHRoZSBBV1MgYWNjb3VudFxuICAgKi9cbiAgcHVibGljIGZvckZlZGVyYXRlZCguLi5wcm92aWRlcnM6IHN0cmluZ1tdKSB7XG4gICAgcHJvdmlkZXJzLmZvckVhY2goKHByb3ZpZGVyKSA9PlxuICAgICAgdGhpcy5hZGRQcmluY2lwYWwoUHJpbmNpcGFsVHlwZS5GRURFUkFURUQsIHByb3ZpZGVyKVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIGZlZGVyYXRlZCBbQVdTIENvZ25pdG9dKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9pZF9yb2xlc19wcm92aWRlcnNfb2lkY19jb2duaXRvLmh0bWwpIHByaW5jaXBhbCB0byB0aGUgc3RhdGVtZW50XG4gICAqL1xuICBwdWJsaWMgZm9yRmVkZXJhdGVkQ29nbml0bygpIHtcbiAgICByZXR1cm4gdGhpcy5mb3JGZWRlcmF0ZWQoJ2NvZ25pdG8taWRlbnRpdHkuYW1hem9uYXdzLmNvbScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBmZWRlcmF0ZWQgW0FtYXpvbl0oaHR0cHM6Ly9sb2dpbi5hbWF6b24uY29tLykgcHJpbmNpcGFsIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICovXG4gIHB1YmxpYyBmb3JGZWRlcmF0ZWRBbWF6b24oKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9yRmVkZXJhdGVkKCd3d3cuYW1hem9uLmNvbScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBmZWRlcmF0ZWQgW0ZhY2Vib29rXShodHRwczovL2RldmVsb3BlcnMuZmFjZWJvb2suY29tL2RvY3MvZmFjZWJvb2stbG9naW4pIHByaW5jaXBhbCB0byB0aGUgc3RhdGVtZW50XG4gICAqL1xuICBwdWJsaWMgZm9yRmVkZXJhdGVkRmFjZWJvb2soKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9yRmVkZXJhdGVkKCdncmFwaC5mYWNlYm9vay5jb20nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgZmVkZXJhdGVkIFtHb29nbGVdKGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL2lkZW50aXR5L3Byb3RvY29scy9vYXV0aDIvb3BlbmlkLWNvbm5lY3QpIHByaW5jaXBhbCB0byB0aGUgc3RhdGVtZW50XG4gICAqL1xuXG4gIHB1YmxpYyBmb3JGZWRlcmF0ZWRHb29nbGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9yRmVkZXJhdGVkKCdhY2NvdW50cy5nb29nbGUuY29tJyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBvbmUgb3IgbW9yZSBjYW5vbmljYWwgdXNlciBwcmluY2lwYWxzIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogQHBhcmFtIHVzZXJJRHMgVGhlIHVzZXIgSURcbiAgICpcbiAgICogWW91IGNhbiBbZmluZCB0aGUgY2Fub25pY2FsIHVzZXIgSURdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nZW5lcmFsL2xhdGVzdC9nci9hY2N0LWlkZW50aWZpZXJzLmh0bWwjRmluZGluZ0Nhbm9uaWNhbElkKSBmb3IgeW91ciBBV1MgYWNjb3VudCBpbiB0aGUgQVdTIE1hbmFnZW1lbnQgQ29uc29sZS4gVGhlIGNhbm9uaWNhbCB1c2VyIElEIGZvciBhbiBBV1MgYWNjb3VudCBpcyBzcGVjaWZpYyB0byB0aGUgYWNjb3VudC4gWW91IGNhbiByZXRyaWV2ZSB0aGUgY2Fub25pY2FsIHVzZXIgSUQgZm9yIHlvdXIgQVdTIGFjY291bnQgYXMgZWl0aGVyIHRoZSByb290IHVzZXIgb3IgYW4gSUFNIHVzZXIuXG4gICAqL1xuICBwdWJsaWMgZm9yQ2Fub25pY2FsVXNlciguLi51c2VySURzOiBzdHJpbmdbXSkge1xuICAgIHVzZXJJRHMuZm9yRWFjaCgodXNlcklEKSA9PlxuICAgICAgdGhpcy5hZGRQcmluY2lwYWwoUHJpbmNpcGFsVHlwZS5DQU5PTklDQUxfVVNFUiwgdXNlcklEKVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBvbmUgb3IgbW9yZSBmZWRlcmF0ZWQgU0FNTCBwcmluY2lwYWxzIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogQHBhcmFtIGFjY291bnQgSUQgb2YgdGhlIEFXUyBhY2NvdW50XG4gICAqIEBwYXJhbSBwcm92aWRlck5hbWVzIE5hbWUgb2YgdGhlIFNBTUwgcHJvdmlkZXJcbiAgICovXG4gIHB1YmxpYyBmb3JTYW1sKGFjY291bnQ6IHN0cmluZywgLi4ucHJvdmlkZXJOYW1lczogc3RyaW5nW10pIHtcbiAgICBwcm92aWRlck5hbWVzLmZvckVhY2goKHByb3ZpZGVyTmFtZSkgPT5cbiAgICAgIHRoaXMuZm9yRmVkZXJhdGVkKGBhcm46JHtQb2xpY3lTdGF0ZW1lbnRXaXRoUHJpbmNpcGFsLmRlZmF1bHRQYXJ0aXRpb259OmlhbTo6JHthY2NvdW50fTpzYW1sLXByb3ZpZGVyLyR7cHJvdmlkZXJOYW1lfWApXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG9uZSBvciBtb3JlIElBTSB1c2VyIHByaW5jaXBhbHMgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBAcGFyYW0gYWNjb3VudCBJRCBvZiB0aGUgQVdTIGFjY291bnRcbiAgICogQHBhcmFtIHVzZXJzIE5hbWUgb2YgdGhlIElBTSB1c2VyXG4gICAqL1xuICBwdWJsaWMgZm9yVXNlcihhY2NvdW50OiBzdHJpbmcsIC4uLnVzZXJzOiBzdHJpbmdbXSkge1xuICAgIHVzZXJzLmZvckVhY2goKHVzZXIpID0+XG4gICAgICB0aGlzLmFkZFByaW5jaXBhbChcbiAgICAgICAgUHJpbmNpcGFsVHlwZS5BV1MsXG4gICAgICAgIGBhcm46JHtQb2xpY3lTdGF0ZW1lbnRXaXRoUHJpbmNpcGFsLmRlZmF1bHRQYXJ0aXRpb259OmlhbTo6JHthY2NvdW50fTp1c2VyLyR7dXNlcn1gXG4gICAgICApXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG9uZSBvciBtb3JlIElBTSByb2xlIHByaW5jaXBhbHMgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBAcGFyYW0gYWNjb3VudCBJRCBvZiB0aGUgQVdTIGFjY291bnRcbiAgICogQHBhcmFtIHJvbGVzIE5hbWUgb2YgdGhlIElBTSByb2xlXG4gICAqL1xuICBwdWJsaWMgZm9yUm9sZShhY2NvdW50OiBzdHJpbmcsIC4uLnJvbGVzOiBzdHJpbmdbXSkge1xuICAgIHJvbGVzLmZvckVhY2goKHJvbGUpID0+XG4gICAgICB0aGlzLmFkZFByaW5jaXBhbChcbiAgICAgICAgUHJpbmNpcGFsVHlwZS5BV1MsXG4gICAgICAgIGBhcm46JHtQb2xpY3lTdGF0ZW1lbnRXaXRoUHJpbmNpcGFsLmRlZmF1bHRQYXJ0aXRpb259OmlhbTo6JHthY2NvdW50fTpyb2xlLyR7cm9sZX1gXG4gICAgICApXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG9uZSBvciBtb3JlIHNwZWNpZmljIGFzc3VtZWQgcm9sZSBzZXNzaW9uIHByaW5jaXBhbHMgdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBAcGFyYW0gYWNjb3VudCBJRCBvZiB0aGUgQVdTIGFjY291bnRcbiAgICogQHBhcmFtIHJvbGVOYW1lIE5hbWUgb2YgdGhlIElBTSByb2xlXG4gICAqIEBwYXJhbSBzZXNzaW9uTmFtZXMgTmFtZSBvZiB0aGUgc2Vzc2lvbi4gWW91IGNhbm5vdCB1c2UgYSB3aWxkY2FyZCAoYCpgKSB0byBtZWFuICphbGwgc2Vzc2lvbnMqLiBQcmluY2lwYWxzIG11c3QgYWx3YXlzIG5hbWUgYSBzcGVjaWZpYyBzZXNzaW9uXG4gICAqL1xuICBwdWJsaWMgZm9yQXNzdW1lZFJvbGVTZXNzaW9uKFxuICAgIGFjY291bnQ6IHN0cmluZyxcbiAgICByb2xlTmFtZTogc3RyaW5nLFxuICAgIC4uLnNlc3Npb25OYW1lczogc3RyaW5nW11cbiAgKSB7XG4gICAgc2Vzc2lvbk5hbWVzLmZvckVhY2goKHNlc3Npb25OYW1lKSA9PiB7XG4gICAgICB0aGlzLmFkZFByaW5jaXBhbChcbiAgICAgICAgUHJpbmNpcGFsVHlwZS5BV1MsXG4gICAgICAgIGBhcm46JHtQb2xpY3lTdGF0ZW1lbnRXaXRoUHJpbmNpcGFsLmRlZmF1bHRQYXJ0aXRpb259OnN0czo6JHthY2NvdW50fTphc3N1bWVkLXJvbGUvJHtyb2xlTmFtZX0vJHtzZXNzaW9uTmFtZX1gXG4gICAgICApO1xuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgb25lIG9yIG1vcmUgc2VydmljZSBwcmluY2lwYWxzIHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2VzIExvbmcgdmVyc2lvbiBvZiB0aGUgc2VydmljZSBuYW1lLiBVc3VhbGx5IGluIHRoZSBmb3JtYXQ6IGBsb25nX3NlcnZpY2UtbmFtZS5hbWF6b25hd3MuY29tYFxuICAgKlxuICAgKiBUaGUgc2VydmljZSBwcmluY2lwYWwgaXMgZGVmaW5lZCBieSB0aGUgc2VydmljZS4gVG8gbGVhcm4gdGhlIHNlcnZpY2UgcHJpbmNpcGFsIGZvciBhIHNlcnZpY2UsIHNlZSB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhhdCBzZXJ2aWNlLiBGb3Igc29tZSBzZXJ2aWNlcywgc2VlIFtBV1MgU2VydmljZXMgVGhhdCBXb3JrIHdpdGggSUFNXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX2F3cy1zZXJ2aWNlcy10aGF0LXdvcmstd2l0aC1pYW0uaHRtbCkgYW5kIGxvb2sgZm9yIHRoZSBzZXJ2aWNlcyB0aGF0IGhhdmUgKipZZXMqKiBpbiB0aGUgKipTZXJ2aWNlLUxpbmtlZCBSb2xlKiogY29sdW1uLiBDaG9vc2UgYSAqKlllcyoqIHdpdGggYSBsaW5rIHRvIHZpZXcgdGhlIHNlcnZpY2UtbGlua2VkIHJvbGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhhdCBzZXJ2aWNlLiBWaWV3IHRoZSAqKlNlcnZpY2UtTGlua2VkIFJvbGUgUGVybWlzc2lvbnMqKiBzZWN0aW9uIGZvciB0aGF0IHNlcnZpY2UgdG8gdmlldyB0aGUgc2VydmljZSBwcmluY2lwYWwuXG4gICAqL1xuXG4gIHB1YmxpYyBmb3JTZXJ2aWNlKC4uLnNlcnZpY2VzOiBzdHJpbmdbXSkge1xuICAgIHNlcnZpY2VzLmZvckVhY2goKHNlcnZpY2UpID0+XG4gICAgICB0aGlzLmFkZFByaW5jaXBhbChQcmluY2lwYWxUeXBlLlNFUlZJQ0UsIHNlcnZpY2UpXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcHVibGljIGFzc2VzXG4gICAqXG4gICAqICoqRVZFUllPTkUgSU4gVEhFIFdPUkxEIEhBUyBBQ0NFU1MqKlxuICAgKlxuICAgKiBXZSBzdHJvbmdseSByZWNvbW1lbmQgdGhhdCB5b3UgZG8gbm90IHVzZSBhIHdpbGRjYXJkIGluIHRoZSBQcmluY2lwYWwgZWxlbWVudCBpbiBhIHJvbGUncyB0cnVzdCBwb2xpY3kgdW5sZXNzIHlvdSBvdGhlcndpc2UgcmVzdHJpY3QgYWNjZXNzIHRocm91Z2ggYSBDb25kaXRpb24gZWxlbWVudCBpbiB0aGUgcG9saWN5LiBPdGhlcndpc2UsIGFueSBJQU0gdXNlciBpbiBhbnkgYWNjb3VudCBpbiB5b3VyIHBhcnRpdGlvbiBjYW4gYWNjZXNzIHRoZSByb2xlLlxuICAgKi9cbiAgcHVibGljIGZvclB1YmxpYygpIHtcbiAgICByZXR1cm4gdGhpcy5hZGRQcmluY2lwYWwoUHJpbmNpcGFsVHlwZS5BV1MsICcqJyk7XG4gIH1cbn1cbiJdfQ==
@@ -22,5 +22,5 @@ class PolicyStatement extends _6_principals_1.PolicyStatementWithPrincipal {
22
22
  }
23
23
  exports.PolicyStatement = PolicyStatement;
24
24
  _a = JSII_RTTI_SYMBOL_1;
25
- PolicyStatement[_a] = { fqn: "iam-floyd.PolicyStatement", version: "0.366.0" };
25
+ PolicyStatement[_a] = { fqn: "iam-floyd.PolicyStatement", version: "0.367.0" };
26
26
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOS1maW5hbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIjktZmluYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxrREFBOEQ7QUFFOUQ7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsNENBQTRCO0lBQWpFOztRQUNZLGVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyx3R0FBd0c7S0FTdkk7SUFQQyxnRkFBZ0Y7SUFDaEY7O09BRUc7SUFDSSxNQUFNO1FBQ1gsT0FBTyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7QUFUSCwwQ0FVQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBvbGljeVN0YXRlbWVudFdpdGhQcmluY2lwYWwgfSBmcm9tICcuLzYtcHJpbmNpcGFscyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHN0YXRlbWVudCBpbiBhbiBJQU0gcG9saWN5IGRvY3VtZW50XG4gKi9cbmV4cG9ydCBjbGFzcyBQb2xpY3lTdGF0ZW1lbnQgZXh0ZW5kcyBQb2xpY3lTdGF0ZW1lbnRXaXRoUHJpbmNpcGFsIHtcbiAgcHJvdGVjdGVkIGNka0FwcGxpZWQgPSBmYWxzZTsgLy8gaW50ZXJuYWxseSB1c2VkIHRvIGNoZWNrIGlmIHJlc291cmNlcywgYWN0aW9ucyBhbmQgY29uZGl0aW9ucyBoYXZlIGFscmVhZHkgYmVlbiBhcHBsaWVkIHRvIHRoZSBwb2xpY3lcblxuICAvL3RoaXMgbWV0aG9kIG9ubHkgZXhpdHMgdG8gZ2l2ZSBpdCBhIGZpbmFsIHRzZG9jLCBhcyBpdCdzIGV4cG9zZWQgdGhlIHRoZSB1c2VyLlxuICAvKipcbiAgICogSlNPTi1pZnkgdGhlIHBvbGljeSBzdGF0ZW1lbnRcbiAgICovXG4gIHB1YmxpYyB0b0pTT04oKTogYW55IHtcbiAgICByZXR1cm4gc3VwZXIudG9KU09OKCk7XG4gIH1cbn1cbiJdfQ==
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  },
11
11
  "name": "iam-floyd",
12
12
  "description": "AWS IAM policy statement generator with fluent interface",
13
- "version": "0.366.0",
13
+ "version": "0.367.0",
14
14
  "license": "Apache-2.0",
15
15
  "author": {
16
16
  "name": "Daniel Schroeder",