UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

903 lines 136 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g; Object.defineProperty(exports, "__esModule", { value: true }); exports.TimestreamwriteTable = exports.TimestreamwriteTableSchemaOutputReference = exports.TimestreamwriteTableSchemaCompositePartitionKeyOutputReference = exports.TimestreamwriteTableRetentionPropertiesOutputReference = exports.TimestreamwriteTableMagneticStoreWritePropertiesOutputReference = exports.TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference = exports.TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference = void 0; exports.timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToTerraform = timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToTerraform; exports.timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToHclTerraform = timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToHclTerraform; exports.timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToTerraform = timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToTerraform; exports.timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToHclTerraform = timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToHclTerraform; exports.timestreamwriteTableMagneticStoreWritePropertiesToTerraform = timestreamwriteTableMagneticStoreWritePropertiesToTerraform; exports.timestreamwriteTableMagneticStoreWritePropertiesToHclTerraform = timestreamwriteTableMagneticStoreWritePropertiesToHclTerraform; exports.timestreamwriteTableRetentionPropertiesToTerraform = timestreamwriteTableRetentionPropertiesToTerraform; exports.timestreamwriteTableRetentionPropertiesToHclTerraform = timestreamwriteTableRetentionPropertiesToHclTerraform; exports.timestreamwriteTableSchemaCompositePartitionKeyToTerraform = timestreamwriteTableSchemaCompositePartitionKeyToTerraform; exports.timestreamwriteTableSchemaCompositePartitionKeyToHclTerraform = timestreamwriteTableSchemaCompositePartitionKeyToHclTerraform; exports.timestreamwriteTableSchemaToTerraform = timestreamwriteTableSchemaToTerraform; exports.timestreamwriteTableSchemaToHclTerraform = timestreamwriteTableSchemaToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToTerraform(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 { bucket_name: cdktf.stringToTerraform(struct.bucketName), encryption_option: cdktf.stringToTerraform(struct.encryptionOption), kms_key_id: cdktf.stringToTerraform(struct.kmsKeyId), object_key_prefix: cdktf.stringToTerraform(struct.objectKeyPrefix), }; } function timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToHclTerraform(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 = { bucket_name: { value: cdktf.stringToHclTerraform(struct.bucketName), isBlock: false, type: "simple", storageClassType: "string", }, encryption_option: { value: cdktf.stringToHclTerraform(struct.encryptionOption), isBlock: false, type: "simple", storageClassType: "string", }, kms_key_id: { value: cdktf.stringToHclTerraform(struct.kmsKeyId), isBlock: false, type: "simple", storageClassType: "string", }, object_key_prefix: { value: cdktf.stringToHclTerraform(struct.objectKeyPrefix), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference 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._bucketName !== undefined) { hasAnyValues = true; internalValueResult.bucketName = this._bucketName; } if (this._encryptionOption !== undefined) { hasAnyValues = true; internalValueResult.encryptionOption = this._encryptionOption; } if (this._kmsKeyId !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyId = this._kmsKeyId; } if (this._objectKeyPrefix !== undefined) { hasAnyValues = true; internalValueResult.objectKeyPrefix = this._objectKeyPrefix; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._bucketName = undefined; this._encryptionOption = undefined; this._kmsKeyId = undefined; this._objectKeyPrefix = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._bucketName = value.bucketName; this._encryptionOption = value.encryptionOption; this._kmsKeyId = value.kmsKeyId; this._objectKeyPrefix = value.objectKeyPrefix; } } get bucketName() { return this.getStringAttribute('bucket_name'); } set bucketName(value) { this._bucketName = value; } resetBucketName() { this._bucketName = undefined; } // Temporarily expose input value. Use with caution. get bucketNameInput() { return this._bucketName; } get encryptionOption() { return this.getStringAttribute('encryption_option'); } set encryptionOption(value) { this._encryptionOption = value; } resetEncryptionOption() { this._encryptionOption = undefined; } // Temporarily expose input value. Use with caution. get encryptionOptionInput() { return this._encryptionOption; } get kmsKeyId() { return this.getStringAttribute('kms_key_id'); } set kmsKeyId(value) { this._kmsKeyId = value; } resetKmsKeyId() { this._kmsKeyId = undefined; } // Temporarily expose input value. Use with caution. get kmsKeyIdInput() { return this._kmsKeyId; } get objectKeyPrefix() { return this.getStringAttribute('object_key_prefix'); } set objectKeyPrefix(value) { this._objectKeyPrefix = value; } resetObjectKeyPrefix() { this._objectKeyPrefix = undefined; } // Temporarily expose input value. Use with caution. get objectKeyPrefixInput() { return this._objectKeyPrefix; } } exports.TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference = TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference; _a = JSII_RTTI_SYMBOL_1; TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference", version: "21.22.1" }; function timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToTerraform(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 { s3_configuration: timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToTerraform(struct.s3Configuration), }; } function timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToHclTerraform(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 = { s3_configuration: { value: timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationToHclTerraform(struct.s3Configuration), isBlock: true, type: "list", storageClassType: "TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference 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; // s3_configuration - computed: false, optional: true, required: false this._s3Configuration = new TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationS3ConfigurationOutputReference(this, "s3_configuration"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._s3Configuration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.s3Configuration = this._s3Configuration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._s3Configuration.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._s3Configuration.internalValue = value.s3Configuration; } } get s3Configuration() { return this._s3Configuration; } putS3Configuration(value) { this._s3Configuration.internalValue = value; } resetS3Configuration() { this._s3Configuration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get s3ConfigurationInput() { return this._s3Configuration.internalValue; } } exports.TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference = TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference; _b = JSII_RTTI_SYMBOL_1; TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference[_b] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference", version: "21.22.1" }; function timestreamwriteTableMagneticStoreWritePropertiesToTerraform(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 { enable_magnetic_store_writes: cdktf.booleanToTerraform(struct.enableMagneticStoreWrites), magnetic_store_rejected_data_location: timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToTerraform(struct.magneticStoreRejectedDataLocation), }; } function timestreamwriteTableMagneticStoreWritePropertiesToHclTerraform(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 = { enable_magnetic_store_writes: { value: cdktf.booleanToHclTerraform(struct.enableMagneticStoreWrites), isBlock: false, type: "simple", storageClassType: "boolean", }, magnetic_store_rejected_data_location: { value: timestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationToHclTerraform(struct.magneticStoreRejectedDataLocation), isBlock: true, type: "list", storageClassType: "TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TimestreamwriteTableMagneticStoreWritePropertiesOutputReference 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; // magnetic_store_rejected_data_location - computed: false, optional: true, required: false this._magneticStoreRejectedDataLocation = new TimestreamwriteTableMagneticStoreWritePropertiesMagneticStoreRejectedDataLocationOutputReference(this, "magnetic_store_rejected_data_location"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enableMagneticStoreWrites !== undefined) { hasAnyValues = true; internalValueResult.enableMagneticStoreWrites = this._enableMagneticStoreWrites; } if (this._magneticStoreRejectedDataLocation?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.magneticStoreRejectedDataLocation = this._magneticStoreRejectedDataLocation?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enableMagneticStoreWrites = undefined; this._magneticStoreRejectedDataLocation.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enableMagneticStoreWrites = value.enableMagneticStoreWrites; this._magneticStoreRejectedDataLocation.internalValue = value.magneticStoreRejectedDataLocation; } } get enableMagneticStoreWrites() { return this.getBooleanAttribute('enable_magnetic_store_writes'); } set enableMagneticStoreWrites(value) { this._enableMagneticStoreWrites = value; } resetEnableMagneticStoreWrites() { this._enableMagneticStoreWrites = undefined; } // Temporarily expose input value. Use with caution. get enableMagneticStoreWritesInput() { return this._enableMagneticStoreWrites; } get magneticStoreRejectedDataLocation() { return this._magneticStoreRejectedDataLocation; } putMagneticStoreRejectedDataLocation(value) { this._magneticStoreRejectedDataLocation.internalValue = value; } resetMagneticStoreRejectedDataLocation() { this._magneticStoreRejectedDataLocation.internalValue = undefined; } // Temporarily expose input value. Use with caution. get magneticStoreRejectedDataLocationInput() { return this._magneticStoreRejectedDataLocation.internalValue; } } exports.TimestreamwriteTableMagneticStoreWritePropertiesOutputReference = TimestreamwriteTableMagneticStoreWritePropertiesOutputReference; _c = JSII_RTTI_SYMBOL_1; TimestreamwriteTableMagneticStoreWritePropertiesOutputReference[_c] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTableMagneticStoreWritePropertiesOutputReference", version: "21.22.1" }; function timestreamwriteTableRetentionPropertiesToTerraform(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 { magnetic_store_retention_period_in_days: cdktf.numberToTerraform(struct.magneticStoreRetentionPeriodInDays), memory_store_retention_period_in_hours: cdktf.numberToTerraform(struct.memoryStoreRetentionPeriodInHours), }; } function timestreamwriteTableRetentionPropertiesToHclTerraform(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 = { magnetic_store_retention_period_in_days: { value: cdktf.numberToHclTerraform(struct.magneticStoreRetentionPeriodInDays), isBlock: false, type: "simple", storageClassType: "number", }, memory_store_retention_period_in_hours: { value: cdktf.numberToHclTerraform(struct.memoryStoreRetentionPeriodInHours), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TimestreamwriteTableRetentionPropertiesOutputReference 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._magneticStoreRetentionPeriodInDays !== undefined) { hasAnyValues = true; internalValueResult.magneticStoreRetentionPeriodInDays = this._magneticStoreRetentionPeriodInDays; } if (this._memoryStoreRetentionPeriodInHours !== undefined) { hasAnyValues = true; internalValueResult.memoryStoreRetentionPeriodInHours = this._memoryStoreRetentionPeriodInHours; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._magneticStoreRetentionPeriodInDays = undefined; this._memoryStoreRetentionPeriodInHours = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._magneticStoreRetentionPeriodInDays = value.magneticStoreRetentionPeriodInDays; this._memoryStoreRetentionPeriodInHours = value.memoryStoreRetentionPeriodInHours; } } get magneticStoreRetentionPeriodInDays() { return this.getNumberAttribute('magnetic_store_retention_period_in_days'); } set magneticStoreRetentionPeriodInDays(value) { this._magneticStoreRetentionPeriodInDays = value; } // Temporarily expose input value. Use with caution. get magneticStoreRetentionPeriodInDaysInput() { return this._magneticStoreRetentionPeriodInDays; } get memoryStoreRetentionPeriodInHours() { return this.getNumberAttribute('memory_store_retention_period_in_hours'); } set memoryStoreRetentionPeriodInHours(value) { this._memoryStoreRetentionPeriodInHours = value; } // Temporarily expose input value. Use with caution. get memoryStoreRetentionPeriodInHoursInput() { return this._memoryStoreRetentionPeriodInHours; } } exports.TimestreamwriteTableRetentionPropertiesOutputReference = TimestreamwriteTableRetentionPropertiesOutputReference; _d = JSII_RTTI_SYMBOL_1; TimestreamwriteTableRetentionPropertiesOutputReference[_d] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTableRetentionPropertiesOutputReference", version: "21.22.1" }; function timestreamwriteTableSchemaCompositePartitionKeyToTerraform(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 { enforcement_in_record: cdktf.stringToTerraform(struct.enforcementInRecord), name: cdktf.stringToTerraform(struct.name), type: cdktf.stringToTerraform(struct.type), }; } function timestreamwriteTableSchemaCompositePartitionKeyToHclTerraform(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 = { enforcement_in_record: { value: cdktf.stringToHclTerraform(struct.enforcementInRecord), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TimestreamwriteTableSchemaCompositePartitionKeyOutputReference 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._enforcementInRecord !== undefined) { hasAnyValues = true; internalValueResult.enforcementInRecord = this._enforcementInRecord; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enforcementInRecord = undefined; this._name = undefined; this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enforcementInRecord = value.enforcementInRecord; this._name = value.name; this._type = value.type; } } get enforcementInRecord() { return this.getStringAttribute('enforcement_in_record'); } set enforcementInRecord(value) { this._enforcementInRecord = value; } resetEnforcementInRecord() { this._enforcementInRecord = undefined; } // Temporarily expose input value. Use with caution. get enforcementInRecordInput() { return this._enforcementInRecord; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } resetName() { this._name = undefined; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.TimestreamwriteTableSchemaCompositePartitionKeyOutputReference = TimestreamwriteTableSchemaCompositePartitionKeyOutputReference; _e = JSII_RTTI_SYMBOL_1; TimestreamwriteTableSchemaCompositePartitionKeyOutputReference[_e] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTableSchemaCompositePartitionKeyOutputReference", version: "21.22.1" }; function timestreamwriteTableSchemaToTerraform(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 { composite_partition_key: timestreamwriteTableSchemaCompositePartitionKeyToTerraform(struct.compositePartitionKey), }; } function timestreamwriteTableSchemaToHclTerraform(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 = { composite_partition_key: { value: timestreamwriteTableSchemaCompositePartitionKeyToHclTerraform(struct.compositePartitionKey), isBlock: true, type: "list", storageClassType: "TimestreamwriteTableSchemaCompositePartitionKeyList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TimestreamwriteTableSchemaOutputReference 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; // composite_partition_key - computed: false, optional: true, required: false this._compositePartitionKey = new TimestreamwriteTableSchemaCompositePartitionKeyOutputReference(this, "composite_partition_key"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._compositePartitionKey?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compositePartitionKey = this._compositePartitionKey?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._compositePartitionKey.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._compositePartitionKey.internalValue = value.compositePartitionKey; } } get compositePartitionKey() { return this._compositePartitionKey; } putCompositePartitionKey(value) { this._compositePartitionKey.internalValue = value; } resetCompositePartitionKey() { this._compositePartitionKey.internalValue = undefined; } // Temporarily expose input value. Use with caution. get compositePartitionKeyInput() { return this._compositePartitionKey.internalValue; } } exports.TimestreamwriteTableSchemaOutputReference = TimestreamwriteTableSchemaOutputReference; _f = JSII_RTTI_SYMBOL_1; TimestreamwriteTableSchemaOutputReference[_f] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTableSchemaOutputReference", version: "21.22.1" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/timestreamwrite_table aws_timestreamwrite_table} */ class TimestreamwriteTable extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a TimestreamwriteTable 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 TimestreamwriteTable to import * @param importFromId The id of the existing TimestreamwriteTable that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/timestreamwrite_table#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TimestreamwriteTable to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_timestreamwrite_table", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/timestreamwrite_table aws_timestreamwrite_table} 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 TimestreamwriteTableConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'aws_timestreamwrite_table', 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 }); // magnetic_store_write_properties - computed: false, optional: true, required: false this._magneticStoreWriteProperties = new TimestreamwriteTableMagneticStoreWritePropertiesOutputReference(this, "magnetic_store_write_properties"); // retention_properties - computed: false, optional: true, required: false this._retentionProperties = new TimestreamwriteTableRetentionPropertiesOutputReference(this, "retention_properties"); // schema - computed: false, optional: true, required: false this._schema = new TimestreamwriteTableSchemaOutputReference(this, "schema"); this._databaseName = config.databaseName; this._id = config.id; this._region = config.region; this._tableName = config.tableName; this._tags = config.tags; this._tagsAll = config.tagsAll; this._magneticStoreWriteProperties.internalValue = config.magneticStoreWriteProperties; this._retentionProperties.internalValue = config.retentionProperties; this._schema.internalValue = config.schema; } // ========== // ATTRIBUTES // ========== // arn - computed: true, optional: false, required: false get arn() { return this.getStringAttribute('arn'); } get databaseName() { return this.getStringAttribute('database_name'); } set databaseName(value) { this._databaseName = value; } // Temporarily expose input value. Use with caution. get databaseNameInput() { return this._databaseName; } 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 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 tableName() { return this.getStringAttribute('table_name'); } set tableName(value) { this._tableName = value; } // Temporarily expose input value. Use with caution. get tableNameInput() { return this._tableName; } get tags() { return this.getStringMapAttribute('tags'); } set tags(value) { this._tags = value; } resetTags() { this._tags = undefined; } // Temporarily expose input value. Use with caution. get tagsInput() { return this._tags; } get tagsAll() { return this.getStringMapAttribute('tags_all'); } set tagsAll(value) { this._tagsAll = value; } resetTagsAll() { this._tagsAll = undefined; } // Temporarily expose input value. Use with caution. get tagsAllInput() { return this._tagsAll; } get magneticStoreWriteProperties() { return this._magneticStoreWriteProperties; } putMagneticStoreWriteProperties(value) { this._magneticStoreWriteProperties.internalValue = value; } resetMagneticStoreWriteProperties() { this._magneticStoreWriteProperties.internalValue = undefined; } // Temporarily expose input value. Use with caution. get magneticStoreWritePropertiesInput() { return this._magneticStoreWriteProperties.internalValue; } get retentionProperties() { return this._retentionProperties; } putRetentionProperties(value) { this._retentionProperties.internalValue = value; } resetRetentionProperties() { this._retentionProperties.internalValue = undefined; } // Temporarily expose input value. Use with caution. get retentionPropertiesInput() { return this._retentionProperties.internalValue; } get schema() { return this._schema; } putSchema(value) { this._schema.internalValue = value; } resetSchema() { this._schema.internalValue = undefined; } // Temporarily expose input value. Use with caution. get schemaInput() { return this._schema.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { database_name: cdktf.stringToTerraform(this._databaseName), id: cdktf.stringToTerraform(this._id), region: cdktf.stringToTerraform(this._region), table_name: cdktf.stringToTerraform(this._tableName), tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags), tags_all: cdktf.hashMapper(cdktf.stringToTerraform)(this._tagsAll), magnetic_store_write_properties: timestreamwriteTableMagneticStoreWritePropertiesToTerraform(this._magneticStoreWriteProperties.internalValue), retention_properties: timestreamwriteTableRetentionPropertiesToTerraform(this._retentionProperties.internalValue), schema: timestreamwriteTableSchemaToTerraform(this._schema.internalValue), }; } synthesizeHclAttributes() { const attrs = { database_name: { value: cdktf.stringToHclTerraform(this._databaseName), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, region: { value: cdktf.stringToHclTerraform(this._region), isBlock: false, type: "simple", storageClassType: "string", }, table_name: { value: cdktf.stringToHclTerraform(this._tableName), isBlock: false, type: "simple", storageClassType: "string", }, tags: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags), isBlock: false, type: "map", storageClassType: "stringMap", }, tags_all: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tagsAll), isBlock: false, type: "map", storageClassType: "stringMap", }, magnetic_store_write_properties: { value: timestreamwriteTableMagneticStoreWritePropertiesToHclTerraform(this._magneticStoreWriteProperties.internalValue), isBlock: true, type: "list", storageClassType: "TimestreamwriteTableMagneticStoreWritePropertiesList", }, retention_properties: { value: timestreamwriteTableRetentionPropertiesToHclTerraform(this._retentionProperties.internalValue), isBlock: true, type: "list", storageClassType: "TimestreamwriteTableRetentionPropertiesList", }, schema: { value: timestreamwriteTableSchemaToHclTerraform(this._schema.internalValue), isBlock: true, type: "list", storageClassType: "TimestreamwriteTableSchemaList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.TimestreamwriteTable = TimestreamwriteTable; _g = JSII_RTTI_SYMBOL_1; TimestreamwriteTable[_g] = { fqn: "@cdktf/provider-aws.timestreamwriteTable.TimestreamwriteTable", version: "21.22.1" }; // ================= // STATIC PROPERTIES // ================= TimestreamwriteTable.tfResourceType = "aws_timestreamwrite_table"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGltZXN0cmVhbXdyaXRlLXRhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFpRkEsa09BV0M7QUFHRCx3T0FrQ0M7QUE2SEQsb01BUUM7QUFHRCwwTUFnQkM7QUErREQsa0lBU0M7QUFHRCx3SUFzQkM7QUFtRkQsZ0hBU0M7QUFHRCxzSEFzQkM7QUFpRkQsZ0lBVUM7QUFHRCxzSUE0QkM7QUFvR0Qsc0ZBUUM7QUFHRCw0RkFnQkM7O0FBL3RCRCwrQkFBK0I7QUF3RS9CLFNBQWdCLDJHQUEyRyxDQUFDLE1BQTJOO0lBQ3JWLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxXQUFXLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxVQUFVLENBQUM7UUFDeEQsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxnQkFBZ0IsQ0FBQztRQUNwRSxVQUFVLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxRQUFRLENBQUM7UUFDckQsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxlQUFlLENBQUM7S0FDcEUsQ0FBQTtBQUNILENBQUM7QUFHRCxTQUFnQiw4R0FBOEcsQ0FBQyxNQUEyTjtJQUN4VixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLFdBQVcsRUFBRTtZQUNYLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLFVBQVUsQ0FBQztZQUNyRCxPQUFPLEVBQUUsS0FBSztZQUNkLElBQUksRUFBRSxRQUFRO1lBQ2QsZ0JBQWdCLEVBQUUsUUFBUTtTQUMzQjtRQUNELGlCQUFpQixFQUFFO1lBQ2pCLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLGdCQUFnQixDQUFDO1lBQzNELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0QsVUFBVSxFQUFFO1lBQ1YsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO1lBQ25ELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0QsaUJBQWlCLEVBQUU7WUFDakIsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsZUFBZSxDQUFDO1lBQzFELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO0tBQ0YsQ0FBQztJQUVGLDhCQUE4QjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDNUgsQ0FBQztBQUVELE1BQWEsK0dBQWdILFNBQVEsS0FBSyxDQUFDLGFBQWE7SUFHdEo7OztNQUdFO0lBQ0YsWUFBbUIsaUJBQTZDLEVBQUUsa0JBQTBCO1FBQzFGLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFQakQsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFROUIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3RDLE1BQU0sbUJBQW1CLEdBQVEsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNuQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLG1CQUFtQixDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3BELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN6QyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLG1CQUFtQixDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNoRSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsbUJBQW1CLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDaEQsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGdCQUFnQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3hDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsbUJBQW1CLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUM5RCxDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDeEQsQ0FBQztJQUVELElBQVcsYUFBYSxDQUFDLEtBQW1IO1FBQzFJLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1lBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUM7WUFDbkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7WUFDM0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztRQUNwQyxDQUFDO2FBQ0ksQ0FBQztZQUNKLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztZQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDO1lBQ2hELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUNoQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUlELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsSUFBVyxVQUFVLENBQUMsS0FBYTtRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBQ00sZUFBZTtRQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztJQUMvQixDQUFDO0lBQ0Qsb0RBQW9EO0lBQ3BELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUlELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNELElBQVcsZ0JBQWdCLENBQUMsS0FBYTtRQUN2QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFDTSxxQkFBcUI7UUFDMUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztJQUNyQyxDQUFDO0lBQ0Qsb0RBQW9EO0lBQ3BELElBQVcscUJBQXFCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFJRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUNELElBQVcsUUFBUSxDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUNNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUNELG9EQUFvRDtJQUNwRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFJRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQ0QsSUFBVyxlQUFlLENBQUMsS0FBYTtRQUN0QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0lBQ2hDLENBQUM7SUFDTSxvQkFBb0I7UUFDekIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztJQUNwQyxDQUFDO0lBQ0Qsb0RBQW9EO0lBQ3BELElBQVcsb0JBQW9CO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7O0FBaEhILDBPQWlIQzs7O0FBVUQsU0FBZ0IsNEZBQTRGLENBQUMsTUFBNkw7SUFDeFMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTztRQUNMLGdCQUFnQixFQUFFLDJHQUEyRyxDQUFDLE1BQU8sQ0FBQyxlQUFlLENBQUM7S0FDdkosQ0FBQTtBQUNILENBQUM7QUFHRCxTQUFnQiwrRkFBK0YsQ0FBQyxNQUE2TDtJQUMzUyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLGdCQUFnQixFQUFFO1lBQ2hCLEtBQUssRUFBRSw4R0FBOEcsQ0FBQyxNQUFPLENBQUMsZUFBZSxDQUFDO1lBQzlJLE9BQU8sRUFBRSxJQUFJO1lBQ2IsSUFBSSxFQUFFLE1BQU07WUFDWixnQkFBZ0IsRUFBRSxzR0FBc0c7U0FDekg7S0FDRixDQUFDO0lBRUYsOEJBQThCO0lBQzlCLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQztBQUM1SCxDQUFDO0FBRUQsTUFBYSxnR0FBaUcsU0FBUSxLQUFLLENBQUMsYUFBYTtJQUd2STs7O01BR0U7SUFDRixZQUFtQixpQkFBNkMsRUFBRSxrQkFBMEI7UUFDMUYsS0FBSyxDQUFDLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQVBqRCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQStCOUIsc0VBQXNFO1FBQzlELHFCQUFnQixHQUFHLElBQUksK0dBQStHLENBQUMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUF4QnpLLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN0QyxNQUFNLG1CQUFtQixHQUFRLEVBQUUsQ0FBQztRQUNwQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdkQsWUFBWSxHQUFHLElBQUksQ0FBQztZQUNwQixtQkFBbUIsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDeEQsQ0FBQztJQUVELElBQVcsYUFBYSxDQUFDLEtBQW9HO1FBQzNILElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO1FBQ2xELENBQUM7YUFDSSxDQUFDO1lBQ0osSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1FBQzlELENBQUM7SUFDSCxDQUFDO0lBSUQsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFDTSxrQkFBa0IsQ0FBQyxLQUF1RztRQUMvSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUM5QyxDQUFDO0lBQ00sb0JBQW9CO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFDRCxvREFBb0Q7SUFDcEQsSUFBVyxvQkFBb0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7O0FBOUNILDRNQStDQzs7O0FBY0QsU0FBZ0IsMkRBQTJELENBQUMsTUFBMkg7SUFDck0sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTztRQUNMLDRCQUE0QixFQUFFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFPLENBQUMseUJBQXlCLENBQUM7UUFDekYscUNBQXFDLEVBQUUsNEZBQTRGLENBQUMsTUFBTyxDQUFDLGlDQUFpQyxDQUFDO0tBQy9LLENBQUE7QUFDSCxDQUFDO0FBR0QsU0FBZ0IsOERBQThELENBQUMsTUFBMkg7SUFDeE0sSUFBSSxDQUFDLEtBQUssQ0FBQy