// UnmarshalJSON sets the object from the provided JSON representation
770464
func (l *SESConfigurationSetEventDestinationCloudWatchDestinationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := SESConfigurationSetEventDestinationCloudWatchDestination{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = SESConfigurationSetEventDestinationCloudWatchDestinationList{item}
		return nil
	}
	list := []SESConfigurationSetEventDestinationCloudWatchDestination{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = SESConfigurationSetEventDestinationCloudWatchDestinationList(list)
		return nil
	}
	return err
}
803494
func (l *EMRInstanceGroupConfigEbsConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigEbsConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigEbsConfigurationList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigEbsConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigEbsConfigurationList(list)
		return nil
	}
	return err
}
1046184
func (l *EMRClusterInstanceGroupConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterInstanceGroupConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterInstanceGroupConfigList{item}
		return nil
	}
	list := []EMRClusterInstanceGroupConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterInstanceGroupConfigList(list)
		return nil
	}
	return err
}
83672
func (l *ElasticLoadBalancingV2LoadBalancerSubnetMappingList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ElasticLoadBalancingV2LoadBalancerSubnetMapping{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ElasticLoadBalancingV2LoadBalancerSubnetMappingList{item}
		return nil
	}
	list := []ElasticLoadBalancingV2LoadBalancerSubnetMapping{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ElasticLoadBalancingV2LoadBalancerSubnetMappingList(list)
		return nil
	}
	return err
}
214873
func (l *EC2SpotFleetBlockDeviceMappingList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetBlockDeviceMapping{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetBlockDeviceMappingList{item}
		return nil
	}
	list := []EC2SpotFleetBlockDeviceMapping{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetBlockDeviceMappingList(list)
		return nil
	}
	return err
}
176712
func (l *EC2SpotFleetEbsBlockDeviceList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetEbsBlockDevice{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetEbsBlockDeviceList{item}
		return nil
	}
	list := []EC2SpotFleetEbsBlockDevice{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetEbsBlockDeviceList(list)
		return nil
	}
	return err
}
268593
func (l *EC2SpotFleetSpotFleetLaunchSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetSpotFleetLaunchSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetSpotFleetLaunchSpecificationList{item}
		return nil
	}
	list := []EC2SpotFleetSpotFleetLaunchSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetSpotFleetLaunchSpecificationList(list)
		return nil
	}
	return err
}
393027
func (l *AutoScalingPlansScalingPlanMetricDimensionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingPlansScalingPlanMetricDimension{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingPlansScalingPlanMetricDimensionList{item}
		return nil
	}
	list := []AutoScalingPlansScalingPlanMetricDimension{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingPlansScalingPlanMetricDimensionList(list)
		return nil
	}
	return err
}
1171805
func (l *EMRInstanceGroupConfigConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigConfigurationList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigConfigurationList(list)
		return nil
	}
	return err
}
55730
func (l *AppSyncDataSourceLambdaConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AppSyncDataSourceLambdaConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AppSyncDataSourceLambdaConfigList{item}
		return nil
	}
	list := []AppSyncDataSourceLambdaConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AppSyncDataSourceLambdaConfigList(list)
		return nil
	}
	return err
}
1263211
func (l *EMRInstanceGroupConfigVolumeSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigVolumeSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigVolumeSpecificationList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigVolumeSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigVolumeSpecificationList(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
}
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
}
440865
func (l *CloudFrontDistributionS3OriginConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontDistributionS3OriginConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontDistributionS3OriginConfigList{item}
		return nil
	}
	list := []CloudFrontDistributionS3OriginConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontDistributionS3OriginConfigList(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
}
1315996
func (l *EC2SpotFleetInstanceIPv6AddressList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetInstanceIPv6Address{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetInstanceIPv6AddressList{item}
		return nil
	}
	list := []EC2SpotFleetInstanceIPv6Address{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetInstanceIPv6AddressList(list)
		return nil
	}
	return err
}
243766
func (l *EC2SpotFleetGroupIDentifierList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetGroupIDentifier{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetGroupIDentifierList{item}
		return nil
	}
	list := []EC2SpotFleetGroupIDentifier{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetGroupIDentifierList(list)
		return nil
	}
	return err
}