// UnmarshalJSON sets the object from the provided JSON representation
517847
func (l *GlueCrawlerS3TargetList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := GlueCrawlerS3Target{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = GlueCrawlerS3TargetList{item}
		return nil
	}
	list := []GlueCrawlerS3Target{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = GlueCrawlerS3TargetList(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
}
528671
func (l *CloudWatchAlarmDimensionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudWatchAlarmDimension{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudWatchAlarmDimensionList{item}
		return nil
	}
	list := []CloudWatchAlarmDimension{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudWatchAlarmDimensionList(list)
		return nil
	}
	return err
}
889263
func (l *SSMAssociationTargetList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := SSMAssociationTarget{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = SSMAssociationTargetList{item}
		return nil
	}
	list := []SSMAssociationTarget{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = SSMAssociationTargetList(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
}
875837
func (l *WAFRegionalSizeConstraintSetFieldToMatchList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFRegionalSizeConstraintSetFieldToMatch{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFRegionalSizeConstraintSetFieldToMatchList{item}
		return nil
	}
	list := []WAFRegionalSizeConstraintSetFieldToMatch{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFRegionalSizeConstraintSetFieldToMatchList(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
}
378420
func (l *EC2SpotFleetInstanceNetworkInterfaceSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetInstanceNetworkInterfaceSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetInstanceNetworkInterfaceSpecificationList{item}
		return nil
	}
	list := []EC2SpotFleetInstanceNetworkInterfaceSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetInstanceNetworkInterfaceSpecificationList(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
}
827906
func (l *ElasticsearchDomainElasticsearchClusterConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ElasticsearchDomainElasticsearchClusterConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ElasticsearchDomainElasticsearchClusterConfigList{item}
		return nil
	}
	list := []ElasticsearchDomainElasticsearchClusterConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ElasticsearchDomainElasticsearchClusterConfigList(list)
		return nil
	}
	return err
}
419221
func (l *WAFXSSMatchSetXSSMatchTupleList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFXSSMatchSetXSSMatchTuple{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFXSSMatchSetXSSMatchTupleList{item}
		return nil
	}
	list := []WAFXSSMatchSetXSSMatchTuple{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFXSSMatchSetXSSMatchTupleList(list)
		return nil
	}
	return err
}
1046184
func (l *EMRClusterInstanceGroupConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterInstanceGroupConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterInstanceGroupConfigList{item}
		return nil
	}
	list := []EMRClusterInstanceGroupConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterInstanceGroupConfigList(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
}
547626
func (l *WAFRegionalByteMatchSetByteMatchTupleList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFRegionalByteMatchSetByteMatchTuple{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFRegionalByteMatchSetByteMatchTupleList{item}
		return nil
	}
	list := []WAFRegionalByteMatchSetByteMatchTuple{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFRegionalByteMatchSetByteMatchTupleList(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
}
675595
func (l *CloudFrontStreamingDistributionStreamingDistributionConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontStreamingDistributionStreamingDistributionConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontStreamingDistributionStreamingDistributionConfigList{item}
		return nil
	}
	list := []CloudFrontStreamingDistributionStreamingDistributionConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontStreamingDistributionStreamingDistributionConfigList(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
}