// UnmarshalJSON sets the object from the provided JSON representation
966734
func (l *OpsWorksStackStackConfigurationManagerList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := OpsWorksStackStackConfigurationManager{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = OpsWorksStackStackConfigurationManagerList{item}
		return nil
	}
	list := []OpsWorksStackStackConfigurationManager{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = OpsWorksStackStackConfigurationManagerList(list)
		return nil
	}
	return err
}
105677
func (l *AutoScalingScalingPolicyMetricDimensionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingScalingPolicyMetricDimension{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingScalingPolicyMetricDimensionList{item}
		return nil
	}
	list := []AutoScalingScalingPolicyMetricDimension{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingScalingPolicyMetricDimensionList(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
}
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
}
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
}
120923
func (l *EMRInstanceFleetConfigEbsConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceFleetConfigEbsConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceFleetConfigEbsConfigurationList{item}
		return nil
	}
	list := []EMRInstanceFleetConfigEbsConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceFleetConfigEbsConfigurationList(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
}
955273
func (l *EMRClusterMetricDimensionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterMetricDimension{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterMetricDimensionList{item}
		return nil
	}
	list := []EMRClusterMetricDimension{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterMetricDimensionList(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
}
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
}
690167
func (l *AutoScalingScalingPolicyTargetTrackingConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingScalingPolicyTargetTrackingConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingScalingPolicyTargetTrackingConfigurationList{item}
		return nil
	}
	list := []AutoScalingScalingPolicyTargetTrackingConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingScalingPolicyTargetTrackingConfigurationList(list)
		return nil
	}
	return err
}
1091953
func (l *EMRInstanceGroupConfigAutoScalingPolicyList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigAutoScalingPolicy{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigAutoScalingPolicyList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigAutoScalingPolicy{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigAutoScalingPolicyList(list)
		return nil
	}
	return err
}
32011
func (l *APIGatewayDocumentationPartLocationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayDocumentationPartLocation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayDocumentationPartLocationList{item}
		return nil
	}
	list := []APIGatewayDocumentationPartLocation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayDocumentationPartLocationList(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
}
480057
func (l *IoTThingAttributePayloadList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := IoTThingAttributePayload{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = IoTThingAttributePayloadList{item}
		return nil
	}
	list := []IoTThingAttributePayload{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = IoTThingAttributePayloadList(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
}
662151
func (l *AutoScalingAutoScalingGroupMetricsCollectionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingAutoScalingGroupMetricsCollection{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingAutoScalingGroupMetricsCollectionList{item}
		return nil
	}
	list := []AutoScalingAutoScalingGroupMetricsCollection{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingAutoScalingGroupMetricsCollectionList(list)
		return nil
	}
	return err
}