// UnmarshalJSON sets the object from the provided JSON representation
515562
func (l *Route53HostedZoneVPCList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := Route53HostedZoneVPC{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = Route53HostedZoneVPCList{item}
		return nil
	}
	list := []Route53HostedZoneVPC{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = Route53HostedZoneVPCList(list)
		return nil
	}
	return err
}
1241172
func (l *S3BucketWebsiteConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := S3BucketWebsiteConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = S3BucketWebsiteConfigurationList{item}
		return nil
	}
	list := []S3BucketWebsiteConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = S3BucketWebsiteConfigurationList(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
}
70919
func (l *AutoScalingPlansScalingPlanScalingInstructionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingPlansScalingPlanScalingInstruction{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingPlansScalingPlanScalingInstructionList{item}
		return nil
	}
	list := []AutoScalingPlansScalingPlanScalingInstruction{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingPlansScalingPlanScalingInstructionList(list)
		return nil
	}
	return err
}
212916
func (l *CloudFrontDistributionLambdaFunctionAssociationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontDistributionLambdaFunctionAssociation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontDistributionLambdaFunctionAssociationList{item}
		return nil
	}
	list := []CloudFrontDistributionLambdaFunctionAssociation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontDistributionLambdaFunctionAssociationList(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
}
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
}
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
}
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
}
1070531
func (l *CloudFrontDistributionGeoRestrictionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontDistributionGeoRestriction{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontDistributionGeoRestrictionList{item}
		return nil
	}
	list := []CloudFrontDistributionGeoRestriction{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontDistributionGeoRestrictionList(list)
		return nil
	}
	return err
}
392659
func (l *DynamoDBTableLocalSecondaryIndexList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := DynamoDBTableLocalSecondaryIndex{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = DynamoDBTableLocalSecondaryIndexList{item}
		return nil
	}
	list := []DynamoDBTableLocalSecondaryIndex{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = DynamoDBTableLocalSecondaryIndexList(list)
		return nil
	}
	return err
}
759451
func (l *ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicyList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicyList{item}
		return nil
	}
	list := []ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicyList(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
}
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
}
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
}
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
}
679953
func (l *AutoScalingAutoScalingGroupLifecycleHookSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingAutoScalingGroupLifecycleHookSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingAutoScalingGroupLifecycleHookSpecificationList{item}
		return nil
	}
	list := []AutoScalingAutoScalingGroupLifecycleHookSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingAutoScalingGroupLifecycleHookSpecificationList(list)
		return nil
	}
	return err
}