// UnmarshalJSON sets the object from the provided JSON representation
14023
func (l *ElasticLoadBalancingLoadBalancerConnectionDrainingPolicyList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ElasticLoadBalancingLoadBalancerConnectionDrainingPolicyList{item}
		return nil
	}
	list := []ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ElasticLoadBalancingLoadBalancerConnectionDrainingPolicyList(list)
		return nil
	}
	return err
}
675595
func (l *CloudFrontStreamingDistributionStreamingDistributionConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontStreamingDistributionStreamingDistributionConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontStreamingDistributionStreamingDistributionConfigList{item}
		return nil
	}
	list := []CloudFrontStreamingDistributionStreamingDistributionConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontStreamingDistributionStreamingDistributionConfigList(list)
		return nil
	}
	return err
}
217871
func (l *APIGatewayAPIKeyStageKeyList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayAPIKeyStageKey{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayAPIKeyStageKeyList{item}
		return nil
	}
	list := []APIGatewayAPIKeyStageKey{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayAPIKeyStageKeyList(list)
		return nil
	}
	return err
}
348860
func (l *EMRClusterCloudWatchAlarmDefinitionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterCloudWatchAlarmDefinition{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterCloudWatchAlarmDefinitionList{item}
		return nil
	}
	list := []EMRClusterCloudWatchAlarmDefinition{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterCloudWatchAlarmDefinitionList(list)
		return nil
	}
	return err
}
1221087
func (l *EMRClusterSpotProvisioningSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterSpotProvisioningSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterSpotProvisioningSpecificationList{item}
		return nil
	}
	list := []EMRClusterSpotProvisioningSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterSpotProvisioningSpecificationList(list)
		return nil
	}
	return err
}
1088834
func (l *KinesisFirehoseDeliveryStreamProcessorParameterList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := KinesisFirehoseDeliveryStreamProcessorParameter{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = KinesisFirehoseDeliveryStreamProcessorParameterList{item}
		return nil
	}
	list := []KinesisFirehoseDeliveryStreamProcessorParameter{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = KinesisFirehoseDeliveryStreamProcessorParameterList(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
}
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
}
460406
func (l *EC2SpotFleetIamInstanceProfileSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetIamInstanceProfileSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetIamInstanceProfileSpecificationList{item}
		return nil
	}
	list := []EC2SpotFleetIamInstanceProfileSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetIamInstanceProfileSpecificationList(list)
		return nil
	}
	return err
}
1363445
func (l *WAFXSSMatchSetFieldToMatchList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFXSSMatchSetFieldToMatch{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFXSSMatchSetFieldToMatchList{item}
		return nil
	}
	list := []WAFXSSMatchSetFieldToMatch{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFXSSMatchSetFieldToMatchList(list)
		return nil
	}
	return err
}
390051
func (l *EMRClusterInstanceFleetConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterInstanceFleetConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterInstanceFleetConfigList{item}
		return nil
	}
	list := []EMRClusterInstanceFleetConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterInstanceFleetConfigList(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
}
168916
func (l *AutoScalingAutoScalingGroupNotificationConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingAutoScalingGroupNotificationConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingAutoScalingGroupNotificationConfigurationList{item}
		return nil
	}
	list := []AutoScalingAutoScalingGroupNotificationConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingAutoScalingGroupNotificationConfigurationList(list)
		return nil
	}
	return err
}
915706
func (l *KinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = KinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsList{item}
		return nil
	}
	list := []KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = KinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsList(list)
		return nil
	}
	return err
}
172155
func (l *LogsMetricFilterMetricTransformationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := LogsMetricFilterMetricTransformation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = LogsMetricFilterMetricTransformationList{item}
		return nil
	}
	list := []LogsMetricFilterMetricTransformation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = LogsMetricFilterMetricTransformationList(list)
		return nil
	}
	return err
}
859955
func (l *KinesisFirehoseDeliveryStreamElasticsearchRetryOptionsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := KinesisFirehoseDeliveryStreamElasticsearchRetryOptions{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = KinesisFirehoseDeliveryStreamElasticsearchRetryOptionsList{item}
		return nil
	}
	list := []KinesisFirehoseDeliveryStreamElasticsearchRetryOptions{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = KinesisFirehoseDeliveryStreamElasticsearchRetryOptionsList(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
}