@microsoft/terraform-cdk-constructs 0.0.3-pre.6

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 (929) hide show
  1. package/.devcontainer/devcontainer.json +62 -0
  2. package/.jsii +17693 -0
  3. package/API.md +17465 -0
  4. package/CODE_OF_CONDUCT.md +9 -0
  5. package/CONTRIBUTING.md +85 -0
  6. package/LICENSE +21 -0
  7. package/README.md +58 -0
  8. package/SECURITY.md +41 -0
  9. package/SUPPORT.md +25 -0
  10. package/cdktf.json +11 -0
  11. package/cdktf.out/manifest.json +13 -0
  12. package/cdktf.out/stacks/testAzureActionGroup/cdk.tf.json +111 -0
  13. package/cdktf.out/stacks/testAzureApplicationGateway/cdk.tf.json +588 -0
  14. package/cdktf.out/stacks/testAzureApplicationInsights/cdk.tf.json +245 -0
  15. package/cdktf.out/stacks/testAzureContainerRegistry/cdk.tf.json +179 -0
  16. package/cdktf.out/stacks/testAzureEventhub/cdk.tf.json +236 -0
  17. package/cdktf.out/stacks/testAzureKeyVault/cdk.tf.json +436 -0
  18. package/cdktf.out/stacks/testAzureKubernetesCluster/cdk.tf.json +152 -0
  19. package/cdktf.out/stacks/testAzureKusto/cdk.tf.json +209 -0
  20. package/cdktf.out/stacks/testAzureLinuxFunctionApp/cdk.tf.json +439 -0
  21. package/cdktf.out/stacks/testAzureLinuxVirtualMachineExample/cdk.tf.json +283 -0
  22. package/cdktf.out/stacks/testAzureLinuxVirtualMachineScaleSetExample/cdk.tf.json +261 -0
  23. package/cdktf.out/stacks/testAzureLogAnalytics/cdk.tf.json +309 -0
  24. package/cdktf.out/stacks/testAzureMetricAlert/cdk.tf.json +161 -0
  25. package/cdktf.out/stacks/testAzureNetworkSecurityGroup/cdk.tf.json +271 -0
  26. package/cdktf.out/stacks/testAzureQueryRuleAlert/cdk.tf.json +122 -0
  27. package/cdktf.out/stacks/testAzureResourceGroup/cdk.tf.json +88 -0
  28. package/cdktf.out/stacks/testAzureStorageAccount/cdk.tf.json +339 -0
  29. package/cdktf.out/stacks/testAzureVirtualNetwork/cdk.tf.json +264 -0
  30. package/cdktf.out/stacks/testAzureWindowVirtualMachineScaleSetExample/cdk.tf.json +261 -0
  31. package/cdktf.out/stacks/testAzureWindowsVirtualMachineExample/cdk.tf.json +280 -0
  32. package/cdktf.out/stacks/testExampleAzureResource/cdk.tf.json +167 -0
  33. package/docs/design_guide.md +309 -0
  34. package/docs/testing.md +347 -0
  35. package/go.mod +73 -0
  36. package/go.sum +1006 -0
  37. package/help +51 -0
  38. package/jest.config.js.old +187 -0
  39. package/lib/azure-actiongroup/index.d.ts +1 -0
  40. package/lib/azure-actiongroup/index.js +18 -0
  41. package/lib/azure-actiongroup/lib/actiongroup.d.ts +10 -0
  42. package/lib/azure-actiongroup/lib/actiongroup.js +46 -0
  43. package/lib/azure-actiongroup/lib/index.d.ts +1 -0
  44. package/lib/azure-actiongroup/lib/index.js +18 -0
  45. package/lib/azure-actiongroup/model/action-group-props.d.ts +47 -0
  46. package/lib/azure-actiongroup/model/action-group-props.js +3 -0
  47. package/lib/azure-actiongroup/model/arm-role-receiver-props.d.ts +20 -0
  48. package/lib/azure-actiongroup/model/arm-role-receiver-props.js +3 -0
  49. package/lib/azure-actiongroup/model/azure-app-push-receiver-props.d.ts +14 -0
  50. package/lib/azure-actiongroup/model/azure-app-push-receiver-props.js +3 -0
  51. package/lib/azure-actiongroup/model/email-receiver-props.d.ts +19 -0
  52. package/lib/azure-actiongroup/model/email-receiver-props.js +3 -0
  53. package/lib/azure-actiongroup/model/eventhub-receiver-props.d.ts +23 -0
  54. package/lib/azure-actiongroup/model/eventhub-receiver-props.js +3 -0
  55. package/lib/azure-actiongroup/model/function.d.ts +40 -0
  56. package/lib/azure-actiongroup/model/function.js +118 -0
  57. package/lib/azure-actiongroup/model/index.d.ts +10 -0
  58. package/lib/azure-actiongroup/model/index.js +27 -0
  59. package/lib/azure-actiongroup/model/logic-app-receiver-props.d.ts +23 -0
  60. package/lib/azure-actiongroup/model/logic-app-receiver-props.js +3 -0
  61. package/lib/azure-actiongroup/model/sms-receiver-props.d.ts +18 -0
  62. package/lib/azure-actiongroup/model/sms-receiver-props.js +3 -0
  63. package/lib/azure-actiongroup/model/voice-receiver-props.d.ts +18 -0
  64. package/lib/azure-actiongroup/model/voice-receiver-props.js +3 -0
  65. package/lib/azure-actiongroup/model/webhook-receiver-props.d.ts +18 -0
  66. package/lib/azure-actiongroup/model/webhook-receiver-props.js +3 -0
  67. package/lib/azure-actiongroup/test/AzureActionGroup.spec.d.ts +1 -0
  68. package/lib/azure-actiongroup/test/AzureActionGroup.spec.js +294 -0
  69. package/lib/azure-actiongroup/test/ExampleAzureActionGroup.d.ts +5 -0
  70. package/lib/azure-actiongroup/test/ExampleAzureActionGroup.js +66 -0
  71. package/lib/azure-applicationgateway/index.d.ts +1 -0
  72. package/lib/azure-applicationgateway/index.js +18 -0
  73. package/lib/azure-applicationgateway/lib/gateway.d.ts +172 -0
  74. package/lib/azure-applicationgateway/lib/gateway.js +123 -0
  75. package/lib/azure-applicationgateway/lib/index.d.ts +1 -0
  76. package/lib/azure-applicationgateway/lib/index.js +18 -0
  77. package/lib/azure-applicationgateway/test/AzureApplicationGateway.spec.d.ts +1 -0
  78. package/lib/azure-applicationgateway/test/AzureApplicationGateway.spec.js +106 -0
  79. package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.d.ts +5 -0
  80. package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.js +267 -0
  81. package/lib/azure-applicationinsights/index.d.ts +1 -0
  82. package/lib/azure-applicationinsights/index.js +18 -0
  83. package/lib/azure-applicationinsights/lib/appinsights.d.ts +60 -0
  84. package/lib/azure-applicationinsights/lib/appinsights.js +85 -0
  85. package/lib/azure-applicationinsights/lib/index.d.ts +1 -0
  86. package/lib/azure-applicationinsights/lib/index.js +18 -0
  87. package/lib/azure-applicationinsights/test/AzureAppInsights.spec.d.ts +1 -0
  88. package/lib/azure-applicationinsights/test/AzureAppInsights.spec.js +55 -0
  89. package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.d.ts +5 -0
  90. package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.js +87 -0
  91. package/lib/azure-containerregistry/index.d.ts +1 -0
  92. package/lib/azure-containerregistry/index.js +18 -0
  93. package/lib/azure-containerregistry/lib/index.d.ts +1 -0
  94. package/lib/azure-containerregistry/lib/index.js +18 -0
  95. package/lib/azure-containerregistry/lib/registry.d.ts +41 -0
  96. package/lib/azure-containerregistry/lib/registry.js +47 -0
  97. package/lib/azure-containerregistry/test/AzureContainerRegistry.spec.d.ts +1 -0
  98. package/lib/azure-containerregistry/test/AzureContainerRegistry.spec.js +50 -0
  99. package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.d.ts +5 -0
  100. package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.js +57 -0
  101. package/lib/azure-datalake/index.d.ts +1 -0
  102. package/lib/azure-datalake/index.js +18 -0
  103. package/lib/azure-datalake/lib/datalake.d.ts +14 -0
  104. package/lib/azure-datalake/lib/datalake.js +42 -0
  105. package/lib/azure-datalake/lib/filesystem.d.ts +19 -0
  106. package/lib/azure-datalake/lib/filesystem.js +32 -0
  107. package/lib/azure-datalake/lib/index.d.ts +3 -0
  108. package/lib/azure-datalake/lib/index.js +20 -0
  109. package/lib/azure-datalake/lib/path.d.ts +12 -0
  110. package/lib/azure-datalake/lib/path.js +14 -0
  111. package/lib/azure-eventhub/index.d.ts +1 -0
  112. package/lib/azure-eventhub/index.js +18 -0
  113. package/lib/azure-eventhub/lib/authorization.d.ts +28 -0
  114. package/lib/azure-eventhub/lib/authorization.js +54 -0
  115. package/lib/azure-eventhub/lib/cluster.d.ts +27 -0
  116. package/lib/azure-eventhub/lib/cluster.js +35 -0
  117. package/lib/azure-eventhub/lib/consumer.d.ts +26 -0
  118. package/lib/azure-eventhub/lib/consumer.js +31 -0
  119. package/lib/azure-eventhub/lib/index.d.ts +6 -0
  120. package/lib/azure-eventhub/lib/index.js +23 -0
  121. package/lib/azure-eventhub/lib/instance.d.ts +46 -0
  122. package/lib/azure-eventhub/lib/instance.js +66 -0
  123. package/lib/azure-eventhub/lib/kusto-connection.d.ts +68 -0
  124. package/lib/azure-eventhub/lib/kusto-connection.js +35 -0
  125. package/lib/azure-eventhub/lib/namespace.d.ts +77 -0
  126. package/lib/azure-eventhub/lib/namespace.js +58 -0
  127. package/lib/azure-eventhub/test/AzureEventhub.spec.d.ts +1 -0
  128. package/lib/azure-eventhub/test/AzureEventhub.spec.js +56 -0
  129. package/lib/azure-eventhub/test/ExampleAzureEventhub.d.ts +5 -0
  130. package/lib/azure-eventhub/test/ExampleAzureEventhub.js +72 -0
  131. package/lib/azure-functionapp/index.d.ts +1 -0
  132. package/lib/azure-functionapp/index.js +18 -0
  133. package/lib/azure-functionapp/lib/functionapplinux.d.ts +211 -0
  134. package/lib/azure-functionapp/lib/functionapplinux.js +141 -0
  135. package/lib/azure-functionapp/lib/index.d.ts +1 -0
  136. package/lib/azure-functionapp/lib/index.js +18 -0
  137. package/lib/azure-functionapp/serviceplanskus.d.ts +70 -0
  138. package/lib/azure-functionapp/serviceplanskus.js +81 -0
  139. package/lib/azure-functionapp/test/AzureLinuxFunctionApp.spec.d.ts +1 -0
  140. package/lib/azure-functionapp/test/AzureLinuxFunctionApp.spec.js +48 -0
  141. package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.d.ts +5 -0
  142. package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.js +123 -0
  143. package/lib/azure-keyvault/index.d.ts +1 -0
  144. package/lib/azure-keyvault/index.js +18 -0
  145. package/lib/azure-keyvault/lib/certificate.d.ts +39 -0
  146. package/lib/azure-keyvault/lib/certificate.js +94 -0
  147. package/lib/azure-keyvault/lib/index.d.ts +5 -0
  148. package/lib/azure-keyvault/lib/index.js +22 -0
  149. package/lib/azure-keyvault/lib/key.d.ts +36 -0
  150. package/lib/azure-keyvault/lib/key.js +33 -0
  151. package/lib/azure-keyvault/lib/policy.d.ts +46 -0
  152. package/lib/azure-keyvault/lib/policy.js +26 -0
  153. package/lib/azure-keyvault/lib/secret.d.ts +39 -0
  154. package/lib/azure-keyvault/lib/secret.js +33 -0
  155. package/lib/azure-keyvault/lib/vault.d.ts +94 -0
  156. package/lib/azure-keyvault/lib/vault.js +208 -0
  157. package/lib/azure-keyvault/test/AzureKeyVault.spec.d.ts +1 -0
  158. package/lib/azure-keyvault/test/AzureKeyVault.spec.js +63 -0
  159. package/lib/azure-keyvault/test/ExampleAzureKeyVault.d.ts +5 -0
  160. package/lib/azure-keyvault/test/ExampleAzureKeyVault.js +112 -0
  161. package/lib/azure-kubernetes/index.d.ts +1 -0
  162. package/lib/azure-kubernetes/index.js +18 -0
  163. package/lib/azure-kubernetes/lib/cluster.d.ts +72 -0
  164. package/lib/azure-kubernetes/lib/cluster.js +42 -0
  165. package/lib/azure-kubernetes/lib/index.d.ts +1 -0
  166. package/lib/azure-kubernetes/lib/index.js +18 -0
  167. package/lib/azure-kubernetes/test/AzureKubernetesCluster.spec.d.ts +1 -0
  168. package/lib/azure-kubernetes/test/AzureKubernetesCluster.spec.js +56 -0
  169. package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.d.ts +5 -0
  170. package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.js +65 -0
  171. package/lib/azure-kusto/index.d.ts +1 -0
  172. package/lib/azure-kusto/index.js +18 -0
  173. package/lib/azure-kusto/lib/cluster.d.ts +83 -0
  174. package/lib/azure-kusto/lib/cluster.js +85 -0
  175. package/lib/azure-kusto/lib/compute-specification.d.ts +71 -0
  176. package/lib/azure-kusto/lib/compute-specification.js +651 -0
  177. package/lib/azure-kusto/lib/database.d.ts +59 -0
  178. package/lib/azure-kusto/lib/database.js +77 -0
  179. package/lib/azure-kusto/lib/index.d.ts +3 -0
  180. package/lib/azure-kusto/lib/index.js +20 -0
  181. package/lib/azure-kusto/test/AzureKusto.spec.d.ts +1 -0
  182. package/lib/azure-kusto/test/AzureKusto.spec.js +50 -0
  183. package/lib/azure-kusto/test/ExampleAzureKusto.d.ts +5 -0
  184. package/lib/azure-kusto/test/ExampleAzureKusto.js +71 -0
  185. package/lib/azure-loganalytics/index.d.ts +1 -0
  186. package/lib/azure-loganalytics/index.js +18 -0
  187. package/lib/azure-loganalytics/lib/index.d.ts +1 -0
  188. package/lib/azure-loganalytics/lib/index.js +18 -0
  189. package/lib/azure-loganalytics/lib/workspace.d.ts +116 -0
  190. package/lib/azure-loganalytics/lib/workspace.js +79 -0
  191. package/lib/azure-loganalytics/test/AzureLogAnalytics.spec.d.ts +1 -0
  192. package/lib/azure-loganalytics/test/AzureLogAnalytics.spec.js +50 -0
  193. package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.d.ts +5 -0
  194. package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.js +115 -0
  195. package/lib/azure-metricalert/index.d.ts +2 -0
  196. package/lib/azure-metricalert/index.js +19 -0
  197. package/lib/azure-metricalert/lib/index.d.ts +1 -0
  198. package/lib/azure-metricalert/lib/index.js +18 -0
  199. package/lib/azure-metricalert/lib/metric-alert.d.ts +17 -0
  200. package/lib/azure-metricalert/lib/metric-alert.js +89 -0
  201. package/lib/azure-metricalert/model/action-props.d.ts +11 -0
  202. package/lib/azure-metricalert/model/action-props.js +3 -0
  203. package/lib/azure-metricalert/model/criteria-base-props.d.ts +38 -0
  204. package/lib/azure-metricalert/model/criteria-base-props.js +3 -0
  205. package/lib/azure-metricalert/model/criteria-dimension-props.d.ts +21 -0
  206. package/lib/azure-metricalert/model/criteria-dimension-props.js +3 -0
  207. package/lib/azure-metricalert/model/criteria-props.d.ts +12 -0
  208. package/lib/azure-metricalert/model/criteria-props.js +3 -0
  209. package/lib/azure-metricalert/model/dynamic-criteria-props.d.ts +29 -0
  210. package/lib/azure-metricalert/model/dynamic-criteria-props.js +3 -0
  211. package/lib/azure-metricalert/model/function.d.ts +28 -0
  212. package/lib/azure-metricalert/model/function.js +78 -0
  213. package/lib/azure-metricalert/model/index.d.ts +7 -0
  214. package/lib/azure-metricalert/model/index.js +24 -0
  215. package/lib/azure-metricalert/model/metric-alert-props.d.ts +86 -0
  216. package/lib/azure-metricalert/model/metric-alert-props.js +3 -0
  217. package/lib/azure-metricalert/test/AzureMetricAlert.spec.d.ts +1 -0
  218. package/lib/azure-metricalert/test/AzureMetricAlert.spec.js +63 -0
  219. package/lib/azure-metricalert/test/ExampleAzureMetricAlert.d.ts +5 -0
  220. package/lib/azure-metricalert/test/ExampleAzureMetricAlert.js +81 -0
  221. package/lib/azure-networksecuritygroup/index.d.ts +1 -0
  222. package/lib/azure-networksecuritygroup/index.js +18 -0
  223. package/lib/azure-networksecuritygroup/lib/index.d.ts +2 -0
  224. package/lib/azure-networksecuritygroup/lib/index.js +19 -0
  225. package/lib/azure-networksecuritygroup/lib/preconfigured-rules.d.ts +77 -0
  226. package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +608 -0
  227. package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +98 -0
  228. package/lib/azure-networksecuritygroup/lib/securitygroup.js +82 -0
  229. package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.spec.d.ts +1 -0
  230. package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.spec.js +54 -0
  231. package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.d.ts +5 -0
  232. package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.js +97 -0
  233. package/lib/azure-queryrulealert/index.d.ts +1 -0
  234. package/lib/azure-queryrulealert/index.js +18 -0
  235. package/lib/azure-queryrulealert/lib/index.d.ts +1 -0
  236. package/lib/azure-queryrulealert/lib/index.js +18 -0
  237. package/lib/azure-queryrulealert/lib/query-rule-alert.d.ts +144 -0
  238. package/lib/azure-queryrulealert/lib/query-rule-alert.js +174 -0
  239. package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.spec.d.ts +1 -0
  240. package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.spec.js +67 -0
  241. package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.d.ts +5 -0
  242. package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.js +67 -0
  243. package/lib/azure-resourcegroup/index.d.ts +1 -0
  244. package/lib/azure-resourcegroup/index.js +18 -0
  245. package/lib/azure-resourcegroup/lib/index.d.ts +1 -0
  246. package/lib/azure-resourcegroup/lib/index.js +18 -0
  247. package/lib/azure-resourcegroup/lib/resource-group.d.ts +38 -0
  248. package/lib/azure-resourcegroup/lib/resource-group.js +49 -0
  249. package/lib/azure-resourcegroup/test/AzureResourceGroup.spec.d.ts +1 -0
  250. package/lib/azure-resourcegroup/test/AzureResourceGroup.spec.js +41 -0
  251. package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.d.ts +5 -0
  252. package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.js +29 -0
  253. package/lib/azure-storageaccount/index.d.ts +1 -0
  254. package/lib/azure-storageaccount/index.js +18 -0
  255. package/lib/azure-storageaccount/lib/account.d.ts +205 -0
  256. package/lib/azure-storageaccount/lib/account.js +198 -0
  257. package/lib/azure-storageaccount/lib/container.d.ts +40 -0
  258. package/lib/azure-storageaccount/lib/container.js +85 -0
  259. package/lib/azure-storageaccount/lib/fileshare.d.ts +69 -0
  260. package/lib/azure-storageaccount/lib/fileshare.js +90 -0
  261. package/lib/azure-storageaccount/lib/index.d.ts +5 -0
  262. package/lib/azure-storageaccount/lib/index.js +22 -0
  263. package/lib/azure-storageaccount/lib/queue.d.ts +6 -0
  264. package/lib/azure-storageaccount/lib/queue.js +23 -0
  265. package/lib/azure-storageaccount/lib/table.d.ts +6 -0
  266. package/lib/azure-storageaccount/lib/table.js +23 -0
  267. package/lib/azure-storageaccount/test/AzureStorageAccount.spec.d.ts +1 -0
  268. package/lib/azure-storageaccount/test/AzureStorageAccount.spec.js +45 -0
  269. package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.d.ts +5 -0
  270. package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.js +102 -0
  271. package/lib/azure-virtualmachine/index.d.ts +1 -0
  272. package/lib/azure-virtualmachine/index.js +18 -0
  273. package/lib/azure-virtualmachine/lib/image-references.d.ts +22 -0
  274. package/lib/azure-virtualmachine/lib/image-references.js +128 -0
  275. package/lib/azure-virtualmachine/lib/index.d.ts +2 -0
  276. package/lib/azure-virtualmachine/lib/index.js +19 -0
  277. package/lib/azure-virtualmachine/lib/vm.d.ts +205 -0
  278. package/lib/azure-virtualmachine/lib/vm.js +207 -0
  279. package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.spec.d.ts +1 -0
  280. package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.spec.js +48 -0
  281. package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.spec.d.ts +1 -0
  282. package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.spec.js +50 -0
  283. package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.d.ts +5 -0
  284. package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.js +106 -0
  285. package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.d.ts +5 -0
  286. package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.js +102 -0
  287. package/lib/azure-virtualmachinescaleset/index.d.ts +1 -0
  288. package/lib/azure-virtualmachinescaleset/index.js +18 -0
  289. package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +234 -0
  290. package/lib/azure-virtualmachinescaleset/lib/cluster.js +174 -0
  291. package/lib/azure-virtualmachinescaleset/lib/index.d.ts +1 -0
  292. package/lib/azure-virtualmachinescaleset/lib/index.js +18 -0
  293. package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.spec.d.ts +1 -0
  294. package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.spec.js +48 -0
  295. package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.spec.d.ts +1 -0
  296. package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.spec.js +50 -0
  297. package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.d.ts +5 -0
  298. package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.js +107 -0
  299. package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.d.ts +5 -0
  300. package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.js +103 -0
  301. package/lib/azure-virtualnetwork/index.d.ts +1 -0
  302. package/lib/azure-virtualnetwork/index.js +18 -0
  303. package/lib/azure-virtualnetwork/lib/index.d.ts +2 -0
  304. package/lib/azure-virtualnetwork/lib/index.js +19 -0
  305. package/lib/azure-virtualnetwork/lib/network.d.ts +61 -0
  306. package/lib/azure-virtualnetwork/lib/network.js +60 -0
  307. package/lib/azure-virtualnetwork/lib/peering.d.ts +51 -0
  308. package/lib/azure-virtualnetwork/lib/peering.js +32 -0
  309. package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.spec.d.ts +1 -0
  310. package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.spec.js +48 -0
  311. package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.d.ts +5 -0
  312. package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.js +88 -0
  313. package/lib/core-azure/index.d.ts +1 -0
  314. package/lib/core-azure/index.js +18 -0
  315. package/lib/core-azure/lib/diagsettings.d.ts +52 -0
  316. package/lib/core-azure/lib/diagsettings.js +46 -0
  317. package/lib/core-azure/lib/index.d.ts +3 -0
  318. package/lib/core-azure/lib/index.js +20 -0
  319. package/lib/core-azure/lib/rbac.d.ts +32 -0
  320. package/lib/core-azure/lib/rbac.js +30 -0
  321. package/lib/core-azure/lib/resource.d.ts +17 -0
  322. package/lib/core-azure/lib/resource.js +74 -0
  323. package/lib/core-azure/test/AzureResource.spec.d.ts +1 -0
  324. package/lib/core-azure/test/AzureResource.spec.js +19 -0
  325. package/lib/core-azure/test/ExampleAzureResource.d.ts +5 -0
  326. package/lib/core-azure/test/ExampleAzureResource.js +67 -0
  327. package/lib/index.d.ts +18 -0
  328. package/lib/index.js +22 -0
  329. package/lib/testing/index.d.ts +6 -0
  330. package/lib/testing/index.js +18 -0
  331. package/lib/util/azureTenantIdHelpers.d.ts +2 -0
  332. package/lib/util/azureTenantIdHelpers.js +34 -0
  333. package/lib/util/randomName.d.ts +1 -0
  334. package/lib/util/randomName.js +13 -0
  335. package/node_modules/moment/CHANGELOG.md +996 -0
  336. package/node_modules/moment/LICENSE +22 -0
  337. package/node_modules/moment/README.md +55 -0
  338. package/node_modules/moment/dist/locale/af.js +71 -0
  339. package/node_modules/moment/dist/locale/ar-dz.js +156 -0
  340. package/node_modules/moment/dist/locale/ar-kw.js +55 -0
  341. package/node_modules/moment/dist/locale/ar-ly.js +171 -0
  342. package/node_modules/moment/dist/locale/ar-ma.js +56 -0
  343. package/node_modules/moment/dist/locale/ar-ps.js +112 -0
  344. package/node_modules/moment/dist/locale/ar-sa.js +105 -0
  345. package/node_modules/moment/dist/locale/ar-tn.js +55 -0
  346. package/node_modules/moment/dist/locale/ar.js +189 -0
  347. package/node_modules/moment/dist/locale/az.js +102 -0
  348. package/node_modules/moment/dist/locale/be.js +142 -0
  349. package/node_modules/moment/dist/locale/bg.js +87 -0
  350. package/node_modules/moment/dist/locale/bm.js +52 -0
  351. package/node_modules/moment/dist/locale/bn-bd.js +129 -0
  352. package/node_modules/moment/dist/locale/bn.js +119 -0
  353. package/node_modules/moment/dist/locale/bo.js +124 -0
  354. package/node_modules/moment/dist/locale/br.js +168 -0
  355. package/node_modules/moment/dist/locale/bs.js +160 -0
  356. package/node_modules/moment/dist/locale/ca.js +100 -0
  357. package/node_modules/moment/dist/locale/cs.js +181 -0
  358. package/node_modules/moment/dist/locale/cv.js +63 -0
  359. package/node_modules/moment/dist/locale/cy.js +98 -0
  360. package/node_modules/moment/dist/locale/da.js +53 -0
  361. package/node_modules/moment/dist/locale/de-at.js +79 -0
  362. package/node_modules/moment/dist/locale/de-ch.js +78 -0
  363. package/node_modules/moment/dist/locale/de.js +78 -0
  364. package/node_modules/moment/dist/locale/dv.js +90 -0
  365. package/node_modules/moment/dist/locale/el.js +106 -0
  366. package/node_modules/moment/dist/locale/en-au.js +68 -0
  367. package/node_modules/moment/dist/locale/en-ca.js +64 -0
  368. package/node_modules/moment/dist/locale/en-gb.js +68 -0
  369. package/node_modules/moment/dist/locale/en-ie.js +68 -0
  370. package/node_modules/moment/dist/locale/en-il.js +64 -0
  371. package/node_modules/moment/dist/locale/en-in.js +68 -0
  372. package/node_modules/moment/dist/locale/en-nz.js +68 -0
  373. package/node_modules/moment/dist/locale/en-sg.js +68 -0
  374. package/node_modules/moment/dist/locale/eo.js +68 -0
  375. package/node_modules/moment/dist/locale/es-do.js +108 -0
  376. package/node_modules/moment/dist/locale/es-mx.js +110 -0
  377. package/node_modules/moment/dist/locale/es-us.js +110 -0
  378. package/node_modules/moment/dist/locale/es.js +110 -0
  379. package/node_modules/moment/dist/locale/et.js +78 -0
  380. package/node_modules/moment/dist/locale/eu.js +65 -0
  381. package/node_modules/moment/dist/locale/fa.js +113 -0
  382. package/node_modules/moment/dist/locale/fi.js +124 -0
  383. package/node_modules/moment/dist/locale/fil.js +58 -0
  384. package/node_modules/moment/dist/locale/fo.js +57 -0
  385. package/node_modules/moment/dist/locale/fr-ca.js +70 -0
  386. package/node_modules/moment/dist/locale/fr-ch.js +74 -0
  387. package/node_modules/moment/dist/locale/fr.js +108 -0
  388. package/node_modules/moment/dist/locale/fy.js +75 -0
  389. package/node_modules/moment/dist/locale/ga.js +95 -0
  390. package/node_modules/moment/dist/locale/gd.js +95 -0
  391. package/node_modules/moment/dist/locale/gl.js +75 -0
  392. package/node_modules/moment/dist/locale/gom-deva.js +126 -0
  393. package/node_modules/moment/dist/locale/gom-latn.js +124 -0
  394. package/node_modules/moment/dist/locale/gu.js +122 -0
  395. package/node_modules/moment/dist/locale/he.js +94 -0
  396. package/node_modules/moment/dist/locale/hi.js +168 -0
  397. package/node_modules/moment/dist/locale/hr.js +156 -0
  398. package/node_modules/moment/dist/locale/hu.js +118 -0
  399. package/node_modules/moment/dist/locale/hy-am.js +94 -0
  400. package/node_modules/moment/dist/locale/id.js +76 -0
  401. package/node_modules/moment/dist/locale/is.js +140 -0
  402. package/node_modules/moment/dist/locale/it-ch.js +64 -0
  403. package/node_modules/moment/dist/locale/it.js +106 -0
  404. package/node_modules/moment/dist/locale/ja.js +148 -0
  405. package/node_modules/moment/dist/locale/jv.js +76 -0
  406. package/node_modules/moment/dist/locale/ka.js +92 -0
  407. package/node_modules/moment/dist/locale/kk.js +82 -0
  408. package/node_modules/moment/dist/locale/km.js +103 -0
  409. package/node_modules/moment/dist/locale/kn.js +124 -0
  410. package/node_modules/moment/dist/locale/ko.js +75 -0
  411. package/node_modules/moment/dist/locale/ku-kmr.js +121 -0
  412. package/node_modules/moment/dist/locale/ku.js +118 -0
  413. package/node_modules/moment/dist/locale/ky.js +84 -0
  414. package/node_modules/moment/dist/locale/lb.js +137 -0
  415. package/node_modules/moment/dist/locale/lo.js +66 -0
  416. package/node_modules/moment/dist/locale/lt.js +125 -0
  417. package/node_modules/moment/dist/locale/lv.js +94 -0
  418. package/node_modules/moment/dist/locale/me.js +117 -0
  419. package/node_modules/moment/dist/locale/mi.js +60 -0
  420. package/node_modules/moment/dist/locale/mk.js +85 -0
  421. package/node_modules/moment/dist/locale/ml.js +82 -0
  422. package/node_modules/moment/dist/locale/mn.js +100 -0
  423. package/node_modules/moment/dist/locale/mr.js +203 -0
  424. package/node_modules/moment/dist/locale/ms-my.js +76 -0
  425. package/node_modules/moment/dist/locale/ms.js +75 -0
  426. package/node_modules/moment/dist/locale/mt.js +56 -0
  427. package/node_modules/moment/dist/locale/my.js +91 -0
  428. package/node_modules/moment/dist/locale/nb.js +60 -0
  429. package/node_modules/moment/dist/locale/ne.js +121 -0
  430. package/node_modules/moment/dist/locale/nl-be.js +102 -0
  431. package/node_modules/moment/dist/locale/nl.js +104 -0
  432. package/node_modules/moment/dist/locale/nn.js +59 -0
  433. package/node_modules/moment/dist/locale/oc-lnc.js +85 -0
  434. package/node_modules/moment/dist/locale/pa-in.js +122 -0
  435. package/node_modules/moment/dist/locale/pl.js +140 -0
  436. package/node_modules/moment/dist/locale/pt-br.js +58 -0
  437. package/node_modules/moment/dist/locale/pt.js +63 -0
  438. package/node_modules/moment/dist/locale/ro.js +76 -0
  439. package/node_modules/moment/dist/locale/ru.js +213 -0
  440. package/node_modules/moment/dist/locale/sd.js +81 -0
  441. package/node_modules/moment/dist/locale/se.js +57 -0
  442. package/node_modules/moment/dist/locale/si.js +69 -0
  443. package/node_modules/moment/dist/locale/sk.js +145 -0
  444. package/node_modules/moment/dist/locale/sl.js +171 -0
  445. package/node_modules/moment/dist/locale/sq.js +65 -0
  446. package/node_modules/moment/dist/locale/sr-cyrl.js +127 -0
  447. package/node_modules/moment/dist/locale/sr.js +129 -0
  448. package/node_modules/moment/dist/locale/ss.js +84 -0
  449. package/node_modules/moment/dist/locale/sv.js +68 -0
  450. package/node_modules/moment/dist/locale/sw.js +55 -0
  451. package/node_modules/moment/dist/locale/ta.js +131 -0
  452. package/node_modules/moment/dist/locale/te.js +88 -0
  453. package/node_modules/moment/dist/locale/tet.js +68 -0
  454. package/node_modules/moment/dist/locale/tg.js +117 -0
  455. package/node_modules/moment/dist/locale/th.js +65 -0
  456. package/node_modules/moment/dist/locale/tk.js +91 -0
  457. package/node_modules/moment/dist/locale/tl-ph.js +57 -0
  458. package/node_modules/moment/dist/locale/tlh.js +124 -0
  459. package/node_modules/moment/dist/locale/tr.js +106 -0
  460. package/node_modules/moment/dist/locale/tzl.js +89 -0
  461. package/node_modules/moment/dist/locale/tzm-latn.js +54 -0
  462. package/node_modules/moment/dist/locale/tzm.js +54 -0
  463. package/node_modules/moment/dist/locale/ug-cn.js +111 -0
  464. package/node_modules/moment/dist/locale/uk.js +167 -0
  465. package/node_modules/moment/dist/locale/ur.js +82 -0
  466. package/node_modules/moment/dist/locale/uz-latn.js +54 -0
  467. package/node_modules/moment/dist/locale/uz.js +51 -0
  468. package/node_modules/moment/dist/locale/vi.js +80 -0
  469. package/node_modules/moment/dist/locale/x-pseudo.js +73 -0
  470. package/node_modules/moment/dist/locale/yo.js +53 -0
  471. package/node_modules/moment/dist/locale/zh-cn.js +120 -0
  472. package/node_modules/moment/dist/locale/zh-hk.js +101 -0
  473. package/node_modules/moment/dist/locale/zh-mo.js +100 -0
  474. package/node_modules/moment/dist/locale/zh-tw.js +99 -0
  475. package/node_modules/moment/dist/moment.js +5680 -0
  476. package/node_modules/moment/ender.js +1 -0
  477. package/node_modules/moment/locale/af.js +82 -0
  478. package/node_modules/moment/locale/ar-dz.js +167 -0
  479. package/node_modules/moment/locale/ar-kw.js +66 -0
  480. package/node_modules/moment/locale/ar-ly.js +182 -0
  481. package/node_modules/moment/locale/ar-ma.js +67 -0
  482. package/node_modules/moment/locale/ar-ps.js +123 -0
  483. package/node_modules/moment/locale/ar-sa.js +116 -0
  484. package/node_modules/moment/locale/ar-tn.js +66 -0
  485. package/node_modules/moment/locale/ar.js +200 -0
  486. package/node_modules/moment/locale/az.js +113 -0
  487. package/node_modules/moment/locale/be.js +153 -0
  488. package/node_modules/moment/locale/bg.js +98 -0
  489. package/node_modules/moment/locale/bm.js +62 -0
  490. package/node_modules/moment/locale/bn-bd.js +140 -0
  491. package/node_modules/moment/locale/bn.js +130 -0
  492. package/node_modules/moment/locale/bo.js +135 -0
  493. package/node_modules/moment/locale/br.js +179 -0
  494. package/node_modules/moment/locale/bs.js +171 -0
  495. package/node_modules/moment/locale/ca.js +111 -0
  496. package/node_modules/moment/locale/cs.js +192 -0
  497. package/node_modules/moment/locale/cv.js +74 -0
  498. package/node_modules/moment/locale/cy.js +109 -0
  499. package/node_modules/moment/locale/da.js +64 -0
  500. package/node_modules/moment/locale/de-at.js +90 -0
  501. package/node_modules/moment/locale/de-ch.js +87 -0
  502. package/node_modules/moment/locale/de.js +89 -0
  503. package/node_modules/moment/locale/dv.js +101 -0
  504. package/node_modules/moment/locale/el.js +117 -0
  505. package/node_modules/moment/locale/en-au.js +79 -0
  506. package/node_modules/moment/locale/en-ca.js +75 -0
  507. package/node_modules/moment/locale/en-gb.js +79 -0
  508. package/node_modules/moment/locale/en-ie.js +79 -0
  509. package/node_modules/moment/locale/en-il.js +75 -0
  510. package/node_modules/moment/locale/en-in.js +79 -0
  511. package/node_modules/moment/locale/en-nz.js +79 -0
  512. package/node_modules/moment/locale/en-sg.js +79 -0
  513. package/node_modules/moment/locale/eo.js +79 -0
  514. package/node_modules/moment/locale/es-do.js +119 -0
  515. package/node_modules/moment/locale/es-mx.js +121 -0
  516. package/node_modules/moment/locale/es-us.js +121 -0
  517. package/node_modules/moment/locale/es.js +121 -0
  518. package/node_modules/moment/locale/et.js +89 -0
  519. package/node_modules/moment/locale/eu.js +76 -0
  520. package/node_modules/moment/locale/fa.js +124 -0
  521. package/node_modules/moment/locale/fi.js +135 -0
  522. package/node_modules/moment/locale/fil.js +69 -0
  523. package/node_modules/moment/locale/fo.js +68 -0
  524. package/node_modules/moment/locale/fr-ca.js +81 -0
  525. package/node_modules/moment/locale/fr-ch.js +85 -0
  526. package/node_modules/moment/locale/fr.js +119 -0
  527. package/node_modules/moment/locale/fy.js +86 -0
  528. package/node_modules/moment/locale/ga.js +106 -0
  529. package/node_modules/moment/locale/gd.js +106 -0
  530. package/node_modules/moment/locale/gl.js +86 -0
  531. package/node_modules/moment/locale/gom-deva.js +137 -0
  532. package/node_modules/moment/locale/gom-latn.js +135 -0
  533. package/node_modules/moment/locale/gu.js +133 -0
  534. package/node_modules/moment/locale/he.js +105 -0
  535. package/node_modules/moment/locale/hi.js +179 -0
  536. package/node_modules/moment/locale/hr.js +167 -0
  537. package/node_modules/moment/locale/hu.js +129 -0
  538. package/node_modules/moment/locale/hy-am.js +105 -0
  539. package/node_modules/moment/locale/id.js +87 -0
  540. package/node_modules/moment/locale/is.js +151 -0
  541. package/node_modules/moment/locale/it-ch.js +75 -0
  542. package/node_modules/moment/locale/it.js +117 -0
  543. package/node_modules/moment/locale/ja.js +159 -0
  544. package/node_modules/moment/locale/jv.js +87 -0
  545. package/node_modules/moment/locale/ka.js +103 -0
  546. package/node_modules/moment/locale/kk.js +93 -0
  547. package/node_modules/moment/locale/km.js +114 -0
  548. package/node_modules/moment/locale/kn.js +135 -0
  549. package/node_modules/moment/locale/ko.js +86 -0
  550. package/node_modules/moment/locale/ku-kmr.js +125 -0
  551. package/node_modules/moment/locale/ku.js +129 -0
  552. package/node_modules/moment/locale/ky.js +95 -0
  553. package/node_modules/moment/locale/lb.js +148 -0
  554. package/node_modules/moment/locale/lo.js +77 -0
  555. package/node_modules/moment/locale/lt.js +136 -0
  556. package/node_modules/moment/locale/lv.js +105 -0
  557. package/node_modules/moment/locale/me.js +128 -0
  558. package/node_modules/moment/locale/mi.js +71 -0
  559. package/node_modules/moment/locale/mk.js +97 -0
  560. package/node_modules/moment/locale/ml.js +93 -0
  561. package/node_modules/moment/locale/mn.js +111 -0
  562. package/node_modules/moment/locale/mr.js +214 -0
  563. package/node_modules/moment/locale/ms-my.js +87 -0
  564. package/node_modules/moment/locale/ms.js +86 -0
  565. package/node_modules/moment/locale/mt.js +67 -0
  566. package/node_modules/moment/locale/my.js +102 -0
  567. package/node_modules/moment/locale/nb.js +71 -0
  568. package/node_modules/moment/locale/ne.js +132 -0
  569. package/node_modules/moment/locale/nl-be.js +113 -0
  570. package/node_modules/moment/locale/nl.js +115 -0
  571. package/node_modules/moment/locale/nn.js +70 -0
  572. package/node_modules/moment/locale/oc-lnc.js +96 -0
  573. package/node_modules/moment/locale/pa-in.js +133 -0
  574. package/node_modules/moment/locale/pl.js +151 -0
  575. package/node_modules/moment/locale/pt-br.js +69 -0
  576. package/node_modules/moment/locale/pt.js +74 -0
  577. package/node_modules/moment/locale/ro.js +87 -0
  578. package/node_modules/moment/locale/ru.js +224 -0
  579. package/node_modules/moment/locale/sd.js +92 -0
  580. package/node_modules/moment/locale/se.js +68 -0
  581. package/node_modules/moment/locale/si.js +80 -0
  582. package/node_modules/moment/locale/sk.js +156 -0
  583. package/node_modules/moment/locale/sl.js +182 -0
  584. package/node_modules/moment/locale/sq.js +76 -0
  585. package/node_modules/moment/locale/sr-cyrl.js +138 -0
  586. package/node_modules/moment/locale/sr.js +140 -0
  587. package/node_modules/moment/locale/ss.js +95 -0
  588. package/node_modules/moment/locale/sv.js +79 -0
  589. package/node_modules/moment/locale/sw.js +66 -0
  590. package/node_modules/moment/locale/ta.js +142 -0
  591. package/node_modules/moment/locale/te.js +99 -0
  592. package/node_modules/moment/locale/tet.js +79 -0
  593. package/node_modules/moment/locale/tg.js +128 -0
  594. package/node_modules/moment/locale/th.js +76 -0
  595. package/node_modules/moment/locale/tk.js +102 -0
  596. package/node_modules/moment/locale/tl-ph.js +68 -0
  597. package/node_modules/moment/locale/tlh.js +135 -0
  598. package/node_modules/moment/locale/tr.js +117 -0
  599. package/node_modules/moment/locale/tzl.js +100 -0
  600. package/node_modules/moment/locale/tzm-latn.js +65 -0
  601. package/node_modules/moment/locale/tzm.js +65 -0
  602. package/node_modules/moment/locale/ug-cn.js +122 -0
  603. package/node_modules/moment/locale/uk.js +178 -0
  604. package/node_modules/moment/locale/ur.js +93 -0
  605. package/node_modules/moment/locale/uz-latn.js +65 -0
  606. package/node_modules/moment/locale/uz.js +62 -0
  607. package/node_modules/moment/locale/vi.js +91 -0
  608. package/node_modules/moment/locale/x-pseudo.js +84 -0
  609. package/node_modules/moment/locale/yo.js +64 -0
  610. package/node_modules/moment/locale/zh-cn.js +131 -0
  611. package/node_modules/moment/locale/zh-hk.js +112 -0
  612. package/node_modules/moment/locale/zh-mo.js +111 -0
  613. package/node_modules/moment/locale/zh-tw.js +110 -0
  614. package/node_modules/moment/min/locales.js +12800 -0
  615. package/node_modules/moment/min/locales.min.js +2 -0
  616. package/node_modules/moment/min/locales.min.js.map +1 -0
  617. package/node_modules/moment/min/moment-with-locales.js +18472 -0
  618. package/node_modules/moment/min/moment-with-locales.min.js +2 -0
  619. package/node_modules/moment/min/moment-with-locales.min.js.map +1 -0
  620. package/node_modules/moment/min/moment.min.js +2 -0
  621. package/node_modules/moment/min/moment.min.js.map +1 -0
  622. package/node_modules/moment/moment.d.ts +796 -0
  623. package/node_modules/moment/moment.js +5688 -0
  624. package/node_modules/moment/package.js +11 -0
  625. package/node_modules/moment/package.json +116 -0
  626. package/node_modules/moment/src/lib/create/check-overflow.js +57 -0
  627. package/node_modules/moment/src/lib/create/date-from-array.js +35 -0
  628. package/node_modules/moment/src/lib/create/from-anything.js +117 -0
  629. package/node_modules/moment/src/lib/create/from-array.js +187 -0
  630. package/node_modules/moment/src/lib/create/from-object.js +20 -0
  631. package/node_modules/moment/src/lib/create/from-string-and-array.js +67 -0
  632. package/node_modules/moment/src/lib/create/from-string-and-format.js +135 -0
  633. package/node_modules/moment/src/lib/create/from-string.js +258 -0
  634. package/node_modules/moment/src/lib/create/local.js +5 -0
  635. package/node_modules/moment/src/lib/create/parsing-flags.js +28 -0
  636. package/node_modules/moment/src/lib/create/utc.js +5 -0
  637. package/node_modules/moment/src/lib/create/valid.js +51 -0
  638. package/node_modules/moment/src/lib/duration/abs.js +18 -0
  639. package/node_modules/moment/src/lib/duration/add-subtract.js +21 -0
  640. package/node_modules/moment/src/lib/duration/as.js +76 -0
  641. package/node_modules/moment/src/lib/duration/bubble.js +68 -0
  642. package/node_modules/moment/src/lib/duration/clone.js +5 -0
  643. package/node_modules/moment/src/lib/duration/constructor.js +42 -0
  644. package/node_modules/moment/src/lib/duration/create.js +133 -0
  645. package/node_modules/moment/src/lib/duration/duration.js +16 -0
  646. package/node_modules/moment/src/lib/duration/get.js +27 -0
  647. package/node_modules/moment/src/lib/duration/humanize.js +114 -0
  648. package/node_modules/moment/src/lib/duration/iso-string.js +68 -0
  649. package/node_modules/moment/src/lib/duration/prototype.js +78 -0
  650. package/node_modules/moment/src/lib/duration/valid.js +55 -0
  651. package/node_modules/moment/src/lib/format/format.js +104 -0
  652. package/node_modules/moment/src/lib/locale/base-config.js +41 -0
  653. package/node_modules/moment/src/lib/locale/calendar.js +15 -0
  654. package/node_modules/moment/src/lib/locale/constructor.js +5 -0
  655. package/node_modules/moment/src/lib/locale/en.js +39 -0
  656. package/node_modules/moment/src/lib/locale/formats.js +36 -0
  657. package/node_modules/moment/src/lib/locale/invalid.js +5 -0
  658. package/node_modules/moment/src/lib/locale/lists.js +93 -0
  659. package/node_modules/moment/src/lib/locale/locale.js +45 -0
  660. package/node_modules/moment/src/lib/locale/locales.js +249 -0
  661. package/node_modules/moment/src/lib/locale/ordinal.js +8 -0
  662. package/node_modules/moment/src/lib/locale/pre-post-format.js +3 -0
  663. package/node_modules/moment/src/lib/locale/prototype.js +88 -0
  664. package/node_modules/moment/src/lib/locale/relative.js +32 -0
  665. package/node_modules/moment/src/lib/locale/set.js +56 -0
  666. package/node_modules/moment/src/lib/moment/add-subtract.js +61 -0
  667. package/node_modules/moment/src/lib/moment/calendar.js +53 -0
  668. package/node_modules/moment/src/lib/moment/clone.js +5 -0
  669. package/node_modules/moment/src/lib/moment/compare.js +72 -0
  670. package/node_modules/moment/src/lib/moment/constructor.js +80 -0
  671. package/node_modules/moment/src/lib/moment/creation-data.js +9 -0
  672. package/node_modules/moment/src/lib/moment/diff.js +79 -0
  673. package/node_modules/moment/src/lib/moment/format.js +78 -0
  674. package/node_modules/moment/src/lib/moment/from.js +20 -0
  675. package/node_modules/moment/src/lib/moment/get-set.js +117 -0
  676. package/node_modules/moment/src/lib/moment/locale.js +34 -0
  677. package/node_modules/moment/src/lib/moment/min-max.js +62 -0
  678. package/node_modules/moment/src/lib/moment/moment.js +28 -0
  679. package/node_modules/moment/src/lib/moment/now.js +3 -0
  680. package/node_modules/moment/src/lib/moment/prototype.js +197 -0
  681. package/node_modules/moment/src/lib/moment/start-end-of.js +164 -0
  682. package/node_modules/moment/src/lib/moment/to-type.js +42 -0
  683. package/node_modules/moment/src/lib/moment/to.js +20 -0
  684. package/node_modules/moment/src/lib/moment/valid.js +15 -0
  685. package/node_modules/moment/src/lib/parse/regex.js +84 -0
  686. package/node_modules/moment/src/lib/parse/token.js +36 -0
  687. package/node_modules/moment/src/lib/units/aliases.js +75 -0
  688. package/node_modules/moment/src/lib/units/constants.js +9 -0
  689. package/node_modules/moment/src/lib/units/day-of-month.js +35 -0
  690. package/node_modules/moment/src/lib/units/day-of-week.js +432 -0
  691. package/node_modules/moment/src/lib/units/day-of-year.js +28 -0
  692. package/node_modules/moment/src/lib/units/era.js +293 -0
  693. package/node_modules/moment/src/lib/units/hour.js +152 -0
  694. package/node_modules/moment/src/lib/units/millisecond.js +66 -0
  695. package/node_modules/moment/src/lib/units/minute.js +24 -0
  696. package/node_modules/moment/src/lib/units/month.js +340 -0
  697. package/node_modules/moment/src/lib/units/offset.js +249 -0
  698. package/node_modules/moment/src/lib/units/priorities.js +34 -0
  699. package/node_modules/moment/src/lib/units/quarter.js +24 -0
  700. package/node_modules/moment/src/lib/units/second.js +24 -0
  701. package/node_modules/moment/src/lib/units/timestamp.js +20 -0
  702. package/node_modules/moment/src/lib/units/timezone.js +16 -0
  703. package/node_modules/moment/src/lib/units/units.js +20 -0
  704. package/node_modules/moment/src/lib/units/week-calendar-utils.js +66 -0
  705. package/node_modules/moment/src/lib/units/week-year.js +128 -0
  706. package/node_modules/moment/src/lib/units/week.js +62 -0
  707. package/node_modules/moment/src/lib/units/year.js +75 -0
  708. package/node_modules/moment/src/lib/utils/abs-ceil.js +7 -0
  709. package/node_modules/moment/src/lib/utils/abs-floor.js +8 -0
  710. package/node_modules/moment/src/lib/utils/abs-round.js +7 -0
  711. package/node_modules/moment/src/lib/utils/compare-arrays.js +18 -0
  712. package/node_modules/moment/src/lib/utils/defaults.js +10 -0
  713. package/node_modules/moment/src/lib/utils/deprecate.js +69 -0
  714. package/node_modules/moment/src/lib/utils/extend.js +19 -0
  715. package/node_modules/moment/src/lib/utils/has-own-prop.js +3 -0
  716. package/node_modules/moment/src/lib/utils/hooks.js +13 -0
  717. package/node_modules/moment/src/lib/utils/index-of.js +18 -0
  718. package/node_modules/moment/src/lib/utils/is-array.js +6 -0
  719. package/node_modules/moment/src/lib/utils/is-calendar-spec.js +25 -0
  720. package/node_modules/moment/src/lib/utils/is-date.js +6 -0
  721. package/node_modules/moment/src/lib/utils/is-function.js +6 -0
  722. package/node_modules/moment/src/lib/utils/is-leap-year.js +3 -0
  723. package/node_modules/moment/src/lib/utils/is-moment-input.js +75 -0
  724. package/node_modules/moment/src/lib/utils/is-number.js +6 -0
  725. package/node_modules/moment/src/lib/utils/is-object-empty.js +15 -0
  726. package/node_modules/moment/src/lib/utils/is-object.js +8 -0
  727. package/node_modules/moment/src/lib/utils/is-string.js +3 -0
  728. package/node_modules/moment/src/lib/utils/is-undefined.js +3 -0
  729. package/node_modules/moment/src/lib/utils/keys.js +20 -0
  730. package/node_modules/moment/src/lib/utils/map.js +9 -0
  731. package/node_modules/moment/src/lib/utils/mod.js +3 -0
  732. package/node_modules/moment/src/lib/utils/some.js +20 -0
  733. package/node_modules/moment/src/lib/utils/to-int.js +12 -0
  734. package/node_modules/moment/src/lib/utils/zero-fill.js +10 -0
  735. package/node_modules/moment/src/locale/af.js +71 -0
  736. package/node_modules/moment/src/locale/ar-dz.js +156 -0
  737. package/node_modules/moment/src/locale/ar-kw.js +55 -0
  738. package/node_modules/moment/src/locale/ar-ly.js +171 -0
  739. package/node_modules/moment/src/locale/ar-ma.js +56 -0
  740. package/node_modules/moment/src/locale/ar-ps.js +112 -0
  741. package/node_modules/moment/src/locale/ar-sa.js +105 -0
  742. package/node_modules/moment/src/locale/ar-tn.js +55 -0
  743. package/node_modules/moment/src/locale/ar.js +189 -0
  744. package/node_modules/moment/src/locale/az.js +102 -0
  745. package/node_modules/moment/src/locale/be.js +142 -0
  746. package/node_modules/moment/src/locale/bg.js +87 -0
  747. package/node_modules/moment/src/locale/bm.js +52 -0
  748. package/node_modules/moment/src/locale/bn-bd.js +129 -0
  749. package/node_modules/moment/src/locale/bn.js +119 -0
  750. package/node_modules/moment/src/locale/bo.js +124 -0
  751. package/node_modules/moment/src/locale/br.js +168 -0
  752. package/node_modules/moment/src/locale/bs.js +160 -0
  753. package/node_modules/moment/src/locale/ca.js +100 -0
  754. package/node_modules/moment/src/locale/cs.js +181 -0
  755. package/node_modules/moment/src/locale/cv.js +63 -0
  756. package/node_modules/moment/src/locale/cy.js +98 -0
  757. package/node_modules/moment/src/locale/da.js +53 -0
  758. package/node_modules/moment/src/locale/de-at.js +79 -0
  759. package/node_modules/moment/src/locale/de-ch.js +78 -0
  760. package/node_modules/moment/src/locale/de.js +78 -0
  761. package/node_modules/moment/src/locale/dv.js +90 -0
  762. package/node_modules/moment/src/locale/el.js +106 -0
  763. package/node_modules/moment/src/locale/en-au.js +68 -0
  764. package/node_modules/moment/src/locale/en-ca.js +64 -0
  765. package/node_modules/moment/src/locale/en-gb.js +68 -0
  766. package/node_modules/moment/src/locale/en-ie.js +68 -0
  767. package/node_modules/moment/src/locale/en-il.js +64 -0
  768. package/node_modules/moment/src/locale/en-in.js +68 -0
  769. package/node_modules/moment/src/locale/en-nz.js +68 -0
  770. package/node_modules/moment/src/locale/en-sg.js +68 -0
  771. package/node_modules/moment/src/locale/eo.js +68 -0
  772. package/node_modules/moment/src/locale/es-do.js +108 -0
  773. package/node_modules/moment/src/locale/es-mx.js +110 -0
  774. package/node_modules/moment/src/locale/es-us.js +110 -0
  775. package/node_modules/moment/src/locale/es.js +110 -0
  776. package/node_modules/moment/src/locale/et.js +78 -0
  777. package/node_modules/moment/src/locale/eu.js +65 -0
  778. package/node_modules/moment/src/locale/fa.js +113 -0
  779. package/node_modules/moment/src/locale/fi.js +124 -0
  780. package/node_modules/moment/src/locale/fil.js +58 -0
  781. package/node_modules/moment/src/locale/fo.js +57 -0
  782. package/node_modules/moment/src/locale/fr-ca.js +70 -0
  783. package/node_modules/moment/src/locale/fr-ch.js +74 -0
  784. package/node_modules/moment/src/locale/fr.js +108 -0
  785. package/node_modules/moment/src/locale/fy.js +75 -0
  786. package/node_modules/moment/src/locale/ga.js +95 -0
  787. package/node_modules/moment/src/locale/gd.js +95 -0
  788. package/node_modules/moment/src/locale/gl.js +75 -0
  789. package/node_modules/moment/src/locale/gom-deva.js +126 -0
  790. package/node_modules/moment/src/locale/gom-latn.js +124 -0
  791. package/node_modules/moment/src/locale/gu.js +122 -0
  792. package/node_modules/moment/src/locale/he.js +94 -0
  793. package/node_modules/moment/src/locale/hi.js +168 -0
  794. package/node_modules/moment/src/locale/hr.js +156 -0
  795. package/node_modules/moment/src/locale/hu.js +118 -0
  796. package/node_modules/moment/src/locale/hy-am.js +94 -0
  797. package/node_modules/moment/src/locale/id.js +76 -0
  798. package/node_modules/moment/src/locale/is.js +140 -0
  799. package/node_modules/moment/src/locale/it-ch.js +64 -0
  800. package/node_modules/moment/src/locale/it.js +106 -0
  801. package/node_modules/moment/src/locale/ja.js +148 -0
  802. package/node_modules/moment/src/locale/jv.js +76 -0
  803. package/node_modules/moment/src/locale/ka.js +92 -0
  804. package/node_modules/moment/src/locale/kk.js +82 -0
  805. package/node_modules/moment/src/locale/km.js +103 -0
  806. package/node_modules/moment/src/locale/kn.js +124 -0
  807. package/node_modules/moment/src/locale/ko.js +75 -0
  808. package/node_modules/moment/src/locale/ku-kmr.js +121 -0
  809. package/node_modules/moment/src/locale/ku.js +118 -0
  810. package/node_modules/moment/src/locale/ky.js +84 -0
  811. package/node_modules/moment/src/locale/lb.js +137 -0
  812. package/node_modules/moment/src/locale/lo.js +66 -0
  813. package/node_modules/moment/src/locale/lt.js +125 -0
  814. package/node_modules/moment/src/locale/lv.js +94 -0
  815. package/node_modules/moment/src/locale/me.js +117 -0
  816. package/node_modules/moment/src/locale/mi.js +60 -0
  817. package/node_modules/moment/src/locale/mk.js +85 -0
  818. package/node_modules/moment/src/locale/ml.js +82 -0
  819. package/node_modules/moment/src/locale/mn.js +100 -0
  820. package/node_modules/moment/src/locale/mr.js +203 -0
  821. package/node_modules/moment/src/locale/ms-my.js +76 -0
  822. package/node_modules/moment/src/locale/ms.js +75 -0
  823. package/node_modules/moment/src/locale/mt.js +56 -0
  824. package/node_modules/moment/src/locale/my.js +91 -0
  825. package/node_modules/moment/src/locale/nb.js +60 -0
  826. package/node_modules/moment/src/locale/ne.js +121 -0
  827. package/node_modules/moment/src/locale/nl-be.js +102 -0
  828. package/node_modules/moment/src/locale/nl.js +104 -0
  829. package/node_modules/moment/src/locale/nn.js +59 -0
  830. package/node_modules/moment/src/locale/oc-lnc.js +85 -0
  831. package/node_modules/moment/src/locale/pa-in.js +122 -0
  832. package/node_modules/moment/src/locale/pl.js +140 -0
  833. package/node_modules/moment/src/locale/pt-br.js +58 -0
  834. package/node_modules/moment/src/locale/pt.js +63 -0
  835. package/node_modules/moment/src/locale/ro.js +76 -0
  836. package/node_modules/moment/src/locale/ru.js +213 -0
  837. package/node_modules/moment/src/locale/sd.js +81 -0
  838. package/node_modules/moment/src/locale/se.js +57 -0
  839. package/node_modules/moment/src/locale/si.js +69 -0
  840. package/node_modules/moment/src/locale/sk.js +145 -0
  841. package/node_modules/moment/src/locale/sl.js +171 -0
  842. package/node_modules/moment/src/locale/sq.js +65 -0
  843. package/node_modules/moment/src/locale/sr-cyrl.js +127 -0
  844. package/node_modules/moment/src/locale/sr.js +129 -0
  845. package/node_modules/moment/src/locale/ss.js +84 -0
  846. package/node_modules/moment/src/locale/sv.js +68 -0
  847. package/node_modules/moment/src/locale/sw.js +55 -0
  848. package/node_modules/moment/src/locale/ta.js +131 -0
  849. package/node_modules/moment/src/locale/te.js +88 -0
  850. package/node_modules/moment/src/locale/tet.js +68 -0
  851. package/node_modules/moment/src/locale/tg.js +117 -0
  852. package/node_modules/moment/src/locale/th.js +65 -0
  853. package/node_modules/moment/src/locale/tk.js +91 -0
  854. package/node_modules/moment/src/locale/tl-ph.js +57 -0
  855. package/node_modules/moment/src/locale/tlh.js +124 -0
  856. package/node_modules/moment/src/locale/tr.js +106 -0
  857. package/node_modules/moment/src/locale/tzl.js +89 -0
  858. package/node_modules/moment/src/locale/tzm-latn.js +54 -0
  859. package/node_modules/moment/src/locale/tzm.js +54 -0
  860. package/node_modules/moment/src/locale/ug-cn.js +111 -0
  861. package/node_modules/moment/src/locale/uk.js +167 -0
  862. package/node_modules/moment/src/locale/ur.js +82 -0
  863. package/node_modules/moment/src/locale/uz-latn.js +54 -0
  864. package/node_modules/moment/src/locale/uz.js +51 -0
  865. package/node_modules/moment/src/locale/vi.js +80 -0
  866. package/node_modules/moment/src/locale/x-pseudo.js +73 -0
  867. package/node_modules/moment/src/locale/yo.js +53 -0
  868. package/node_modules/moment/src/locale/zh-cn.js +120 -0
  869. package/node_modules/moment/src/locale/zh-hk.js +101 -0
  870. package/node_modules/moment/src/locale/zh-mo.js +100 -0
  871. package/node_modules/moment/src/locale/zh-tw.js +99 -0
  872. package/node_modules/moment/src/moment.js +93 -0
  873. package/node_modules/moment/ts3.1-typings/moment.d.ts +785 -0
  874. package/node_modules/nanoid/LICENSE +20 -0
  875. package/node_modules/nanoid/README.md +38 -0
  876. package/node_modules/nanoid/async/index.browser.js +33 -0
  877. package/node_modules/nanoid/async/index.d.ts +56 -0
  878. package/node_modules/nanoid/async/index.js +34 -0
  879. package/node_modules/nanoid/async/index.native.js +25 -0
  880. package/node_modules/nanoid/bin/nanoid.js +46 -0
  881. package/node_modules/nanoid/index.browser.js +33 -0
  882. package/node_modules/nanoid/index.d.ts +91 -0
  883. package/node_modules/nanoid/index.js +45 -0
  884. package/node_modules/nanoid/nanoid.js +1 -0
  885. package/node_modules/nanoid/non-secure/index.d.ts +33 -0
  886. package/node_modules/nanoid/non-secure/index.js +20 -0
  887. package/node_modules/nanoid/package.json +46 -0
  888. package/node_modules/nanoid/url-alphabet/index.js +2 -0
  889. package/node_modules/ts-md5/LICENSE +21 -0
  890. package/node_modules/ts-md5/README.md +101 -0
  891. package/node_modules/ts-md5/dist/cjs/index.d.ts +3 -0
  892. package/node_modules/ts-md5/dist/cjs/index.js +10 -0
  893. package/node_modules/ts-md5/dist/cjs/index.js.map +1 -0
  894. package/node_modules/ts-md5/dist/cjs/md5.d.ts +70 -0
  895. package/node_modules/ts-md5/dist/cjs/md5.js +429 -0
  896. package/node_modules/ts-md5/dist/cjs/md5.js.map +1 -0
  897. package/node_modules/ts-md5/dist/cjs/md5_file_hasher.d.ts +25 -0
  898. package/node_modules/ts-md5/dist/cjs/md5_file_hasher.js +96 -0
  899. package/node_modules/ts-md5/dist/cjs/md5_file_hasher.js.map +1 -0
  900. package/node_modules/ts-md5/dist/cjs/parallel_hasher.d.ts +22 -0
  901. package/node_modules/ts-md5/dist/cjs/parallel_hasher.js +69 -0
  902. package/node_modules/ts-md5/dist/cjs/parallel_hasher.js.map +1 -0
  903. package/node_modules/ts-md5/dist/esm/index.d.ts +3 -0
  904. package/node_modules/ts-md5/dist/esm/index.js +4 -0
  905. package/node_modules/ts-md5/dist/esm/index.js.map +1 -0
  906. package/node_modules/ts-md5/dist/esm/md5.d.ts +70 -0
  907. package/node_modules/ts-md5/dist/esm/md5.js +421 -0
  908. package/node_modules/ts-md5/dist/esm/md5.js.map +1 -0
  909. package/node_modules/ts-md5/dist/esm/md5_file_hasher.d.ts +25 -0
  910. package/node_modules/ts-md5/dist/esm/md5_file_hasher.js +89 -0
  911. package/node_modules/ts-md5/dist/esm/md5_file_hasher.js.map +1 -0
  912. package/node_modules/ts-md5/dist/esm/parallel_hasher.d.ts +22 -0
  913. package/node_modules/ts-md5/dist/esm/parallel_hasher.js +64 -0
  914. package/node_modules/ts-md5/dist/esm/parallel_hasher.js.map +1 -0
  915. package/node_modules/ts-md5/dist/md5.js +429 -0
  916. package/node_modules/ts-md5/dist/md5_worker.js +523 -0
  917. package/node_modules/ts-md5/package.json +82 -0
  918. package/node_modules/ts-md5/src/index.ts +4 -0
  919. package/node_modules/ts-md5/src/md5.ts +473 -0
  920. package/node_modules/ts-md5/src/md5_file_hasher.ts +110 -0
  921. package/node_modules/ts-md5/src/parallel_hasher.ts +90 -0
  922. package/node_modules/ts-md5/src/worker.js +20 -0
  923. package/package.json +159 -0
  924. package/scripts/generate-index.js +52 -0
  925. package/setup.js +2 -0
  926. package/tfsec.json +4 -0
  927. package/util/compute.go +106 -0
  928. package/util/terraform.go +213 -0
  929. package/util/util.go +100 -0
@@ -0,0 +1,608 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.PreconfiguredRules = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ class PreconfiguredRules {
7
+ static applyRuleOverrides(baseRule, overrides) {
8
+ return {
9
+ ...baseRule,
10
+ ...overrides,
11
+ };
12
+ }
13
+ static addSourceAddress(rule, sourceAddressPrefix) {
14
+ return { ...rule, sourceAddressPrefix };
15
+ }
16
+ static addDestinationAddress(rule, destinationAddressPrefix) {
17
+ return { ...rule, destinationAddressPrefix };
18
+ }
19
+ static addPriority(rule, priority) {
20
+ return { ...rule, priority };
21
+ }
22
+ }
23
+ exports.PreconfiguredRules = PreconfiguredRules;
24
+ _a = JSII_RTTI_SYMBOL_1;
25
+ PreconfiguredRules[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_networksecuritygroup.PreconfiguredRules", version: "0.0.3-pre.6" };
26
+ // Active Directory
27
+ PreconfiguredRules.activeDirectoryAllowADReplication = {
28
+ direction: "Inbound",
29
+ access: "Allow",
30
+ protocol: "*",
31
+ sourcePortRange: "*",
32
+ destinationPortRange: "389",
33
+ name: "AllowADReplication",
34
+ priority: 601,
35
+ sourceAddressPrefix: "*",
36
+ destinationAddressPrefix: "*",
37
+ };
38
+ PreconfiguredRules.activeDirectoryAllowADReplicationSSL = {
39
+ direction: "Inbound",
40
+ access: "Allow",
41
+ protocol: "*",
42
+ sourcePortRange: "*",
43
+ destinationPortRange: "636",
44
+ name: "AllowADReplicationSSL",
45
+ priority: 602,
46
+ sourceAddressPrefix: "*",
47
+ destinationAddressPrefix: "*",
48
+ };
49
+ PreconfiguredRules.activeDirectoryAllowADGCReplication = {
50
+ direction: "Inbound",
51
+ access: "Allow",
52
+ protocol: "*",
53
+ sourcePortRange: "*",
54
+ destinationPortRange: "3268",
55
+ name: "AllowADGCReplication",
56
+ priority: 603,
57
+ sourceAddressPrefix: "*",
58
+ destinationAddressPrefix: "*",
59
+ };
60
+ PreconfiguredRules.activeDirectoryAllowADGCReplicationSSL = {
61
+ direction: "Inbound",
62
+ access: "Allow",
63
+ protocol: "*",
64
+ sourcePortRange: "*",
65
+ destinationPortRange: "3269",
66
+ name: "AllowADGCReplicationSSL",
67
+ priority: 604,
68
+ sourceAddressPrefix: "*",
69
+ destinationAddressPrefix: "*",
70
+ };
71
+ PreconfiguredRules.activeDirectoryAllowDNS = {
72
+ direction: "Inbound",
73
+ access: "Allow",
74
+ protocol: "*",
75
+ sourcePortRange: "*",
76
+ destinationPortRange: "53",
77
+ name: "AllowDNS",
78
+ priority: 605,
79
+ sourceAddressPrefix: "*",
80
+ destinationAddressPrefix: "*",
81
+ };
82
+ PreconfiguredRules.activeDirectoryAllowKerberosAuthentication = {
83
+ direction: "Inbound",
84
+ access: "Allow",
85
+ protocol: "*",
86
+ sourcePortRange: "*",
87
+ destinationPortRange: "88",
88
+ name: "AllowKerberosAuthentication",
89
+ priority: 606,
90
+ sourceAddressPrefix: "*",
91
+ destinationAddressPrefix: "*",
92
+ };
93
+ PreconfiguredRules.activeDirectoryAllowADReplicationTrust = {
94
+ direction: "Inbound",
95
+ access: "Allow",
96
+ protocol: "*",
97
+ sourcePortRange: "*",
98
+ destinationPortRange: "445",
99
+ name: "AllowADReplicationTrust",
100
+ priority: 607,
101
+ sourceAddressPrefix: "*",
102
+ destinationAddressPrefix: "*",
103
+ };
104
+ PreconfiguredRules.activeDirectoryAllowSMTPReplication = {
105
+ direction: "Inbound",
106
+ access: "Allow",
107
+ protocol: "Tcp",
108
+ sourcePortRange: "*",
109
+ destinationPortRange: "25",
110
+ name: "AllowSMTPReplication",
111
+ priority: 608,
112
+ sourceAddressPrefix: "*",
113
+ destinationAddressPrefix: "*",
114
+ };
115
+ PreconfiguredRules.activeDirectoryAllowRPCReplication = {
116
+ direction: "Inbound",
117
+ access: "Allow",
118
+ protocol: "Tcp",
119
+ sourcePortRange: "*",
120
+ destinationPortRange: "135",
121
+ name: "AllowRPCReplication",
122
+ priority: 609,
123
+ sourceAddressPrefix: "*",
124
+ destinationAddressPrefix: "*",
125
+ };
126
+ PreconfiguredRules.activeDirectoryAllowFileReplication = {
127
+ direction: "Inbound",
128
+ access: "Allow",
129
+ protocol: "Tcp",
130
+ sourcePortRange: "*",
131
+ destinationPortRange: "5722",
132
+ name: "AllowFileReplication",
133
+ priority: 610,
134
+ sourceAddressPrefix: "*",
135
+ destinationAddressPrefix: "*",
136
+ };
137
+ PreconfiguredRules.activeDirectoryAllowWindowsTime = {
138
+ direction: "Inbound",
139
+ access: "Allow",
140
+ protocol: "UDP",
141
+ sourcePortRange: "*",
142
+ destinationPortRange: "123",
143
+ name: "AllowWindowsTime",
144
+ priority: 611,
145
+ sourceAddressPrefix: "*",
146
+ destinationAddressPrefix: "*",
147
+ };
148
+ PreconfiguredRules.activeDirectoryAllowPasswordChangeKerberes = {
149
+ direction: "Inbound",
150
+ access: "Allow",
151
+ protocol: "*",
152
+ sourcePortRange: "*",
153
+ destinationPortRange: "464",
154
+ name: "AllowPasswordChangeKerberes",
155
+ priority: 612,
156
+ sourceAddressPrefix: "*",
157
+ destinationAddressPrefix: "*",
158
+ };
159
+ PreconfiguredRules.activeDirectoryAllowDFSGroupPolicy = {
160
+ direction: "Inbound",
161
+ access: "Allow",
162
+ protocol: "UDP",
163
+ sourcePortRange: "*",
164
+ destinationPortRange: "138",
165
+ name: "AllowDFSGroupPolicy",
166
+ priority: 613,
167
+ sourceAddressPrefix: "*",
168
+ destinationAddressPrefix: "*",
169
+ };
170
+ PreconfiguredRules.activeDirectoryAllowADDSWebServices = {
171
+ direction: "Inbound",
172
+ access: "Allow",
173
+ protocol: "Tcp",
174
+ sourcePortRange: "*",
175
+ destinationPortRange: "9389",
176
+ name: "AllowADDSWebServices",
177
+ priority: 614,
178
+ sourceAddressPrefix: "*",
179
+ destinationAddressPrefix: "*",
180
+ };
181
+ PreconfiguredRules.activeDirectoryAllowNETBIOSAuthentication = {
182
+ direction: "Inbound",
183
+ access: "Allow",
184
+ protocol: "UDP",
185
+ sourcePortRange: "*",
186
+ destinationPortRange: "137",
187
+ name: "AllowNETBIOSAuthentication",
188
+ priority: 615,
189
+ sourceAddressPrefix: "*",
190
+ destinationAddressPrefix: "*",
191
+ };
192
+ PreconfiguredRules.activeDirectoryAllowNETBIOSReplication = {
193
+ direction: "Inbound",
194
+ access: "Allow",
195
+ protocol: "Tcp",
196
+ sourcePortRange: "*",
197
+ destinationPortRange: "139",
198
+ name: "AllowNETBIOSReplication",
199
+ priority: 616,
200
+ sourceAddressPrefix: "*",
201
+ destinationAddressPrefix: "*",
202
+ };
203
+ // Cassandra
204
+ PreconfiguredRules.cassandra = {
205
+ direction: "Inbound",
206
+ access: "Allow",
207
+ protocol: "Tcp",
208
+ sourcePortRange: "*",
209
+ destinationPortRange: "9042",
210
+ name: "Cassandra",
211
+ priority: 551,
212
+ sourceAddressPrefix: "*",
213
+ destinationAddressPrefix: "*",
214
+ };
215
+ PreconfiguredRules.cassandraJmx = {
216
+ direction: "Inbound",
217
+ access: "Allow",
218
+ protocol: "Tcp",
219
+ sourcePortRange: "*",
220
+ destinationPortRange: "7199",
221
+ name: "Cassandra-JMX",
222
+ priority: 552,
223
+ sourceAddressPrefix: "*",
224
+ destinationAddressPrefix: "*",
225
+ };
226
+ PreconfiguredRules.cassandraThrift = {
227
+ direction: "Inbound",
228
+ access: "Allow",
229
+ protocol: "Tcp",
230
+ sourcePortRange: "*",
231
+ destinationPortRange: "9160",
232
+ name: "Cassandra-Thrift",
233
+ priority: 553,
234
+ sourceAddressPrefix: "*",
235
+ destinationAddressPrefix: "*",
236
+ };
237
+ // CouchDB
238
+ PreconfiguredRules.couchDb = {
239
+ direction: "Inbound",
240
+ access: "Allow",
241
+ protocol: "Tcp",
242
+ sourcePortRange: "*",
243
+ destinationPortRange: "5984",
244
+ name: "CouchDB",
245
+ priority: 554,
246
+ sourceAddressPrefix: "*",
247
+ destinationAddressPrefix: "*",
248
+ };
249
+ PreconfiguredRules.couchDbHttps = {
250
+ direction: "Inbound",
251
+ access: "Allow",
252
+ protocol: "Tcp",
253
+ sourcePortRange: "*",
254
+ destinationPortRange: "6984",
255
+ name: "CouchDB-HTTPS",
256
+ priority: 555,
257
+ sourceAddressPrefix: "*",
258
+ destinationAddressPrefix: "*",
259
+ };
260
+ // DNS-Tcp
261
+ PreconfiguredRules.dnsTcp = {
262
+ direction: "Inbound",
263
+ access: "Allow",
264
+ protocol: "Tcp",
265
+ sourcePortRange: "*",
266
+ destinationPortRange: "53",
267
+ name: "DNS-Tcp",
268
+ priority: 520,
269
+ sourceAddressPrefix: "*",
270
+ destinationAddressPrefix: "*",
271
+ };
272
+ // DNS-UDP
273
+ PreconfiguredRules.dnsUdp = {
274
+ direction: "Inbound",
275
+ access: "Allow",
276
+ protocol: "UDP",
277
+ sourcePortRange: "*",
278
+ destinationPortRange: "53",
279
+ name: "DNS-UDP",
280
+ priority: 521,
281
+ sourceAddressPrefix: "*",
282
+ destinationAddressPrefix: "*",
283
+ };
284
+ // DynamicPorts
285
+ PreconfiguredRules.dynamicPorts = {
286
+ direction: "Inbound",
287
+ access: "Allow",
288
+ protocol: "Tcp",
289
+ sourcePortRange: "*",
290
+ destinationPortRange: "49152-65535",
291
+ name: "DynamicPorts",
292
+ priority: 650,
293
+ sourceAddressPrefix: "*",
294
+ destinationAddressPrefix: "*",
295
+ };
296
+ // ElasticSearch
297
+ PreconfiguredRules.elasticSearch = {
298
+ direction: "Inbound",
299
+ access: "Allow",
300
+ protocol: "Tcp",
301
+ sourcePortRange: "*",
302
+ destinationPortRange: "9200-9300",
303
+ name: "ElasticSearch",
304
+ priority: 556,
305
+ sourceAddressPrefix: "*",
306
+ destinationAddressPrefix: "*",
307
+ };
308
+ // FTP
309
+ PreconfiguredRules.ftp = {
310
+ direction: "Inbound",
311
+ access: "Allow",
312
+ protocol: "Tcp",
313
+ sourcePortRange: "*",
314
+ destinationPortRange: "21",
315
+ name: "FTP",
316
+ priority: 512,
317
+ sourceAddressPrefix: "*",
318
+ destinationAddressPrefix: "*",
319
+ };
320
+ // HTTP-Tcp
321
+ PreconfiguredRules.httpTcp = {
322
+ direction: "Inbound",
323
+ access: "Allow",
324
+ protocol: "Tcp",
325
+ sourcePortRange: "*",
326
+ destinationPortRange: "80",
327
+ name: "HTTP",
328
+ priority: 513,
329
+ sourceAddressPrefix: "*",
330
+ destinationAddressPrefix: "*",
331
+ };
332
+ // HTTP-UDP
333
+ PreconfiguredRules.httpUdp = {
334
+ direction: "Inbound",
335
+ access: "Allow",
336
+ protocol: "UDP",
337
+ sourcePortRange: "*",
338
+ destinationPortRange: "80",
339
+ name: "HTTP",
340
+ priority: 514,
341
+ sourceAddressPrefix: "*",
342
+ destinationAddressPrefix: "*",
343
+ };
344
+ // HTTPS-Tcp
345
+ PreconfiguredRules.https = {
346
+ direction: "Inbound",
347
+ access: "Allow",
348
+ protocol: "Tcp",
349
+ sourcePortRange: "*",
350
+ destinationPortRange: "443",
351
+ name: "HTTPS",
352
+ priority: 515,
353
+ sourceAddressPrefix: "*",
354
+ destinationAddressPrefix: "*",
355
+ };
356
+ // IMAP
357
+ PreconfiguredRules.imap = {
358
+ direction: "Inbound",
359
+ access: "Allow",
360
+ protocol: "Tcp",
361
+ sourcePortRange: "*",
362
+ destinationPortRange: "143",
363
+ name: "IMAP",
364
+ priority: 516,
365
+ sourceAddressPrefix: "*",
366
+ destinationAddressPrefix: "*",
367
+ };
368
+ // IMAPS
369
+ PreconfiguredRules.imaps = {
370
+ direction: "Inbound",
371
+ access: "Allow",
372
+ protocol: "Tcp",
373
+ sourcePortRange: "*",
374
+ destinationPortRange: "993",
375
+ name: "IMAPS",
376
+ priority: 516,
377
+ sourceAddressPrefix: "*",
378
+ destinationAddressPrefix: "*",
379
+ };
380
+ // Kestrel
381
+ PreconfiguredRules.kestrel = {
382
+ direction: "Inbound",
383
+ access: "Allow",
384
+ protocol: "Tcp",
385
+ sourcePortRange: "*",
386
+ destinationPortRange: "22133",
387
+ name: "Kestrel",
388
+ priority: 517,
389
+ sourceAddressPrefix: "*",
390
+ destinationAddressPrefix: "*",
391
+ };
392
+ // LDAP
393
+ PreconfiguredRules.ldap = {
394
+ direction: "Inbound",
395
+ access: "Allow",
396
+ protocol: "Tcp",
397
+ sourcePortRange: "*",
398
+ destinationPortRange: "389",
399
+ name: "LDAP",
400
+ priority: 558,
401
+ sourceAddressPrefix: "*",
402
+ destinationAddressPrefix: "*",
403
+ };
404
+ // MongoDB
405
+ PreconfiguredRules.mongoDB = {
406
+ direction: "Inbound",
407
+ access: "Allow",
408
+ protocol: "Tcp",
409
+ sourcePortRange: "*",
410
+ destinationPortRange: "27017",
411
+ name: "MongoDB",
412
+ priority: 559,
413
+ sourceAddressPrefix: "*",
414
+ destinationAddressPrefix: "*",
415
+ };
416
+ // Memcached
417
+ PreconfiguredRules.memcached = {
418
+ direction: "Inbound",
419
+ access: "Allow",
420
+ protocol: "Tcp",
421
+ sourcePortRange: "*",
422
+ destinationPortRange: "11211",
423
+ name: "Memcached",
424
+ priority: 560,
425
+ sourceAddressPrefix: "*",
426
+ destinationAddressPrefix: "*",
427
+ };
428
+ // MSSQL
429
+ PreconfiguredRules.mssql = {
430
+ direction: "Inbound",
431
+ access: "Allow",
432
+ protocol: "Tcp",
433
+ sourcePortRange: "*",
434
+ destinationPortRange: "1433",
435
+ name: "MSSQL",
436
+ priority: 561,
437
+ sourceAddressPrefix: "*",
438
+ destinationAddressPrefix: "*",
439
+ };
440
+ // MySQL
441
+ PreconfiguredRules.mySQL = {
442
+ direction: "Inbound",
443
+ access: "Allow",
444
+ protocol: "Tcp",
445
+ sourcePortRange: "*",
446
+ destinationPortRange: "3306",
447
+ name: "MySQL",
448
+ priority: 562,
449
+ sourceAddressPrefix: "*",
450
+ destinationAddressPrefix: "*",
451
+ };
452
+ // Neo4J
453
+ PreconfiguredRules.neo4J = {
454
+ direction: "Inbound",
455
+ access: "Allow",
456
+ protocol: "Tcp",
457
+ sourcePortRange: "*",
458
+ destinationPortRange: "7474",
459
+ name: "Neo4J",
460
+ priority: 563,
461
+ sourceAddressPrefix: "*",
462
+ destinationAddressPrefix: "*",
463
+ };
464
+ // POP3
465
+ PreconfiguredRules.pop3 = {
466
+ direction: "Inbound",
467
+ access: "Allow",
468
+ protocol: "Tcp",
469
+ sourcePortRange: "*",
470
+ destinationPortRange: "110",
471
+ name: "POP3",
472
+ priority: 564,
473
+ sourceAddressPrefix: "*",
474
+ destinationAddressPrefix: "*",
475
+ };
476
+ // POP3S
477
+ PreconfiguredRules.pop3s = {
478
+ direction: "Inbound",
479
+ access: "Allow",
480
+ protocol: "Tcp",
481
+ sourcePortRange: "*",
482
+ destinationPortRange: "995",
483
+ name: "POP3S",
484
+ priority: 565,
485
+ sourceAddressPrefix: "*",
486
+ destinationAddressPrefix: "*",
487
+ };
488
+ // PostgreSQL
489
+ PreconfiguredRules.postgreSQL = {
490
+ direction: "Inbound",
491
+ access: "Allow",
492
+ protocol: "Tcp",
493
+ sourcePortRange: "*",
494
+ destinationPortRange: "5432",
495
+ name: "PostgreSQL",
496
+ priority: 566,
497
+ sourceAddressPrefix: "*",
498
+ destinationAddressPrefix: "*",
499
+ };
500
+ // RabbitMQ
501
+ PreconfiguredRules.rabbitMQ = {
502
+ direction: "Inbound",
503
+ access: "Allow",
504
+ protocol: "Tcp",
505
+ sourcePortRange: "*",
506
+ destinationPortRange: "5672",
507
+ name: "RabbitMQ",
508
+ priority: 567,
509
+ sourceAddressPrefix: "*",
510
+ destinationAddressPrefix: "*",
511
+ };
512
+ // RDP
513
+ PreconfiguredRules.rdp = {
514
+ direction: "Inbound",
515
+ access: "Allow",
516
+ protocol: "Tcp",
517
+ sourcePortRange: "*",
518
+ destinationPortRange: "3389",
519
+ name: "RDP",
520
+ priority: 505,
521
+ sourceAddressPrefix: "*",
522
+ destinationAddressPrefix: "*",
523
+ };
524
+ // Redis
525
+ PreconfiguredRules.redis = {
526
+ direction: "Inbound",
527
+ access: "Allow",
528
+ protocol: "Tcp",
529
+ sourcePortRange: "*",
530
+ destinationPortRange: "6379",
531
+ name: "Redis",
532
+ priority: 568,
533
+ sourceAddressPrefix: "*",
534
+ destinationAddressPrefix: "*",
535
+ };
536
+ // Riak
537
+ PreconfiguredRules.riak = {
538
+ direction: "Inbound",
539
+ access: "Allow",
540
+ protocol: "Tcp",
541
+ sourcePortRange: "*",
542
+ destinationPortRange: "8093",
543
+ name: "Riak",
544
+ priority: 568,
545
+ sourceAddressPrefix: "*",
546
+ destinationAddressPrefix: "*",
547
+ };
548
+ // RiakJMX
549
+ PreconfiguredRules.riakJMX = {
550
+ direction: "Inbound",
551
+ access: "Allow",
552
+ protocol: "Tcp",
553
+ sourcePortRange: "*",
554
+ destinationPortRange: "8985",
555
+ name: "Riak-JMX",
556
+ priority: 569,
557
+ sourceAddressPrefix: "*",
558
+ destinationAddressPrefix: "*",
559
+ };
560
+ // SMTP
561
+ PreconfiguredRules.smtp = {
562
+ direction: "Inbound",
563
+ access: "Allow",
564
+ protocol: "Tcp",
565
+ sourcePortRange: "*",
566
+ destinationPortRange: "25",
567
+ name: "SMTP",
568
+ priority: 570,
569
+ sourceAddressPrefix: "*",
570
+ destinationAddressPrefix: "*",
571
+ };
572
+ // SMTPS
573
+ PreconfiguredRules.smtps = {
574
+ direction: "Inbound",
575
+ access: "Allow",
576
+ protocol: "Tcp",
577
+ sourcePortRange: "*",
578
+ destinationPortRange: "465",
579
+ name: "SMTPS",
580
+ priority: 571,
581
+ sourceAddressPrefix: "*",
582
+ destinationAddressPrefix: "*",
583
+ };
584
+ // SSH
585
+ PreconfiguredRules.ssh = {
586
+ direction: "Inbound",
587
+ access: "Allow",
588
+ protocol: "Tcp",
589
+ sourcePortRange: "*",
590
+ destinationPortRange: "22",
591
+ name: "SSH",
592
+ priority: 501,
593
+ sourceAddressPrefix: "*",
594
+ destinationAddressPrefix: "*",
595
+ };
596
+ // WinRM
597
+ PreconfiguredRules.winRM = {
598
+ direction: "Inbound",
599
+ access: "Allow",
600
+ protocol: "Tcp",
601
+ sourcePortRange: "*",
602
+ destinationPortRange: "5986",
603
+ name: "WinRM",
604
+ priority: 502,
605
+ sourceAddressPrefix: "*",
606
+ destinationAddressPrefix: "*",
607
+ };
608
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlY29uZmlndXJlZC1ydWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1uZXR3b3Jrc2VjdXJpdHlncm91cC9saWIvcHJlY29uZmlndXJlZC1ydWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQXlCQSxNQUFhLGtCQUFrQjtJQXluQjdCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FDdkIsUUFBb0IsRUFDcEIsU0FBd0I7UUFFeEIsT0FBTztZQUNMLEdBQUcsUUFBUTtZQUNYLEdBQUcsU0FBUztTQUNiLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUNyQixJQUFnQixFQUNoQixtQkFBMkI7UUFFM0IsT0FBTyxFQUFFLEdBQUcsSUFBSSxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxxQkFBcUIsQ0FDMUIsSUFBZ0IsRUFDaEIsd0JBQWdDO1FBRWhDLE9BQU8sRUFBRSxHQUFHLElBQUksRUFBRSx3QkFBd0IsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLElBQWdCLEVBQUUsUUFBZ0I7UUFDbkQsT0FBTyxFQUFFLEdBQUcsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDO0lBQy9CLENBQUM7O0FBbnBCSCxnREFvcEJDOzs7QUFucEJDLG1CQUFtQjtBQUNaLG9EQUFpQyxHQUFlO0lBQ3JELFNBQVMsRUFBRSxTQUFTO0lBQ3BCLE1BQU0sRUFBRSxPQUFPO0lBQ2YsUUFBUSxFQUFFLEdBQUc7SUFDYixlQUFlLEVBQUUsR0FBRztJQUNwQixvQkFBb0IsRUFBRSxLQUFLO0lBQzNCLElBQUksRUFBRSxvQkFBb0I7SUFDMUIsUUFBUSxFQUFFLEdBQUc7SUFDYixtQkFBbUIsRUFBRSxHQUFHO0lBQ3hCLHdCQUF3QixFQUFFLEdBQUc7Q0FDOUIsQ0FBQztBQUVLLHVEQUFvQyxHQUFlO0lBQ3hELFNBQVMsRUFBRSxTQUFT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QUVGLFFBQVE7QUFDRCx3QkFBSyxHQUFlO0lBQ3pCLFNBQVMsRUFBRSxTQUFTO0lBQ3BCLE1BQU0sRUFBRSxPQUFPO0lBQ2YsUUFBUSxFQUFFLEtBQUs7SUFDZixlQUFlLEVBQUUsR0FBRztJQUNwQixvQkFBb0IsRUFBRSxNQUFNO0lBQzVCLElBQUksRUFBRSxPQUFPO0lBQ2IsUUFBUSxFQUFFLEdBQUc7SUFDYixtQkFBbUIsRUFBRSxHQUFHO0lBQ3hCLHdCQUF3QixFQUFFLEdBQUc7Q0FDOUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJ1bGVDb25maWcgfSBmcm9tIFwiLlwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGRlZmluaW5nIG92ZXJyaWRlcyBmb3IgYSBydWxlIGluIGFuIEF6dXJlIE5ldHdvcmsgU2VjdXJpdHkgR3JvdXAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVsZU92ZXJyaWRlcyB7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBzb3VyY2UgYWRkcmVzcyBwcmVmaXggdG8gYmUgbWF0Y2hlZCBmb3IgdGhlIHJ1bGUuIFRoaXMgY2FuIGJlIGFuIElQIGFkZHJlc3Mgb3IgYSByYW5nZSBvZiBJUCBhZGRyZXNzZXMuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGlzIHRvIG1hdGNoIGFueSBzb3VyY2UgYWRkcmVzcy5cbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZUFkZHJlc3NQcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRlc3RpbmF0aW9uIGFkZHJlc3MgcHJlZml4IHRvIGJlIG1hdGNoZWQgZm9yIHRoZSBydWxlLiBTaW1pbGFyIHRvIHRoZSBzb3VyY2UgYWRkcmVzcyBwcmVmaXgsXG4gICAqIHRoaXMgY2FuIGJlIGEgc3BlY2lmaWMgSVAgYWRkcmVzcyBvciBhIHJhbmdlLiBJZiBub3QgcHJvdmlkZWQsIGl0IGRlZmF1bHRzIHRvIG1hdGNoaW5nIGFueSBkZXN0aW5hdGlvbiBhZGRyZXNzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBwcmlvcml0eSBmb3IgdGhlIHJ1bGUuIFJ1bGVzIGFyZSBwcm9jZXNzZWQgaW4gdGhlIG9yZGVyIG9mIHRoZWlyIHByaW9yaXR5LFxuICAgKiB3aXRoIGxvd2VyIG51bWJlcnMgcHJvY2Vzc2VkIGJlZm9yZSBoaWdoZXIgbnVtYmVycy4gSWYgbm90IHByb3ZpZGVkLCBhIGRlZmF1bHQgcHJpb3JpdHkgd2lsbCBiZSBhc3NpZ25lZC5cbiAgICovXG4gIHJlYWRvbmx5IHByaW9yaXR5PzogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgUHJlY29uZmlndXJlZFJ1bGVzIHtcbiAgLy8gQWN0aXZlIERpcmVjdG9yeVxuICBzdGF0aWMgYWN0aXZlRGlyZWN0b3J5QWxsb3dBRFJlcGxpY2F0aW9uOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiKlwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMzg5XCIsXG4gICAgbmFtZTogXCJBbGxvd0FEUmVwbGljYXRpb25cIixcbiAgICBwcmlvcml0eTogNjAxLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgc3RhdGljIGFjdGl2ZURpcmVjdG9yeUFsbG93QURSZXBsaWNhdGlvblNTTDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIipcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjYzNlwiLFxuICAgIG5hbWU6IFwiQWxsb3dBRFJlcGxpY2F0aW9uU1NMXCIsXG4gICAgcHJpb3JpdHk6IDYwMixcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd0FER0NSZXBsaWNhdGlvbjogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIipcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjMyNjhcIixcbiAgICBuYW1lOiBcIkFsbG93QURHQ1JlcGxpY2F0aW9uXCIsXG4gICAgcHJpb3JpdHk6IDYwMyxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd0FER0NSZXBsaWNhdGlvblNTTDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIipcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjMyNjlcIixcbiAgICBuYW1lOiBcIkFsbG93QURHQ1JlcGxpY2F0aW9uU1NMXCIsXG4gICAgcHJpb3JpdHk6IDYwNCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd0ROUzogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIipcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjUzXCIsXG4gICAgbmFtZTogXCJBbGxvd0ROU1wiLFxuICAgIHByaW9yaXR5OiA2MDUsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICBzdGF0aWMgYWN0aXZlRGlyZWN0b3J5QWxsb3dLZXJiZXJvc0F1dGhlbnRpY2F0aW9uOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiKlwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiODhcIixcbiAgICBuYW1lOiBcIkFsbG93S2VyYmVyb3NBdXRoZW50aWNhdGlvblwiLFxuICAgIHByaW9yaXR5OiA2MDYsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICBzdGF0aWMgYWN0aXZlRGlyZWN0b3J5QWxsb3dBRFJlcGxpY2F0aW9uVHJ1c3Q6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCIqXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI0NDVcIixcbiAgICBuYW1lOiBcIkFsbG93QURSZXBsaWNhdGlvblRydXN0XCIsXG4gICAgcHJpb3JpdHk6IDYwNyxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd1NNVFBSZXBsaWNhdGlvbjogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMjVcIixcbiAgICBuYW1lOiBcIkFsbG93U01UUFJlcGxpY2F0aW9uXCIsXG4gICAgcHJpb3JpdHk6IDYwOCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd1JQQ1JlcGxpY2F0aW9uOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCIxMzVcIixcbiAgICBuYW1lOiBcIkFsbG93UlBDUmVwbGljYXRpb25cIixcbiAgICBwcmlvcml0eTogNjA5LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgc3RhdGljIGFjdGl2ZURpcmVjdG9yeUFsbG93RmlsZVJlcGxpY2F0aW9uOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI1NzIyXCIsXG4gICAgbmFtZTogXCJBbGxvd0ZpbGVSZXBsaWNhdGlvblwiLFxuICAgIHByaW9yaXR5OiA2MTAsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICBzdGF0aWMgYWN0aXZlRGlyZWN0b3J5QWxsb3dXaW5kb3dzVGltZTogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlVEUFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMTIzXCIsXG4gICAgbmFtZTogXCJBbGxvd1dpbmRvd3NUaW1lXCIsXG4gICAgcHJpb3JpdHk6IDYxMSxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd1Bhc3N3b3JkQ2hhbmdlS2VyYmVyZXM6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCIqXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI0NjRcIixcbiAgICBuYW1lOiBcIkFsbG93UGFzc3dvcmRDaGFuZ2VLZXJiZXJlc1wiLFxuICAgIHByaW9yaXR5OiA2MTIsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICBzdGF0aWMgYWN0aXZlRGlyZWN0b3J5QWxsb3dERlNHcm91cFBvbGljeTogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlVEUFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMTM4XCIsXG4gICAgbmFtZTogXCJBbGxvd0RGU0dyb3VwUG9saWN5XCIsXG4gICAgcHJpb3JpdHk6IDYxMyxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd0FERFNXZWJTZXJ2aWNlczogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiOTM4OVwiLFxuICAgIG5hbWU6IFwiQWxsb3dBRERTV2ViU2VydmljZXNcIixcbiAgICBwcmlvcml0eTogNjE0LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgc3RhdGljIGFjdGl2ZURpcmVjdG9yeUFsbG93TkVUQklPU0F1dGhlbnRpY2F0aW9uOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVURQXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCIxMzdcIixcbiAgICBuYW1lOiBcIkFsbG93TkVUQklPU0F1dGhlbnRpY2F0aW9uXCIsXG4gICAgcHJpb3JpdHk6IDYxNSxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBhY3RpdmVEaXJlY3RvcnlBbGxvd05FVEJJT1NSZXBsaWNhdGlvbjogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMTM5XCIsXG4gICAgbmFtZTogXCJBbGxvd05FVEJJT1NSZXBsaWNhdGlvblwiLFxuICAgIHByaW9yaXR5OiA2MTYsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBDYXNzYW5kcmFcbiAgc3RhdGljIGNhc3NhbmRyYTogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiOTA0MlwiLFxuICAgIG5hbWU6IFwiQ2Fzc2FuZHJhXCIsXG4gICAgcHJpb3JpdHk6IDU1MSxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBjYXNzYW5kcmFKbXg6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjcxOTlcIixcbiAgICBuYW1lOiBcIkNhc3NhbmRyYS1KTVhcIixcbiAgICBwcmlvcml0eTogNTUyLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgc3RhdGljIGNhc3NhbmRyYVRocmlmdDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiOTE2MFwiLFxuICAgIG5hbWU6IFwiQ2Fzc2FuZHJhLVRocmlmdFwiLFxuICAgIHByaW9yaXR5OiA1NTMsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBDb3VjaERCXG4gIHN0YXRpYyBjb3VjaERiOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI1OTg0XCIsXG4gICAgbmFtZTogXCJDb3VjaERCXCIsXG4gICAgcHJpb3JpdHk6IDU1NCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIHN0YXRpYyBjb3VjaERiSHR0cHM6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjY5ODRcIixcbiAgICBuYW1lOiBcIkNvdWNoREItSFRUUFNcIixcbiAgICBwcmlvcml0eTogNTU1LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gRE5TLVRjcFxuICBzdGF0aWMgZG5zVGNwOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI1M1wiLFxuICAgIG5hbWU6IFwiRE5TLVRjcFwiLFxuICAgIHByaW9yaXR5OiA1MjAsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBETlMtVURQXG4gIHN0YXRpYyBkbnNVZHA6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJVRFBcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjUzXCIsXG4gICAgbmFtZTogXCJETlMtVURQXCIsXG4gICAgcHJpb3JpdHk6IDUyMSxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIER5bmFtaWNQb3J0c1xuICBzdGF0aWMgZHluYW1pY1BvcnRzOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI0OTE1Mi02NTUzNVwiLFxuICAgIG5hbWU6IFwiRHluYW1pY1BvcnRzXCIsXG4gICAgcHJpb3JpdHk6IDY1MCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIEVsYXN0aWNTZWFyY2hcbiAgc3RhdGljIGVsYXN0aWNTZWFyY2g6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjkyMDAtOTMwMFwiLFxuICAgIG5hbWU6IFwiRWxhc3RpY1NlYXJjaFwiLFxuICAgIHByaW9yaXR5OiA1NTYsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBGVFBcbiAgc3RhdGljIGZ0cDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMjFcIixcbiAgICBuYW1lOiBcIkZUUFwiLFxuICAgIHByaW9yaXR5OiA1MTIsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBIVFRQLVRjcFxuICBzdGF0aWMgaHR0cFRjcDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiODBcIixcbiAgICBuYW1lOiBcIkhUVFBcIixcbiAgICBwcmlvcml0eTogNTEzLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gSFRUUC1VRFBcbiAgc3RhdGljIGh0dHBVZHA6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJVRFBcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjgwXCIsXG4gICAgbmFtZTogXCJIVFRQXCIsXG4gICAgcHJpb3JpdHk6IDUxNCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIEhUVFBTLVRjcFxuICBzdGF0aWMgaHR0cHM6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjQ0M1wiLFxuICAgIG5hbWU6IFwiSFRUUFNcIixcbiAgICBwcmlvcml0eTogNTE1LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gSU1BUFxuICBzdGF0aWMgaW1hcDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMTQzXCIsXG4gICAgbmFtZTogXCJJTUFQXCIsXG4gICAgcHJpb3JpdHk6IDUxNixcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIElNQVBTXG4gIHN0YXRpYyBpbWFwczogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiOTkzXCIsXG4gICAgbmFtZTogXCJJTUFQU1wiLFxuICAgIHByaW9yaXR5OiA1MTYsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBLZXN0cmVsXG4gIHN0YXRpYyBrZXN0cmVsOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCIyMjEzM1wiLFxuICAgIG5hbWU6IFwiS2VzdHJlbFwiLFxuICAgIHByaW9yaXR5OiA1MTcsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBMREFQXG4gIHN0YXRpYyBsZGFwOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCIzODlcIixcbiAgICBuYW1lOiBcIkxEQVBcIixcbiAgICBwcmlvcml0eTogNTU4LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gTW9uZ29EQlxuICBzdGF0aWMgbW9uZ29EQjogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMjcwMTdcIixcbiAgICBuYW1lOiBcIk1vbmdvREJcIixcbiAgICBwcmlvcml0eTogNTU5LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gTWVtY2FjaGVkXG4gIHN0YXRpYyBtZW1jYWNoZWQ6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjExMjExXCIsXG4gICAgbmFtZTogXCJNZW1jYWNoZWRcIixcbiAgICBwcmlvcml0eTogNTYwLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gTVNTUUxcbiAgc3RhdGljIG1zc3FsOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCIxNDMzXCIsXG4gICAgbmFtZTogXCJNU1NRTFwiLFxuICAgIHByaW9yaXR5OiA1NjEsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBNeVNRTFxuICBzdGF0aWMgbXlTUUw6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjMzMDZcIixcbiAgICBuYW1lOiBcIk15U1FMXCIsXG4gICAgcHJpb3JpdHk6IDU2MixcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIE5lbzRKXG4gIHN0YXRpYyBuZW80SjogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiNzQ3NFwiLFxuICAgIG5hbWU6IFwiTmVvNEpcIixcbiAgICBwcmlvcml0eTogNTYzLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gUE9QM1xuICBzdGF0aWMgcG9wMzogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMTEwXCIsXG4gICAgbmFtZTogXCJQT1AzXCIsXG4gICAgcHJpb3JpdHk6IDU2NCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIFBPUDNTXG4gIHN0YXRpYyBwb3AzczogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiOTk1XCIsXG4gICAgbmFtZTogXCJQT1AzU1wiLFxuICAgIHByaW9yaXR5OiA1NjUsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBQb3N0Z3JlU1FMXG4gIHN0YXRpYyBwb3N0Z3JlU1FMOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI1NDMyXCIsXG4gICAgbmFtZTogXCJQb3N0Z3JlU1FMXCIsXG4gICAgcHJpb3JpdHk6IDU2NixcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIFJhYmJpdE1RXG4gIHN0YXRpYyByYWJiaXRNUTogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiNTY3MlwiLFxuICAgIG5hbWU6IFwiUmFiYml0TVFcIixcbiAgICBwcmlvcml0eTogNTY3LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gUkRQXG4gIHN0YXRpYyByZHA6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjMzODlcIixcbiAgICBuYW1lOiBcIlJEUFwiLFxuICAgIHByaW9yaXR5OiA1MDUsXG4gICAgc291cmNlQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gICAgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4OiBcIipcIixcbiAgfTtcblxuICAvLyBSZWRpc1xuICBzdGF0aWMgcmVkaXM6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjYzNzlcIixcbiAgICBuYW1lOiBcIlJlZGlzXCIsXG4gICAgcHJpb3JpdHk6IDU2OCxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIFJpYWtcbiAgc3RhdGljIHJpYWs6IFJ1bGVDb25maWcgPSB7XG4gICAgZGlyZWN0aW9uOiBcIkluYm91bmRcIixcbiAgICBhY2Nlc3M6IFwiQWxsb3dcIixcbiAgICBwcm90b2NvbDogXCJUY3BcIixcbiAgICBzb3VyY2VQb3J0UmFuZ2U6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uUG9ydFJhbmdlOiBcIjgwOTNcIixcbiAgICBuYW1lOiBcIlJpYWtcIixcbiAgICBwcmlvcml0eTogNTY4LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gUmlha0pNWFxuICBzdGF0aWMgcmlha0pNWDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiODk4NVwiLFxuICAgIG5hbWU6IFwiUmlhay1KTVhcIixcbiAgICBwcmlvcml0eTogNTY5LFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gU01UUFxuICBzdGF0aWMgc210cDogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiMjVcIixcbiAgICBuYW1lOiBcIlNNVFBcIixcbiAgICBwcmlvcml0eTogNTcwLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgLy8gU01UUFNcbiAgc3RhdGljIHNtdHBzOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCI0NjVcIixcbiAgICBuYW1lOiBcIlNNVFBTXCIsXG4gICAgcHJpb3JpdHk6IDU3MSxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIFNTSFxuICBzdGF0aWMgc3NoOiBSdWxlQ29uZmlnID0ge1xuICAgIGRpcmVjdGlvbjogXCJJbmJvdW5kXCIsXG4gICAgYWNjZXNzOiBcIkFsbG93XCIsXG4gICAgcHJvdG9jb2w6IFwiVGNwXCIsXG4gICAgc291cmNlUG9ydFJhbmdlOiBcIipcIixcbiAgICBkZXN0aW5hdGlvblBvcnRSYW5nZTogXCIyMlwiLFxuICAgIG5hbWU6IFwiU1NIXCIsXG4gICAgcHJpb3JpdHk6IDUwMSxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBcIipcIixcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICB9O1xuXG4gIC8vIFdpblJNXG4gIHN0YXRpYyB3aW5STTogUnVsZUNvbmZpZyA9IHtcbiAgICBkaXJlY3Rpb246IFwiSW5ib3VuZFwiLFxuICAgIGFjY2VzczogXCJBbGxvd1wiLFxuICAgIHByb3RvY29sOiBcIlRjcFwiLFxuICAgIHNvdXJjZVBvcnRSYW5nZTogXCIqXCIsXG4gICAgZGVzdGluYXRpb25Qb3J0UmFuZ2U6IFwiNTk4NlwiLFxuICAgIG5hbWU6IFwiV2luUk1cIixcbiAgICBwcmlvcml0eTogNTAyLFxuICAgIHNvdXJjZUFkZHJlc3NQcmVmaXg6IFwiKlwiLFxuICAgIGRlc3RpbmF0aW9uQWRkcmVzc1ByZWZpeDogXCIqXCIsXG4gIH07XG5cbiAgc3RhdGljIGFwcGx5UnVsZU92ZXJyaWRlcyhcbiAgICBiYXNlUnVsZTogUnVsZUNvbmZpZyxcbiAgICBvdmVycmlkZXM6IFJ1bGVPdmVycmlkZXMsXG4gICk6IFJ1bGVDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5iYXNlUnVsZSxcbiAgICAgIC4uLm92ZXJyaWRlcyxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGFkZFNvdXJjZUFkZHJlc3MoXG4gICAgcnVsZTogUnVsZUNvbmZpZyxcbiAgICBzb3VyY2VBZGRyZXNzUHJlZml4OiBzdHJpbmcsXG4gICk6IFJ1bGVDb25maWcge1xuICAgIHJldHVybiB7IC4uLnJ1bGUsIHNvdXJjZUFkZHJlc3NQcmVmaXggfTtcbiAgfVxuXG4gIHN0YXRpYyBhZGREZXN0aW5hdGlvbkFkZHJlc3MoXG4gICAgcnVsZTogUnVsZUNvbmZpZyxcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3NQcmVmaXg6IHN0cmluZyxcbiAgKTogUnVsZUNvbmZpZyB7XG4gICAgcmV0dXJuIHsgLi4ucnVsZSwgZGVzdGluYXRpb25BZGRyZXNzUHJlZml4IH07XG4gIH1cblxuICBzdGF0aWMgYWRkUHJpb3JpdHkocnVsZTogUnVsZUNvbmZpZywgcHJpb3JpdHk6IG51bWJlcik6IFJ1bGVDb25maWcge1xuICAgIHJldHVybiB7IC4uLnJ1bGUsIHByaW9yaXR5IH07XG4gIH1cbn1cbiJdfQ==