// UnmarshalJSON sets the object from the provided JSON representation
330745
func (l *EMRInstanceGroupConfigScalingRuleList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigScalingRule{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigScalingRuleList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigScalingRule{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigScalingRuleList(list)
		return nil
	}
	return err
}
292672
func (l *CloudFrontStreamingDistributionS3OriginList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontStreamingDistributionS3Origin{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontStreamingDistributionS3OriginList{item}
		return nil
	}
	list := []CloudFrontStreamingDistributionS3Origin{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontStreamingDistributionS3OriginList(list)
		return nil
	}
	return err
}
634638
func (l *ApplicationAutoScalingScalingPolicyStepAdjustmentList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ApplicationAutoScalingScalingPolicyStepAdjustment{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ApplicationAutoScalingScalingPolicyStepAdjustmentList{item}
		return nil
	}
	list := []ApplicationAutoScalingScalingPolicyStepAdjustment{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ApplicationAutoScalingScalingPolicyStepAdjustmentList(list)
		return nil
	}
	return err
}
22455
func (l *EMRClusterApplicationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterApplication{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterApplicationList{item}
		return nil
	}
	list := []EMRClusterApplication{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterApplicationList(list)
		return nil
	}
	return err
}
1121859
func (l *AutoScalingPlansScalingPlanPredefinedScalingMetricSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingPlansScalingPlanPredefinedScalingMetricSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingPlansScalingPlanPredefinedScalingMetricSpecificationList{item}
		return nil
	}
	list := []AutoScalingPlansScalingPlanPredefinedScalingMetricSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingPlansScalingPlanPredefinedScalingMetricSpecificationList(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
}
615342
func (l *SSMAssociationS3OutputLocationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := SSMAssociationS3OutputLocation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = SSMAssociationS3OutputLocationList{item}
		return nil
	}
	list := []SSMAssociationS3OutputLocation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = SSMAssociationS3OutputLocationList(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
}
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
}
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
}
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
}
477189
func (l *EMRClusterInstanceFleetProvisioningSpecificationsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterInstanceFleetProvisioningSpecifications{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterInstanceFleetProvisioningSpecificationsList{item}
		return nil
	}
	list := []EMRClusterInstanceFleetProvisioningSpecifications{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterInstanceFleetProvisioningSpecificationsList(list)
		return nil
	}
	return err
}
385847
func (l *SSMAssociationInstanceAssociationOutputLocationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := SSMAssociationInstanceAssociationOutputLocation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = SSMAssociationInstanceAssociationOutputLocationList{item}
		return nil
	}
	list := []SSMAssociationInstanceAssociationOutputLocation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = SSMAssociationInstanceAssociationOutputLocationList(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
}
683489
func (l *EC2NetworkACLEntryIcmpList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2NetworkACLEntryIcmp{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2NetworkACLEntryIcmpList{item}
		return nil
	}
	list := []EC2NetworkACLEntryIcmp{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2NetworkACLEntryIcmpList(list)
		return nil
	}
	return err
}
976360
func (l *APIGatewayRestAPIS3LocationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayRestAPIS3Location{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayRestAPIS3LocationList{item}
		return nil
	}
	list := []APIGatewayRestAPIS3Location{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayRestAPIS3LocationList(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
}