func (in *NodeRemediation) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
package v1alpha1
import (
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *JobTemplateSpec) DeepCopyInto(out *JobTemplateSpec) {
	*out = *in
	in.Metadata.DeepCopyInto(&out.Metadata)
	in.Spec.DeepCopyInto(&out.Spec)
}
func (in *JobTemplateSpec) DeepCopy() *JobTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(JobTemplateSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeConditionMatcher) DeepCopyInto(out *NodeConditionMatcher) {
	*out = *in
}
func (in *NodeConditionMatcher) DeepCopy() *NodeConditionMatcher {
	if in == nil {
		return nil
	}
	out := new(NodeConditionMatcher)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeDisruptionBudget) DeepCopyInto(out *NodeDisruptionBudget) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *NodeDisruptionBudget) DeepCopy() *NodeDisruptionBudget {
	if in == nil {
		return nil
	}
	out := new(NodeDisruptionBudget)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeDisruptionBudget) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NodeDisruptionBudgetList) DeepCopyInto(out *NodeDisruptionBudgetList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]NodeDisruptionBudget, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *NodeDisruptionBudgetList) DeepCopy() *NodeDisruptionBudgetList {
	if in == nil {
		return nil
	}
	out := new(NodeDisruptionBudgetList)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeDisruptionBudgetList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NodeDisruptionBudgetSpec) DeepCopyInto(out *NodeDisruptionBudgetSpec) {
	*out = *in
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.MaxUnavailable != nil {
		in, out := &in.MaxUnavailable, &out.MaxUnavailable
		*out = new(uint64)
		**out = **in
	}
	if in.MinAvailable != nil {
		in, out := &in.MinAvailable, &out.MinAvailable
		*out = new(uint64)
		**out = **in
	}
	if in.TaintTargets != nil {
		in, out := &in.TaintTargets, &out.TaintTargets
		*out = make([]TaintTarget, len(*in))
		copy(*out, *in)
	}
}
func (in *NodeDisruptionBudgetSpec) DeepCopy() *NodeDisruptionBudgetSpec {
	if in == nil {
		return nil
	}
	out := new(NodeDisruptionBudgetSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeDisruptionBudgetStatus) DeepCopyInto(out *NodeDisruptionBudgetStatus) {
	*out = *in
}
func (in *NodeDisruptionBudgetStatus) DeepCopy() *NodeDisruptionBudgetStatus {
	if in == nil {
		return nil
	}
	out := new(NodeDisruptionBudgetStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperation) DeepCopyInto(out *NodeOperation) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *NodeOperation) DeepCopy() *NodeOperation {
	if in == nil {
		return nil
	}
	out := new(NodeOperation)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperation) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NodeOperationList) DeepCopyInto(out *NodeOperationList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]NodeOperation, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *NodeOperationList) DeepCopy() *NodeOperationList {
	if in == nil {
		return nil
	}
	out := new(NodeOperationList)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NodeOperationSpec) DeepCopyInto(out *NodeOperationSpec) {
	*out = *in
	in.NodeOperationSpecTemplate.DeepCopyInto(&out.NodeOperationSpecTemplate)
}
func (in *NodeOperationSpec) DeepCopy() *NodeOperationSpec {
	if in == nil {
		return nil
	}
	out := new(NodeOperationSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationSpecTemplate) DeepCopyInto(out *NodeOperationSpecTemplate) {
	*out = *in
	if in.NodeDisruptionBudgetSelector != nil {
		in, out := &in.NodeDisruptionBudgetSelector, &out.NodeDisruptionBudgetSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	in.JobTemplate.DeepCopyInto(&out.JobTemplate)
}
func (in *NodeOperationSpecTemplate) DeepCopy() *NodeOperationSpecTemplate {
	if in == nil {
		return nil
	}
	out := new(NodeOperationSpecTemplate)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationStatus) DeepCopyInto(out *NodeOperationStatus) {
	*out = *in
	out.JobReference = in.JobReference
}
func (in *NodeOperationStatus) DeepCopy() *NodeOperationStatus {
	if in == nil {
		return nil
	}
	out := new(NodeOperationStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationTemplate) DeepCopyInto(out *NodeOperationTemplate) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *NodeOperationTemplate) DeepCopy() *NodeOperationTemplate {
	if in == nil {
		return nil
	}
	out := new(NodeOperationTemplate)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationTemplate) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NodeOperationTemplateList) DeepCopyInto(out *NodeOperationTemplateList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]NodeOperationTemplate, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *NodeOperationTemplateList) DeepCopy() *NodeOperationTemplateList {
	if in == nil {
		return nil
	}
	out := new(NodeOperationTemplateList)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationTemplateList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NodeOperationTemplateSpec) DeepCopyInto(out *NodeOperationTemplateSpec) {
	*out = *in
	in.Template.DeepCopyInto(&out.Template)
}
func (in *NodeOperationTemplateSpec) DeepCopy() *NodeOperationTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(NodeOperationTemplateSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationTemplateStatus) DeepCopyInto(out *NodeOperationTemplateStatus) {
	*out = *in
}
func (in *NodeOperationTemplateStatus) DeepCopy() *NodeOperationTemplateStatus {
	if in == nil {
		return nil
	}
	out := new(NodeOperationTemplateStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeOperationTemplateTemplateSpec) DeepCopyInto(out *NodeOperationTemplateTemplateSpec) {
	*out = *in
	in.Metadata.DeepCopyInto(&out.Metadata)
	in.Spec.DeepCopyInto(&out.Spec)
}
func (in *NodeOperationTemplateTemplateSpec) DeepCopy() *NodeOperationTemplateTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(NodeOperationTemplateTemplateSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *NodeRemediation) DeepCopyInto(out *NodeRemediation) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *NodeRemediation) DeepCopy() *NodeRemediation {
	if in == nil {
		return nil
	}
	out := new(NodeRemediation)
	in.DeepCopyInto(out)
	return out
}