// UnmarshalJSON sets the object from the provided JSON representation
517051
func (l *IoTTopicRuleTopicRulePayloadList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := IoTTopicRuleTopicRulePayload{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = IoTTopicRuleTopicRulePayloadList{item}
		return nil
	}
	list := []IoTTopicRuleTopicRulePayload{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = IoTTopicRuleTopicRulePayloadList(list)
		return nil
	}
	return err
}
268593
func (l *EC2SpotFleetSpotFleetLaunchSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetSpotFleetLaunchSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetSpotFleetLaunchSpecificationList{item}
		return nil
	}
	list := []EC2SpotFleetSpotFleetLaunchSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetSpotFleetLaunchSpecificationList(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
}
1146060
func (l *EMRInstanceGroupConfigEbsBlockDeviceConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigEbsBlockDeviceConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigEbsBlockDeviceConfigList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigEbsBlockDeviceConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigEbsBlockDeviceConfigList(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
}
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
}
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
}
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
}
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
}
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
}
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
}
168916
func (l *AutoScalingAutoScalingGroupNotificationConfigurationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingAutoScalingGroupNotificationConfiguration{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingAutoScalingGroupNotificationConfigurationList{item}
		return nil
	}
	list := []AutoScalingAutoScalingGroupNotificationConfiguration{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingAutoScalingGroupNotificationConfigurationList(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
}
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
}
84554
func (l *EC2SpotFleetSpotPlacementList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EC2SpotFleetSpotPlacement{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EC2SpotFleetSpotPlacementList{item}
		return nil
	}
	list := []EC2SpotFleetSpotPlacement{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EC2SpotFleetSpotPlacementList(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
}
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
}