// UnmarshalJSON sets the object from the provided JSON representation
176128
func (l *DynamoDBTableKeySchemaList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := DynamoDBTableKeySchema{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = DynamoDBTableKeySchemaList{item}
		return nil
	}
	list := []DynamoDBTableKeySchema{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = DynamoDBTableKeySchemaList(list)
		return nil
	}
	return err
}
1263211
func (l *EMRInstanceGroupConfigVolumeSpecificationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigVolumeSpecification{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigVolumeSpecificationList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigVolumeSpecification{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigVolumeSpecificationList(list)
		return nil
	}
	return err
}
440865
func (l *CloudFrontDistributionS3OriginConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := CloudFrontDistributionS3OriginConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = CloudFrontDistributionS3OriginConfigList{item}
		return nil
	}
	list := []CloudFrontDistributionS3OriginConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = CloudFrontDistributionS3OriginConfigList(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
}
390051
func (l *EMRClusterInstanceFleetConfigList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterInstanceFleetConfig{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterInstanceFleetConfigList{item}
		return nil
	}
	list := []EMRClusterInstanceFleetConfig{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterInstanceFleetConfigList(list)
		return nil
	}
	return err
}
172155
func (l *LogsMetricFilterMetricTransformationList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := LogsMetricFilterMetricTransformation{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = LogsMetricFilterMetricTransformationList{item}
		return nil
	}
	list := []LogsMetricFilterMetricTransformation{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = LogsMetricFilterMetricTransformationList(list)
		return nil
	}
	return err
}
480057
func (l *IoTThingAttributePayloadList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := IoTThingAttributePayload{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = IoTThingAttributePayloadList{item}
		return nil
	}
	list := []IoTThingAttributePayload{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = IoTThingAttributePayloadList(list)
		return nil
	}
	return err
}
348860
func (l *EMRClusterCloudWatchAlarmDefinitionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRClusterCloudWatchAlarmDefinition{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRClusterCloudWatchAlarmDefinitionList{item}
		return nil
	}
	list := []EMRClusterCloudWatchAlarmDefinition{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRClusterCloudWatchAlarmDefinitionList(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
}
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
}
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
}
1112570
func (l *AutoScalingPlansScalingPlanTagFilterList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := AutoScalingPlansScalingPlanTagFilter{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = AutoScalingPlansScalingPlanTagFilterList{item}
		return nil
	}
	list := []AutoScalingPlansScalingPlanTagFilter{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = AutoScalingPlansScalingPlanTagFilterList(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
}
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
}
918730
func (l *EMRInstanceGroupConfigCloudWatchAlarmDefinitionList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := EMRInstanceGroupConfigCloudWatchAlarmDefinition{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = EMRInstanceGroupConfigCloudWatchAlarmDefinitionList{item}
		return nil
	}
	list := []EMRInstanceGroupConfigCloudWatchAlarmDefinition{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = EMRInstanceGroupConfigCloudWatchAlarmDefinitionList(list)
		return nil
	}
	return err
}
884060
func (l *KinesisAnalyticsApplicationKinesisStreamsInputList) UnmarshalJSON(buf []byte) error {
	// Cloudformation allows a single object when a list of objects is expected
	item := KinesisAnalyticsApplicationKinesisStreamsInput{}
	if err := json.Unmarshal(buf, &item); err == nil {
		*l = KinesisAnalyticsApplicationKinesisStreamsInputList{item}
		return nil
	}
	list := []KinesisAnalyticsApplicationKinesisStreamsInput{}
	err := json.Unmarshal(buf, &list)
	if err == nil {
		*l = KinesisAnalyticsApplicationKinesisStreamsInputList(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
}