UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

912 lines 137 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g; Object.defineProperty(exports, "__esModule", { value: true }); exports.MssqlVirtualMachineAvailabilityGroupListener = exports.MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference = exports.mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToHclTerraform = exports.mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToTerraform = exports.MssqlVirtualMachineAvailabilityGroupListenerReplicaList = exports.MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference = exports.mssqlVirtualMachineAvailabilityGroupListenerReplicaToHclTerraform = exports.mssqlVirtualMachineAvailabilityGroupListenerReplicaToTerraform = exports.MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList = exports.MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference = exports.mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToHclTerraform = exports.mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToTerraform = exports.MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference = exports.mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToHclTerraform = exports.mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToTerraform(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 { load_balancer_id: cdktf.stringToTerraform(struct.loadBalancerId), private_ip_address: cdktf.stringToTerraform(struct.privateIpAddress), probe_port: cdktf.numberToTerraform(struct.probePort), sql_virtual_machine_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.sqlVirtualMachineIds), subnet_id: cdktf.stringToTerraform(struct.subnetId), }; } exports.mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToTerraform = mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToTerraform; function mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToHclTerraform(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 = { load_balancer_id: { value: cdktf.stringToHclTerraform(struct.loadBalancerId), isBlock: false, type: "simple", storageClassType: "string", }, private_ip_address: { value: cdktf.stringToHclTerraform(struct.privateIpAddress), isBlock: false, type: "simple", storageClassType: "string", }, probe_port: { value: cdktf.numberToHclTerraform(struct.probePort), isBlock: false, type: "simple", storageClassType: "number", }, sql_virtual_machine_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.sqlVirtualMachineIds), isBlock: false, type: "set", storageClassType: "stringList", }, subnet_id: { value: cdktf.stringToHclTerraform(struct.subnetId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToHclTerraform = mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToHclTerraform; class MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference 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._loadBalancerId !== undefined) { hasAnyValues = true; internalValueResult.loadBalancerId = this._loadBalancerId; } if (this._privateIpAddress !== undefined) { hasAnyValues = true; internalValueResult.privateIpAddress = this._privateIpAddress; } if (this._probePort !== undefined) { hasAnyValues = true; internalValueResult.probePort = this._probePort; } if (this._sqlVirtualMachineIds !== undefined) { hasAnyValues = true; internalValueResult.sqlVirtualMachineIds = this._sqlVirtualMachineIds; } if (this._subnetId !== undefined) { hasAnyValues = true; internalValueResult.subnetId = this._subnetId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._loadBalancerId = undefined; this._privateIpAddress = undefined; this._probePort = undefined; this._sqlVirtualMachineIds = undefined; this._subnetId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._loadBalancerId = value.loadBalancerId; this._privateIpAddress = value.privateIpAddress; this._probePort = value.probePort; this._sqlVirtualMachineIds = value.sqlVirtualMachineIds; this._subnetId = value.subnetId; } } get loadBalancerId() { return this.getStringAttribute('load_balancer_id'); } set loadBalancerId(value) { this._loadBalancerId = value; } // Temporarily expose input value. Use with caution. get loadBalancerIdInput() { return this._loadBalancerId; } get privateIpAddress() { return this.getStringAttribute('private_ip_address'); } set privateIpAddress(value) { this._privateIpAddress = value; } // Temporarily expose input value. Use with caution. get privateIpAddressInput() { return this._privateIpAddress; } get probePort() { return this.getNumberAttribute('probe_port'); } set probePort(value) { this._probePort = value; } // Temporarily expose input value. Use with caution. get probePortInput() { return this._probePort; } get sqlVirtualMachineIds() { return cdktf.Fn.tolist(this.getListAttribute('sql_virtual_machine_ids')); } set sqlVirtualMachineIds(value) { this._sqlVirtualMachineIds = value; } // Temporarily expose input value. Use with caution. get sqlVirtualMachineIdsInput() { return this._sqlVirtualMachineIds; } get subnetId() { return this.getStringAttribute('subnet_id'); } set subnetId(value) { this._subnetId = value; } // Temporarily expose input value. Use with caution. get subnetIdInput() { return this._subnetId; } } exports.MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference = MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference; _a = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference", version: "12.27.0" }; function mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToTerraform(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 { private_ip_address: cdktf.stringToTerraform(struct.privateIpAddress), sql_virtual_machine_id: cdktf.stringToTerraform(struct.sqlVirtualMachineId), subnet_id: cdktf.stringToTerraform(struct.subnetId), }; } exports.mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToTerraform = mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToTerraform; function mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToHclTerraform(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 = { private_ip_address: { value: cdktf.stringToHclTerraform(struct.privateIpAddress), isBlock: false, type: "simple", storageClassType: "string", }, sql_virtual_machine_id: { value: cdktf.stringToHclTerraform(struct.sqlVirtualMachineId), isBlock: false, type: "simple", storageClassType: "string", }, subnet_id: { value: cdktf.stringToHclTerraform(struct.subnetId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToHclTerraform = mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToHclTerraform; class MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference 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() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._privateIpAddress !== undefined) { hasAnyValues = true; internalValueResult.privateIpAddress = this._privateIpAddress; } if (this._sqlVirtualMachineId !== undefined) { hasAnyValues = true; internalValueResult.sqlVirtualMachineId = this._sqlVirtualMachineId; } if (this._subnetId !== undefined) { hasAnyValues = true; internalValueResult.subnetId = this._subnetId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._privateIpAddress = undefined; this._sqlVirtualMachineId = undefined; this._subnetId = 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._privateIpAddress = value.privateIpAddress; this._sqlVirtualMachineId = value.sqlVirtualMachineId; this._subnetId = value.subnetId; } } get privateIpAddress() { return this.getStringAttribute('private_ip_address'); } set privateIpAddress(value) { this._privateIpAddress = value; } // Temporarily expose input value. Use with caution. get privateIpAddressInput() { return this._privateIpAddress; } get sqlVirtualMachineId() { return this.getStringAttribute('sql_virtual_machine_id'); } set sqlVirtualMachineId(value) { this._sqlVirtualMachineId = value; } // Temporarily expose input value. Use with caution. get sqlVirtualMachineIdInput() { return this._sqlVirtualMachineId; } get subnetId() { return this.getStringAttribute('subnet_id'); } set subnetId(value) { this._subnetId = value; } // Temporarily expose input value. Use with caution. get subnetIdInput() { return this._subnetId; } } exports.MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference = MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference; _b = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference", version: "12.27.0" }; class MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList 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 MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList = MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList; _c = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList[_c] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList", version: "12.27.0" }; function mssqlVirtualMachineAvailabilityGroupListenerReplicaToTerraform(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 { commit: cdktf.stringToTerraform(struct.commit), failover_mode: cdktf.stringToTerraform(struct.failoverMode), readable_secondary: cdktf.stringToTerraform(struct.readableSecondary), role: cdktf.stringToTerraform(struct.role), sql_virtual_machine_id: cdktf.stringToTerraform(struct.sqlVirtualMachineId), }; } exports.mssqlVirtualMachineAvailabilityGroupListenerReplicaToTerraform = mssqlVirtualMachineAvailabilityGroupListenerReplicaToTerraform; function mssqlVirtualMachineAvailabilityGroupListenerReplicaToHclTerraform(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 = { commit: { value: cdktf.stringToHclTerraform(struct.commit), isBlock: false, type: "simple", storageClassType: "string", }, failover_mode: { value: cdktf.stringToHclTerraform(struct.failoverMode), isBlock: false, type: "simple", storageClassType: "string", }, readable_secondary: { value: cdktf.stringToHclTerraform(struct.readableSecondary), isBlock: false, type: "simple", storageClassType: "string", }, role: { value: cdktf.stringToHclTerraform(struct.role), isBlock: false, type: "simple", storageClassType: "string", }, sql_virtual_machine_id: { value: cdktf.stringToHclTerraform(struct.sqlVirtualMachineId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mssqlVirtualMachineAvailabilityGroupListenerReplicaToHclTerraform = mssqlVirtualMachineAvailabilityGroupListenerReplicaToHclTerraform; class MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference 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() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._commit !== undefined) { hasAnyValues = true; internalValueResult.commit = this._commit; } if (this._failoverMode !== undefined) { hasAnyValues = true; internalValueResult.failoverMode = this._failoverMode; } if (this._readableSecondary !== undefined) { hasAnyValues = true; internalValueResult.readableSecondary = this._readableSecondary; } if (this._role !== undefined) { hasAnyValues = true; internalValueResult.role = this._role; } if (this._sqlVirtualMachineId !== undefined) { hasAnyValues = true; internalValueResult.sqlVirtualMachineId = this._sqlVirtualMachineId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._commit = undefined; this._failoverMode = undefined; this._readableSecondary = undefined; this._role = undefined; this._sqlVirtualMachineId = 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._commit = value.commit; this._failoverMode = value.failoverMode; this._readableSecondary = value.readableSecondary; this._role = value.role; this._sqlVirtualMachineId = value.sqlVirtualMachineId; } } get commit() { return this.getStringAttribute('commit'); } set commit(value) { this._commit = value; } // Temporarily expose input value. Use with caution. get commitInput() { return this._commit; } get failoverMode() { return this.getStringAttribute('failover_mode'); } set failoverMode(value) { this._failoverMode = value; } // Temporarily expose input value. Use with caution. get failoverModeInput() { return this._failoverMode; } get readableSecondary() { return this.getStringAttribute('readable_secondary'); } set readableSecondary(value) { this._readableSecondary = value; } // Temporarily expose input value. Use with caution. get readableSecondaryInput() { return this._readableSecondary; } get role() { return this.getStringAttribute('role'); } set role(value) { this._role = value; } // Temporarily expose input value. Use with caution. get roleInput() { return this._role; } get sqlVirtualMachineId() { return this.getStringAttribute('sql_virtual_machine_id'); } set sqlVirtualMachineId(value) { this._sqlVirtualMachineId = value; } // Temporarily expose input value. Use with caution. get sqlVirtualMachineIdInput() { return this._sqlVirtualMachineId; } } exports.MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference = MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference; _d = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference", version: "12.27.0" }; class MssqlVirtualMachineAvailabilityGroupListenerReplicaList 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 MssqlVirtualMachineAvailabilityGroupListenerReplicaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MssqlVirtualMachineAvailabilityGroupListenerReplicaList = MssqlVirtualMachineAvailabilityGroupListenerReplicaList; _e = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListenerReplicaList[_e] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListenerReplicaList", version: "12.27.0" }; function mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToTerraform(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), read: cdktf.stringToTerraform(struct.read), }; } exports.mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToTerraform = mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToTerraform; function mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToHclTerraform(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", }, read: { value: cdktf.stringToHclTerraform(struct.read), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToHclTerraform = mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToHclTerraform; class MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference 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._read !== undefined) { hasAnyValues = true; internalValueResult.read = this._read; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._create = undefined; this._delete = undefined; this._read = 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._read = value.read; } } 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 read() { return this.getStringAttribute('read'); } set read(value) { this._read = value; } resetRead() { this._read = undefined; } // Temporarily expose input value. Use with caution. get readInput() { return this._read; } } exports.MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference = MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference; _f = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference", version: "12.27.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mssql_virtual_machine_availability_group_listener azurerm_mssql_virtual_machine_availability_group_listener} */ class MssqlVirtualMachineAvailabilityGroupListener extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a MssqlVirtualMachineAvailabilityGroupListener 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 MssqlVirtualMachineAvailabilityGroupListener to import * @param importFromId The id of the existing MssqlVirtualMachineAvailabilityGroupListener that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mssql_virtual_machine_availability_group_listener#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MssqlVirtualMachineAvailabilityGroupListener to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_mssql_virtual_machine_availability_group_listener", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mssql_virtual_machine_availability_group_listener azurerm_mssql_virtual_machine_availability_group_listener} 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 MssqlVirtualMachineAvailabilityGroupListenerConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'azurerm_mssql_virtual_machine_availability_group_listener', terraformGeneratorMetadata: { providerName: 'azurerm', providerVersion: '3.116.0', providerVersionConstraint: '~> 3.10' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // load_balancer_configuration - computed: false, optional: true, required: false this._loadBalancerConfiguration = new MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationOutputReference(this, "load_balancer_configuration"); // multi_subnet_ip_configuration - computed: false, optional: true, required: false this._multiSubnetIpConfiguration = new MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList(this, "multi_subnet_ip_configuration", true); // replica - computed: false, optional: false, required: true this._replica = new MssqlVirtualMachineAvailabilityGroupListenerReplicaList(this, "replica", true); // timeouts - computed: false, optional: true, required: false this._timeouts = new MssqlVirtualMachineAvailabilityGroupListenerTimeoutsOutputReference(this, "timeouts"); this._availabilityGroupName = config.availabilityGroupName; this._id = config.id; this._name = config.name; this._port = config.port; this._sqlVirtualMachineGroupId = config.sqlVirtualMachineGroupId; this._loadBalancerConfiguration.internalValue = config.loadBalancerConfiguration; this._multiSubnetIpConfiguration.internalValue = config.multiSubnetIpConfiguration; this._replica.internalValue = config.replica; this._timeouts.internalValue = config.timeouts; } get availabilityGroupName() { return this.getStringAttribute('availability_group_name'); } set availabilityGroupName(value) { this._availabilityGroupName = value; } resetAvailabilityGroupName() { this._availabilityGroupName = undefined; } // Temporarily expose input value. Use with caution. get availabilityGroupNameInput() { return this._availabilityGroupName; } 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 name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } resetPort() { this._port = undefined; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } get sqlVirtualMachineGroupId() { return this.getStringAttribute('sql_virtual_machine_group_id'); } set sqlVirtualMachineGroupId(value) { this._sqlVirtualMachineGroupId = value; } // Temporarily expose input value. Use with caution. get sqlVirtualMachineGroupIdInput() { return this._sqlVirtualMachineGroupId; } get loadBalancerConfiguration() { return this._loadBalancerConfiguration; } putLoadBalancerConfiguration(value) { this._loadBalancerConfiguration.internalValue = value; } resetLoadBalancerConfiguration() { this._loadBalancerConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get loadBalancerConfigurationInput() { return this._loadBalancerConfiguration.internalValue; } get multiSubnetIpConfiguration() { return this._multiSubnetIpConfiguration; } putMultiSubnetIpConfiguration(value) { this._multiSubnetIpConfiguration.internalValue = value; } resetMultiSubnetIpConfiguration() { this._multiSubnetIpConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get multiSubnetIpConfigurationInput() { return this._multiSubnetIpConfiguration.internalValue; } get replica() { return this._replica; } putReplica(value) { this._replica.internalValue = value; } // Temporarily expose input value. Use with caution. get replicaInput() { return this._replica.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 { availability_group_name: cdktf.stringToTerraform(this._availabilityGroupName), id: cdktf.stringToTerraform(this._id), name: cdktf.stringToTerraform(this._name), port: cdktf.numberToTerraform(this._port), sql_virtual_machine_group_id: cdktf.stringToTerraform(this._sqlVirtualMachineGroupId), load_balancer_configuration: mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToTerraform(this._loadBalancerConfiguration.internalValue), multi_subnet_ip_configuration: cdktf.listMapper(mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToTerraform, true)(this._multiSubnetIpConfiguration.internalValue), replica: cdktf.listMapper(mssqlVirtualMachineAvailabilityGroupListenerReplicaToTerraform, true)(this._replica.internalValue), timeouts: mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { availability_group_name: { value: cdktf.stringToHclTerraform(this._availabilityGroupName), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, port: { value: cdktf.numberToHclTerraform(this._port), isBlock: false, type: "simple", storageClassType: "number", }, sql_virtual_machine_group_id: { value: cdktf.stringToHclTerraform(this._sqlVirtualMachineGroupId), isBlock: false, type: "simple", storageClassType: "string", }, load_balancer_configuration: { value: mssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationToHclTerraform(this._loadBalancerConfiguration.internalValue), isBlock: true, type: "list", storageClassType: "MssqlVirtualMachineAvailabilityGroupListenerLoadBalancerConfigurationList", }, multi_subnet_ip_configuration: { value: cdktf.listMapperHcl(mssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationToHclTerraform, true)(this._multiSubnetIpConfiguration.internalValue), isBlock: true, type: "set", storageClassType: "MssqlVirtualMachineAvailabilityGroupListenerMultiSubnetIpConfigurationList", }, replica: { value: cdktf.listMapperHcl(mssqlVirtualMachineAvailabilityGroupListenerReplicaToHclTerraform, true)(this._replica.internalValue), isBlock: true, type: "set", storageClassType: "MssqlVirtualMachineAvailabilityGroupListenerReplicaList", }, timeouts: { value: mssqlVirtualMachineAvailabilityGroupListenerTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "MssqlVirtualMachineAvailabilityGroupListenerTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.MssqlVirtualMachineAvailabilityGroupListener = MssqlVirtualMachineAvailabilityGroupListener; _g = JSII_RTTI_SYMBOL_1; MssqlVirtualMachineAvailabilityGroupListener[_g] = { fqn: "@cdktf/provider-azurerm.mssqlVirtualMachineAvailabilityGroupListener.MssqlVirtualMachineAvailabilityGroupListener", version: "12.27.0" }; // ================= // STATIC PROPERTIES // ================= MssqlVirtualMachineAvailabilityGroupListener.tfResourceType = "azurerm_mssql_virtual_machine_availability_group_listener"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbXNzcWwtdmlydHVhbC1tYWNoaW5lLWF2YWlsYWJpbGl0eS1ncm91cC1saXN0ZW5lci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVNBLCtCQUErQjtBQTRFL0IsU0FBZ0IsZ0ZBQWdGLENBQUMsTUFBcUs7SUFDcFEsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTztRQUNMLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsY0FBYyxDQUFDO1FBQ2pFLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsZ0JBQWdCLENBQUM7UUFDckUsVUFBVSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsU0FBUyxDQUFDO1FBQ3RELHVCQUF1QixFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU8sQ0FBQyxvQkFBb0IsQ0FBQztRQUN2RyxTQUFTLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxRQUFRLENBQUM7S0FDckQsQ0FBQTtBQUNILENBQUM7QUFaRCw0S0FZQztBQUdELFNBQWdCLG1GQUFtRixDQUFDLE1BQXFLO0lBQ3ZRLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHO1FBQ1osZ0JBQWdCLEVBQUU7WUFDaEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsY0FBYyxDQUFDO1lBQ3pELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0Qsa0JBQWtCLEVBQUU7WUFDbEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsZ0JBQWdCLENBQUM7WUFDM0QsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLGdCQUFnQixFQUFFLFFBQVE7U0FDM0I7UUFDRCxVQUFVLEVBQUU7WUFDVixLQUFLLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLE1BQU8sQ0FBQyxTQUFTLENBQUM7WUFDcEQsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLGdCQUFnQixFQUFFLFFBQVE7U0FDM0I7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixLQUFLLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTyxDQUFDLG9CQUFvQixDQUFDO1lBQzNGLE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLEtBQUs7WUFDWCxnQkFBZ0IsRUFBRSxZQUFZO1NBQy9CO1FBQ0QsU0FBUyxFQUFFO1lBQ1QsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO1lBQ25ELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO0tBQ0YsQ0FBQztJQUVGLDhCQUE4QjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDNUgsQ0FBQztBQXhDRCxrTEF3Q0M7QUFFRCxNQUFhLG9GQUFxRixTQUFRLEtBQUssQ0FBQyxhQUFhO0lBRzNIOzs7TUFHRTtJQUNGLFlBQW1CLGlCQUE2QyxFQUFFLGtCQUEwQjtRQUMxRixLQUFLLENBQUMsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBUGpELGtCQUFhLEdBQUcsS0FBSyxDQUFDO0lBUTlCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN0QyxNQUFNLG1CQUFtQixHQUFRLEVBQUUsQ0FBQztRQUNwQyxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdkMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUNwQixtQkFBbUIsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUM1RCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDekMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUNwQixtQkFBbUIsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNsQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLG1CQUFtQixDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2xELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM3QyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLG1CQUFtQixDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsbUJBQW1CLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDaEQsQ0FBQztRQUNELE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFXLGFBQWEsQ0FBQyxLQUF3RjtRQUMvRyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztZQUMzQixJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQztZQUNqQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1lBQzVCLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxTQUFTLENBQUM7WUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDN0IsQ0FBQzthQUNJLENBQUM7WUFDSixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDNUMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztZQUNoRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFDbEMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQztZQUN4RCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFJRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsSUFBVyxjQUFjLENBQUMsS0FBYTtRQUNyQyxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBQ0Qsb0RBQW9EO0lBQ3BELElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBSUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsSUFBVyxnQkFBZ0IsQ0FBQyxLQUFhO1FBQ3ZDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUNELG9EQUFvRDtJQUNwRCxJQUFXLHFCQUFxQjtRQUM5QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBSUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxJQUFXLFNBQVMsQ0FBQyxLQUFhO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFDRCxvREFBb0Q7SUFDcEQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBSUQsSUFBVyxvQkFBb0I7UUFDN0IsT0FBTyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDRCxJQUFXLG9CQUFvQixDQUFDLEtBQWU7UUFDN0MsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQztJQUNyQyxDQUFDO0lBQ0Qsb0RBQW9EO0lBQ3BELElBQVcseUJBQXlCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7SUFJRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUNELElBQVcsUUFBUSxDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUNELG9EQUFvRDtJQUNwRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7O0FBdkhILG9MQXdIQzs7O0FBZ0JELFNBQWdCLGlGQUFpRixDQUFDLE1BQW1HO0lBQ25NLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxrQkFBa0IsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLGdCQUFnQixDQUFDO1FBQ3JFLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsbUJBQW1CLENBQUM7UUFDNUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO0tBQ3JELENBQUE7QUFDSCxDQUFDO0FBVkQsOEtBVUM7QUFHRCxTQUFnQixvRkFBb0YsQ0FBQyxNQUFtRztJQUN0TSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLGtCQUFrQixFQUFFO1lBQ2xCLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLGdCQUFnQixDQUFDO1lBQzNELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsbUJBQW1CLENBQUM7WUFDOUQsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLGdCQUFnQixFQUFFLFFBQVE7U0FDM0I7UUFDRCxTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLE1BQU8sQ0FBQyxRQUFRLENBQUM7WUFDbkQsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLGdCQUFnQixFQUFFLFFBQVE7U0FDM0I7S0FDRixDQUFDO0lBRUYsOEJBQThCO0lBQzlCLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQztBQUM1SCxDQUFDO0FBNUJELG9MQTRCQztBQUVELE1BQWEscUZBQXNGLFNBQVEsS0FBSyxDQUFDLGFBQWE7SUFJNUg7Ozs7O01BS0U7SUFDRixZQUFtQixpQkFBNkMsRUFBRSxrQkFBMEIsRUFBRSxrQkFBMEIsRUFBRSxzQkFBK0I7UUFDdkosS0FBSyxDQUFDLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFWbkYsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFXOUIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDOUIsQ0FBQztRQUNELElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDdEMsTUFBTSxtQkFBbUIsR0FBUSxFQUFFLENBQUM7UUFDcEMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDekMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUNwQixtQkFBbUIsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLG9CQUFvQixL