@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
945 lines • 135 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CloudformationStackInstances = exports.CloudformationStackInstancesTimeoutsOutputReference = exports.CloudformationStackInstancesOperationPreferencesOutputReference = exports.CloudformationStackInstancesDeploymentTargetsOutputReference = exports.CloudformationStackInstancesStackInstanceSummariesList = exports.CloudformationStackInstancesStackInstanceSummariesOutputReference = void 0;
exports.cloudformationStackInstancesStackInstanceSummariesToTerraform = cloudformationStackInstancesStackInstanceSummariesToTerraform;
exports.cloudformationStackInstancesStackInstanceSummariesToHclTerraform = cloudformationStackInstancesStackInstanceSummariesToHclTerraform;
exports.cloudformationStackInstancesDeploymentTargetsToTerraform = cloudformationStackInstancesDeploymentTargetsToTerraform;
exports.cloudformationStackInstancesDeploymentTargetsToHclTerraform = cloudformationStackInstancesDeploymentTargetsToHclTerraform;
exports.cloudformationStackInstancesOperationPreferencesToTerraform = cloudformationStackInstancesOperationPreferencesToTerraform;
exports.cloudformationStackInstancesOperationPreferencesToHclTerraform = cloudformationStackInstancesOperationPreferencesToHclTerraform;
exports.cloudformationStackInstancesTimeoutsToTerraform = cloudformationStackInstancesTimeoutsToTerraform;
exports.cloudformationStackInstancesTimeoutsToHclTerraform = cloudformationStackInstancesTimeoutsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function cloudformationStackInstancesStackInstanceSummariesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function cloudformationStackInstancesStackInstanceSummariesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class CloudformationStackInstancesStackInstanceSummariesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// account_id - computed: true, optional: false, required: false
get accountId() {
return this.getStringAttribute('account_id');
}
// detailed_status - computed: true, optional: false, required: false
get detailedStatus() {
return this.getStringAttribute('detailed_status');
}
// drift_status - computed: true, optional: false, required: false
get driftStatus() {
return this.getStringAttribute('drift_status');
}
// organizational_unit_id - computed: true, optional: false, required: false
get organizationalUnitId() {
return this.getStringAttribute('organizational_unit_id');
}
// region - computed: true, optional: false, required: false
get region() {
return this.getStringAttribute('region');
}
// stack_id - computed: true, optional: false, required: false
get stackId() {
return this.getStringAttribute('stack_id');
}
// stack_set_id - computed: true, optional: false, required: false
get stackSetId() {
return this.getStringAttribute('stack_set_id');
}
// status - computed: true, optional: false, required: false
get status() {
return this.getStringAttribute('status');
}
// status_reason - computed: true, optional: false, required: false
get statusReason() {
return this.getStringAttribute('status_reason');
}
}
exports.CloudformationStackInstancesStackInstanceSummariesOutputReference = CloudformationStackInstancesStackInstanceSummariesOutputReference;
_a = JSII_RTTI_SYMBOL_1;
CloudformationStackInstancesStackInstanceSummariesOutputReference[_a] = { fqn: "@cdktf/provider-aws.cloudformationStackInstances.CloudformationStackInstancesStackInstanceSummariesOutputReference", version: "21.22.1" };
class CloudformationStackInstancesStackInstanceSummariesList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new CloudformationStackInstancesStackInstanceSummariesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.CloudformationStackInstancesStackInstanceSummariesList = CloudformationStackInstancesStackInstanceSummariesList;
_b = JSII_RTTI_SYMBOL_1;
CloudformationStackInstancesStackInstanceSummariesList[_b] = { fqn: "@cdktf/provider-aws.cloudformationStackInstances.CloudformationStackInstancesStackInstanceSummariesList", version: "21.22.1" };
function cloudformationStackInstancesDeploymentTargetsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
account_filter_type: cdktf.stringToTerraform(struct.accountFilterType),
accounts: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.accounts),
accounts_url: cdktf.stringToTerraform(struct.accountsUrl),
organizational_unit_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.organizationalUnitIds),
};
}
function cloudformationStackInstancesDeploymentTargetsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
account_filter_type: {
value: cdktf.stringToHclTerraform(struct.accountFilterType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
accounts: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.accounts),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
accounts_url: {
value: cdktf.stringToHclTerraform(struct.accountsUrl),
isBlock: false,
type: "simple",
storageClassType: "string",
},
organizational_unit_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.organizationalUnitIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudformationStackInstancesDeploymentTargetsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._accountFilterType !== undefined) {
hasAnyValues = true;
internalValueResult.accountFilterType = this._accountFilterType;
}
if (this._accounts !== undefined) {
hasAnyValues = true;
internalValueResult.accounts = this._accounts;
}
if (this._accountsUrl !== undefined) {
hasAnyValues = true;
internalValueResult.accountsUrl = this._accountsUrl;
}
if (this._organizationalUnitIds !== undefined) {
hasAnyValues = true;
internalValueResult.organizationalUnitIds = this._organizationalUnitIds;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._accountFilterType = undefined;
this._accounts = undefined;
this._accountsUrl = undefined;
this._organizationalUnitIds = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._accountFilterType = value.accountFilterType;
this._accounts = value.accounts;
this._accountsUrl = value.accountsUrl;
this._organizationalUnitIds = value.organizationalUnitIds;
}
}
get accountFilterType() {
return this.getStringAttribute('account_filter_type');
}
set accountFilterType(value) {
this._accountFilterType = value;
}
resetAccountFilterType() {
this._accountFilterType = undefined;
}
// Temporarily expose input value. Use with caution.
get accountFilterTypeInput() {
return this._accountFilterType;
}
get accounts() {
return cdktf.Fn.tolist(this.getListAttribute('accounts'));
}
set accounts(value) {
this._accounts = value;
}
resetAccounts() {
this._accounts = undefined;
}
// Temporarily expose input value. Use with caution.
get accountsInput() {
return this._accounts;
}
get accountsUrl() {
return this.getStringAttribute('accounts_url');
}
set accountsUrl(value) {
this._accountsUrl = value;
}
resetAccountsUrl() {
this._accountsUrl = undefined;
}
// Temporarily expose input value. Use with caution.
get accountsUrlInput() {
return this._accountsUrl;
}
get organizationalUnitIds() {
return cdktf.Fn.tolist(this.getListAttribute('organizational_unit_ids'));
}
set organizationalUnitIds(value) {
this._organizationalUnitIds = value;
}
resetOrganizationalUnitIds() {
this._organizationalUnitIds = undefined;
}
// Temporarily expose input value. Use with caution.
get organizationalUnitIdsInput() {
return this._organizationalUnitIds;
}
}
exports.CloudformationStackInstancesDeploymentTargetsOutputReference = CloudformationStackInstancesDeploymentTargetsOutputReference;
_c = JSII_RTTI_SYMBOL_1;
CloudformationStackInstancesDeploymentTargetsOutputReference[_c] = { fqn: "@cdktf/provider-aws.cloudformationStackInstances.CloudformationStackInstancesDeploymentTargetsOutputReference", version: "21.22.1" };
function cloudformationStackInstancesOperationPreferencesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
concurrency_mode: cdktf.stringToTerraform(struct.concurrencyMode),
failure_tolerance_count: cdktf.numberToTerraform(struct.failureToleranceCount),
failure_tolerance_percentage: cdktf.numberToTerraform(struct.failureTolerancePercentage),
max_concurrent_count: cdktf.numberToTerraform(struct.maxConcurrentCount),
max_concurrent_percentage: cdktf.numberToTerraform(struct.maxConcurrentPercentage),
region_concurrency_type: cdktf.stringToTerraform(struct.regionConcurrencyType),
region_order: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.regionOrder),
};
}
function cloudformationStackInstancesOperationPreferencesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
concurrency_mode: {
value: cdktf.stringToHclTerraform(struct.concurrencyMode),
isBlock: false,
type: "simple",
storageClassType: "string",
},
failure_tolerance_count: {
value: cdktf.numberToHclTerraform(struct.failureToleranceCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
failure_tolerance_percentage: {
value: cdktf.numberToHclTerraform(struct.failureTolerancePercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
max_concurrent_count: {
value: cdktf.numberToHclTerraform(struct.maxConcurrentCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
max_concurrent_percentage: {
value: cdktf.numberToHclTerraform(struct.maxConcurrentPercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
region_concurrency_type: {
value: cdktf.stringToHclTerraform(struct.regionConcurrencyType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
region_order: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.regionOrder),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudformationStackInstancesOperationPreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._concurrencyMode !== undefined) {
hasAnyValues = true;
internalValueResult.concurrencyMode = this._concurrencyMode;
}
if (this._failureToleranceCount !== undefined) {
hasAnyValues = true;
internalValueResult.failureToleranceCount = this._failureToleranceCount;
}
if (this._failureTolerancePercentage !== undefined) {
hasAnyValues = true;
internalValueResult.failureTolerancePercentage = this._failureTolerancePercentage;
}
if (this._maxConcurrentCount !== undefined) {
hasAnyValues = true;
internalValueResult.maxConcurrentCount = this._maxConcurrentCount;
}
if (this._maxConcurrentPercentage !== undefined) {
hasAnyValues = true;
internalValueResult.maxConcurrentPercentage = this._maxConcurrentPercentage;
}
if (this._regionConcurrencyType !== undefined) {
hasAnyValues = true;
internalValueResult.regionConcurrencyType = this._regionConcurrencyType;
}
if (this._regionOrder !== undefined) {
hasAnyValues = true;
internalValueResult.regionOrder = this._regionOrder;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._concurrencyMode = undefined;
this._failureToleranceCount = undefined;
this._failureTolerancePercentage = undefined;
this._maxConcurrentCount = undefined;
this._maxConcurrentPercentage = undefined;
this._regionConcurrencyType = undefined;
this._regionOrder = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._concurrencyMode = value.concurrencyMode;
this._failureToleranceCount = value.failureToleranceCount;
this._failureTolerancePercentage = value.failureTolerancePercentage;
this._maxConcurrentCount = value.maxConcurrentCount;
this._maxConcurrentPercentage = value.maxConcurrentPercentage;
this._regionConcurrencyType = value.regionConcurrencyType;
this._regionOrder = value.regionOrder;
}
}
get concurrencyMode() {
return this.getStringAttribute('concurrency_mode');
}
set concurrencyMode(value) {
this._concurrencyMode = value;
}
resetConcurrencyMode() {
this._concurrencyMode = undefined;
}
// Temporarily expose input value. Use with caution.
get concurrencyModeInput() {
return this._concurrencyMode;
}
get failureToleranceCount() {
return this.getNumberAttribute('failure_tolerance_count');
}
set failureToleranceCount(value) {
this._failureToleranceCount = value;
}
resetFailureToleranceCount() {
this._failureToleranceCount = undefined;
}
// Temporarily expose input value. Use with caution.
get failureToleranceCountInput() {
return this._failureToleranceCount;
}
get failureTolerancePercentage() {
return this.getNumberAttribute('failure_tolerance_percentage');
}
set failureTolerancePercentage(value) {
this._failureTolerancePercentage = value;
}
resetFailureTolerancePercentage() {
this._failureTolerancePercentage = undefined;
}
// Temporarily expose input value. Use with caution.
get failureTolerancePercentageInput() {
return this._failureTolerancePercentage;
}
get maxConcurrentCount() {
return this.getNumberAttribute('max_concurrent_count');
}
set maxConcurrentCount(value) {
this._maxConcurrentCount = value;
}
resetMaxConcurrentCount() {
this._maxConcurrentCount = undefined;
}
// Temporarily expose input value. Use with caution.
get maxConcurrentCountInput() {
return this._maxConcurrentCount;
}
get maxConcurrentPercentage() {
return this.getNumberAttribute('max_concurrent_percentage');
}
set maxConcurrentPercentage(value) {
this._maxConcurrentPercentage = value;
}
resetMaxConcurrentPercentage() {
this._maxConcurrentPercentage = undefined;
}
// Temporarily expose input value. Use with caution.
get maxConcurrentPercentageInput() {
return this._maxConcurrentPercentage;
}
get regionConcurrencyType() {
return this.getStringAttribute('region_concurrency_type');
}
set regionConcurrencyType(value) {
this._regionConcurrencyType = value;
}
resetRegionConcurrencyType() {
this._regionConcurrencyType = undefined;
}
// Temporarily expose input value. Use with caution.
get regionConcurrencyTypeInput() {
return this._regionConcurrencyType;
}
get regionOrder() {
return this.getListAttribute('region_order');
}
set regionOrder(value) {
this._regionOrder = value;
}
resetRegionOrder() {
this._regionOrder = undefined;
}
// Temporarily expose input value. Use with caution.
get regionOrderInput() {
return this._regionOrder;
}
}
exports.CloudformationStackInstancesOperationPreferencesOutputReference = CloudformationStackInstancesOperationPreferencesOutputReference;
_d = JSII_RTTI_SYMBOL_1;
CloudformationStackInstancesOperationPreferencesOutputReference[_d] = { fqn: "@cdktf/provider-aws.cloudformationStackInstances.CloudformationStackInstancesOperationPreferencesOutputReference", version: "21.22.1" };
function cloudformationStackInstancesTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
function cloudformationStackInstancesTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudformationStackInstancesTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.CloudformationStackInstancesTimeoutsOutputReference = CloudformationStackInstancesTimeoutsOutputReference;
_e = JSII_RTTI_SYMBOL_1;
CloudformationStackInstancesTimeoutsOutputReference[_e] = { fqn: "@cdktf/provider-aws.cloudformationStackInstances.CloudformationStackInstancesTimeoutsOutputReference", version: "21.22.1" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/cloudformation_stack_instances aws_cloudformation_stack_instances}
*/
class CloudformationStackInstances extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a CloudformationStackInstances resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the CloudformationStackInstances to import
* @param importFromId The id of the existing CloudformationStackInstances that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/cloudformation_stack_instances#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the CloudformationStackInstances to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_cloudformation_stack_instances", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/cloudformation_stack_instances aws_cloudformation_stack_instances} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options CloudformationStackInstancesConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_cloudformation_stack_instances',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '6.25.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// stack_instance_summaries - computed: true, optional: false, required: false
this._stackInstanceSummaries = new CloudformationStackInstancesStackInstanceSummariesList(this, "stack_instance_summaries", false);
// deployment_targets - computed: false, optional: true, required: false
this._deploymentTargets = new CloudformationStackInstancesDeploymentTargetsOutputReference(this, "deployment_targets");
// operation_preferences - computed: false, optional: true, required: false
this._operationPreferences = new CloudformationStackInstancesOperationPreferencesOutputReference(this, "operation_preferences");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new CloudformationStackInstancesTimeoutsOutputReference(this, "timeouts");
this._accounts = config.accounts;
this._callAs = config.callAs;
this._id = config.id;
this._parameterOverrides = config.parameterOverrides;
this._region = config.region;
this._regions = config.regions;
this._retainStacks = config.retainStacks;
this._stackSetName = config.stackSetName;
this._deploymentTargets.internalValue = config.deploymentTargets;
this._operationPreferences.internalValue = config.operationPreferences;
this._timeouts.internalValue = config.timeouts;
}
get accounts() {
return cdktf.Fn.tolist(this.getListAttribute('accounts'));
}
set accounts(value) {
this._accounts = value;
}
resetAccounts() {
this._accounts = undefined;
}
// Temporarily expose input value. Use with caution.
get accountsInput() {
return this._accounts;
}
get callAs() {
return this.getStringAttribute('call_as');
}
set callAs(value) {
this._callAs = value;
}
resetCallAs() {
this._callAs = undefined;
}
// Temporarily expose input value. Use with caution.
get callAsInput() {
return this._callAs;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get parameterOverrides() {
return this.getStringMapAttribute('parameter_overrides');
}
set parameterOverrides(value) {
this._parameterOverrides = value;
}
resetParameterOverrides() {
this._parameterOverrides = undefined;
}
// Temporarily expose input value. Use with caution.
get parameterOverridesInput() {
return this._parameterOverrides;
}
get region() {
return this.getStringAttribute('region');
}
set region(value) {
this._region = value;
}
resetRegion() {
this._region = undefined;
}
// Temporarily expose input value. Use with caution.
get regionInput() {
return this._region;
}
get regions() {
return cdktf.Fn.tolist(this.getListAttribute('regions'));
}
set regions(value) {
this._regions = value;
}
resetRegions() {
this._regions = undefined;
}
// Temporarily expose input value. Use with caution.
get regionsInput() {
return this._regions;
}
get retainStacks() {
return this.getBooleanAttribute('retain_stacks');
}
set retainStacks(value) {
this._retainStacks = value;
}
resetRetainStacks() {
this._retainStacks = undefined;
}
// Temporarily expose input value. Use with caution.
get retainStacksInput() {
return this._retainStacks;
}
get stackInstanceSummaries() {
return this._stackInstanceSummaries;
}
// stack_set_id - computed: true, optional: false, required: false
get stackSetId() {
return this.getStringAttribute('stack_set_id');
}
get stackSetName() {
return this.getStringAttribute('stack_set_name');
}
set stackSetName(value) {
this._stackSetName = value;
}
// Temporarily expose input value. Use with caution.
get stackSetNameInput() {
return this._stackSetName;
}
get deploymentTargets() {
return this._deploymentTargets;
}
putDeploymentTargets(value) {
this._deploymentTargets.internalValue = value;
}
resetDeploymentTargets() {
this._deploymentTargets.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get deploymentTargetsInput() {
return this._deploymentTargets.internalValue;
}
get operationPreferences() {
return this._operationPreferences;
}
putOperationPreferences(value) {
this._operationPreferences.internalValue = value;
}
resetOperationPreferences() {
this._operationPreferences.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get operationPreferencesInput() {
return this._operationPreferences.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
accounts: cdktf.listMapper(cdktf.stringToTerraform, false)(this._accounts),
call_as: cdktf.stringToTerraform(this._callAs),
id: cdktf.stringToTerraform(this._id),
parameter_overrides: cdktf.hashMapper(cdktf.stringToTerraform)(this._parameterOverrides),
region: cdktf.stringToTerraform(this._region),
regions: cdktf.listMapper(cdktf.stringToTerraform, false)(this._regions),
retain_stacks: cdktf.booleanToTerraform(this._retainStacks),
stack_set_name: cdktf.stringToTerraform(this._stackSetName),
deployment_targets: cloudformationStackInstancesDeploymentTargetsToTerraform(this._deploymentTargets.internalValue),
operation_preferences: cloudformationStackInstancesOperationPreferencesToTerraform(this._operationPreferences.internalValue),
timeouts: cloudformationStackInstancesTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
accounts: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._accounts),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
call_as: {
value: cdktf.stringToHclTerraform(this._callAs),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
parameter_overrides: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._parameterOverrides),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
region: {
value: cdktf.stringToHclTerraform(this._region),
isBlock: false,
type: "simple",
storageClassType: "string",
},
regions: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._regions),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
retain_stacks: {
value: cdktf.booleanToHclTerraform(this._retainStacks),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
stack_set_name: {
value: cdktf.stringToHclTerraform(this._stackSetName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
deployment_targets: {
value: cloudformationStackInstancesDeploymentTargetsToHclTerraform(this._deploymentTargets.internalValue),
isBlock: true,
type: "list",
storageClassType: "CloudformationStackInstancesDeploymentTargetsList",
},
operation_preferences: {
value: cloudformationStackInstancesOperationPreferencesToHclTerraform(this._operationPreferences.internalValue),
isBlock: true,
type: "list",
storageClassType: "CloudformationStackInstancesOperationPreferencesList",
},
timeouts: {
value: cloudformationStackInstancesTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "CloudformationStackInstancesTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.CloudformationStackInstances = CloudformationStackInstances;
_f = JSII_RTTI_SYMBOL_1;
CloudformationStackInstances[_f] = { fqn: "@cdktf/provider-aws.cloudformationStackInstances.CloudformationStackInstances", version: "21.22.1" };
// =================
// STATIC PROPERTIES
// =================
CloudformationStackInstances.tfResourceType = "aws_cloudformation_stack_instances";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xvdWRmb3JtYXRpb24tc3RhY2staW5zdGFuY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUF5RUEsc0lBT0M7QUFHRCw0SUFRQztBQWlIRCw0SEFXQztBQUdELGtJQWtDQztBQW1KRCxrSUFjQztBQUdELHdJQW9EQztBQXFNRCwwR0FVQztBQUdELGdIQTRCQzs7QUF6ckJELCtCQUErQjtBQWdFL0IsU0FBZ0IsNkRBQTZELENBQUMsTUFBMkQ7SUFDdkksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTyxFQUNOLENBQUE7QUFDSCxDQUFDO0FBR0QsU0FBZ0IsZ0VBQWdFLENBQUMsTUFBMkQ7SUFDMUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUcsRUFDYixDQUFDO0lBQ0YsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBYSxpRUFBa0UsU0FBUSxLQUFLLENBQUMsYUFBYTtJQUd4Rzs7Ozs7TUFLRTtJQUNGLFlBQW1CLGlCQUE2QyxFQUFFLGtCQUEwQixFQUFFLGtCQUEwQixFQUFFLHNCQUErQjtRQUN2SixLQUFLLENBQUMsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQVRuRixrQkFBYSxHQUFHLEtBQUssQ0FBQztJQVU5QixDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDdEMsTUFBTSxtQkFBbUIsR0FBUSxFQUFFLENBQUM7UUFDcEMsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDeEQsQ0FBQztJQUVELElBQVcsYUFBYSxDQUFDLEtBQXFFO1FBQzVGLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzdCLENBQUM7YUFDSSxDQUFDO1lBQ0osSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7UUFDdkQsQ0FBQztJQUNILENBQUM7SUFFRCxnRUFBZ0U7SUFDaEUsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxxRUFBcUU7SUFDckUsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELGtFQUFrRTtJQUNsRSxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELDRFQUE0RTtJQUM1RSxJQUFXLG9CQUFvQjtRQUM3QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCw0REFBNEQ7SUFDNUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELDhEQUE4RDtJQUM5RCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGtFQUFrRTtJQUNsRSxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELDREQUE0RDtJQUM1RCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsbUVBQW1FO0lBQ25FLElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNsRCxDQUFDOztBQXZFSCw4SUF3RUM7OztBQUVELE1BQWEsc0RBQXVELFNBQVEsS0FBSyxDQUFDLFdBQVc7SUFFM0Y7Ozs7TUFJRTtJQUNGLFlBQXNCLGlCQUE2QyxFQUFZLGtCQUEwQixFQUFZLFFBQWlCO1FBQ3BJLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxRQUFRLENBQUMsQ0FBQTtRQURsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTRCO1FBQVksdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFRO1FBQVksYUFBUSxHQUFSLFFBQVEsQ0FBUztJQUV0SSxDQUFDO0lBRUQ7O01BRUU7SUFDSyxHQUFHLENBQUMsS0FBYTtRQUN0QixPQUFPLElBQUksaUVBQWlFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3RKLENBQUM7O0FBaEJILHdIQWlCQzs7O0FBb0JELFNBQWdCLHdEQUF3RCxDQUFDLE1BQXFIO0lBQzVMLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxtQkFBbUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLGlCQUFpQixDQUFDO1FBQ3ZFLFFBQVEsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO1FBQzVFLFlBQVksRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLFdBQVcsQ0FBQztRQUMxRCx1QkFBdUIsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFPLENBQUMscUJBQXFCLENBQUM7S0FDekcsQ0FBQTtBQUNILENBQUM7QUFHRCxTQUFnQiwyREFBMkQsQ0FBQyxNQUFxSDtJQUMvTCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLG1CQUFtQixFQUFFO1lBQ25CLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLGlCQUFpQixDQUFDO1lBQzVELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsS0FBSyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU8sQ0FBQyxRQUFRLENBQUM7WUFDL0UsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsS0FBSztZQUNYLGdCQUFnQixFQUFFLFlBQVk7U0FDL0I7UUFDRCxZQUFZLEVBQUU7WUFDWixLQUFLLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLE1BQU8sQ0FBQyxXQUFXLENBQUM7WUFDdEQsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLGdCQUFnQixFQUFFLFFBQVE7U0FDM0I7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixLQUFLLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTyxDQUFDLHFCQUFxQixDQUFDO1lBQzVGLE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLEtBQUs7WUFDWCxnQkFBZ0IsRUFBRSxZQUFZO1NBQy9CO0tBQ0YsQ0FBQztJQUVGLDhCQUE4QjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDNUgsQ0FBQztBQUVELE1BQWEsNERBQTZELFNBQVEsS0FBSyxDQUFDLGFBQWE7SUFHbkc7OztNQUdFO0lBQ0YsWUFBbUIsaUJBQTZDLEVBQUUsa0JBQTBCO1FBQzFGLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFQakQsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFROUIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3RDLE1BQU0sbUJBQW1CLEdBQVEsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzFDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsbUJBQW1CLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQ2xFLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUNwQixtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNoRCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsbUJBQW1CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDdEQsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLHNCQUFzQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzlDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsbUJBQW1CLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1FBQzFFLENBQUM7UUFDRCxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsSUFBVyxhQUFhLENBQUMsS0FBZ0U7UUFDdkYsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQztZQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQztZQUM5QixJQUFJLENBQUMsc0JBQXNCLEdBQUcsU0FBUyxDQUFDO1FBQzFDLENBQUM7YUFDSSxDQUFDO1lBQ0osSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztZQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMscUJBQXFCLENBQUM7UUFDNUQsQ0FBQztJQUNILENBQUM7SUFJRCxJQUFXLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFDRCxJQUFXLGlCQUFpQixDQUFDLEtBQWE7UUFDeEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBQ00sc0JBQXNCO1FBQzNCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxTQUFTLENBQUM7SUFDdEMsQ0FBQztJQUNELG9EQUFvRDtJQUNwRCxJQUFXLHNCQUFzQjtRQUMvQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNqQyxDQUFDO0lBSUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sS0FBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELElBQVcsUUFBUSxDQUFDLEtBQWU7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUNNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUNELG9EQUFvRDtJQUNwRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFJRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUNELElBQVcsV0FBVyxDQUFDLEtBQWE7UUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUNNLGdCQUFnQjtRQUNyQixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQztJQUNoQyxDQUFDO0lBQ0Qsb0RBQW9EO0lBQ3BELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBSUQsSUFBVyxxQkFBcUI7UUFDOUIsT0FBTyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDRCxJQUFXLHFCQUFxQixDQUFDLEtBQWU7UUFDOUMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQztJQUN0QyxDQUFDO0lBQ00sMEJBQTBCO1FBQy9CLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxTQUFTLENBQUM7SUFDMUMsQ0FBQztJQUNELG9EQUFvRDtJQUNwRCxJQUFXLDBCQUEwQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztJQUNyQyxDQUFDOztBQWhISCxvSUFpSEM7OztBQWdDRCxTQUFnQiwyREFBMkQsQ0FBQyxNQUEySDtJQUNyTSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxPQUFPO1FBQ0wsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxlQUFlLENBQUM7UUFDbEUsdUJBQXVCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxxQkFBcUIsQ0FBQztRQUMvRSw0QkFBNEIsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLDBCQUEwQixDQUFDO1FBQ3pGLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDekUseUJBQXlCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyx1QkFBdUIsQ0FBQztRQUNuRix1QkFBdUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLHFCQUFxQixDQUFDO1FBQy9FLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFPLENBQUMsV0FBVyxDQUFDO0tBQ3BGLENBQUE7QUFDSCxDQUFDO0FBR0QsU0FBZ0IsOERBQThELENBQUMsTUFBMkg7SUFDeE0sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUc7UUFDWixnQkFBZ0IsRUFBRTtZQUNoQixLQUFLLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLE1BQU8sQ0FBQyxlQUFlLENBQUM7WUFDMUQsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUN