//go:build !ignore_autogenerated

// Copyright (c) 2024 Tigera, Inc. All rights reserved.
/*

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Code generated by controller-gen. DO NOT EDIT.

package v1

import (
	"github.com/envoyproxy/gateway/api/v1alpha1"
	"github.com/projectcalico/api/pkg/lib/numorstring"
	appsv1 "k8s.io/api/apps/v1"
	corev1 "k8s.io/api/core/v1"
	policyv1 "k8s.io/api/policy/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
	"k8s.io/apimachinery/pkg/util/intstr"
)

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServer) DeepCopyInto(out *APIServer) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServer.
func (in *APIServer) DeepCopy() *APIServer {
	if in == nil {
		return nil
	}
	out := new(APIServer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *APIServer) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeployment) DeepCopyInto(out *APIServerDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(APIServerDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeployment.
func (in *APIServerDeployment) DeepCopy() *APIServerDeployment {
	if in == nil {
		return nil
	}
	out := new(APIServerDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeploymentContainer) DeepCopyInto(out *APIServerDeploymentContainer) {
	*out = *in
	if in.Ports != nil {
		in, out := &in.Ports, &out.Ports
		*out = make([]APIServerDeploymentContainerPort, len(*in))
		copy(*out, *in)
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeploymentContainer.
func (in *APIServerDeploymentContainer) DeepCopy() *APIServerDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(APIServerDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeploymentContainerPort) DeepCopyInto(out *APIServerDeploymentContainerPort) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeploymentContainerPort.
func (in *APIServerDeploymentContainerPort) DeepCopy() *APIServerDeploymentContainerPort {
	if in == nil {
		return nil
	}
	out := new(APIServerDeploymentContainerPort)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeploymentInitContainer) DeepCopyInto(out *APIServerDeploymentInitContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeploymentInitContainer.
func (in *APIServerDeploymentInitContainer) DeepCopy() *APIServerDeploymentInitContainer {
	if in == nil {
		return nil
	}
	out := new(APIServerDeploymentInitContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeploymentPodSpec) DeepCopyInto(out *APIServerDeploymentPodSpec) {
	*out = *in
	if in.InitContainers != nil {
		in, out := &in.InitContainers, &out.InitContainers
		*out = make([]APIServerDeploymentInitContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]APIServerDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeploymentPodSpec.
func (in *APIServerDeploymentPodSpec) DeepCopy() *APIServerDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(APIServerDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeploymentPodTemplateSpec) DeepCopyInto(out *APIServerDeploymentPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(APIServerDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeploymentPodTemplateSpec.
func (in *APIServerDeploymentPodTemplateSpec) DeepCopy() *APIServerDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(APIServerDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerDeploymentSpec) DeepCopyInto(out *APIServerDeploymentSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(APIServerDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerDeploymentSpec.
func (in *APIServerDeploymentSpec) DeepCopy() *APIServerDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(APIServerDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerList) DeepCopyInto(out *APIServerList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]APIServer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerList.
func (in *APIServerList) DeepCopy() *APIServerList {
	if in == nil {
		return nil
	}
	out := new(APIServerList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *APIServerList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerLogging) DeepCopyInto(out *APIServerLogging) {
	*out = *in
	if in.LogSeverity != nil {
		in, out := &in.LogSeverity, &out.LogSeverity
		*out = new(LogSeverity)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerLogging.
func (in *APIServerLogging) DeepCopy() *APIServerLogging {
	if in == nil {
		return nil
	}
	out := new(APIServerLogging)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerPodLogging) DeepCopyInto(out *APIServerPodLogging) {
	*out = *in
	if in.APIServerLogging != nil {
		in, out := &in.APIServerLogging, &out.APIServerLogging
		*out = new(APIServerLogging)
		(*in).DeepCopyInto(*out)
	}
	if in.QueryServerLogging != nil {
		in, out := &in.QueryServerLogging, &out.QueryServerLogging
		*out = new(QueryServerLogging)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerPodLogging.
func (in *APIServerPodLogging) DeepCopy() *APIServerPodLogging {
	if in == nil {
		return nil
	}
	out := new(APIServerPodLogging)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerSpec) DeepCopyInto(out *APIServerSpec) {
	*out = *in
	if in.Logging != nil {
		in, out := &in.Logging, &out.Logging
		*out = new(APIServerPodLogging)
		(*in).DeepCopyInto(*out)
	}
	if in.APIServerDeployment != nil {
		in, out := &in.APIServerDeployment, &out.APIServerDeployment
		*out = new(APIServerDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.CalicoWebhooksDeployment != nil {
		in, out := &in.CalicoWebhooksDeployment, &out.CalicoWebhooksDeployment
		*out = new(CalicoWebhooksDeployment)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerSpec.
func (in *APIServerSpec) DeepCopy() *APIServerSpec {
	if in == nil {
		return nil
	}
	out := new(APIServerSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIServerStatus) DeepCopyInto(out *APIServerStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerStatus.
func (in *APIServerStatus) DeepCopy() *APIServerStatus {
	if in == nil {
		return nil
	}
	out := new(APIServerStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Azure) DeepCopyInto(out *Azure) {
	*out = *in
	if in.PolicyMode != nil {
		in, out := &in.PolicyMode, &out.PolicyMode
		*out = new(PolicyMode)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Azure.
func (in *Azure) DeepCopy() *Azure {
	if in == nil {
		return nil
	}
	out := new(Azure)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CNILogging) DeepCopyInto(out *CNILogging) {
	*out = *in
	if in.LogSeverity != nil {
		in, out := &in.LogSeverity, &out.LogSeverity
		*out = new(LogLevel)
		**out = **in
	}
	if in.LogFileMaxSize != nil {
		in, out := &in.LogFileMaxSize, &out.LogFileMaxSize
		x := (*in).DeepCopy()
		*out = &x
	}
	if in.LogFileMaxAgeDays != nil {
		in, out := &in.LogFileMaxAgeDays, &out.LogFileMaxAgeDays
		*out = new(uint32)
		**out = **in
	}
	if in.LogFileMaxCount != nil {
		in, out := &in.LogFileMaxCount, &out.LogFileMaxCount
		*out = new(uint32)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNILogging.
func (in *CNILogging) DeepCopy() *CNILogging {
	if in == nil {
		return nil
	}
	out := new(CNILogging)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CNISpec) DeepCopyInto(out *CNISpec) {
	*out = *in
	if in.IPAM != nil {
		in, out := &in.IPAM, &out.IPAM
		*out = new(IPAMSpec)
		**out = **in
	}
	if in.SpecVersion != nil {
		in, out := &in.SpecVersion, &out.SpecVersion
		*out = new(CNISpecVersion)
		**out = **in
	}
	if in.BinDir != nil {
		in, out := &in.BinDir, &out.BinDir
		*out = new(string)
		**out = **in
	}
	if in.ConfDir != nil {
		in, out := &in.ConfDir, &out.ConfDir
		*out = new(string)
		**out = **in
	}
	if in.InstallMode != nil {
		in, out := &in.InstallMode, &out.InstallMode
		*out = new(CNIInstallMode)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNISpec.
func (in *CNISpec) DeepCopy() *CNISpec {
	if in == nil {
		return nil
	}
	out := new(CNISpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CSINodeDriverDaemonSet) DeepCopyInto(out *CSINodeDriverDaemonSet) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CSINodeDriverDaemonSetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeDriverDaemonSet.
func (in *CSINodeDriverDaemonSet) DeepCopy() *CSINodeDriverDaemonSet {
	if in == nil {
		return nil
	}
	out := new(CSINodeDriverDaemonSet)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CSINodeDriverDaemonSetContainer) DeepCopyInto(out *CSINodeDriverDaemonSetContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeDriverDaemonSetContainer.
func (in *CSINodeDriverDaemonSetContainer) DeepCopy() *CSINodeDriverDaemonSetContainer {
	if in == nil {
		return nil
	}
	out := new(CSINodeDriverDaemonSetContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CSINodeDriverDaemonSetPodSpec) DeepCopyInto(out *CSINodeDriverDaemonSetPodSpec) {
	*out = *in
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]CSINodeDriverDaemonSetContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeDriverDaemonSetPodSpec.
func (in *CSINodeDriverDaemonSetPodSpec) DeepCopy() *CSINodeDriverDaemonSetPodSpec {
	if in == nil {
		return nil
	}
	out := new(CSINodeDriverDaemonSetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CSINodeDriverDaemonSetPodTemplateSpec) DeepCopyInto(out *CSINodeDriverDaemonSetPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CSINodeDriverDaemonSetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeDriverDaemonSetPodTemplateSpec.
func (in *CSINodeDriverDaemonSetPodTemplateSpec) DeepCopy() *CSINodeDriverDaemonSetPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(CSINodeDriverDaemonSetPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CSINodeDriverDaemonSetSpec) DeepCopyInto(out *CSINodeDriverDaemonSetSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(CSINodeDriverDaemonSetPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSINodeDriverDaemonSetSpec.
func (in *CSINodeDriverDaemonSetSpec) DeepCopy() *CSINodeDriverDaemonSetSpec {
	if in == nil {
		return nil
	}
	out := new(CSINodeDriverDaemonSetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoKubeControllersDeployment) DeepCopyInto(out *CalicoKubeControllersDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoKubeControllersDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoKubeControllersDeployment.
func (in *CalicoKubeControllersDeployment) DeepCopy() *CalicoKubeControllersDeployment {
	if in == nil {
		return nil
	}
	out := new(CalicoKubeControllersDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoKubeControllersDeploymentContainer) DeepCopyInto(out *CalicoKubeControllersDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoKubeControllersDeploymentContainer.
func (in *CalicoKubeControllersDeploymentContainer) DeepCopy() *CalicoKubeControllersDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoKubeControllersDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoKubeControllersDeploymentPodSpec) DeepCopyInto(out *CalicoKubeControllersDeploymentPodSpec) {
	*out = *in
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]CalicoKubeControllersDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoKubeControllersDeploymentPodSpec.
func (in *CalicoKubeControllersDeploymentPodSpec) DeepCopy() *CalicoKubeControllersDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoKubeControllersDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoKubeControllersDeploymentPodTemplateSpec) DeepCopyInto(out *CalicoKubeControllersDeploymentPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoKubeControllersDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoKubeControllersDeploymentPodTemplateSpec.
func (in *CalicoKubeControllersDeploymentPodTemplateSpec) DeepCopy() *CalicoKubeControllersDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoKubeControllersDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoKubeControllersDeploymentSpec) DeepCopyInto(out *CalicoKubeControllersDeploymentSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(CalicoKubeControllersDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoKubeControllersDeploymentSpec.
func (in *CalicoKubeControllersDeploymentSpec) DeepCopy() *CalicoKubeControllersDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoKubeControllersDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNetworkSpec) DeepCopyInto(out *CalicoNetworkSpec) {
	*out = *in
	if in.LinuxDataplane != nil {
		in, out := &in.LinuxDataplane, &out.LinuxDataplane
		*out = new(LinuxDataplaneOption)
		**out = **in
	}
	if in.WindowsDataplane != nil {
		in, out := &in.WindowsDataplane, &out.WindowsDataplane
		*out = new(WindowsDataplaneOption)
		**out = **in
	}
	if in.BPFNetworkBootstrap != nil {
		in, out := &in.BPFNetworkBootstrap, &out.BPFNetworkBootstrap
		*out = new(BPFNetworkBootstrapType)
		**out = **in
	}
	if in.KubeProxyManagement != nil {
		in, out := &in.KubeProxyManagement, &out.KubeProxyManagement
		*out = new(KubeProxyManagementType)
		**out = **in
	}
	if in.BGP != nil {
		in, out := &in.BGP, &out.BGP
		*out = new(BGPOption)
		**out = **in
	}
	if in.ClusterRoutingMode != nil {
		in, out := &in.ClusterRoutingMode, &out.ClusterRoutingMode
		*out = new(ClusterRoutingMode)
		**out = **in
	}
	if in.IPPools != nil {
		in, out := &in.IPPools, &out.IPPools
		*out = make([]IPPool, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.MTU != nil {
		in, out := &in.MTU, &out.MTU
		*out = new(int32)
		**out = **in
	}
	if in.NodeAddressAutodetectionV4 != nil {
		in, out := &in.NodeAddressAutodetectionV4, &out.NodeAddressAutodetectionV4
		*out = new(NodeAddressAutodetection)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeAddressAutodetectionV6 != nil {
		in, out := &in.NodeAddressAutodetectionV6, &out.NodeAddressAutodetectionV6
		*out = new(NodeAddressAutodetection)
		(*in).DeepCopyInto(*out)
	}
	if in.HostPorts != nil {
		in, out := &in.HostPorts, &out.HostPorts
		*out = new(HostPortsType)
		**out = **in
	}
	if in.MultiInterfaceMode != nil {
		in, out := &in.MultiInterfaceMode, &out.MultiInterfaceMode
		*out = new(MultiInterfaceMode)
		**out = **in
	}
	if in.ContainerIPForwarding != nil {
		in, out := &in.ContainerIPForwarding, &out.ContainerIPForwarding
		*out = new(ContainerIPForwardingType)
		**out = **in
	}
	if in.LinuxPodInterfaceType != nil {
		in, out := &in.LinuxPodInterfaceType, &out.LinuxPodInterfaceType
		*out = new(LinuxPodInterfaceType)
		**out = **in
	}
	if in.Sysctl != nil {
		in, out := &in.Sysctl, &out.Sysctl
		*out = make([]Sysctl, len(*in))
		copy(*out, *in)
	}
	if in.LinuxPolicySetupTimeoutSeconds != nil {
		in, out := &in.LinuxPolicySetupTimeoutSeconds, &out.LinuxPolicySetupTimeoutSeconds
		*out = new(int32)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNetworkSpec.
func (in *CalicoNetworkSpec) DeepCopy() *CalicoNetworkSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNetworkSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeDaemonSet) DeepCopyInto(out *CalicoNodeDaemonSet) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoNodeDaemonSetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeDaemonSet.
func (in *CalicoNodeDaemonSet) DeepCopy() *CalicoNodeDaemonSet {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeDaemonSet)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeDaemonSetContainer) DeepCopyInto(out *CalicoNodeDaemonSetContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.StartupProbe != nil {
		in, out := &in.StartupProbe, &out.StartupProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeDaemonSetContainer.
func (in *CalicoNodeDaemonSetContainer) DeepCopy() *CalicoNodeDaemonSetContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeDaemonSetContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeDaemonSetInitContainer) DeepCopyInto(out *CalicoNodeDaemonSetInitContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeDaemonSetInitContainer.
func (in *CalicoNodeDaemonSetInitContainer) DeepCopy() *CalicoNodeDaemonSetInitContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeDaemonSetInitContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeDaemonSetPodSpec) DeepCopyInto(out *CalicoNodeDaemonSetPodSpec) {
	*out = *in
	if in.InitContainers != nil {
		in, out := &in.InitContainers, &out.InitContainers
		*out = make([]CalicoNodeDaemonSetInitContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]CalicoNodeDaemonSetContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.DNSPolicy != nil {
		in, out := &in.DNSPolicy, &out.DNSPolicy
		*out = new(corev1.DNSPolicy)
		**out = **in
	}
	if in.DNSConfig != nil {
		in, out := &in.DNSConfig, &out.DNSConfig
		*out = new(corev1.PodDNSConfig)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeDaemonSetPodSpec.
func (in *CalicoNodeDaemonSetPodSpec) DeepCopy() *CalicoNodeDaemonSetPodSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeDaemonSetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeDaemonSetPodTemplateSpec) DeepCopyInto(out *CalicoNodeDaemonSetPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoNodeDaemonSetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeDaemonSetPodTemplateSpec.
func (in *CalicoNodeDaemonSetPodTemplateSpec) DeepCopy() *CalicoNodeDaemonSetPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeDaemonSetPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeDaemonSetSpec) DeepCopyInto(out *CalicoNodeDaemonSetSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(CalicoNodeDaemonSetPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeDaemonSetSpec.
func (in *CalicoNodeDaemonSetSpec) DeepCopy() *CalicoNodeDaemonSetSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeDaemonSetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeWindowsDaemonSet) DeepCopyInto(out *CalicoNodeWindowsDaemonSet) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoNodeWindowsDaemonSetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeWindowsDaemonSet.
func (in *CalicoNodeWindowsDaemonSet) DeepCopy() *CalicoNodeWindowsDaemonSet {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeWindowsDaemonSet)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeWindowsDaemonSetContainer) DeepCopyInto(out *CalicoNodeWindowsDaemonSetContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeWindowsDaemonSetContainer.
func (in *CalicoNodeWindowsDaemonSetContainer) DeepCopy() *CalicoNodeWindowsDaemonSetContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeWindowsDaemonSetContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeWindowsDaemonSetInitContainer) DeepCopyInto(out *CalicoNodeWindowsDaemonSetInitContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeWindowsDaemonSetInitContainer.
func (in *CalicoNodeWindowsDaemonSetInitContainer) DeepCopy() *CalicoNodeWindowsDaemonSetInitContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeWindowsDaemonSetInitContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeWindowsDaemonSetPodSpec) DeepCopyInto(out *CalicoNodeWindowsDaemonSetPodSpec) {
	*out = *in
	if in.InitContainers != nil {
		in, out := &in.InitContainers, &out.InitContainers
		*out = make([]CalicoNodeWindowsDaemonSetInitContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]CalicoNodeWindowsDaemonSetContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeWindowsDaemonSetPodSpec.
func (in *CalicoNodeWindowsDaemonSetPodSpec) DeepCopy() *CalicoNodeWindowsDaemonSetPodSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeWindowsDaemonSetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeWindowsDaemonSetPodTemplateSpec) DeepCopyInto(out *CalicoNodeWindowsDaemonSetPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoNodeWindowsDaemonSetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeWindowsDaemonSetPodTemplateSpec.
func (in *CalicoNodeWindowsDaemonSetPodTemplateSpec) DeepCopy() *CalicoNodeWindowsDaemonSetPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeWindowsDaemonSetPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoNodeWindowsDaemonSetSpec) DeepCopyInto(out *CalicoNodeWindowsDaemonSetSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(CalicoNodeWindowsDaemonSetPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoNodeWindowsDaemonSetSpec.
func (in *CalicoNodeWindowsDaemonSetSpec) DeepCopy() *CalicoNodeWindowsDaemonSetSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoNodeWindowsDaemonSetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWebhooksDeployment) DeepCopyInto(out *CalicoWebhooksDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoWebhooksDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWebhooksDeployment.
func (in *CalicoWebhooksDeployment) DeepCopy() *CalicoWebhooksDeployment {
	if in == nil {
		return nil
	}
	out := new(CalicoWebhooksDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWebhooksDeploymentContainer) DeepCopyInto(out *CalicoWebhooksDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.Ports != nil {
		in, out := &in.Ports, &out.Ports
		*out = make([]CalicoWebhooksDeploymentContainerPort, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWebhooksDeploymentContainer.
func (in *CalicoWebhooksDeploymentContainer) DeepCopy() *CalicoWebhooksDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoWebhooksDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWebhooksDeploymentContainerPort) DeepCopyInto(out *CalicoWebhooksDeploymentContainerPort) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWebhooksDeploymentContainerPort.
func (in *CalicoWebhooksDeploymentContainerPort) DeepCopy() *CalicoWebhooksDeploymentContainerPort {
	if in == nil {
		return nil
	}
	out := new(CalicoWebhooksDeploymentContainerPort)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWebhooksDeploymentPodSpec) DeepCopyInto(out *CalicoWebhooksDeploymentPodSpec) {
	*out = *in
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]CalicoWebhooksDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.HostNetwork != nil {
		in, out := &in.HostNetwork, &out.HostNetwork
		*out = new(bool)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWebhooksDeploymentPodSpec.
func (in *CalicoWebhooksDeploymentPodSpec) DeepCopy() *CalicoWebhooksDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoWebhooksDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWebhooksDeploymentPodTemplateSpec) DeepCopyInto(out *CalicoWebhooksDeploymentPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoWebhooksDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWebhooksDeploymentPodTemplateSpec.
func (in *CalicoWebhooksDeploymentPodTemplateSpec) DeepCopy() *CalicoWebhooksDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoWebhooksDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWebhooksDeploymentSpec) DeepCopyInto(out *CalicoWebhooksDeploymentSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(CalicoWebhooksDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWebhooksDeploymentSpec.
func (in *CalicoWebhooksDeploymentSpec) DeepCopy() *CalicoWebhooksDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoWebhooksDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWindowsUpgradeDaemonSet) DeepCopyInto(out *CalicoWindowsUpgradeDaemonSet) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoWindowsUpgradeDaemonSetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWindowsUpgradeDaemonSet.
func (in *CalicoWindowsUpgradeDaemonSet) DeepCopy() *CalicoWindowsUpgradeDaemonSet {
	if in == nil {
		return nil
	}
	out := new(CalicoWindowsUpgradeDaemonSet)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWindowsUpgradeDaemonSetContainer) DeepCopyInto(out *CalicoWindowsUpgradeDaemonSetContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWindowsUpgradeDaemonSetContainer.
func (in *CalicoWindowsUpgradeDaemonSetContainer) DeepCopy() *CalicoWindowsUpgradeDaemonSetContainer {
	if in == nil {
		return nil
	}
	out := new(CalicoWindowsUpgradeDaemonSetContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWindowsUpgradeDaemonSetPodSpec) DeepCopyInto(out *CalicoWindowsUpgradeDaemonSetPodSpec) {
	*out = *in
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]CalicoWindowsUpgradeDaemonSetContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWindowsUpgradeDaemonSetPodSpec.
func (in *CalicoWindowsUpgradeDaemonSetPodSpec) DeepCopy() *CalicoWindowsUpgradeDaemonSetPodSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoWindowsUpgradeDaemonSetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWindowsUpgradeDaemonSetPodTemplateSpec) DeepCopyInto(out *CalicoWindowsUpgradeDaemonSetPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(CalicoWindowsUpgradeDaemonSetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWindowsUpgradeDaemonSetPodTemplateSpec.
func (in *CalicoWindowsUpgradeDaemonSetPodTemplateSpec) DeepCopy() *CalicoWindowsUpgradeDaemonSetPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoWindowsUpgradeDaemonSetPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CalicoWindowsUpgradeDaemonSetSpec) DeepCopyInto(out *CalicoWindowsUpgradeDaemonSetSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(CalicoWindowsUpgradeDaemonSetPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CalicoWindowsUpgradeDaemonSetSpec.
func (in *CalicoWindowsUpgradeDaemonSetSpec) DeepCopy() *CalicoWindowsUpgradeDaemonSetSpec {
	if in == nil {
		return nil
	}
	out := new(CalicoWindowsUpgradeDaemonSetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CertificateManagement) DeepCopyInto(out *CertificateManagement) {
	*out = *in
	if in.CACert != nil {
		in, out := &in.CACert, &out.CACert
		*out = make([]byte, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateManagement.
func (in *CertificateManagement) DeepCopy() *CertificateManagement {
	if in == nil {
		return nil
	}
	out := new(CertificateManagement)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ComponentResource) DeepCopyInto(out *ComponentResource) {
	*out = *in
	if in.ResourceRequirements != nil {
		in, out := &in.ResourceRequirements, &out.ResourceRequirements
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentResource.
func (in *ComponentResource) DeepCopy() *ComponentResource {
	if in == nil {
		return nil
	}
	out := new(ComponentResource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayAPI) DeepCopyInto(out *GatewayAPI) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPI.
func (in *GatewayAPI) DeepCopy() *GatewayAPI {
	if in == nil {
		return nil
	}
	out := new(GatewayAPI)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *GatewayAPI) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayAPIExtensions) DeepCopyInto(out *GatewayAPIExtensions) {
	*out = *in
	if in.WAF != nil {
		in, out := &in.WAF, &out.WAF
		*out = new(WAFExtensionSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPIExtensions.
func (in *GatewayAPIExtensions) DeepCopy() *GatewayAPIExtensions {
	if in == nil {
		return nil
	}
	out := new(GatewayAPIExtensions)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayAPIList) DeepCopyInto(out *GatewayAPIList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]GatewayAPI, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPIList.
func (in *GatewayAPIList) DeepCopy() *GatewayAPIList {
	if in == nil {
		return nil
	}
	out := new(GatewayAPIList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *GatewayAPIList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayAPISpec) DeepCopyInto(out *GatewayAPISpec) {
	*out = *in
	if in.EnvoyGatewayConfigRef != nil {
		in, out := &in.EnvoyGatewayConfigRef, &out.EnvoyGatewayConfigRef
		*out = new(NamespacedName)
		**out = **in
	}
	if in.GatewayClasses != nil {
		in, out := &in.GatewayClasses, &out.GatewayClasses
		*out = make([]GatewayClassSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.GatewayControllerDeployment != nil {
		in, out := &in.GatewayControllerDeployment, &out.GatewayControllerDeployment
		*out = new(GatewayControllerDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.GatewayCertgenJob != nil {
		in, out := &in.GatewayCertgenJob, &out.GatewayCertgenJob
		*out = new(GatewayCertgenJob)
		(*in).DeepCopyInto(*out)
	}
	if in.CRDManagement != nil {
		in, out := &in.CRDManagement, &out.CRDManagement
		*out = new(CRDManagement)
		**out = **in
	}
	if in.Extensions != nil {
		in, out := &in.Extensions, &out.Extensions
		*out = new(GatewayAPIExtensions)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPISpec.
func (in *GatewayAPISpec) DeepCopy() *GatewayAPISpec {
	if in == nil {
		return nil
	}
	out := new(GatewayAPISpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayCertgenJob) DeepCopyInto(out *GatewayCertgenJob) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayCertgenJobSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCertgenJob.
func (in *GatewayCertgenJob) DeepCopy() *GatewayCertgenJob {
	if in == nil {
		return nil
	}
	out := new(GatewayCertgenJob)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayCertgenJobContainer) DeepCopyInto(out *GatewayCertgenJobContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCertgenJobContainer.
func (in *GatewayCertgenJobContainer) DeepCopy() *GatewayCertgenJobContainer {
	if in == nil {
		return nil
	}
	out := new(GatewayCertgenJobContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayCertgenJobPodSpec) DeepCopyInto(out *GatewayCertgenJobPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]GatewayCertgenJobContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCertgenJobPodSpec.
func (in *GatewayCertgenJobPodSpec) DeepCopy() *GatewayCertgenJobPodSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayCertgenJobPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayCertgenJobPodTemplate) DeepCopyInto(out *GatewayCertgenJobPodTemplate) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayCertgenJobPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCertgenJobPodTemplate.
func (in *GatewayCertgenJobPodTemplate) DeepCopy() *GatewayCertgenJobPodTemplate {
	if in == nil {
		return nil
	}
	out := new(GatewayCertgenJobPodTemplate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayCertgenJobSpec) DeepCopyInto(out *GatewayCertgenJobSpec) {
	*out = *in
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(GatewayCertgenJobPodTemplate)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCertgenJobSpec.
func (in *GatewayCertgenJobSpec) DeepCopy() *GatewayCertgenJobSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayCertgenJobSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayClassSpec) DeepCopyInto(out *GatewayClassSpec) {
	*out = *in
	if in.EnvoyProxyRef != nil {
		in, out := &in.EnvoyProxyRef, &out.EnvoyProxyRef
		*out = new(NamespacedName)
		**out = **in
	}
	if in.GatewayKind != nil {
		in, out := &in.GatewayKind, &out.GatewayKind
		*out = new(GatewayKind)
		**out = **in
	}
	if in.GatewayDeployment != nil {
		in, out := &in.GatewayDeployment, &out.GatewayDeployment
		*out = new(GatewayDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.GatewayDaemonSet != nil {
		in, out := &in.GatewayDaemonSet, &out.GatewayDaemonSet
		*out = new(GatewayDaemonSet)
		(*in).DeepCopyInto(*out)
	}
	if in.GatewayService != nil {
		in, out := &in.GatewayService, &out.GatewayService
		*out = new(GatewayService)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayClassSpec.
func (in *GatewayClassSpec) DeepCopy() *GatewayClassSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayClassSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayControllerDeployment) DeepCopyInto(out *GatewayControllerDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayControllerDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayControllerDeployment.
func (in *GatewayControllerDeployment) DeepCopy() *GatewayControllerDeployment {
	if in == nil {
		return nil
	}
	out := new(GatewayControllerDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayControllerDeploymentContainer) DeepCopyInto(out *GatewayControllerDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayControllerDeploymentContainer.
func (in *GatewayControllerDeploymentContainer) DeepCopy() *GatewayControllerDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(GatewayControllerDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayControllerDeploymentPodSpec) DeepCopyInto(out *GatewayControllerDeploymentPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]GatewayControllerDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayControllerDeploymentPodSpec.
func (in *GatewayControllerDeploymentPodSpec) DeepCopy() *GatewayControllerDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayControllerDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayControllerDeploymentPodTemplate) DeepCopyInto(out *GatewayControllerDeploymentPodTemplate) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayControllerDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayControllerDeploymentPodTemplate.
func (in *GatewayControllerDeploymentPodTemplate) DeepCopy() *GatewayControllerDeploymentPodTemplate {
	if in == nil {
		return nil
	}
	out := new(GatewayControllerDeploymentPodTemplate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayControllerDeploymentSpec) DeepCopyInto(out *GatewayControllerDeploymentSpec) {
	*out = *in
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(GatewayControllerDeploymentPodTemplate)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayControllerDeploymentSpec.
func (in *GatewayControllerDeploymentSpec) DeepCopy() *GatewayControllerDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayControllerDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDaemonSet) DeepCopyInto(out *GatewayDaemonSet) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayDaemonSetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDaemonSet.
func (in *GatewayDaemonSet) DeepCopy() *GatewayDaemonSet {
	if in == nil {
		return nil
	}
	out := new(GatewayDaemonSet)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDaemonSetContainer) DeepCopyInto(out *GatewayDaemonSetContainer) {
	*out = *in
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDaemonSetContainer.
func (in *GatewayDaemonSetContainer) DeepCopy() *GatewayDaemonSetContainer {
	if in == nil {
		return nil
	}
	out := new(GatewayDaemonSetContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDaemonSetPodSpec) DeepCopyInto(out *GatewayDaemonSetPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]GatewayDaemonSetContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDaemonSetPodSpec.
func (in *GatewayDaemonSetPodSpec) DeepCopy() *GatewayDaemonSetPodSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayDaemonSetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDaemonSetPodTemplate) DeepCopyInto(out *GatewayDaemonSetPodTemplate) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayDaemonSetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDaemonSetPodTemplate.
func (in *GatewayDaemonSetPodTemplate) DeepCopy() *GatewayDaemonSetPodTemplate {
	if in == nil {
		return nil
	}
	out := new(GatewayDaemonSetPodTemplate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDaemonSetSpec) DeepCopyInto(out *GatewayDaemonSetSpec) {
	*out = *in
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(GatewayDaemonSetPodTemplate)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDaemonSetSpec.
func (in *GatewayDaemonSetSpec) DeepCopy() *GatewayDaemonSetSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayDaemonSetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDeployment) DeepCopyInto(out *GatewayDeployment) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDeployment.
func (in *GatewayDeployment) DeepCopy() *GatewayDeployment {
	if in == nil {
		return nil
	}
	out := new(GatewayDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDeploymentContainer) DeepCopyInto(out *GatewayDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDeploymentContainer.
func (in *GatewayDeploymentContainer) DeepCopy() *GatewayDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(GatewayDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDeploymentPodSpec) DeepCopyInto(out *GatewayDeploymentPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]GatewayDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDeploymentPodSpec.
func (in *GatewayDeploymentPodSpec) DeepCopy() *GatewayDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDeploymentPodTemplate) DeepCopyInto(out *GatewayDeploymentPodTemplate) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDeploymentPodTemplate.
func (in *GatewayDeploymentPodTemplate) DeepCopy() *GatewayDeploymentPodTemplate {
	if in == nil {
		return nil
	}
	out := new(GatewayDeploymentPodTemplate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDeploymentSpec) DeepCopyInto(out *GatewayDeploymentSpec) {
	*out = *in
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(GatewayDeploymentPodTemplate)
		(*in).DeepCopyInto(*out)
	}
	if in.Strategy != nil {
		in, out := &in.Strategy, &out.Strategy
		*out = new(GatewayDeploymentStrategy)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDeploymentSpec.
func (in *GatewayDeploymentSpec) DeepCopy() *GatewayDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayDeploymentStrategy) DeepCopyInto(out *GatewayDeploymentStrategy) {
	*out = *in
	if in.RollingUpdate != nil {
		in, out := &in.RollingUpdate, &out.RollingUpdate
		*out = new(appsv1.RollingUpdateDeployment)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayDeploymentStrategy.
func (in *GatewayDeploymentStrategy) DeepCopy() *GatewayDeploymentStrategy {
	if in == nil {
		return nil
	}
	out := new(GatewayDeploymentStrategy)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayService) DeepCopyInto(out *GatewayService) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GatewayServiceSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayService.
func (in *GatewayService) DeepCopy() *GatewayService {
	if in == nil {
		return nil
	}
	out := new(GatewayService)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayServiceSpec) DeepCopyInto(out *GatewayServiceSpec) {
	*out = *in
	if in.LoadBalancerClass != nil {
		in, out := &in.LoadBalancerClass, &out.LoadBalancerClass
		*out = new(string)
		**out = **in
	}
	if in.AllocateLoadBalancerNodePorts != nil {
		in, out := &in.AllocateLoadBalancerNodePorts, &out.AllocateLoadBalancerNodePorts
		*out = new(bool)
		**out = **in
	}
	if in.LoadBalancerSourceRanges != nil {
		in, out := &in.LoadBalancerSourceRanges, &out.LoadBalancerSourceRanges
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.LoadBalancerIP != nil {
		in, out := &in.LoadBalancerIP, &out.LoadBalancerIP
		*out = new(string)
		**out = **in
	}
	if in.Patch != nil {
		in, out := &in.Patch, &out.Patch
		*out = new(v1alpha1.KubernetesPatchSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayServiceSpec.
func (in *GatewayServiceSpec) DeepCopy() *GatewayServiceSpec {
	if in == nil {
		return nil
	}
	out := new(GatewayServiceSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Goldmane) DeepCopyInto(out *Goldmane) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Goldmane.
func (in *Goldmane) DeepCopy() *Goldmane {
	if in == nil {
		return nil
	}
	out := new(Goldmane)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Goldmane) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneDeployment) DeepCopyInto(out *GoldmaneDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GoldmaneDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneDeployment.
func (in *GoldmaneDeployment) DeepCopy() *GoldmaneDeployment {
	if in == nil {
		return nil
	}
	out := new(GoldmaneDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneDeploymentContainer) DeepCopyInto(out *GoldmaneDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneDeploymentContainer.
func (in *GoldmaneDeploymentContainer) DeepCopy() *GoldmaneDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(GoldmaneDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneDeploymentPodSpec) DeepCopyInto(out *GoldmaneDeploymentPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]GoldmaneDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*out = new(int64)
		**out = **in
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneDeploymentPodSpec.
func (in *GoldmaneDeploymentPodSpec) DeepCopy() *GoldmaneDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(GoldmaneDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneDeploymentPodTemplateSpec) DeepCopyInto(out *GoldmaneDeploymentPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GoldmaneDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneDeploymentPodTemplateSpec.
func (in *GoldmaneDeploymentPodTemplateSpec) DeepCopy() *GoldmaneDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(GoldmaneDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneDeploymentSpec) DeepCopyInto(out *GoldmaneDeploymentSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(GoldmaneDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Strategy != nil {
		in, out := &in.Strategy, &out.Strategy
		*out = new(GoldmaneDeploymentStrategy)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneDeploymentSpec.
func (in *GoldmaneDeploymentSpec) DeepCopy() *GoldmaneDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(GoldmaneDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneDeploymentStrategy) DeepCopyInto(out *GoldmaneDeploymentStrategy) {
	*out = *in
	if in.RollingUpdate != nil {
		in, out := &in.RollingUpdate, &out.RollingUpdate
		*out = new(appsv1.RollingUpdateDeployment)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneDeploymentStrategy.
func (in *GoldmaneDeploymentStrategy) DeepCopy() *GoldmaneDeploymentStrategy {
	if in == nil {
		return nil
	}
	out := new(GoldmaneDeploymentStrategy)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneList) DeepCopyInto(out *GoldmaneList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Goldmane, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneList.
func (in *GoldmaneList) DeepCopy() *GoldmaneList {
	if in == nil {
		return nil
	}
	out := new(GoldmaneList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *GoldmaneList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneSpec) DeepCopyInto(out *GoldmaneSpec) {
	*out = *in
	if in.GoldmaneDeployment != nil {
		in, out := &in.GoldmaneDeployment, &out.GoldmaneDeployment
		*out = new(GoldmaneDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.MetricsPort != nil {
		in, out := &in.MetricsPort, &out.MetricsPort
		*out = new(int32)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneSpec.
func (in *GoldmaneSpec) DeepCopy() *GoldmaneSpec {
	if in == nil {
		return nil
	}
	out := new(GoldmaneSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GoldmaneStatus) DeepCopyInto(out *GoldmaneStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoldmaneStatus.
func (in *GoldmaneStatus) DeepCopy() *GoldmaneStatus {
	if in == nil {
		return nil
	}
	out := new(GoldmaneStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuardianDeployment) DeepCopyInto(out *GuardianDeployment) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GuardianDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuardianDeployment.
func (in *GuardianDeployment) DeepCopy() *GuardianDeployment {
	if in == nil {
		return nil
	}
	out := new(GuardianDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuardianDeploymentContainer) DeepCopyInto(out *GuardianDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuardianDeploymentContainer.
func (in *GuardianDeploymentContainer) DeepCopy() *GuardianDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(GuardianDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuardianDeploymentInitContainer) DeepCopyInto(out *GuardianDeploymentInitContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuardianDeploymentInitContainer.
func (in *GuardianDeploymentInitContainer) DeepCopy() *GuardianDeploymentInitContainer {
	if in == nil {
		return nil
	}
	out := new(GuardianDeploymentInitContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuardianDeploymentPodSpec) DeepCopyInto(out *GuardianDeploymentPodSpec) {
	*out = *in
	if in.InitContainers != nil {
		in, out := &in.InitContainers, &out.InitContainers
		*out = make([]GuardianDeploymentInitContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]GuardianDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuardianDeploymentPodSpec.
func (in *GuardianDeploymentPodSpec) DeepCopy() *GuardianDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(GuardianDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuardianDeploymentPodTemplateSpec) DeepCopyInto(out *GuardianDeploymentPodTemplateSpec) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(GuardianDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuardianDeploymentPodTemplateSpec.
func (in *GuardianDeploymentPodTemplateSpec) DeepCopy() *GuardianDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(GuardianDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuardianDeploymentSpec) DeepCopyInto(out *GuardianDeploymentSpec) {
	*out = *in
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(GuardianDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuardianDeploymentSpec.
func (in *GuardianDeploymentSpec) DeepCopy() *GuardianDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(GuardianDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IPAMSpec) DeepCopyInto(out *IPAMSpec) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPAMSpec.
func (in *IPAMSpec) DeepCopy() *IPAMSpec {
	if in == nil {
		return nil
	}
	out := new(IPAMSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IPPool) DeepCopyInto(out *IPPool) {
	*out = *in
	if in.BlockSize != nil {
		in, out := &in.BlockSize, &out.BlockSize
		*out = new(int32)
		**out = **in
	}
	if in.DisableBGPExport != nil {
		in, out := &in.DisableBGPExport, &out.DisableBGPExport
		*out = new(bool)
		**out = **in
	}
	if in.DisableNewAllocations != nil {
		in, out := &in.DisableNewAllocations, &out.DisableNewAllocations
		*out = new(bool)
		**out = **in
	}
	if in.AllowedUses != nil {
		in, out := &in.AllowedUses, &out.AllowedUses
		*out = make([]IPPoolAllowedUse, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPPool.
func (in *IPPool) DeepCopy() *IPPool {
	if in == nil {
		return nil
	}
	out := new(IPPool)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Image) DeepCopyInto(out *Image) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Image.
func (in *Image) DeepCopy() *Image {
	if in == nil {
		return nil
	}
	out := new(Image)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ImageSet) DeepCopyInto(out *ImageSet) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSet.
func (in *ImageSet) DeepCopy() *ImageSet {
	if in == nil {
		return nil
	}
	out := new(ImageSet)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ImageSet) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ImageSetList) DeepCopyInto(out *ImageSetList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ImageSet, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSetList.
func (in *ImageSetList) DeepCopy() *ImageSetList {
	if in == nil {
		return nil
	}
	out := new(ImageSetList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ImageSetList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ImageSetSpec) DeepCopyInto(out *ImageSetSpec) {
	*out = *in
	if in.Images != nil {
		in, out := &in.Images, &out.Images
		*out = make([]Image, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSetSpec.
func (in *ImageSetSpec) DeepCopy() *ImageSetSpec {
	if in == nil {
		return nil
	}
	out := new(ImageSetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Impersonation) DeepCopyInto(out *Impersonation) {
	*out = *in
	if in.Users != nil {
		in, out := &in.Users, &out.Users
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Groups != nil {
		in, out := &in.Groups, &out.Groups
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ServiceAccounts != nil {
		in, out := &in.ServiceAccounts, &out.ServiceAccounts
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Impersonation.
func (in *Impersonation) DeepCopy() *Impersonation {
	if in == nil {
		return nil
	}
	out := new(Impersonation)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IngressGatewaySpec) DeepCopyInto(out *IngressGatewaySpec) {
	*out = *in
	if in.GatewayNamespace != nil {
		in, out := &in.GatewayNamespace, &out.GatewayNamespace
		*out = new(string)
		**out = **in
	}
	if in.GatewayClassName != nil {
		in, out := &in.GatewayClassName, &out.GatewayClassName
		*out = new(string)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGatewaySpec.
func (in *IngressGatewaySpec) DeepCopy() *IngressGatewaySpec {
	if in == nil {
		return nil
	}
	out := new(IngressGatewaySpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Installation) DeepCopyInto(out *Installation) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Installation.
func (in *Installation) DeepCopy() *Installation {
	if in == nil {
		return nil
	}
	out := new(Installation)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Installation) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InstallationList) DeepCopyInto(out *InstallationList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Installation, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationList.
func (in *InstallationList) DeepCopy() *InstallationList {
	if in == nil {
		return nil
	}
	out := new(InstallationList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *InstallationList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InstallationSpec) DeepCopyInto(out *InstallationSpec) {
	*out = *in
	if in.ImagePullSecrets != nil {
		in, out := &in.ImagePullSecrets, &out.ImagePullSecrets
		*out = make([]corev1.LocalObjectReference, len(*in))
		copy(*out, *in)
	}
	if in.ImagePullPolicy != nil {
		in, out := &in.ImagePullPolicy, &out.ImagePullPolicy
		*out = new(corev1.PullPolicy)
		**out = **in
	}
	if in.CNI != nil {
		in, out := &in.CNI, &out.CNI
		*out = new(CNISpec)
		(*in).DeepCopyInto(*out)
	}
	if in.CalicoNetwork != nil {
		in, out := &in.CalicoNetwork, &out.CalicoNetwork
		*out = new(CalicoNetworkSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.TyphaAffinity != nil {
		in, out := &in.TyphaAffinity, &out.TyphaAffinity
		*out = new(TyphaAffinity)
		(*in).DeepCopyInto(*out)
	}
	if in.ControlPlaneNodeSelector != nil {
		in, out := &in.ControlPlaneNodeSelector, &out.ControlPlaneNodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.ControlPlaneTolerations != nil {
		in, out := &in.ControlPlaneTolerations, &out.ControlPlaneTolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ControlPlaneReplicas != nil {
		in, out := &in.ControlPlaneReplicas, &out.ControlPlaneReplicas
		*out = new(int32)
		**out = **in
	}
	if in.NodeMetricsPort != nil {
		in, out := &in.NodeMetricsPort, &out.NodeMetricsPort
		*out = new(int32)
		**out = **in
	}
	if in.TyphaMetricsPort != nil {
		in, out := &in.TyphaMetricsPort, &out.TyphaMetricsPort
		*out = new(int32)
		**out = **in
	}
	in.NodeUpdateStrategy.DeepCopyInto(&out.NodeUpdateStrategy)
	if in.ComponentResources != nil {
		in, out := &in.ComponentResources, &out.ComponentResources
		*out = make([]ComponentResource, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.CertificateManagement != nil {
		in, out := &in.CertificateManagement, &out.CertificateManagement
		*out = new(CertificateManagement)
		(*in).DeepCopyInto(*out)
	}
	if in.TLSCipherSuites != nil {
		in, out := &in.TLSCipherSuites, &out.TLSCipherSuites
		*out = make(TLSCipherSuites, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TLSMinVersion != nil {
		in, out := &in.TLSMinVersion, &out.TLSMinVersion
		*out = new(TLSVersion)
		**out = **in
	}
	if in.NonPrivileged != nil {
		in, out := &in.NonPrivileged, &out.NonPrivileged
		*out = new(NonPrivilegedType)
		**out = **in
	}
	if in.CalicoNodeDaemonSet != nil {
		in, out := &in.CalicoNodeDaemonSet, &out.CalicoNodeDaemonSet
		*out = new(CalicoNodeDaemonSet)
		(*in).DeepCopyInto(*out)
	}
	if in.CSINodeDriverDaemonSet != nil {
		in, out := &in.CSINodeDriverDaemonSet, &out.CSINodeDriverDaemonSet
		*out = new(CSINodeDriverDaemonSet)
		(*in).DeepCopyInto(*out)
	}
	if in.CalicoKubeControllersDeployment != nil {
		in, out := &in.CalicoKubeControllersDeployment, &out.CalicoKubeControllersDeployment
		*out = new(CalicoKubeControllersDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.TyphaDeployment != nil {
		in, out := &in.TyphaDeployment, &out.TyphaDeployment
		*out = new(TyphaDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.TyphaPodDisruptionBudget != nil {
		in, out := &in.TyphaPodDisruptionBudget, &out.TyphaPodDisruptionBudget
		*out = new(PodDisruptionBudgetOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.CalicoWindowsUpgradeDaemonSet != nil {
		in, out := &in.CalicoWindowsUpgradeDaemonSet, &out.CalicoWindowsUpgradeDaemonSet
		*out = new(CalicoWindowsUpgradeDaemonSet)
		(*in).DeepCopyInto(*out)
	}
	if in.CalicoNodeWindowsDaemonSet != nil {
		in, out := &in.CalicoNodeWindowsDaemonSet, &out.CalicoNodeWindowsDaemonSet
		*out = new(CalicoNodeWindowsDaemonSet)
		(*in).DeepCopyInto(*out)
	}
	if in.FIPSMode != nil {
		in, out := &in.FIPSMode, &out.FIPSMode
		*out = new(FIPSMode)
		**out = **in
	}
	if in.Logging != nil {
		in, out := &in.Logging, &out.Logging
		*out = new(Logging)
		(*in).DeepCopyInto(*out)
	}
	if in.WindowsNodes != nil {
		in, out := &in.WindowsNodes, &out.WindowsNodes
		*out = new(WindowsNodeSpec)
		**out = **in
	}
	if in.ServiceCIDRs != nil {
		in, out := &in.ServiceCIDRs, &out.ServiceCIDRs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Azure != nil {
		in, out := &in.Azure, &out.Azure
		*out = new(Azure)
		(*in).DeepCopyInto(*out)
	}
	if in.Proxy != nil {
		in, out := &in.Proxy, &out.Proxy
		*out = new(Proxy)
		**out = **in
	}
	if in.NetworkPolicy != nil {
		in, out := &in.NetworkPolicy, &out.NetworkPolicy
		*out = new(NetworkPolicySpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationSpec.
func (in *InstallationSpec) DeepCopy() *InstallationSpec {
	if in == nil {
		return nil
	}
	out := new(InstallationSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InstallationStatus) DeepCopyInto(out *InstallationStatus) {
	*out = *in
	if in.Computed != nil {
		in, out := &in.Computed, &out.Computed
		*out = new(InstallationSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Defaults != nil {
		in, out := &in.Defaults, &out.Defaults
		*out = new(InstallationSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationStatus.
func (in *InstallationStatus) DeepCopy() *InstallationStatus {
	if in == nil {
		return nil
	}
	out := new(InstallationStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Istio) DeepCopyInto(out *Istio) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Istio.
func (in *Istio) DeepCopy() *Istio {
	if in == nil {
		return nil
	}
	out := new(Istio)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Istio) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioCNIDaemonset) DeepCopyInto(out *IstioCNIDaemonset) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(IstioCNIDaemonsetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioCNIDaemonset.
func (in *IstioCNIDaemonset) DeepCopy() *IstioCNIDaemonset {
	if in == nil {
		return nil
	}
	out := new(IstioCNIDaemonset)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioCNIDaemonsetPodSpec) DeepCopyInto(out *IstioCNIDaemonsetPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioCNIDaemonsetPodSpec.
func (in *IstioCNIDaemonsetPodSpec) DeepCopy() *IstioCNIDaemonsetPodSpec {
	if in == nil {
		return nil
	}
	out := new(IstioCNIDaemonsetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioCNIDaemonsetSpec) DeepCopyInto(out *IstioCNIDaemonsetSpec) {
	*out = *in
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(IstioCNIDaemonsetSpecTemplate)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioCNIDaemonsetSpec.
func (in *IstioCNIDaemonsetSpec) DeepCopy() *IstioCNIDaemonsetSpec {
	if in == nil {
		return nil
	}
	out := new(IstioCNIDaemonsetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioCNIDaemonsetSpecTemplate) DeepCopyInto(out *IstioCNIDaemonsetSpecTemplate) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(IstioCNIDaemonsetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioCNIDaemonsetSpecTemplate.
func (in *IstioCNIDaemonsetSpecTemplate) DeepCopy() *IstioCNIDaemonsetSpecTemplate {
	if in == nil {
		return nil
	}
	out := new(IstioCNIDaemonsetSpecTemplate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioList) DeepCopyInto(out *IstioList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Istio, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioList.
func (in *IstioList) DeepCopy() *IstioList {
	if in == nil {
		return nil
	}
	out := new(IstioList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *IstioList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioSpec) DeepCopyInto(out *IstioSpec) {
	*out = *in
	if in.IstiodDeployment != nil {
		in, out := &in.IstiodDeployment, &out.IstiodDeployment
		*out = new(IstiodDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.IstioCNIDaemonset != nil {
		in, out := &in.IstioCNIDaemonset, &out.IstioCNIDaemonset
		*out = new(IstioCNIDaemonset)
		(*in).DeepCopyInto(*out)
	}
	if in.ZTunnelDaemonset != nil {
		in, out := &in.ZTunnelDaemonset, &out.ZTunnelDaemonset
		*out = new(ZTunnelDaemonset)
		(*in).DeepCopyInto(*out)
	}
	if in.WaypointLogging != nil {
		in, out := &in.WaypointLogging, &out.WaypointLogging
		*out = new(LogCollectionStatusType)
		**out = **in
	}
	if in.DSCPMark != nil {
		in, out := &in.DSCPMark, &out.DSCPMark
		*out = new(numorstring.DSCP)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioSpec.
func (in *IstioSpec) DeepCopy() *IstioSpec {
	if in == nil {
		return nil
	}
	out := new(IstioSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstioStatus) DeepCopyInto(out *IstioStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioStatus.
func (in *IstioStatus) DeepCopy() *IstioStatus {
	if in == nil {
		return nil
	}
	out := new(IstioStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstiodDeployment) DeepCopyInto(out *IstiodDeployment) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(IstiodDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstiodDeployment.
func (in *IstiodDeployment) DeepCopy() *IstiodDeployment {
	if in == nil {
		return nil
	}
	out := new(IstiodDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstiodDeploymentPodSpec) DeepCopyInto(out *IstiodDeploymentPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstiodDeploymentPodSpec.
func (in *IstiodDeploymentPodSpec) DeepCopy() *IstiodDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(IstiodDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstiodDeploymentSpec) DeepCopyInto(out *IstiodDeploymentSpec) {
	*out = *in
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(IstiodDeploymentSpecTemplate)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstiodDeploymentSpec.
func (in *IstiodDeploymentSpec) DeepCopy() *IstiodDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(IstiodDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IstiodDeploymentSpecTemplate) DeepCopyInto(out *IstiodDeploymentSpecTemplate) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(IstiodDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstiodDeploymentSpecTemplate.
func (in *IstiodDeploymentSpecTemplate) DeepCopy() *IstiodDeploymentSpecTemplate {
	if in == nil {
		return nil
	}
	out := new(IstiodDeploymentSpecTemplate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Logging) DeepCopyInto(out *Logging) {
	*out = *in
	if in.CNI != nil {
		in, out := &in.CNI, &out.CNI
		*out = new(CNILogging)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Logging.
func (in *Logging) DeepCopy() *Logging {
	if in == nil {
		return nil
	}
	out := new(Logging)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagementClusterConnection) DeepCopyInto(out *ManagementClusterConnection) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementClusterConnection.
func (in *ManagementClusterConnection) DeepCopy() *ManagementClusterConnection {
	if in == nil {
		return nil
	}
	out := new(ManagementClusterConnection)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ManagementClusterConnection) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagementClusterConnectionList) DeepCopyInto(out *ManagementClusterConnectionList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ManagementClusterConnection, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementClusterConnectionList.
func (in *ManagementClusterConnectionList) DeepCopy() *ManagementClusterConnectionList {
	if in == nil {
		return nil
	}
	out := new(ManagementClusterConnectionList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ManagementClusterConnectionList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagementClusterConnectionSpec) DeepCopyInto(out *ManagementClusterConnectionSpec) {
	*out = *in
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(ManagementClusterTLS)
		**out = **in
	}
	if in.GuardianDeployment != nil {
		in, out := &in.GuardianDeployment, &out.GuardianDeployment
		*out = new(GuardianDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.Impersonation != nil {
		in, out := &in.Impersonation, &out.Impersonation
		*out = new(Impersonation)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementClusterConnectionSpec.
func (in *ManagementClusterConnectionSpec) DeepCopy() *ManagementClusterConnectionSpec {
	if in == nil {
		return nil
	}
	out := new(ManagementClusterConnectionSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagementClusterConnectionStatus) DeepCopyInto(out *ManagementClusterConnectionStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementClusterConnectionStatus.
func (in *ManagementClusterConnectionStatus) DeepCopy() *ManagementClusterConnectionStatus {
	if in == nil {
		return nil
	}
	out := new(ManagementClusterConnectionStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagementClusterTLS) DeepCopyInto(out *ManagementClusterTLS) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementClusterTLS.
func (in *ManagementClusterTLS) DeepCopy() *ManagementClusterTLS {
	if in == nil {
		return nil
	}
	out := new(ManagementClusterTLS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Metadata) DeepCopyInto(out *Metadata) {
	*out = *in
	if in.Labels != nil {
		in, out := &in.Labels, &out.Labels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metadata.
func (in *Metadata) DeepCopy() *Metadata {
	if in == nil {
		return nil
	}
	out := new(Metadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NamespacedName) DeepCopyInto(out *NamespacedName) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedName.
func (in *NamespacedName) DeepCopy() *NamespacedName {
	if in == nil {
		return nil
	}
	out := new(NamespacedName)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NetworkPolicySpec) DeepCopyInto(out *NetworkPolicySpec) {
	*out = *in
	if in.ManagePolicies != nil {
		in, out := &in.ManagePolicies, &out.ManagePolicies
		*out = new(NetworkPolicyManagement)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicySpec.
func (in *NetworkPolicySpec) DeepCopy() *NetworkPolicySpec {
	if in == nil {
		return nil
	}
	out := new(NetworkPolicySpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NodeAddressAutodetection) DeepCopyInto(out *NodeAddressAutodetection) {
	*out = *in
	if in.FirstFound != nil {
		in, out := &in.FirstFound, &out.FirstFound
		*out = new(bool)
		**out = **in
	}
	if in.Kubernetes != nil {
		in, out := &in.Kubernetes, &out.Kubernetes
		*out = new(KubernetesAutodetectionMethod)
		**out = **in
	}
	if in.CIDRS != nil {
		in, out := &in.CIDRS, &out.CIDRS
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAddressAutodetection.
func (in *NodeAddressAutodetection) DeepCopy() *NodeAddressAutodetection {
	if in == nil {
		return nil
	}
	out := new(NodeAddressAutodetection)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NodeAffinity) DeepCopyInto(out *NodeAffinity) {
	*out = *in
	if in.PreferredDuringSchedulingIgnoredDuringExecution != nil {
		in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution
		*out = make([]corev1.PreferredSchedulingTerm, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RequiredDuringSchedulingIgnoredDuringExecution != nil {
		in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution
		*out = new(corev1.NodeSelector)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAffinity.
func (in *NodeAffinity) DeepCopy() *NodeAffinity {
	if in == nil {
		return nil
	}
	out := new(NodeAffinity)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PodDisruptionBudgetOverride) DeepCopyInto(out *PodDisruptionBudgetOverride) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(PodDisruptionBudgetOverrideSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodDisruptionBudgetOverride.
func (in *PodDisruptionBudgetOverride) DeepCopy() *PodDisruptionBudgetOverride {
	if in == nil {
		return nil
	}
	out := new(PodDisruptionBudgetOverride)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PodDisruptionBudgetOverrideSpec) DeepCopyInto(out *PodDisruptionBudgetOverrideSpec) {
	*out = *in
	if in.MinAvailable != nil {
		in, out := &in.MinAvailable, &out.MinAvailable
		*out = new(intstr.IntOrString)
		**out = **in
	}
	if in.MaxUnavailable != nil {
		in, out := &in.MaxUnavailable, &out.MaxUnavailable
		*out = new(intstr.IntOrString)
		**out = **in
	}
	if in.UnhealthyPodEvictionPolicy != nil {
		in, out := &in.UnhealthyPodEvictionPolicy, &out.UnhealthyPodEvictionPolicy
		*out = new(policyv1.UnhealthyPodEvictionPolicyType)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodDisruptionBudgetOverrideSpec.
func (in *PodDisruptionBudgetOverrideSpec) DeepCopy() *PodDisruptionBudgetOverrideSpec {
	if in == nil {
		return nil
	}
	out := new(PodDisruptionBudgetOverrideSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ProbeOverride) DeepCopyInto(out *ProbeOverride) {
	*out = *in
	if in.PeriodSeconds != nil {
		in, out := &in.PeriodSeconds, &out.PeriodSeconds
		*out = new(int32)
		**out = **in
	}
	if in.TimeoutSeconds != nil {
		in, out := &in.TimeoutSeconds, &out.TimeoutSeconds
		*out = new(int32)
		**out = **in
	}
	if in.FailureThreshold != nil {
		in, out := &in.FailureThreshold, &out.FailureThreshold
		*out = new(int32)
		**out = **in
	}
	if in.InitialDelaySeconds != nil {
		in, out := &in.InitialDelaySeconds, &out.InitialDelaySeconds
		*out = new(int32)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProbeOverride.
func (in *ProbeOverride) DeepCopy() *ProbeOverride {
	if in == nil {
		return nil
	}
	out := new(ProbeOverride)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Proxy) DeepCopyInto(out *Proxy) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Proxy.
func (in *Proxy) DeepCopy() *Proxy {
	if in == nil {
		return nil
	}
	out := new(Proxy)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *QueryServerLogging) DeepCopyInto(out *QueryServerLogging) {
	*out = *in
	if in.LogSeverity != nil {
		in, out := &in.LogSeverity, &out.LogSeverity
		*out = new(LogSeverity)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryServerLogging.
func (in *QueryServerLogging) DeepCopy() *QueryServerLogging {
	if in == nil {
		return nil
	}
	out := new(QueryServerLogging)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Sysctl) DeepCopyInto(out *Sysctl) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sysctl.
func (in *Sysctl) DeepCopy() *Sysctl {
	if in == nil {
		return nil
	}
	out := new(Sysctl)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TLSCipherSuite) DeepCopyInto(out *TLSCipherSuite) {
	*out = *in
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(TLSCipher)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSCipherSuite.
func (in *TLSCipherSuite) DeepCopy() *TLSCipherSuite {
	if in == nil {
		return nil
	}
	out := new(TLSCipherSuite)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in TLSCipherSuites) DeepCopyInto(out *TLSCipherSuites) {
	{
		in := &in
		*out = make(TLSCipherSuites, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSCipherSuites.
func (in TLSCipherSuites) DeepCopy() TLSCipherSuites {
	if in == nil {
		return nil
	}
	out := new(TLSCipherSuites)
	in.DeepCopyInto(out)
	return *out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TigeraStatus) DeepCopyInto(out *TigeraStatus) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	out.Spec = in.Spec
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TigeraStatus.
func (in *TigeraStatus) DeepCopy() *TigeraStatus {
	if in == nil {
		return nil
	}
	out := new(TigeraStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *TigeraStatus) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TigeraStatusCondition) DeepCopyInto(out *TigeraStatusCondition) {
	*out = *in
	in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TigeraStatusCondition.
func (in *TigeraStatusCondition) DeepCopy() *TigeraStatusCondition {
	if in == nil {
		return nil
	}
	out := new(TigeraStatusCondition)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TigeraStatusList) DeepCopyInto(out *TigeraStatusList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]TigeraStatus, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TigeraStatusList.
func (in *TigeraStatusList) DeepCopy() *TigeraStatusList {
	if in == nil {
		return nil
	}
	out := new(TigeraStatusList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *TigeraStatusList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TigeraStatusSpec) DeepCopyInto(out *TigeraStatusSpec) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TigeraStatusSpec.
func (in *TigeraStatusSpec) DeepCopy() *TigeraStatusSpec {
	if in == nil {
		return nil
	}
	out := new(TigeraStatusSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TigeraStatusStatus) DeepCopyInto(out *TigeraStatusStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]TigeraStatusCondition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TigeraStatusStatus.
func (in *TigeraStatusStatus) DeepCopy() *TigeraStatusStatus {
	if in == nil {
		return nil
	}
	out := new(TigeraStatusStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaAffinity) DeepCopyInto(out *TyphaAffinity) {
	*out = *in
	if in.NodeAffinity != nil {
		in, out := &in.NodeAffinity, &out.NodeAffinity
		*out = new(NodeAffinity)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaAffinity.
func (in *TyphaAffinity) DeepCopy() *TyphaAffinity {
	if in == nil {
		return nil
	}
	out := new(TyphaAffinity)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeployment) DeepCopyInto(out *TyphaDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(TyphaDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeployment.
func (in *TyphaDeployment) DeepCopy() *TyphaDeployment {
	if in == nil {
		return nil
	}
	out := new(TyphaDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeploymentContainer) DeepCopyInto(out *TyphaDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeploymentContainer.
func (in *TyphaDeploymentContainer) DeepCopy() *TyphaDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(TyphaDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeploymentInitContainer) DeepCopyInto(out *TyphaDeploymentInitContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeploymentInitContainer.
func (in *TyphaDeploymentInitContainer) DeepCopy() *TyphaDeploymentInitContainer {
	if in == nil {
		return nil
	}
	out := new(TyphaDeploymentInitContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeploymentPodSpec) DeepCopyInto(out *TyphaDeploymentPodSpec) {
	*out = *in
	if in.InitContainers != nil {
		in, out := &in.InitContainers, &out.InitContainers
		*out = make([]TyphaDeploymentInitContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]TyphaDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*out = new(int64)
		**out = **in
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeploymentPodSpec.
func (in *TyphaDeploymentPodSpec) DeepCopy() *TyphaDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(TyphaDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeploymentPodTemplateSpec) DeepCopyInto(out *TyphaDeploymentPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(TyphaDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeploymentPodTemplateSpec.
func (in *TyphaDeploymentPodTemplateSpec) DeepCopy() *TyphaDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(TyphaDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeploymentSpec) DeepCopyInto(out *TyphaDeploymentSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(TyphaDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Strategy != nil {
		in, out := &in.Strategy, &out.Strategy
		*out = new(TyphaDeploymentStrategy)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeploymentSpec.
func (in *TyphaDeploymentSpec) DeepCopy() *TyphaDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(TyphaDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TyphaDeploymentStrategy) DeepCopyInto(out *TyphaDeploymentStrategy) {
	*out = *in
	if in.RollingUpdate != nil {
		in, out := &in.RollingUpdate, &out.RollingUpdate
		*out = new(appsv1.RollingUpdateDeployment)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TyphaDeploymentStrategy.
func (in *TyphaDeploymentStrategy) DeepCopy() *TyphaDeploymentStrategy {
	if in == nil {
		return nil
	}
	out := new(TyphaDeploymentStrategy)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WAFExtensionSpec) DeepCopyInto(out *WAFExtensionSpec) {
	*out = *in
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(WAFExtensionState)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WAFExtensionSpec.
func (in *WAFExtensionSpec) DeepCopy() *WAFExtensionSpec {
	if in == nil {
		return nil
	}
	out := new(WAFExtensionSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Whisker) DeepCopyInto(out *Whisker) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Whisker.
func (in *Whisker) DeepCopy() *Whisker {
	if in == nil {
		return nil
	}
	out := new(Whisker)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Whisker) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerDeployment) DeepCopyInto(out *WhiskerDeployment) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(WhiskerDeploymentSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerDeployment.
func (in *WhiskerDeployment) DeepCopy() *WhiskerDeployment {
	if in == nil {
		return nil
	}
	out := new(WhiskerDeployment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerDeploymentContainer) DeepCopyInto(out *WhiskerDeploymentContainer) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeOverride)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerDeploymentContainer.
func (in *WhiskerDeploymentContainer) DeepCopy() *WhiskerDeploymentContainer {
	if in == nil {
		return nil
	}
	out := new(WhiskerDeploymentContainer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerDeploymentPodSpec) DeepCopyInto(out *WhiskerDeploymentPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Containers != nil {
		in, out := &in.Containers, &out.Containers
		*out = make([]WhiskerDeploymentContainer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*out = new(int64)
		**out = **in
	}
	if in.TopologySpreadConstraints != nil {
		in, out := &in.TopologySpreadConstraints, &out.TopologySpreadConstraints
		*out = make([]corev1.TopologySpreadConstraint, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerDeploymentPodSpec.
func (in *WhiskerDeploymentPodSpec) DeepCopy() *WhiskerDeploymentPodSpec {
	if in == nil {
		return nil
	}
	out := new(WhiskerDeploymentPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerDeploymentPodTemplateSpec) DeepCopyInto(out *WhiskerDeploymentPodTemplateSpec) {
	*out = *in
	if in.Metadata != nil {
		in, out := &in.Metadata, &out.Metadata
		*out = new(Metadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(WhiskerDeploymentPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerDeploymentPodTemplateSpec.
func (in *WhiskerDeploymentPodTemplateSpec) DeepCopy() *WhiskerDeploymentPodTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(WhiskerDeploymentPodTemplateSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerDeploymentSpec) DeepCopyInto(out *WhiskerDeploymentSpec) {
	*out = *in
	if in.MinReadySeconds != nil {
		in, out := &in.MinReadySeconds, &out.MinReadySeconds
		*out = new(int32)
		**out = **in
	}
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(WhiskerDeploymentPodTemplateSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Strategy != nil {
		in, out := &in.Strategy, &out.Strategy
		*out = new(WhiskerDeploymentStrategy)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerDeploymentSpec.
func (in *WhiskerDeploymentSpec) DeepCopy() *WhiskerDeploymentSpec {
	if in == nil {
		return nil
	}
	out := new(WhiskerDeploymentSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerDeploymentStrategy) DeepCopyInto(out *WhiskerDeploymentStrategy) {
	*out = *in
	if in.RollingUpdate != nil {
		in, out := &in.RollingUpdate, &out.RollingUpdate
		*out = new(appsv1.RollingUpdateDeployment)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerDeploymentStrategy.
func (in *WhiskerDeploymentStrategy) DeepCopy() *WhiskerDeploymentStrategy {
	if in == nil {
		return nil
	}
	out := new(WhiskerDeploymentStrategy)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerList) DeepCopyInto(out *WhiskerList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Whisker, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerList.
func (in *WhiskerList) DeepCopy() *WhiskerList {
	if in == nil {
		return nil
	}
	out := new(WhiskerList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *WhiskerList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerSpec) DeepCopyInto(out *WhiskerSpec) {
	*out = *in
	if in.WhiskerDeployment != nil {
		in, out := &in.WhiskerDeployment, &out.WhiskerDeployment
		*out = new(WhiskerDeployment)
		(*in).DeepCopyInto(*out)
	}
	if in.Notifications != nil {
		in, out := &in.Notifications, &out.Notifications
		*out = new(NotificationMode)
		**out = **in
	}
	if in.IngressGateway != nil {
		in, out := &in.IngressGateway, &out.IngressGateway
		*out = new(IngressGatewaySpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerSpec.
func (in *WhiskerSpec) DeepCopy() *WhiskerSpec {
	if in == nil {
		return nil
	}
	out := new(WhiskerSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WhiskerStatus) DeepCopyInto(out *WhiskerStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhiskerStatus.
func (in *WhiskerStatus) DeepCopy() *WhiskerStatus {
	if in == nil {
		return nil
	}
	out := new(WhiskerStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WindowsNodeSpec) DeepCopyInto(out *WindowsNodeSpec) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsNodeSpec.
func (in *WindowsNodeSpec) DeepCopy() *WindowsNodeSpec {
	if in == nil {
		return nil
	}
	out := new(WindowsNodeSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ZTunnelDaemonset) DeepCopyInto(out *ZTunnelDaemonset) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(ZTunnelDaemonsetSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZTunnelDaemonset.
func (in *ZTunnelDaemonset) DeepCopy() *ZTunnelDaemonset {
	if in == nil {
		return nil
	}
	out := new(ZTunnelDaemonset)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ZTunnelDaemonsetPodSpec) DeepCopyInto(out *ZTunnelDaemonsetPodSpec) {
	*out = *in
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZTunnelDaemonsetPodSpec.
func (in *ZTunnelDaemonsetPodSpec) DeepCopy() *ZTunnelDaemonsetPodSpec {
	if in == nil {
		return nil
	}
	out := new(ZTunnelDaemonsetPodSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ZTunnelDaemonsetSpec) DeepCopyInto(out *ZTunnelDaemonsetSpec) {
	*out = *in
	if in.Template != nil {
		in, out := &in.Template, &out.Template
		*out = new(ZTunnelDaemonsetSpecTemplate)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZTunnelDaemonsetSpec.
func (in *ZTunnelDaemonsetSpec) DeepCopy() *ZTunnelDaemonsetSpec {
	if in == nil {
		return nil
	}
	out := new(ZTunnelDaemonsetSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ZTunnelDaemonsetSpecTemplate) DeepCopyInto(out *ZTunnelDaemonsetSpecTemplate) {
	*out = *in
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = new(ZTunnelDaemonsetPodSpec)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZTunnelDaemonsetSpecTemplate.
func (in *ZTunnelDaemonsetSpecTemplate) DeepCopy() *ZTunnelDaemonsetSpecTemplate {
	if in == nil {
		return nil
	}
	out := new(ZTunnelDaemonsetSpecTemplate)
	in.DeepCopyInto(out)
	return out
}
