// UnmarshalJSON sets the object from the provided JSON representation
483991
func (l *CognitoUserPoolSchemaAttributeList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CognitoUserPoolSchemaAttribute{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CognitoUserPoolSchemaAttributeList{item}
		return nil
	}
	list := []CognitoUserPoolSchemaAttribute{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CognitoUserPoolSchemaAttributeList(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
}
170874
func (l *APIGatewayMethodMethodResponseList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayMethodMethodResponse{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayMethodMethodResponseList{item}
		return nil
	}
	list := []APIGatewayMethodMethodResponse{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayMethodMethodResponseList(list)
		return nil
	}
	return err
}
1171840
func (l *APIGatewayUsagePlanQuotaSettingsList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayUsagePlanQuotaSettings{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayUsagePlanQuotaSettingsList{item}
		return nil
	}
	list := []APIGatewayUsagePlanQuotaSettings{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayUsagePlanQuotaSettingsList(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
}
181750
func (l *APIGatewayDomainNameEndpointConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayDomainNameEndpointConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayDomainNameEndpointConfigurationList{item}
		return nil
	}
	list := []APIGatewayDomainNameEndpointConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayDomainNameEndpointConfigurationList(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
}
1363445
func (l *WAFXSSMatchSetFieldToMatchList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFXSSMatchSetFieldToMatch{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFXSSMatchSetFieldToMatchList{item}
		return nil
	}
	list := []WAFXSSMatchSetFieldToMatch{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFXSSMatchSetFieldToMatchList(list)
		return nil
	}
	return err
}
542474
func (l *EMRStepHadoopJarStepConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRStepHadoopJarStepConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRStepHadoopJarStepConfigList{item}
		return nil
	}
	list := []EMRStepHadoopJarStepConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRStepHadoopJarStepConfigList(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
}
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
}
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
}
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
}
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
}
1153472
func (l *ECSTaskDefinitionKernelCapabilitiesList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ECSTaskDefinitionKernelCapabilities{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ECSTaskDefinitionKernelCapabilitiesList{item}
		return nil
	}
	list := []ECSTaskDefinitionKernelCapabilities{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ECSTaskDefinitionKernelCapabilitiesList(list)
		return nil
	}
	return err
}
497914
func (l *EMRClusterEbsBlockDeviceConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterEbsBlockDeviceConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterEbsBlockDeviceConfigList{item}
		return nil
	}
	list := []EMRClusterEbsBlockDeviceConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterEbsBlockDeviceConfigList(list)
		return nil
	}
	return err
}
989342
func (l *EMRInstanceFleetConfigInstanceTypeConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceFleetConfigInstanceTypeConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceFleetConfigInstanceTypeConfigList{item}
		return nil
	}
	list := []EMRInstanceFleetConfigInstanceTypeConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceFleetConfigInstanceTypeConfigList(list)
		return nil
	}
	return err
}