// UnmarshalJSON sets the object from the provided JSON representation
184032
func (l *OpsWorksLayerAutoScalingThresholdsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := OpsWorksLayerAutoScalingThresholds{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = OpsWorksLayerAutoScalingThresholdsList{item}
		return nil
	}
	list := []OpsWorksLayerAutoScalingThresholds{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = OpsWorksLayerAutoScalingThresholdsList(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
}
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
}
788768
func (l *AutoScalingScalingPolicyCustomizedMetricSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingScalingPolicyCustomizedMetricSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingScalingPolicyCustomizedMetricSpecificationList{item}
		return nil
	}
	list := []AutoScalingScalingPolicyCustomizedMetricSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingScalingPolicyCustomizedMetricSpecificationList(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
}
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
}
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
}
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
}
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
}
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
}
884060
func (l *KinesisAnalyticsApplicationKinesisStreamsInputList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := KinesisAnalyticsApplicationKinesisStreamsInput{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = KinesisAnalyticsApplicationKinesisStreamsInputList{item}
		return nil
	}
	list := []KinesisAnalyticsApplicationKinesisStreamsInput{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = KinesisAnalyticsApplicationKinesisStreamsInputList(list)
		return nil
	}
	return err
}
871584
func (l *EMRClusterScalingTriggerList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterScalingTrigger{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterScalingTriggerList{item}
		return nil
	}
	list := []EMRClusterScalingTrigger{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterScalingTriggerList(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
}
1141280
func (l *EMRInstanceGroupConfigMetricDimensionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigMetricDimension{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigMetricDimensionList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigMetricDimension{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigMetricDimensionList(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
}
37973
func (l *APIGatewayStageMethodSettingList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayStageMethodSetting{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayStageMethodSettingList{item}
		return nil
	}
	list := []APIGatewayStageMethodSetting{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayStageMethodSettingList(list)
		return nil
	}
	return err
}
6353
func (l *WAFRegionalXSSMatchSetXSSMatchTupleList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFRegionalXSSMatchSetXSSMatchTuple{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFRegionalXSSMatchSetXSSMatchTupleList{item}
		return nil
	}
	list := []WAFRegionalXSSMatchSetXSSMatchTuple{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFRegionalXSSMatchSetXSSMatchTupleList(list)
		return nil
	}
	return err
}