// UnmarshalJSON sets the object from the provided JSON representation
503218
func (l *ECSTaskDefinitionTaskDefinitionPlacementConstraintList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := ECSTaskDefinitionTaskDefinitionPlacementConstraint{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = ECSTaskDefinitionTaskDefinitionPlacementConstraintList{item}
		return nil
	}
	list := []ECSTaskDefinitionTaskDefinitionPlacementConstraint{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = ECSTaskDefinitionTaskDefinitionPlacementConstraintList(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
}
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
}
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
}
217871
func (l *APIGatewayAPIKeyStageKeyList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := APIGatewayAPIKeyStageKey{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = APIGatewayAPIKeyStageKeyList{item}
		return nil
	}
	list := []APIGatewayAPIKeyStageKey{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = APIGatewayAPIKeyStageKeyList(list)
		return nil
	}
	return err
}
1212824
func (l *SESReceiptRuleAddHeaderActionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := SESReceiptRuleAddHeaderAction{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = SESReceiptRuleAddHeaderActionList{item}
		return nil
	}
	list := []SESReceiptRuleAddHeaderAction{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = SESReceiptRuleAddHeaderActionList(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
}
1221087
func (l *EMRClusterSpotProvisioningSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterSpotProvisioningSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterSpotProvisioningSpecificationList{item}
		return nil
	}
	list := []EMRClusterSpotProvisioningSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterSpotProvisioningSpecificationList(list)
		return nil
	}
	return err
}
1260665
func (l *EMRClusterScalingActionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterScalingAction{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterScalingActionList{item}
		return nil
	}
	list := []EMRClusterScalingAction{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterScalingActionList(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
}
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
}
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
}
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
}
340571
func (l *WAFSizeConstraintSetFieldToMatchList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := WAFSizeConstraintSetFieldToMatch{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = WAFSizeConstraintSetFieldToMatchList{item}
		return nil
	}
	list := []WAFSizeConstraintSetFieldToMatch{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = WAFSizeConstraintSetFieldToMatchList(list)
		return nil
	}
	return err
}
68129
func (l *DynamoDBTableGlobalSecondaryIndexList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := DynamoDBTableGlobalSecondaryIndex{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = DynamoDBTableGlobalSecondaryIndexList{item}
		return nil
	}
	list := []DynamoDBTableGlobalSecondaryIndex{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = DynamoDBTableGlobalSecondaryIndexList(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
}
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
}