// UnmarshalJSON sets the object from the provided JSON representation
179041
func (l *SESConfigurationSetEventDestinationEventDestinationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := SESConfigurationSetEventDestinationEventDestination{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = SESConfigurationSetEventDestinationEventDestinationList{item}
		return nil
	}
	list := []SESConfigurationSetEventDestinationEventDestination{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = SESConfigurationSetEventDestinationEventDestinationList(list)
		return nil
	}
	return err
}
540266
func (l *EC2InstanceElasticGpuSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2InstanceElasticGpuSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2InstanceElasticGpuSpecificationList{item}
		return nil
	}
	list := []EC2InstanceElasticGpuSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2InstanceElasticGpuSpecificationList(list)
		return nil
	}
	return err
}
428399
func (l *CloudFrontDistributionDefaultCacheBehaviorList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontDistributionDefaultCacheBehavior{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontDistributionDefaultCacheBehaviorList{item}
		return nil
	}
	list := []CloudFrontDistributionDefaultCacheBehavior{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontDistributionDefaultCacheBehaviorList(list)
		return nil
	}
	return err
}
212916
func (l *CloudFrontDistributionLambdaFunctionAssociationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontDistributionLambdaFunctionAssociation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontDistributionLambdaFunctionAssociationList{item}
		return nil
	}
	list := []CloudFrontDistributionLambdaFunctionAssociation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontDistributionLambdaFunctionAssociationList(list)
		return nil
	}
	return err
}
1171840
func (l *APIGatewayUsagePlanQuotaSettingsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayUsagePlanQuotaSettings{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayUsagePlanQuotaSettingsList{item}
		return nil
	}
	list := []APIGatewayUsagePlanQuotaSettings{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayUsagePlanQuotaSettingsList(list)
		return nil
	}
	return err
}
1078376
func (l *EMRInstanceGroupConfigScalingActionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigScalingAction{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigScalingActionList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigScalingAction{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigScalingActionList(list)
		return nil
	}
	return err
}
486335
func (l *ElasticLoadBalancingV2TargetGroupTargetDescriptionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ElasticLoadBalancingV2TargetGroupTargetDescription{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ElasticLoadBalancingV2TargetGroupTargetDescriptionList{item}
		return nil
	}
	list := []ElasticLoadBalancingV2TargetGroupTargetDescription{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ElasticLoadBalancingV2TargetGroupTargetDescriptionList(list)
		return nil
	}
	return err
}
1354824
func (l *EC2SpotFleetSpotFleetMonitoringList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetSpotFleetMonitoring{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetSpotFleetMonitoringList{item}
		return nil
	}
	list := []EC2SpotFleetSpotFleetMonitoring{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetSpotFleetMonitoringList(list)
		return nil
	}
	return err
}
152378
func (l *EMRInstanceGroupConfigScalingConstraintsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigScalingConstraints{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigScalingConstraintsList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigScalingConstraints{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigScalingConstraintsList(list)
		return nil
	}
	return err
}
450173
func (l *KinesisFirehoseDeliveryStreamBufferingHintsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := KinesisFirehoseDeliveryStreamBufferingHints{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = KinesisFirehoseDeliveryStreamBufferingHintsList{item}
		return nil
	}
	list := []KinesisFirehoseDeliveryStreamBufferingHints{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = KinesisFirehoseDeliveryStreamBufferingHintsList(list)
		return nil
	}
	return err
}
827906
func (l *ElasticsearchDomainElasticsearchClusterConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ElasticsearchDomainElasticsearchClusterConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ElasticsearchDomainElasticsearchClusterConfigList{item}
		return nil
	}
	list := []ElasticsearchDomainElasticsearchClusterConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ElasticsearchDomainElasticsearchClusterConfigList(list)
		return nil
	}
	return err
}
989342
func (l *EMRInstanceFleetConfigInstanceTypeConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceFleetConfigInstanceTypeConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceFleetConfigInstanceTypeConfigList{item}
		return nil
	}
	list := []EMRInstanceFleetConfigInstanceTypeConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceFleetConfigInstanceTypeConfigList(list)
		return nil
	}
	return err
}
68129
func (l *DynamoDBTableGlobalSecondaryIndexList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := DynamoDBTableGlobalSecondaryIndex{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = DynamoDBTableGlobalSecondaryIndexList{item}
		return nil
	}
	list := []DynamoDBTableGlobalSecondaryIndex{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = DynamoDBTableGlobalSecondaryIndexList(list)
		return nil
	}
	return err
}
918730
func (l *EMRInstanceGroupConfigCloudWatchAlarmDefinitionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigCloudWatchAlarmDefinition{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigCloudWatchAlarmDefinitionList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigCloudWatchAlarmDefinition{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigCloudWatchAlarmDefinitionList(list)
		return nil
	}
	return err
}
60698
func (l *AutoScalingScalingPolicyPredefinedMetricSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingScalingPolicyPredefinedMetricSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingScalingPolicyPredefinedMetricSpecificationList{item}
		return nil
	}
	list := []AutoScalingScalingPolicyPredefinedMetricSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingScalingPolicyPredefinedMetricSpecificationList(list)
		return nil
	}
	return err
}
462315
func (l *APIGatewayUsagePlanThrottleSettingsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayUsagePlanThrottleSettings{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayUsagePlanThrottleSettingsList{item}
		return nil
	}
	list := []APIGatewayUsagePlanThrottleSettings{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayUsagePlanThrottleSettingsList(list)
		return nil
	}
	return err
}
528671
func (l *CloudWatchAlarmDimensionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudWatchAlarmDimension{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudWatchAlarmDimensionList{item}
		return nil
	}
	list := []CloudWatchAlarmDimension{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudWatchAlarmDimensionList(list)
		return nil
	}
	return err
}