//go:build !ignore_autogenerated

/*
Copyright (c) Microsoft Corporation.
Licensed under the MIT license.
*/

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

package v1api20210501

import (
	"github.com/Azure/azure-service-operator/v2/pkg/genruntime"
	"github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions"
	"github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
	runtime "k8s.io/apimachinery/pkg/runtime"
)

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ContainerServiceNetworkProfile) DeepCopyInto(out *ContainerServiceNetworkProfile) {
	*out = *in
	if in.DnsServiceIP != nil {
		in, out := &in.DnsServiceIP, &out.DnsServiceIP
		*out = new(string)
		**out = **in
	}
	if in.DockerBridgeCidr != nil {
		in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr
		*out = new(string)
		**out = **in
	}
	if in.LoadBalancerProfile != nil {
		in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile
		*out = new(ManagedClusterLoadBalancerProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.LoadBalancerSku != nil {
		in, out := &in.LoadBalancerSku, &out.LoadBalancerSku
		*out = new(ContainerServiceNetworkProfile_LoadBalancerSku)
		**out = **in
	}
	if in.NetworkMode != nil {
		in, out := &in.NetworkMode, &out.NetworkMode
		*out = new(ContainerServiceNetworkProfile_NetworkMode)
		**out = **in
	}
	if in.NetworkPlugin != nil {
		in, out := &in.NetworkPlugin, &out.NetworkPlugin
		*out = new(ContainerServiceNetworkProfile_NetworkPlugin)
		**out = **in
	}
	if in.NetworkPolicy != nil {
		in, out := &in.NetworkPolicy, &out.NetworkPolicy
		*out = new(ContainerServiceNetworkProfile_NetworkPolicy)
		**out = **in
	}
	if in.OutboundType != nil {
		in, out := &in.OutboundType, &out.OutboundType
		*out = new(ContainerServiceNetworkProfile_OutboundType)
		**out = **in
	}
	if in.PodCidr != nil {
		in, out := &in.PodCidr, &out.PodCidr
		*out = new(string)
		**out = **in
	}
	if in.ServiceCidr != nil {
		in, out := &in.ServiceCidr, &out.ServiceCidr
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ContainerServiceNetworkProfile_STATUS) DeepCopyInto(out *ContainerServiceNetworkProfile_STATUS) {
	*out = *in
	if in.DnsServiceIP != nil {
		in, out := &in.DnsServiceIP, &out.DnsServiceIP
		*out = new(string)
		**out = **in
	}
	if in.DockerBridgeCidr != nil {
		in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr
		*out = new(string)
		**out = **in
	}
	if in.LoadBalancerProfile != nil {
		in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile
		*out = new(ManagedClusterLoadBalancerProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.LoadBalancerSku != nil {
		in, out := &in.LoadBalancerSku, &out.LoadBalancerSku
		*out = new(ContainerServiceNetworkProfile_LoadBalancerSku_STATUS)
		**out = **in
	}
	if in.NetworkMode != nil {
		in, out := &in.NetworkMode, &out.NetworkMode
		*out = new(ContainerServiceNetworkProfile_NetworkMode_STATUS)
		**out = **in
	}
	if in.NetworkPlugin != nil {
		in, out := &in.NetworkPlugin, &out.NetworkPlugin
		*out = new(ContainerServiceNetworkProfile_NetworkPlugin_STATUS)
		**out = **in
	}
	if in.NetworkPolicy != nil {
		in, out := &in.NetworkPolicy, &out.NetworkPolicy
		*out = new(ContainerServiceNetworkProfile_NetworkPolicy_STATUS)
		**out = **in
	}
	if in.OutboundType != nil {
		in, out := &in.OutboundType, &out.OutboundType
		*out = new(ContainerServiceNetworkProfile_OutboundType_STATUS)
		**out = **in
	}
	if in.PodCidr != nil {
		in, out := &in.PodCidr, &out.PodCidr
		*out = new(string)
		**out = **in
	}
	if in.ServiceCidr != nil {
		in, out := &in.ServiceCidr, &out.ServiceCidr
		*out = new(string)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *KubeletConfig) DeepCopyInto(out *KubeletConfig) {
	*out = *in
	if in.AllowedUnsafeSysctls != nil {
		in, out := &in.AllowedUnsafeSysctls, &out.AllowedUnsafeSysctls
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ContainerLogMaxFiles != nil {
		in, out := &in.ContainerLogMaxFiles, &out.ContainerLogMaxFiles
		*out = new(int)
		**out = **in
	}
	if in.ContainerLogMaxSizeMB != nil {
		in, out := &in.ContainerLogMaxSizeMB, &out.ContainerLogMaxSizeMB
		*out = new(int)
		**out = **in
	}
	if in.CpuCfsQuota != nil {
		in, out := &in.CpuCfsQuota, &out.CpuCfsQuota
		*out = new(bool)
		**out = **in
	}
	if in.CpuCfsQuotaPeriod != nil {
		in, out := &in.CpuCfsQuotaPeriod, &out.CpuCfsQuotaPeriod
		*out = new(string)
		**out = **in
	}
	if in.CpuManagerPolicy != nil {
		in, out := &in.CpuManagerPolicy, &out.CpuManagerPolicy
		*out = new(string)
		**out = **in
	}
	if in.FailSwapOn != nil {
		in, out := &in.FailSwapOn, &out.FailSwapOn
		*out = new(bool)
		**out = **in
	}
	if in.ImageGcHighThreshold != nil {
		in, out := &in.ImageGcHighThreshold, &out.ImageGcHighThreshold
		*out = new(int)
		**out = **in
	}
	if in.ImageGcLowThreshold != nil {
		in, out := &in.ImageGcLowThreshold, &out.ImageGcLowThreshold
		*out = new(int)
		**out = **in
	}
	if in.PodMaxPids != nil {
		in, out := &in.PodMaxPids, &out.PodMaxPids
		*out = new(int)
		**out = **in
	}
	if in.TopologyManagerPolicy != nil {
		in, out := &in.TopologyManagerPolicy, &out.TopologyManagerPolicy
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *KubeletConfig_STATUS) DeepCopyInto(out *KubeletConfig_STATUS) {
	*out = *in
	if in.AllowedUnsafeSysctls != nil {
		in, out := &in.AllowedUnsafeSysctls, &out.AllowedUnsafeSysctls
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ContainerLogMaxFiles != nil {
		in, out := &in.ContainerLogMaxFiles, &out.ContainerLogMaxFiles
		*out = new(int)
		**out = **in
	}
	if in.ContainerLogMaxSizeMB != nil {
		in, out := &in.ContainerLogMaxSizeMB, &out.ContainerLogMaxSizeMB
		*out = new(int)
		**out = **in
	}
	if in.CpuCfsQuota != nil {
		in, out := &in.CpuCfsQuota, &out.CpuCfsQuota
		*out = new(bool)
		**out = **in
	}
	if in.CpuCfsQuotaPeriod != nil {
		in, out := &in.CpuCfsQuotaPeriod, &out.CpuCfsQuotaPeriod
		*out = new(string)
		**out = **in
	}
	if in.CpuManagerPolicy != nil {
		in, out := &in.CpuManagerPolicy, &out.CpuManagerPolicy
		*out = new(string)
		**out = **in
	}
	if in.FailSwapOn != nil {
		in, out := &in.FailSwapOn, &out.FailSwapOn
		*out = new(bool)
		**out = **in
	}
	if in.ImageGcHighThreshold != nil {
		in, out := &in.ImageGcHighThreshold, &out.ImageGcHighThreshold
		*out = new(int)
		**out = **in
	}
	if in.ImageGcLowThreshold != nil {
		in, out := &in.ImageGcLowThreshold, &out.ImageGcLowThreshold
		*out = new(int)
		**out = **in
	}
	if in.PodMaxPids != nil {
		in, out := &in.PodMaxPids, &out.PodMaxPids
		*out = new(int)
		**out = **in
	}
	if in.TopologyManagerPolicy != nil {
		in, out := &in.TopologyManagerPolicy, &out.TopologyManagerPolicy
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LinuxOSConfig) DeepCopyInto(out *LinuxOSConfig) {
	*out = *in
	if in.SwapFileSizeMB != nil {
		in, out := &in.SwapFileSizeMB, &out.SwapFileSizeMB
		*out = new(int)
		**out = **in
	}
	if in.Sysctls != nil {
		in, out := &in.Sysctls, &out.Sysctls
		*out = new(SysctlConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.TransparentHugePageDefrag != nil {
		in, out := &in.TransparentHugePageDefrag, &out.TransparentHugePageDefrag
		*out = new(string)
		**out = **in
	}
	if in.TransparentHugePageEnabled != nil {
		in, out := &in.TransparentHugePageEnabled, &out.TransparentHugePageEnabled
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LinuxOSConfig_STATUS) DeepCopyInto(out *LinuxOSConfig_STATUS) {
	*out = *in
	if in.SwapFileSizeMB != nil {
		in, out := &in.SwapFileSizeMB, &out.SwapFileSizeMB
		*out = new(int)
		**out = **in
	}
	if in.Sysctls != nil {
		in, out := &in.Sysctls, &out.Sysctls
		*out = new(SysctlConfig_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.TransparentHugePageDefrag != nil {
		in, out := &in.TransparentHugePageDefrag, &out.TransparentHugePageDefrag
		*out = new(string)
		**out = **in
	}
	if in.TransparentHugePageEnabled != nil {
		in, out := &in.TransparentHugePageEnabled, &out.TransparentHugePageEnabled
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedCluster) DeepCopyInto(out *ManagedCluster) {
	*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 ManagedCluster.
func (in *ManagedCluster) DeepCopy() *ManagedCluster {
	if in == nil {
		return nil
	}
	out := new(ManagedCluster)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ManagedCluster) 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 *ManagedClusterAADProfile) DeepCopyInto(out *ManagedClusterAADProfile) {
	*out = *in
	if in.AdminGroupObjectIDs != nil {
		in, out := &in.AdminGroupObjectIDs, &out.AdminGroupObjectIDs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ClientAppID != nil {
		in, out := &in.ClientAppID, &out.ClientAppID
		*out = new(string)
		**out = **in
	}
	if in.EnableAzureRBAC != nil {
		in, out := &in.EnableAzureRBAC, &out.EnableAzureRBAC
		*out = new(bool)
		**out = **in
	}
	if in.Managed != nil {
		in, out := &in.Managed, &out.Managed
		*out = new(bool)
		**out = **in
	}
	if in.ServerAppID != nil {
		in, out := &in.ServerAppID, &out.ServerAppID
		*out = new(string)
		**out = **in
	}
	if in.ServerAppSecret != nil {
		in, out := &in.ServerAppSecret, &out.ServerAppSecret
		*out = new(string)
		**out = **in
	}
	if in.TenantID != nil {
		in, out := &in.TenantID, &out.TenantID
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterAADProfile_STATUS) DeepCopyInto(out *ManagedClusterAADProfile_STATUS) {
	*out = *in
	if in.AdminGroupObjectIDs != nil {
		in, out := &in.AdminGroupObjectIDs, &out.AdminGroupObjectIDs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ClientAppID != nil {
		in, out := &in.ClientAppID, &out.ClientAppID
		*out = new(string)
		**out = **in
	}
	if in.EnableAzureRBAC != nil {
		in, out := &in.EnableAzureRBAC, &out.EnableAzureRBAC
		*out = new(bool)
		**out = **in
	}
	if in.Managed != nil {
		in, out := &in.Managed, &out.Managed
		*out = new(bool)
		**out = **in
	}
	if in.ServerAppID != nil {
		in, out := &in.ServerAppID, &out.ServerAppID
		*out = new(string)
		**out = **in
	}
	if in.ServerAppSecret != nil {
		in, out := &in.ServerAppSecret, &out.ServerAppSecret
		*out = new(string)
		**out = **in
	}
	if in.TenantID != nil {
		in, out := &in.TenantID, &out.TenantID
		*out = new(string)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterAgentPoolProfile) DeepCopyInto(out *ManagedClusterAgentPoolProfile) {
	*out = *in
	if in.AvailabilityZones != nil {
		in, out := &in.AvailabilityZones, &out.AvailabilityZones
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Count != nil {
		in, out := &in.Count, &out.Count
		*out = new(int)
		**out = **in
	}
	if in.EnableAutoScaling != nil {
		in, out := &in.EnableAutoScaling, &out.EnableAutoScaling
		*out = new(bool)
		**out = **in
	}
	if in.EnableEncryptionAtHost != nil {
		in, out := &in.EnableEncryptionAtHost, &out.EnableEncryptionAtHost
		*out = new(bool)
		**out = **in
	}
	if in.EnableFIPS != nil {
		in, out := &in.EnableFIPS, &out.EnableFIPS
		*out = new(bool)
		**out = **in
	}
	if in.EnableNodePublicIP != nil {
		in, out := &in.EnableNodePublicIP, &out.EnableNodePublicIP
		*out = new(bool)
		**out = **in
	}
	if in.EnableUltraSSD != nil {
		in, out := &in.EnableUltraSSD, &out.EnableUltraSSD
		*out = new(bool)
		**out = **in
	}
	if in.GpuInstanceProfile != nil {
		in, out := &in.GpuInstanceProfile, &out.GpuInstanceProfile
		*out = new(GPUInstanceProfile)
		**out = **in
	}
	if in.KubeletConfig != nil {
		in, out := &in.KubeletConfig, &out.KubeletConfig
		*out = new(KubeletConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.KubeletDiskType != nil {
		in, out := &in.KubeletDiskType, &out.KubeletDiskType
		*out = new(KubeletDiskType)
		**out = **in
	}
	if in.LinuxOSConfig != nil {
		in, out := &in.LinuxOSConfig, &out.LinuxOSConfig
		*out = new(LinuxOSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.MaxCount != nil {
		in, out := &in.MaxCount, &out.MaxCount
		*out = new(int)
		**out = **in
	}
	if in.MaxPods != nil {
		in, out := &in.MaxPods, &out.MaxPods
		*out = new(int)
		**out = **in
	}
	if in.MinCount != nil {
		in, out := &in.MinCount, &out.MinCount
		*out = new(int)
		**out = **in
	}
	if in.Mode != nil {
		in, out := &in.Mode, &out.Mode
		*out = new(AgentPoolMode)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.NodeLabels != nil {
		in, out := &in.NodeLabels, &out.NodeLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.NodePublicIPPrefixIDReference != nil {
		in, out := &in.NodePublicIPPrefixIDReference, &out.NodePublicIPPrefixIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
	if in.NodeTaints != nil {
		in, out := &in.NodeTaints, &out.NodeTaints
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.OrchestratorVersion != nil {
		in, out := &in.OrchestratorVersion, &out.OrchestratorVersion
		*out = new(string)
		**out = **in
	}
	if in.OsDiskSizeGB != nil {
		in, out := &in.OsDiskSizeGB, &out.OsDiskSizeGB
		*out = new(ContainerServiceOSDisk)
		**out = **in
	}
	if in.OsDiskType != nil {
		in, out := &in.OsDiskType, &out.OsDiskType
		*out = new(OSDiskType)
		**out = **in
	}
	if in.OsSKU != nil {
		in, out := &in.OsSKU, &out.OsSKU
		*out = new(OSSKU)
		**out = **in
	}
	if in.OsType != nil {
		in, out := &in.OsType, &out.OsType
		*out = new(OSType)
		**out = **in
	}
	if in.PodSubnetIDReference != nil {
		in, out := &in.PodSubnetIDReference, &out.PodSubnetIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
	if in.ProximityPlacementGroupID != nil {
		in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID
		*out = new(string)
		**out = **in
	}
	if in.ScaleSetEvictionPolicy != nil {
		in, out := &in.ScaleSetEvictionPolicy, &out.ScaleSetEvictionPolicy
		*out = new(ScaleSetEvictionPolicy)
		**out = **in
	}
	if in.ScaleSetPriority != nil {
		in, out := &in.ScaleSetPriority, &out.ScaleSetPriority
		*out = new(ScaleSetPriority)
		**out = **in
	}
	if in.SpotMaxPrice != nil {
		in, out := &in.SpotMaxPrice, &out.SpotMaxPrice
		*out = new(float64)
		**out = **in
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(AgentPoolType)
		**out = **in
	}
	if in.UpgradeSettings != nil {
		in, out := &in.UpgradeSettings, &out.UpgradeSettings
		*out = new(AgentPoolUpgradeSettings)
		(*in).DeepCopyInto(*out)
	}
	if in.VmSize != nil {
		in, out := &in.VmSize, &out.VmSize
		*out = new(string)
		**out = **in
	}
	if in.VnetSubnetIDReference != nil {
		in, out := &in.VnetSubnetIDReference, &out.VnetSubnetIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterAgentPoolProfile_STATUS) DeepCopyInto(out *ManagedClusterAgentPoolProfile_STATUS) {
	*out = *in
	if in.AvailabilityZones != nil {
		in, out := &in.AvailabilityZones, &out.AvailabilityZones
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Count != nil {
		in, out := &in.Count, &out.Count
		*out = new(int)
		**out = **in
	}
	if in.EnableAutoScaling != nil {
		in, out := &in.EnableAutoScaling, &out.EnableAutoScaling
		*out = new(bool)
		**out = **in
	}
	if in.EnableEncryptionAtHost != nil {
		in, out := &in.EnableEncryptionAtHost, &out.EnableEncryptionAtHost
		*out = new(bool)
		**out = **in
	}
	if in.EnableFIPS != nil {
		in, out := &in.EnableFIPS, &out.EnableFIPS
		*out = new(bool)
		**out = **in
	}
	if in.EnableNodePublicIP != nil {
		in, out := &in.EnableNodePublicIP, &out.EnableNodePublicIP
		*out = new(bool)
		**out = **in
	}
	if in.EnableUltraSSD != nil {
		in, out := &in.EnableUltraSSD, &out.EnableUltraSSD
		*out = new(bool)
		**out = **in
	}
	if in.GpuInstanceProfile != nil {
		in, out := &in.GpuInstanceProfile, &out.GpuInstanceProfile
		*out = new(GPUInstanceProfile_STATUS)
		**out = **in
	}
	if in.KubeletConfig != nil {
		in, out := &in.KubeletConfig, &out.KubeletConfig
		*out = new(KubeletConfig_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.KubeletDiskType != nil {
		in, out := &in.KubeletDiskType, &out.KubeletDiskType
		*out = new(KubeletDiskType_STATUS)
		**out = **in
	}
	if in.LinuxOSConfig != nil {
		in, out := &in.LinuxOSConfig, &out.LinuxOSConfig
		*out = new(LinuxOSConfig_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.MaxCount != nil {
		in, out := &in.MaxCount, &out.MaxCount
		*out = new(int)
		**out = **in
	}
	if in.MaxPods != nil {
		in, out := &in.MaxPods, &out.MaxPods
		*out = new(int)
		**out = **in
	}
	if in.MinCount != nil {
		in, out := &in.MinCount, &out.MinCount
		*out = new(int)
		**out = **in
	}
	if in.Mode != nil {
		in, out := &in.Mode, &out.Mode
		*out = new(AgentPoolMode_STATUS)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.NodeImageVersion != nil {
		in, out := &in.NodeImageVersion, &out.NodeImageVersion
		*out = new(string)
		**out = **in
	}
	if in.NodeLabels != nil {
		in, out := &in.NodeLabels, &out.NodeLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.NodePublicIPPrefixID != nil {
		in, out := &in.NodePublicIPPrefixID, &out.NodePublicIPPrefixID
		*out = new(string)
		**out = **in
	}
	if in.NodeTaints != nil {
		in, out := &in.NodeTaints, &out.NodeTaints
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.OrchestratorVersion != nil {
		in, out := &in.OrchestratorVersion, &out.OrchestratorVersion
		*out = new(string)
		**out = **in
	}
	if in.OsDiskSizeGB != nil {
		in, out := &in.OsDiskSizeGB, &out.OsDiskSizeGB
		*out = new(int)
		**out = **in
	}
	if in.OsDiskType != nil {
		in, out := &in.OsDiskType, &out.OsDiskType
		*out = new(OSDiskType_STATUS)
		**out = **in
	}
	if in.OsSKU != nil {
		in, out := &in.OsSKU, &out.OsSKU
		*out = new(OSSKU_STATUS)
		**out = **in
	}
	if in.OsType != nil {
		in, out := &in.OsType, &out.OsType
		*out = new(OSType_STATUS)
		**out = **in
	}
	if in.PodSubnetID != nil {
		in, out := &in.PodSubnetID, &out.PodSubnetID
		*out = new(string)
		**out = **in
	}
	if in.PowerState != nil {
		in, out := &in.PowerState, &out.PowerState
		*out = new(PowerState_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.ProvisioningState != nil {
		in, out := &in.ProvisioningState, &out.ProvisioningState
		*out = new(string)
		**out = **in
	}
	if in.ProximityPlacementGroupID != nil {
		in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID
		*out = new(string)
		**out = **in
	}
	if in.ScaleSetEvictionPolicy != nil {
		in, out := &in.ScaleSetEvictionPolicy, &out.ScaleSetEvictionPolicy
		*out = new(ScaleSetEvictionPolicy_STATUS)
		**out = **in
	}
	if in.ScaleSetPriority != nil {
		in, out := &in.ScaleSetPriority, &out.ScaleSetPriority
		*out = new(ScaleSetPriority_STATUS)
		**out = **in
	}
	if in.SpotMaxPrice != nil {
		in, out := &in.SpotMaxPrice, &out.SpotMaxPrice
		*out = new(float64)
		**out = **in
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(AgentPoolType_STATUS)
		**out = **in
	}
	if in.UpgradeSettings != nil {
		in, out := &in.UpgradeSettings, &out.UpgradeSettings
		*out = new(AgentPoolUpgradeSettings_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.VmSize != nil {
		in, out := &in.VmSize, &out.VmSize
		*out = new(string)
		**out = **in
	}
	if in.VnetSubnetID != nil {
		in, out := &in.VnetSubnetID, &out.VnetSubnetID
		*out = new(string)
		**out = **in
	}
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterHTTPProxyConfig) DeepCopyInto(out *ManagedClusterHTTPProxyConfig) {
	*out = *in
	if in.HttpProxy != nil {
		in, out := &in.HttpProxy, &out.HttpProxy
		*out = new(string)
		**out = **in
	}
	if in.HttpsProxy != nil {
		in, out := &in.HttpsProxy, &out.HttpsProxy
		*out = new(string)
		**out = **in
	}
	if in.NoProxy != nil {
		in, out := &in.NoProxy, &out.NoProxy
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.TrustedCa != nil {
		in, out := &in.TrustedCa, &out.TrustedCa
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterHTTPProxyConfig_STATUS) DeepCopyInto(out *ManagedClusterHTTPProxyConfig_STATUS) {
	*out = *in
	if in.HttpProxy != nil {
		in, out := &in.HttpProxy, &out.HttpProxy
		*out = new(string)
		**out = **in
	}
	if in.HttpsProxy != nil {
		in, out := &in.HttpsProxy, &out.HttpsProxy
		*out = new(string)
		**out = **in
	}
	if in.NoProxy != nil {
		in, out := &in.NoProxy, &out.NoProxy
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.TrustedCa != nil {
		in, out := &in.TrustedCa, &out.TrustedCa
		*out = new(string)
		**out = **in
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterIdentity_STATUS) DeepCopyInto(out *ManagedClusterIdentity_STATUS) {
	*out = *in
	if in.PrincipalId != nil {
		in, out := &in.PrincipalId, &out.PrincipalId
		*out = new(string)
		**out = **in
	}
	if in.TenantId != nil {
		in, out := &in.TenantId, &out.TenantId
		*out = new(string)
		**out = **in
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(ManagedClusterIdentity_Type_STATUS)
		**out = **in
	}
	if in.UserAssignedIdentities != nil {
		in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
		*out = make(map[string]ManagedClusterIdentity_UserAssignedIdentities_STATUS, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
}

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ManagedClusterList) 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 *ManagedClusterLoadBalancerProfile) DeepCopyInto(out *ManagedClusterLoadBalancerProfile) {
	*out = *in
	if in.AllocatedOutboundPorts != nil {
		in, out := &in.AllocatedOutboundPorts, &out.AllocatedOutboundPorts
		*out = new(int)
		**out = **in
	}
	if in.EffectiveOutboundIPs != nil {
		in, out := &in.EffectiveOutboundIPs, &out.EffectiveOutboundIPs
		*out = make([]ResourceReference, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.IdleTimeoutInMinutes != nil {
		in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes
		*out = new(int)
		**out = **in
	}
	if in.ManagedOutboundIPs != nil {
		in, out := &in.ManagedOutboundIPs, &out.ManagedOutboundIPs
		*out = new(ManagedClusterLoadBalancerProfile_ManagedOutboundIPs)
		(*in).DeepCopyInto(*out)
	}
	if in.OutboundIPPrefixes != nil {
		in, out := &in.OutboundIPPrefixes, &out.OutboundIPPrefixes
		*out = new(ManagedClusterLoadBalancerProfile_OutboundIPPrefixes)
		(*in).DeepCopyInto(*out)
	}
	if in.OutboundIPs != nil {
		in, out := &in.OutboundIPs, &out.OutboundIPs
		*out = new(ManagedClusterLoadBalancerProfile_OutboundIPs)
		(*in).DeepCopyInto(*out)
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterLoadBalancerProfile_STATUS) DeepCopyInto(out *ManagedClusterLoadBalancerProfile_STATUS) {
	*out = *in
	if in.AllocatedOutboundPorts != nil {
		in, out := &in.AllocatedOutboundPorts, &out.AllocatedOutboundPorts
		*out = new(int)
		**out = **in
	}
	if in.EffectiveOutboundIPs != nil {
		in, out := &in.EffectiveOutboundIPs, &out.EffectiveOutboundIPs
		*out = make([]ResourceReference_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.IdleTimeoutInMinutes != nil {
		in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes
		*out = new(int)
		**out = **in
	}
	if in.ManagedOutboundIPs != nil {
		in, out := &in.ManagedOutboundIPs, &out.ManagedOutboundIPs
		*out = new(ManagedClusterLoadBalancerProfile_ManagedOutboundIPs_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.OutboundIPPrefixes != nil {
		in, out := &in.OutboundIPPrefixes, &out.OutboundIPPrefixes
		*out = new(ManagedClusterLoadBalancerProfile_OutboundIPPrefixes_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.OutboundIPs != nil {
		in, out := &in.OutboundIPs, &out.OutboundIPs
		*out = new(ManagedClusterLoadBalancerProfile_OutboundIPs_STATUS)
		(*in).DeepCopyInto(*out)
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterOperatorSpec) DeepCopyInto(out *ManagedClusterOperatorSpec) {
	*out = *in
	if in.ConfigMapExpressions != nil {
		in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
	if in.SecretExpressions != nil {
		in, out := &in.SecretExpressions, &out.SecretExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
	if in.Secrets != nil {
		in, out := &in.Secrets, &out.Secrets
		*out = new(ManagedClusterOperatorSecrets)
		(*in).DeepCopyInto(*out)
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterPodIdentityException) DeepCopyInto(out *ManagedClusterPodIdentityException) {
	*out = *in
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Namespace != nil {
		in, out := &in.Namespace, &out.Namespace
		*out = new(string)
		**out = **in
	}
	if in.PodLabels != nil {
		in, out := &in.PodLabels, &out.PodLabels
		*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 ManagedClusterPodIdentityException.
func (in *ManagedClusterPodIdentityException) DeepCopy() *ManagedClusterPodIdentityException {
	if in == nil {
		return nil
	}
	out := new(ManagedClusterPodIdentityException)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterPodIdentityException_STATUS) DeepCopyInto(out *ManagedClusterPodIdentityException_STATUS) {
	*out = *in
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Namespace != nil {
		in, out := &in.Namespace, &out.Namespace
		*out = new(string)
		**out = **in
	}
	if in.PodLabels != nil {
		in, out := &in.PodLabels, &out.PodLabels
		*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 ManagedClusterPodIdentityException_STATUS.
func (in *ManagedClusterPodIdentityException_STATUS) DeepCopy() *ManagedClusterPodIdentityException_STATUS {
	if in == nil {
		return nil
	}
	out := new(ManagedClusterPodIdentityException_STATUS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterPodIdentityProfile) DeepCopyInto(out *ManagedClusterPodIdentityProfile) {
	*out = *in
	if in.AllowNetworkPluginKubenet != nil {
		in, out := &in.AllowNetworkPluginKubenet, &out.AllowNetworkPluginKubenet
		*out = new(bool)
		**out = **in
	}
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.UserAssignedIdentities != nil {
		in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
		*out = make([]ManagedClusterPodIdentity, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.UserAssignedIdentityExceptions != nil {
		in, out := &in.UserAssignedIdentityExceptions, &out.UserAssignedIdentityExceptions
		*out = make([]ManagedClusterPodIdentityException, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterPodIdentityProfile_STATUS) DeepCopyInto(out *ManagedClusterPodIdentityProfile_STATUS) {
	*out = *in
	if in.AllowNetworkPluginKubenet != nil {
		in, out := &in.AllowNetworkPluginKubenet, &out.AllowNetworkPluginKubenet
		*out = new(bool)
		**out = **in
	}
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.UserAssignedIdentities != nil {
		in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
		*out = make([]ManagedClusterPodIdentity_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.UserAssignedIdentityExceptions != nil {
		in, out := &in.UserAssignedIdentityExceptions, &out.UserAssignedIdentityExceptions
		*out = make([]ManagedClusterPodIdentityException_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterPodIdentityProvisioningErrorBody_STATUS) DeepCopyInto(out *ManagedClusterPodIdentityProvisioningErrorBody_STATUS) {
	*out = *in
	if in.Code != nil {
		in, out := &in.Code, &out.Code
		*out = new(string)
		**out = **in
	}
	if in.Details != nil {
		in, out := &in.Details, &out.Details
		*out = make([]ManagedClusterPodIdentityProvisioningErrorBody_STATUS_Unrolled, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Message != nil {
		in, out := &in.Message, &out.Message
		*out = new(string)
		**out = **in
	}
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(string)
		**out = **in
	}
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterPodIdentity_STATUS) DeepCopyInto(out *ManagedClusterPodIdentity_STATUS) {
	*out = *in
	if in.BindingSelector != nil {
		in, out := &in.BindingSelector, &out.BindingSelector
		*out = new(string)
		**out = **in
	}
	if in.Identity != nil {
		in, out := &in.Identity, &out.Identity
		*out = new(UserAssignedIdentity_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Namespace != nil {
		in, out := &in.Namespace, &out.Namespace
		*out = new(string)
		**out = **in
	}
	if in.ProvisioningInfo != nil {
		in, out := &in.ProvisioningInfo, &out.ProvisioningInfo
		*out = new(ManagedClusterPodIdentity_ProvisioningInfo_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.ProvisioningState != nil {
		in, out := &in.ProvisioningState, &out.ProvisioningState
		*out = new(ManagedClusterPodIdentity_ProvisioningState_STATUS)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterProperties_AutoScalerProfile) DeepCopyInto(out *ManagedClusterProperties_AutoScalerProfile) {
	*out = *in
	if in.BalanceSimilarNodeGroups != nil {
		in, out := &in.BalanceSimilarNodeGroups, &out.BalanceSimilarNodeGroups
		*out = new(string)
		**out = **in
	}
	if in.Expander != nil {
		in, out := &in.Expander, &out.Expander
		*out = new(ManagedClusterProperties_AutoScalerProfile_Expander)
		**out = **in
	}
	if in.MaxEmptyBulkDelete != nil {
		in, out := &in.MaxEmptyBulkDelete, &out.MaxEmptyBulkDelete
		*out = new(string)
		**out = **in
	}
	if in.MaxGracefulTerminationSec != nil {
		in, out := &in.MaxGracefulTerminationSec, &out.MaxGracefulTerminationSec
		*out = new(string)
		**out = **in
	}
	if in.MaxNodeProvisionTime != nil {
		in, out := &in.MaxNodeProvisionTime, &out.MaxNodeProvisionTime
		*out = new(string)
		**out = **in
	}
	if in.MaxTotalUnreadyPercentage != nil {
		in, out := &in.MaxTotalUnreadyPercentage, &out.MaxTotalUnreadyPercentage
		*out = new(string)
		**out = **in
	}
	if in.NewPodScaleUpDelay != nil {
		in, out := &in.NewPodScaleUpDelay, &out.NewPodScaleUpDelay
		*out = new(string)
		**out = **in
	}
	if in.OkTotalUnreadyCount != nil {
		in, out := &in.OkTotalUnreadyCount, &out.OkTotalUnreadyCount
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownDelayAfterAdd != nil {
		in, out := &in.ScaleDownDelayAfterAdd, &out.ScaleDownDelayAfterAdd
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownDelayAfterDelete != nil {
		in, out := &in.ScaleDownDelayAfterDelete, &out.ScaleDownDelayAfterDelete
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownDelayAfterFailure != nil {
		in, out := &in.ScaleDownDelayAfterFailure, &out.ScaleDownDelayAfterFailure
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownUnneededTime != nil {
		in, out := &in.ScaleDownUnneededTime, &out.ScaleDownUnneededTime
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownUnreadyTime != nil {
		in, out := &in.ScaleDownUnreadyTime, &out.ScaleDownUnreadyTime
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownUtilizationThreshold != nil {
		in, out := &in.ScaleDownUtilizationThreshold, &out.ScaleDownUtilizationThreshold
		*out = new(string)
		**out = **in
	}
	if in.ScanInterval != nil {
		in, out := &in.ScanInterval, &out.ScanInterval
		*out = new(string)
		**out = **in
	}
	if in.SkipNodesWithLocalStorage != nil {
		in, out := &in.SkipNodesWithLocalStorage, &out.SkipNodesWithLocalStorage
		*out = new(string)
		**out = **in
	}
	if in.SkipNodesWithSystemPods != nil {
		in, out := &in.SkipNodesWithSystemPods, &out.SkipNodesWithSystemPods
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterProperties_AutoScalerProfile_STATUS) DeepCopyInto(out *ManagedClusterProperties_AutoScalerProfile_STATUS) {
	*out = *in
	if in.BalanceSimilarNodeGroups != nil {
		in, out := &in.BalanceSimilarNodeGroups, &out.BalanceSimilarNodeGroups
		*out = new(string)
		**out = **in
	}
	if in.Expander != nil {
		in, out := &in.Expander, &out.Expander
		*out = new(ManagedClusterProperties_AutoScalerProfile_Expander_STATUS)
		**out = **in
	}
	if in.MaxEmptyBulkDelete != nil {
		in, out := &in.MaxEmptyBulkDelete, &out.MaxEmptyBulkDelete
		*out = new(string)
		**out = **in
	}
	if in.MaxGracefulTerminationSec != nil {
		in, out := &in.MaxGracefulTerminationSec, &out.MaxGracefulTerminationSec
		*out = new(string)
		**out = **in
	}
	if in.MaxNodeProvisionTime != nil {
		in, out := &in.MaxNodeProvisionTime, &out.MaxNodeProvisionTime
		*out = new(string)
		**out = **in
	}
	if in.MaxTotalUnreadyPercentage != nil {
		in, out := &in.MaxTotalUnreadyPercentage, &out.MaxTotalUnreadyPercentage
		*out = new(string)
		**out = **in
	}
	if in.NewPodScaleUpDelay != nil {
		in, out := &in.NewPodScaleUpDelay, &out.NewPodScaleUpDelay
		*out = new(string)
		**out = **in
	}
	if in.OkTotalUnreadyCount != nil {
		in, out := &in.OkTotalUnreadyCount, &out.OkTotalUnreadyCount
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownDelayAfterAdd != nil {
		in, out := &in.ScaleDownDelayAfterAdd, &out.ScaleDownDelayAfterAdd
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownDelayAfterDelete != nil {
		in, out := &in.ScaleDownDelayAfterDelete, &out.ScaleDownDelayAfterDelete
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownDelayAfterFailure != nil {
		in, out := &in.ScaleDownDelayAfterFailure, &out.ScaleDownDelayAfterFailure
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownUnneededTime != nil {
		in, out := &in.ScaleDownUnneededTime, &out.ScaleDownUnneededTime
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownUnreadyTime != nil {
		in, out := &in.ScaleDownUnreadyTime, &out.ScaleDownUnreadyTime
		*out = new(string)
		**out = **in
	}
	if in.ScaleDownUtilizationThreshold != nil {
		in, out := &in.ScaleDownUtilizationThreshold, &out.ScaleDownUtilizationThreshold
		*out = new(string)
		**out = **in
	}
	if in.ScanInterval != nil {
		in, out := &in.ScanInterval, &out.ScanInterval
		*out = new(string)
		**out = **in
	}
	if in.SkipNodesWithLocalStorage != nil {
		in, out := &in.SkipNodesWithLocalStorage, &out.SkipNodesWithLocalStorage
		*out = new(string)
		**out = **in
	}
	if in.SkipNodesWithSystemPods != nil {
		in, out := &in.SkipNodesWithSystemPods, &out.SkipNodesWithSystemPods
		*out = new(string)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterWindowsProfile) DeepCopyInto(out *ManagedClusterWindowsProfile) {
	*out = *in
	if in.AdminPassword != nil {
		in, out := &in.AdminPassword, &out.AdminPassword
		*out = new(genruntime.SecretReference)
		**out = **in
	}
	if in.AdminUsername != nil {
		in, out := &in.AdminUsername, &out.AdminUsername
		*out = new(string)
		**out = **in
	}
	if in.EnableCSIProxy != nil {
		in, out := &in.EnableCSIProxy, &out.EnableCSIProxy
		*out = new(bool)
		**out = **in
	}
	if in.LicenseType != nil {
		in, out := &in.LicenseType, &out.LicenseType
		*out = new(ManagedClusterWindowsProfile_LicenseType)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClusterWindowsProfile_STATUS) DeepCopyInto(out *ManagedClusterWindowsProfile_STATUS) {
	*out = *in
	if in.AdminUsername != nil {
		in, out := &in.AdminUsername, &out.AdminUsername
		*out = new(string)
		**out = **in
	}
	if in.EnableCSIProxy != nil {
		in, out := &in.EnableCSIProxy, &out.EnableCSIProxy
		*out = new(bool)
		**out = **in
	}
	if in.LicenseType != nil {
		in, out := &in.LicenseType, &out.LicenseType
		*out = new(ManagedClusterWindowsProfile_LicenseType_STATUS)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedCluster_STATUS) DeepCopyInto(out *ManagedCluster_STATUS) {
	*out = *in
	if in.AadProfile != nil {
		in, out := &in.AadProfile, &out.AadProfile
		*out = new(ManagedClusterAADProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.AddonProfiles != nil {
		in, out := &in.AddonProfiles, &out.AddonProfiles
		*out = make(map[string]ManagedClusterAddonProfile_STATUS, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
	if in.AgentPoolProfiles != nil {
		in, out := &in.AgentPoolProfiles, &out.AgentPoolProfiles
		*out = make([]ManagedClusterAgentPoolProfile_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ApiServerAccessProfile != nil {
		in, out := &in.ApiServerAccessProfile, &out.ApiServerAccessProfile
		*out = new(ManagedClusterAPIServerAccessProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.AutoScalerProfile != nil {
		in, out := &in.AutoScalerProfile, &out.AutoScalerProfile
		*out = new(ManagedClusterProperties_AutoScalerProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.AutoUpgradeProfile != nil {
		in, out := &in.AutoUpgradeProfile, &out.AutoUpgradeProfile
		*out = new(ManagedClusterAutoUpgradeProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.AzurePortalFQDN != nil {
		in, out := &in.AzurePortalFQDN, &out.AzurePortalFQDN
		*out = new(string)
		**out = **in
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]conditions.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.DisableLocalAccounts != nil {
		in, out := &in.DisableLocalAccounts, &out.DisableLocalAccounts
		*out = new(bool)
		**out = **in
	}
	if in.DiskEncryptionSetID != nil {
		in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID
		*out = new(string)
		**out = **in
	}
	if in.DnsPrefix != nil {
		in, out := &in.DnsPrefix, &out.DnsPrefix
		*out = new(string)
		**out = **in
	}
	if in.EnablePodSecurityPolicy != nil {
		in, out := &in.EnablePodSecurityPolicy, &out.EnablePodSecurityPolicy
		*out = new(bool)
		**out = **in
	}
	if in.EnableRBAC != nil {
		in, out := &in.EnableRBAC, &out.EnableRBAC
		*out = new(bool)
		**out = **in
	}
	if in.ExtendedLocation != nil {
		in, out := &in.ExtendedLocation, &out.ExtendedLocation
		*out = new(ExtendedLocation_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Fqdn != nil {
		in, out := &in.Fqdn, &out.Fqdn
		*out = new(string)
		**out = **in
	}
	if in.FqdnSubdomain != nil {
		in, out := &in.FqdnSubdomain, &out.FqdnSubdomain
		*out = new(string)
		**out = **in
	}
	if in.HttpProxyConfig != nil {
		in, out := &in.HttpProxyConfig, &out.HttpProxyConfig
		*out = new(ManagedClusterHTTPProxyConfig_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Id != nil {
		in, out := &in.Id, &out.Id
		*out = new(string)
		**out = **in
	}
	if in.Identity != nil {
		in, out := &in.Identity, &out.Identity
		*out = new(ManagedClusterIdentity_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.IdentityProfile != nil {
		in, out := &in.IdentityProfile, &out.IdentityProfile
		*out = make(map[string]UserAssignedIdentity_STATUS, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
	if in.KubernetesVersion != nil {
		in, out := &in.KubernetesVersion, &out.KubernetesVersion
		*out = new(string)
		**out = **in
	}
	if in.LinuxProfile != nil {
		in, out := &in.LinuxProfile, &out.LinuxProfile
		*out = new(ContainerServiceLinuxProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Location != nil {
		in, out := &in.Location, &out.Location
		*out = new(string)
		**out = **in
	}
	if in.MaxAgentPools != nil {
		in, out := &in.MaxAgentPools, &out.MaxAgentPools
		*out = new(int)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.NetworkProfile != nil {
		in, out := &in.NetworkProfile, &out.NetworkProfile
		*out = new(ContainerServiceNetworkProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeResourceGroup != nil {
		in, out := &in.NodeResourceGroup, &out.NodeResourceGroup
		*out = new(string)
		**out = **in
	}
	if in.PodIdentityProfile != nil {
		in, out := &in.PodIdentityProfile, &out.PodIdentityProfile
		*out = new(ManagedClusterPodIdentityProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.PowerState != nil {
		in, out := &in.PowerState, &out.PowerState
		*out = new(PowerState_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.PrivateFQDN != nil {
		in, out := &in.PrivateFQDN, &out.PrivateFQDN
		*out = new(string)
		**out = **in
	}
	if in.PrivateLinkResources != nil {
		in, out := &in.PrivateLinkResources, &out.PrivateLinkResources
		*out = make([]PrivateLinkResource_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ProvisioningState != nil {
		in, out := &in.ProvisioningState, &out.ProvisioningState
		*out = new(string)
		**out = **in
	}
	if in.ServicePrincipalProfile != nil {
		in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile
		*out = new(ManagedClusterServicePrincipalProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Sku != nil {
		in, out := &in.Sku, &out.Sku
		*out = new(ManagedClusterSKU_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
	if in.WindowsProfile != nil {
		in, out := &in.WindowsProfile, &out.WindowsProfile
		*out = new(ManagedClusterWindowsProfile_STATUS)
		(*in).DeepCopyInto(*out)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedCluster_Spec) DeepCopyInto(out *ManagedCluster_Spec) {
	*out = *in
	if in.AadProfile != nil {
		in, out := &in.AadProfile, &out.AadProfile
		*out = new(ManagedClusterAADProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.AddonProfiles != nil {
		in, out := &in.AddonProfiles, &out.AddonProfiles
		*out = make(map[string]ManagedClusterAddonProfile, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
	if in.AgentPoolProfiles != nil {
		in, out := &in.AgentPoolProfiles, &out.AgentPoolProfiles
		*out = make([]ManagedClusterAgentPoolProfile, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ApiServerAccessProfile != nil {
		in, out := &in.ApiServerAccessProfile, &out.ApiServerAccessProfile
		*out = new(ManagedClusterAPIServerAccessProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.AutoScalerProfile != nil {
		in, out := &in.AutoScalerProfile, &out.AutoScalerProfile
		*out = new(ManagedClusterProperties_AutoScalerProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.AutoUpgradeProfile != nil {
		in, out := &in.AutoUpgradeProfile, &out.AutoUpgradeProfile
		*out = new(ManagedClusterAutoUpgradeProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.DisableLocalAccounts != nil {
		in, out := &in.DisableLocalAccounts, &out.DisableLocalAccounts
		*out = new(bool)
		**out = **in
	}
	if in.DiskEncryptionSetIDReference != nil {
		in, out := &in.DiskEncryptionSetIDReference, &out.DiskEncryptionSetIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
	if in.DnsPrefix != nil {
		in, out := &in.DnsPrefix, &out.DnsPrefix
		*out = new(string)
		**out = **in
	}
	if in.EnablePodSecurityPolicy != nil {
		in, out := &in.EnablePodSecurityPolicy, &out.EnablePodSecurityPolicy
		*out = new(bool)
		**out = **in
	}
	if in.EnableRBAC != nil {
		in, out := &in.EnableRBAC, &out.EnableRBAC
		*out = new(bool)
		**out = **in
	}
	if in.ExtendedLocation != nil {
		in, out := &in.ExtendedLocation, &out.ExtendedLocation
		*out = new(ExtendedLocation)
		(*in).DeepCopyInto(*out)
	}
	if in.FqdnSubdomain != nil {
		in, out := &in.FqdnSubdomain, &out.FqdnSubdomain
		*out = new(string)
		**out = **in
	}
	if in.HttpProxyConfig != nil {
		in, out := &in.HttpProxyConfig, &out.HttpProxyConfig
		*out = new(ManagedClusterHTTPProxyConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Identity != nil {
		in, out := &in.Identity, &out.Identity
		*out = new(ManagedClusterIdentity)
		(*in).DeepCopyInto(*out)
	}
	if in.IdentityProfile != nil {
		in, out := &in.IdentityProfile, &out.IdentityProfile
		*out = make(map[string]UserAssignedIdentity, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
	if in.KubernetesVersion != nil {
		in, out := &in.KubernetesVersion, &out.KubernetesVersion
		*out = new(string)
		**out = **in
	}
	if in.LinuxProfile != nil {
		in, out := &in.LinuxProfile, &out.LinuxProfile
		*out = new(ContainerServiceLinuxProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.Location != nil {
		in, out := &in.Location, &out.Location
		*out = new(string)
		**out = **in
	}
	if in.NetworkProfile != nil {
		in, out := &in.NetworkProfile, &out.NetworkProfile
		*out = new(ContainerServiceNetworkProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.NodeResourceGroup != nil {
		in, out := &in.NodeResourceGroup, &out.NodeResourceGroup
		*out = new(string)
		**out = **in
	}
	if in.OperatorSpec != nil {
		in, out := &in.OperatorSpec, &out.OperatorSpec
		*out = new(ManagedClusterOperatorSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Owner != nil {
		in, out := &in.Owner, &out.Owner
		*out = new(genruntime.KnownResourceReference)
		**out = **in
	}
	if in.PodIdentityProfile != nil {
		in, out := &in.PodIdentityProfile, &out.PodIdentityProfile
		*out = new(ManagedClusterPodIdentityProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.PrivateLinkResources != nil {
		in, out := &in.PrivateLinkResources, &out.PrivateLinkResources
		*out = make([]PrivateLinkResource, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ServicePrincipalProfile != nil {
		in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile
		*out = new(ManagedClusterServicePrincipalProfile)
		(*in).DeepCopyInto(*out)
	}
	if in.Sku != nil {
		in, out := &in.Sku, &out.Sku
		*out = new(ManagedClusterSKU)
		(*in).DeepCopyInto(*out)
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.WindowsProfile != nil {
		in, out := &in.WindowsProfile, &out.WindowsProfile
		*out = new(ManagedClusterWindowsProfile)
		(*in).DeepCopyInto(*out)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClustersAgentPool) DeepCopyInto(out *ManagedClustersAgentPool) {
	*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 ManagedClustersAgentPool.
func (in *ManagedClustersAgentPool) DeepCopy() *ManagedClustersAgentPool {
	if in == nil {
		return nil
	}
	out := new(ManagedClustersAgentPool)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ManagedClustersAgentPool) 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 *ManagedClustersAgentPoolList) DeepCopyInto(out *ManagedClustersAgentPoolList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ManagedClustersAgentPool, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ManagedClustersAgentPoolList) 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 *ManagedClustersAgentPoolOperatorSpec) DeepCopyInto(out *ManagedClustersAgentPoolOperatorSpec) {
	*out = *in
	if in.ConfigMapExpressions != nil {
		in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
	if in.SecretExpressions != nil {
		in, out := &in.SecretExpressions, &out.SecretExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClustersAgentPool_STATUS) DeepCopyInto(out *ManagedClustersAgentPool_STATUS) {
	*out = *in
	if in.AvailabilityZones != nil {
		in, out := &in.AvailabilityZones, &out.AvailabilityZones
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]conditions.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Count != nil {
		in, out := &in.Count, &out.Count
		*out = new(int)
		**out = **in
	}
	if in.EnableAutoScaling != nil {
		in, out := &in.EnableAutoScaling, &out.EnableAutoScaling
		*out = new(bool)
		**out = **in
	}
	if in.EnableEncryptionAtHost != nil {
		in, out := &in.EnableEncryptionAtHost, &out.EnableEncryptionAtHost
		*out = new(bool)
		**out = **in
	}
	if in.EnableFIPS != nil {
		in, out := &in.EnableFIPS, &out.EnableFIPS
		*out = new(bool)
		**out = **in
	}
	if in.EnableNodePublicIP != nil {
		in, out := &in.EnableNodePublicIP, &out.EnableNodePublicIP
		*out = new(bool)
		**out = **in
	}
	if in.EnableUltraSSD != nil {
		in, out := &in.EnableUltraSSD, &out.EnableUltraSSD
		*out = new(bool)
		**out = **in
	}
	if in.GpuInstanceProfile != nil {
		in, out := &in.GpuInstanceProfile, &out.GpuInstanceProfile
		*out = new(GPUInstanceProfile_STATUS)
		**out = **in
	}
	if in.Id != nil {
		in, out := &in.Id, &out.Id
		*out = new(string)
		**out = **in
	}
	if in.KubeletConfig != nil {
		in, out := &in.KubeletConfig, &out.KubeletConfig
		*out = new(KubeletConfig_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.KubeletDiskType != nil {
		in, out := &in.KubeletDiskType, &out.KubeletDiskType
		*out = new(KubeletDiskType_STATUS)
		**out = **in
	}
	if in.LinuxOSConfig != nil {
		in, out := &in.LinuxOSConfig, &out.LinuxOSConfig
		*out = new(LinuxOSConfig_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.MaxCount != nil {
		in, out := &in.MaxCount, &out.MaxCount
		*out = new(int)
		**out = **in
	}
	if in.MaxPods != nil {
		in, out := &in.MaxPods, &out.MaxPods
		*out = new(int)
		**out = **in
	}
	if in.MinCount != nil {
		in, out := &in.MinCount, &out.MinCount
		*out = new(int)
		**out = **in
	}
	if in.Mode != nil {
		in, out := &in.Mode, &out.Mode
		*out = new(AgentPoolMode_STATUS)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.NodeImageVersion != nil {
		in, out := &in.NodeImageVersion, &out.NodeImageVersion
		*out = new(string)
		**out = **in
	}
	if in.NodeLabels != nil {
		in, out := &in.NodeLabels, &out.NodeLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.NodePublicIPPrefixID != nil {
		in, out := &in.NodePublicIPPrefixID, &out.NodePublicIPPrefixID
		*out = new(string)
		**out = **in
	}
	if in.NodeTaints != nil {
		in, out := &in.NodeTaints, &out.NodeTaints
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.OrchestratorVersion != nil {
		in, out := &in.OrchestratorVersion, &out.OrchestratorVersion
		*out = new(string)
		**out = **in
	}
	if in.OsDiskSizeGB != nil {
		in, out := &in.OsDiskSizeGB, &out.OsDiskSizeGB
		*out = new(int)
		**out = **in
	}
	if in.OsDiskType != nil {
		in, out := &in.OsDiskType, &out.OsDiskType
		*out = new(OSDiskType_STATUS)
		**out = **in
	}
	if in.OsSKU != nil {
		in, out := &in.OsSKU, &out.OsSKU
		*out = new(OSSKU_STATUS)
		**out = **in
	}
	if in.OsType != nil {
		in, out := &in.OsType, &out.OsType
		*out = new(OSType_STATUS)
		**out = **in
	}
	if in.PodSubnetID != nil {
		in, out := &in.PodSubnetID, &out.PodSubnetID
		*out = new(string)
		**out = **in
	}
	if in.PowerState != nil {
		in, out := &in.PowerState, &out.PowerState
		*out = new(PowerState_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.PropertiesType != nil {
		in, out := &in.PropertiesType, &out.PropertiesType
		*out = new(AgentPoolType_STATUS)
		**out = **in
	}
	if in.ProvisioningState != nil {
		in, out := &in.ProvisioningState, &out.ProvisioningState
		*out = new(string)
		**out = **in
	}
	if in.ProximityPlacementGroupID != nil {
		in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID
		*out = new(string)
		**out = **in
	}
	if in.ScaleSetEvictionPolicy != nil {
		in, out := &in.ScaleSetEvictionPolicy, &out.ScaleSetEvictionPolicy
		*out = new(ScaleSetEvictionPolicy_STATUS)
		**out = **in
	}
	if in.ScaleSetPriority != nil {
		in, out := &in.ScaleSetPriority, &out.ScaleSetPriority
		*out = new(ScaleSetPriority_STATUS)
		**out = **in
	}
	if in.SpotMaxPrice != nil {
		in, out := &in.SpotMaxPrice, &out.SpotMaxPrice
		*out = new(float64)
		**out = **in
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
	if in.UpgradeSettings != nil {
		in, out := &in.UpgradeSettings, &out.UpgradeSettings
		*out = new(AgentPoolUpgradeSettings_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.VmSize != nil {
		in, out := &in.VmSize, &out.VmSize
		*out = new(string)
		**out = **in
	}
	if in.VnetSubnetID != nil {
		in, out := &in.VnetSubnetID, &out.VnetSubnetID
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedClustersAgentPool_Spec) DeepCopyInto(out *ManagedClustersAgentPool_Spec) {
	*out = *in
	if in.AvailabilityZones != nil {
		in, out := &in.AvailabilityZones, &out.AvailabilityZones
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Count != nil {
		in, out := &in.Count, &out.Count
		*out = new(int)
		**out = **in
	}
	if in.EnableAutoScaling != nil {
		in, out := &in.EnableAutoScaling, &out.EnableAutoScaling
		*out = new(bool)
		**out = **in
	}
	if in.EnableEncryptionAtHost != nil {
		in, out := &in.EnableEncryptionAtHost, &out.EnableEncryptionAtHost
		*out = new(bool)
		**out = **in
	}
	if in.EnableFIPS != nil {
		in, out := &in.EnableFIPS, &out.EnableFIPS
		*out = new(bool)
		**out = **in
	}
	if in.EnableNodePublicIP != nil {
		in, out := &in.EnableNodePublicIP, &out.EnableNodePublicIP
		*out = new(bool)
		**out = **in
	}
	if in.EnableUltraSSD != nil {
		in, out := &in.EnableUltraSSD, &out.EnableUltraSSD
		*out = new(bool)
		**out = **in
	}
	if in.GpuInstanceProfile != nil {
		in, out := &in.GpuInstanceProfile, &out.GpuInstanceProfile
		*out = new(GPUInstanceProfile)
		**out = **in
	}
	if in.KubeletConfig != nil {
		in, out := &in.KubeletConfig, &out.KubeletConfig
		*out = new(KubeletConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.KubeletDiskType != nil {
		in, out := &in.KubeletDiskType, &out.KubeletDiskType
		*out = new(KubeletDiskType)
		**out = **in
	}
	if in.LinuxOSConfig != nil {
		in, out := &in.LinuxOSConfig, &out.LinuxOSConfig
		*out = new(LinuxOSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.MaxCount != nil {
		in, out := &in.MaxCount, &out.MaxCount
		*out = new(int)
		**out = **in
	}
	if in.MaxPods != nil {
		in, out := &in.MaxPods, &out.MaxPods
		*out = new(int)
		**out = **in
	}
	if in.MinCount != nil {
		in, out := &in.MinCount, &out.MinCount
		*out = new(int)
		**out = **in
	}
	if in.Mode != nil {
		in, out := &in.Mode, &out.Mode
		*out = new(AgentPoolMode)
		**out = **in
	}
	if in.NodeLabels != nil {
		in, out := &in.NodeLabels, &out.NodeLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.NodePublicIPPrefixIDReference != nil {
		in, out := &in.NodePublicIPPrefixIDReference, &out.NodePublicIPPrefixIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
	if in.NodeTaints != nil {
		in, out := &in.NodeTaints, &out.NodeTaints
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.OperatorSpec != nil {
		in, out := &in.OperatorSpec, &out.OperatorSpec
		*out = new(ManagedClustersAgentPoolOperatorSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.OrchestratorVersion != nil {
		in, out := &in.OrchestratorVersion, &out.OrchestratorVersion
		*out = new(string)
		**out = **in
	}
	if in.OsDiskSizeGB != nil {
		in, out := &in.OsDiskSizeGB, &out.OsDiskSizeGB
		*out = new(ContainerServiceOSDisk)
		**out = **in
	}
	if in.OsDiskType != nil {
		in, out := &in.OsDiskType, &out.OsDiskType
		*out = new(OSDiskType)
		**out = **in
	}
	if in.OsSKU != nil {
		in, out := &in.OsSKU, &out.OsSKU
		*out = new(OSSKU)
		**out = **in
	}
	if in.OsType != nil {
		in, out := &in.OsType, &out.OsType
		*out = new(OSType)
		**out = **in
	}
	if in.Owner != nil {
		in, out := &in.Owner, &out.Owner
		*out = new(genruntime.KnownResourceReference)
		**out = **in
	}
	if in.PodSubnetIDReference != nil {
		in, out := &in.PodSubnetIDReference, &out.PodSubnetIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
	if in.ProximityPlacementGroupID != nil {
		in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID
		*out = new(string)
		**out = **in
	}
	if in.ScaleSetEvictionPolicy != nil {
		in, out := &in.ScaleSetEvictionPolicy, &out.ScaleSetEvictionPolicy
		*out = new(ScaleSetEvictionPolicy)
		**out = **in
	}
	if in.ScaleSetPriority != nil {
		in, out := &in.ScaleSetPriority, &out.ScaleSetPriority
		*out = new(ScaleSetPriority)
		**out = **in
	}
	if in.SpotMaxPrice != nil {
		in, out := &in.SpotMaxPrice, &out.SpotMaxPrice
		*out = new(float64)
		**out = **in
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(AgentPoolType)
		**out = **in
	}
	if in.UpgradeSettings != nil {
		in, out := &in.UpgradeSettings, &out.UpgradeSettings
		*out = new(AgentPoolUpgradeSettings)
		(*in).DeepCopyInto(*out)
	}
	if in.VmSize != nil {
		in, out := &in.VmSize, &out.VmSize
		*out = new(string)
		**out = **in
	}
	if in.VnetSubnetIDReference != nil {
		in, out := &in.VnetSubnetIDReference, &out.VnetSubnetIDReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PrivateLinkResource) DeepCopyInto(out *PrivateLinkResource) {
	*out = *in
	if in.GroupId != nil {
		in, out := &in.GroupId, &out.GroupId
		*out = new(string)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Reference != nil {
		in, out := &in.Reference, &out.Reference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
	if in.RequiredMembers != nil {
		in, out := &in.RequiredMembers, &out.RequiredMembers
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PrivateLinkResource_STATUS) DeepCopyInto(out *PrivateLinkResource_STATUS) {
	*out = *in
	if in.GroupId != nil {
		in, out := &in.GroupId, &out.GroupId
		*out = new(string)
		**out = **in
	}
	if in.Id != nil {
		in, out := &in.Id, &out.Id
		*out = new(string)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.PrivateLinkServiceID != nil {
		in, out := &in.PrivateLinkServiceID, &out.PrivateLinkServiceID
		*out = new(string)
		**out = **in
	}
	if in.RequiredMembers != nil {
		in, out := &in.RequiredMembers, &out.RequiredMembers
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SysctlConfig) DeepCopyInto(out *SysctlConfig) {
	*out = *in
	if in.FsAioMaxNr != nil {
		in, out := &in.FsAioMaxNr, &out.FsAioMaxNr
		*out = new(int)
		**out = **in
	}
	if in.FsFileMax != nil {
		in, out := &in.FsFileMax, &out.FsFileMax
		*out = new(int)
		**out = **in
	}
	if in.FsInotifyMaxUserWatches != nil {
		in, out := &in.FsInotifyMaxUserWatches, &out.FsInotifyMaxUserWatches
		*out = new(int)
		**out = **in
	}
	if in.FsNrOpen != nil {
		in, out := &in.FsNrOpen, &out.FsNrOpen
		*out = new(int)
		**out = **in
	}
	if in.KernelThreadsMax != nil {
		in, out := &in.KernelThreadsMax, &out.KernelThreadsMax
		*out = new(int)
		**out = **in
	}
	if in.NetCoreNetdevMaxBacklog != nil {
		in, out := &in.NetCoreNetdevMaxBacklog, &out.NetCoreNetdevMaxBacklog
		*out = new(int)
		**out = **in
	}
	if in.NetCoreOptmemMax != nil {
		in, out := &in.NetCoreOptmemMax, &out.NetCoreOptmemMax
		*out = new(int)
		**out = **in
	}
	if in.NetCoreRmemDefault != nil {
		in, out := &in.NetCoreRmemDefault, &out.NetCoreRmemDefault
		*out = new(int)
		**out = **in
	}
	if in.NetCoreRmemMax != nil {
		in, out := &in.NetCoreRmemMax, &out.NetCoreRmemMax
		*out = new(int)
		**out = **in
	}
	if in.NetCoreSomaxconn != nil {
		in, out := &in.NetCoreSomaxconn, &out.NetCoreSomaxconn
		*out = new(int)
		**out = **in
	}
	if in.NetCoreWmemDefault != nil {
		in, out := &in.NetCoreWmemDefault, &out.NetCoreWmemDefault
		*out = new(int)
		**out = **in
	}
	if in.NetCoreWmemMax != nil {
		in, out := &in.NetCoreWmemMax, &out.NetCoreWmemMax
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4IpLocalPortRange != nil {
		in, out := &in.NetIpv4IpLocalPortRange, &out.NetIpv4IpLocalPortRange
		*out = new(string)
		**out = **in
	}
	if in.NetIpv4NeighDefaultGcThresh1 != nil {
		in, out := &in.NetIpv4NeighDefaultGcThresh1, &out.NetIpv4NeighDefaultGcThresh1
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4NeighDefaultGcThresh2 != nil {
		in, out := &in.NetIpv4NeighDefaultGcThresh2, &out.NetIpv4NeighDefaultGcThresh2
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4NeighDefaultGcThresh3 != nil {
		in, out := &in.NetIpv4NeighDefaultGcThresh3, &out.NetIpv4NeighDefaultGcThresh3
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpFinTimeout != nil {
		in, out := &in.NetIpv4TcpFinTimeout, &out.NetIpv4TcpFinTimeout
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpKeepaliveProbes != nil {
		in, out := &in.NetIpv4TcpKeepaliveProbes, &out.NetIpv4TcpKeepaliveProbes
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpKeepaliveTime != nil {
		in, out := &in.NetIpv4TcpKeepaliveTime, &out.NetIpv4TcpKeepaliveTime
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpMaxSynBacklog != nil {
		in, out := &in.NetIpv4TcpMaxSynBacklog, &out.NetIpv4TcpMaxSynBacklog
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpMaxTwBuckets != nil {
		in, out := &in.NetIpv4TcpMaxTwBuckets, &out.NetIpv4TcpMaxTwBuckets
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpTwReuse != nil {
		in, out := &in.NetIpv4TcpTwReuse, &out.NetIpv4TcpTwReuse
		*out = new(bool)
		**out = **in
	}
	if in.NetIpv4TcpkeepaliveIntvl != nil {
		in, out := &in.NetIpv4TcpkeepaliveIntvl, &out.NetIpv4TcpkeepaliveIntvl
		*out = new(int)
		**out = **in
	}
	if in.NetNetfilterNfConntrackBuckets != nil {
		in, out := &in.NetNetfilterNfConntrackBuckets, &out.NetNetfilterNfConntrackBuckets
		*out = new(int)
		**out = **in
	}
	if in.NetNetfilterNfConntrackMax != nil {
		in, out := &in.NetNetfilterNfConntrackMax, &out.NetNetfilterNfConntrackMax
		*out = new(int)
		**out = **in
	}
	if in.VmMaxMapCount != nil {
		in, out := &in.VmMaxMapCount, &out.VmMaxMapCount
		*out = new(int)
		**out = **in
	}
	if in.VmSwappiness != nil {
		in, out := &in.VmSwappiness, &out.VmSwappiness
		*out = new(int)
		**out = **in
	}
	if in.VmVfsCachePressure != nil {
		in, out := &in.VmVfsCachePressure, &out.VmVfsCachePressure
		*out = new(int)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SysctlConfig_STATUS) DeepCopyInto(out *SysctlConfig_STATUS) {
	*out = *in
	if in.FsAioMaxNr != nil {
		in, out := &in.FsAioMaxNr, &out.FsAioMaxNr
		*out = new(int)
		**out = **in
	}
	if in.FsFileMax != nil {
		in, out := &in.FsFileMax, &out.FsFileMax
		*out = new(int)
		**out = **in
	}
	if in.FsInotifyMaxUserWatches != nil {
		in, out := &in.FsInotifyMaxUserWatches, &out.FsInotifyMaxUserWatches
		*out = new(int)
		**out = **in
	}
	if in.FsNrOpen != nil {
		in, out := &in.FsNrOpen, &out.FsNrOpen
		*out = new(int)
		**out = **in
	}
	if in.KernelThreadsMax != nil {
		in, out := &in.KernelThreadsMax, &out.KernelThreadsMax
		*out = new(int)
		**out = **in
	}
	if in.NetCoreNetdevMaxBacklog != nil {
		in, out := &in.NetCoreNetdevMaxBacklog, &out.NetCoreNetdevMaxBacklog
		*out = new(int)
		**out = **in
	}
	if in.NetCoreOptmemMax != nil {
		in, out := &in.NetCoreOptmemMax, &out.NetCoreOptmemMax
		*out = new(int)
		**out = **in
	}
	if in.NetCoreRmemDefault != nil {
		in, out := &in.NetCoreRmemDefault, &out.NetCoreRmemDefault
		*out = new(int)
		**out = **in
	}
	if in.NetCoreRmemMax != nil {
		in, out := &in.NetCoreRmemMax, &out.NetCoreRmemMax
		*out = new(int)
		**out = **in
	}
	if in.NetCoreSomaxconn != nil {
		in, out := &in.NetCoreSomaxconn, &out.NetCoreSomaxconn
		*out = new(int)
		**out = **in
	}
	if in.NetCoreWmemDefault != nil {
		in, out := &in.NetCoreWmemDefault, &out.NetCoreWmemDefault
		*out = new(int)
		**out = **in
	}
	if in.NetCoreWmemMax != nil {
		in, out := &in.NetCoreWmemMax, &out.NetCoreWmemMax
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4IpLocalPortRange != nil {
		in, out := &in.NetIpv4IpLocalPortRange, &out.NetIpv4IpLocalPortRange
		*out = new(string)
		**out = **in
	}
	if in.NetIpv4NeighDefaultGcThresh1 != nil {
		in, out := &in.NetIpv4NeighDefaultGcThresh1, &out.NetIpv4NeighDefaultGcThresh1
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4NeighDefaultGcThresh2 != nil {
		in, out := &in.NetIpv4NeighDefaultGcThresh2, &out.NetIpv4NeighDefaultGcThresh2
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4NeighDefaultGcThresh3 != nil {
		in, out := &in.NetIpv4NeighDefaultGcThresh3, &out.NetIpv4NeighDefaultGcThresh3
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpFinTimeout != nil {
		in, out := &in.NetIpv4TcpFinTimeout, &out.NetIpv4TcpFinTimeout
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpKeepaliveProbes != nil {
		in, out := &in.NetIpv4TcpKeepaliveProbes, &out.NetIpv4TcpKeepaliveProbes
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpKeepaliveTime != nil {
		in, out := &in.NetIpv4TcpKeepaliveTime, &out.NetIpv4TcpKeepaliveTime
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpMaxSynBacklog != nil {
		in, out := &in.NetIpv4TcpMaxSynBacklog, &out.NetIpv4TcpMaxSynBacklog
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpMaxTwBuckets != nil {
		in, out := &in.NetIpv4TcpMaxTwBuckets, &out.NetIpv4TcpMaxTwBuckets
		*out = new(int)
		**out = **in
	}
	if in.NetIpv4TcpTwReuse != nil {
		in, out := &in.NetIpv4TcpTwReuse, &out.NetIpv4TcpTwReuse
		*out = new(bool)
		**out = **in
	}
	if in.NetIpv4TcpkeepaliveIntvl != nil {
		in, out := &in.NetIpv4TcpkeepaliveIntvl, &out.NetIpv4TcpkeepaliveIntvl
		*out = new(int)
		**out = **in
	}
	if in.NetNetfilterNfConntrackBuckets != nil {
		in, out := &in.NetNetfilterNfConntrackBuckets, &out.NetNetfilterNfConntrackBuckets
		*out = new(int)
		**out = **in
	}
	if in.NetNetfilterNfConntrackMax != nil {
		in, out := &in.NetNetfilterNfConntrackMax, &out.NetNetfilterNfConntrackMax
		*out = new(int)
		**out = **in
	}
	if in.VmMaxMapCount != nil {
		in, out := &in.VmMaxMapCount, &out.VmMaxMapCount
		*out = new(int)
		**out = **in
	}
	if in.VmSwappiness != nil {
		in, out := &in.VmSwappiness, &out.VmSwappiness
		*out = new(int)
		**out = **in
	}
	if in.VmVfsCachePressure != nil {
		in, out := &in.VmVfsCachePressure, &out.VmVfsCachePressure
		*out = new(int)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *UserAssignedIdentity) DeepCopyInto(out *UserAssignedIdentity) {
	*out = *in
	if in.ClientId != nil {
		in, out := &in.ClientId, &out.ClientId
		*out = new(string)
		**out = **in
	}
	if in.ClientIdFromConfig != nil {
		in, out := &in.ClientIdFromConfig, &out.ClientIdFromConfig
		*out = new(genruntime.ConfigMapReference)
		**out = **in
	}
	if in.ObjectId != nil {
		in, out := &in.ObjectId, &out.ObjectId
		*out = new(string)
		**out = **in
	}
	if in.ObjectIdFromConfig != nil {
		in, out := &in.ObjectIdFromConfig, &out.ObjectIdFromConfig
		*out = new(genruntime.ConfigMapReference)
		**out = **in
	}
	if in.ResourceReference != nil {
		in, out := &in.ResourceReference, &out.ResourceReference
		*out = new(genruntime.ResourceReference)
		**out = **in
	}
}

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

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

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

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

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