//go:build !ignore_autogenerated

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

package v1alpha1

import (
	"k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	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 *AWSRegistryConfig) DeepCopyInto(out *AWSRegistryConfig) {
	*out = *in
	out.PullSecret = in.PullSecret
	out.CredentialsSecret = in.CredentialsSecret
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BuiltinRegistryConfig) DeepCopyInto(out *BuiltinRegistryConfig) {
	*out = *in
	if in.Persistence != nil {
		in, out := &in.Persistence, &out.Persistence
		*out = new(PersistenceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Service != nil {
		in, out := &in.Service, &out.Service
		*out = new(ServiceNetworkConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Ingress != nil {
		in, out := &in.Ingress, &out.Ingress
		*out = new(IngressConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.CredentialsSecret != nil {
		in, out := &in.CredentialsSecret, &out.CredentialsSecret
		*out = new(RegistryCredentialsSecret)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ClusterGatewayConfig) DeepCopyInto(out *ClusterGatewayConfig) {
	*out = *in
	if in.AllowedCallers != nil {
		in, out := &in.AllowedCallers, &out.AllowedCallers
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	out.ShutdownTimeout = in.ShutdownTimeout
	out.HealthCheckPeriod = in.HealthCheckPeriod
	out.ProxyTimeout = in.ProxyTimeout
	in.GatewayConfig.DeepCopyInto(&out.GatewayConfig)
	if in.SchedulerPermissions != nil {
		in, out := &in.SchedulerPermissions, &out.SchedulerPermissions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayConfig) DeepCopyInto(out *GatewayConfig) {
	*out = *in
	out.JWTAccessTokenTTL = in.JWTAccessTokenTTL
	out.JWTRefreshTokenTTL = in.JWTRefreshTokenTTL
	out.RateLimitCleanupInterval = in.RateLimitCleanupInterval
	out.RateLimitRedisTimeout = in.RateLimitRedisTimeout
	out.BuiltInAuth = in.BuiltInAuth
	if in.OIDCProviders != nil {
		in, out := &in.OIDCProviders, &out.OIDCProviders
		*out = make([]OIDCProviderConfig, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.OIDCStateTTL = in.OIDCStateTTL
	out.OIDCStateCleanupInterval = in.OIDCStateCleanupInterval
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GlobalGatewayConfig) DeepCopyInto(out *GlobalGatewayConfig) {
	*out = *in
	out.ShutdownTimeout = in.ShutdownTimeout
	out.ServerReadTimeout = in.ServerReadTimeout
	out.ServerWriteTimeout = in.ServerWriteTimeout
	out.ServerIdleTimeout = in.ServerIdleTimeout
	in.GatewayConfig.DeepCopyInto(&out.GatewayConfig)
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagerConfig) DeepCopyInto(out *ManagerConfig) {
	*out = *in
	out.ResyncPeriod = in.ResyncPeriod
	out.CleanupInterval = in.CleanupInterval
	out.DefaultSandboxTTL = in.DefaultSandboxTTL
	out.NetdPolicyApplyTimeout = in.NetdPolicyApplyTimeout
	out.NetdPolicyApplyPollInterval = in.NetdPolicyApplyPollInterval
	out.ProcdClientTimeout = in.ProcdClientTimeout
	out.ProcdInitTimeout = in.ProcdInitTimeout
	out.ShutdownTimeout = in.ShutdownTimeout
	out.ProcdConfig = in.ProcdConfig
	out.Autoscaler = in.Autoscaler
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NetdConfig) DeepCopyInto(out *NetdConfig) {
	*out = *in
	out.EgressAuthResolverTimeout = in.EgressAuthResolverTimeout
	out.MITMLeafTTL = in.MITMLeafTTL
	out.ResyncPeriod = in.ResyncPeriod
	if in.PreferNFT != nil {
		in, out := &in.PreferNFT, &out.PreferNFT
		*out = new(bool)
		**out = **in
	}
	out.ProxyUpstreamTimeout = in.ProxyUpstreamTimeout
	if in.PlatformAllowedCIDRs != nil {
		in, out := &in.PlatformAllowedCIDRs, &out.PlatformAllowedCIDRs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.PlatformDeniedCIDRs != nil {
		in, out := &in.PlatformDeniedCIDRs, &out.PlatformDeniedCIDRs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.PlatformAllowedDomains != nil {
		in, out := &in.PlatformAllowedDomains, &out.PlatformAllowedDomains
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.PlatformDeniedDomains != nil {
		in, out := &in.PlatformDeniedDomains, &out.PlatformDeniedDomains
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	out.EDTHorizon = in.EDTHorizon
	out.MetricsReportInterval = in.MetricsReportInterval
	out.MeteringReportInterval = in.MeteringReportInterval
	out.ShutdownDelay = in.ShutdownDelay
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ProcdConfig) DeepCopyInto(out *ProcdConfig) {
	*out = *in
	out.ContextCleanupInterval = in.ContextCleanupInterval
	out.ContextIdleTimeout = in.ContextIdleTimeout
	out.ContextMaxLifetime = in.ContextMaxLifetime
	out.ContextFinishedTTL = in.ContextFinishedTTL
	out.WebhookRequestTimeout = in.WebhookRequestTimeout
	out.WebhookBaseBackoff = in.WebhookBaseBackoff
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisConfig) DeepCopyInto(out *RedisConfig) {
	*out = *in
	if in.Builtin != nil {
		in, out := &in.Builtin, &out.Builtin
		*out = new(BuiltinRedisConfig)
		**out = **in
	}
	if in.External != nil {
		in, out := &in.External, &out.External
		*out = new(ExternalRedisConfig)
		**out = **in
	}
	out.OperationTimeout = in.OperationTimeout
	if in.FailOpen != nil {
		in, out := &in.FailOpen, &out.FailOpen
		*out = new(bool)
		**out = **in
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RegionalGatewayConfig) DeepCopyInto(out *RegionalGatewayConfig) {
	*out = *in
	out.InternalAuthTTL = in.InternalAuthTTL
	out.ClusterCacheTTL = in.ClusterCacheTTL
	out.ProxyTimeout = in.ProxyTimeout
	out.ShutdownTimeout = in.ShutdownTimeout
	out.ServerReadTimeout = in.ServerReadTimeout
	out.ServerWriteTimeout = in.ServerWriteTimeout
	out.ServerIdleTimeout = in.ServerIdleTimeout
	in.GatewayConfig.DeepCopyInto(&out.GatewayConfig)
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RegistryConfig) DeepCopyInto(out *RegistryConfig) {
	*out = *in
	if in.Builtin != nil {
		in, out := &in.Builtin, &out.Builtin
		*out = new(BuiltinRegistryConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.AWS != nil {
		in, out := &in.AWS, &out.AWS
		*out = new(AWSRegistryConfig)
		**out = **in
	}
	if in.GCP != nil {
		in, out := &in.GCP, &out.GCP
		*out = new(GCPRegistryConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Azure != nil {
		in, out := &in.Azure, &out.Azure
		*out = new(AzureRegistryConfig)
		**out = **in
	}
	if in.Aliyun != nil {
		in, out := &in.Aliyun, &out.Aliyun
		*out = new(AliyunRegistryConfig)
		**out = **in
	}
	if in.Harbor != nil {
		in, out := &in.Harbor, &out.Harbor
		*out = new(HarborRegistryConfig)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Sandbox0InfraList) 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 *Sandbox0InfraSpec) DeepCopyInto(out *Sandbox0InfraSpec) {
	*out = *in
	if in.Database != nil {
		in, out := &in.Database, &out.Database
		*out = new(DatabaseConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.MetadataDatabase != nil {
		in, out := &in.MetadataDatabase, &out.MetadataDatabase
		*out = new(MetadataDatabaseConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Storage != nil {
		in, out := &in.Storage, &out.Storage
		*out = new(StorageConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Redis != nil {
		in, out := &in.Redis, &out.Redis
		*out = new(RedisConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Registry != nil {
		in, out := &in.Registry, &out.Registry
		*out = new(RegistryConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.ControlPlane != nil {
		in, out := &in.ControlPlane, &out.ControlPlane
		*out = new(ControlPlaneConfig)
		**out = **in
	}
	if in.InternalAuth != nil {
		in, out := &in.InternalAuth, &out.InternalAuth
		*out = new(InternalAuthConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.EnterpriseLicense != nil {
		in, out := &in.EnterpriseLicense, &out.EnterpriseLicense
		*out = new(EnterpriseLicenseConfig)
		**out = **in
	}
	if in.Services != nil {
		in, out := &in.Services, &out.Services
		*out = new(ServicesConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.SandboxNodePlacement != nil {
		in, out := &in.SandboxNodePlacement, &out.SandboxNodePlacement
		*out = new(SandboxNodePlacementConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.PublicExposure != nil {
		in, out := &in.PublicExposure, &out.PublicExposure
		*out = new(PublicExposureConfig)
		**out = **in
	}
	if in.Cluster != nil {
		in, out := &in.Cluster, &out.Cluster
		*out = new(ClusterConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.InitUser != nil {
		in, out := &in.InitUser, &out.InitUser
		*out = new(InitUserConfig)
		**out = **in
	}
	if in.BuiltinTemplates != nil {
		in, out := &in.BuiltinTemplates, &out.BuiltinTemplates
		*out = make([]BuiltinTemplateConfig, len(*in))
		copy(*out, *in)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Sandbox0InfraStatus) DeepCopyInto(out *Sandbox0InfraStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Endpoints != nil {
		in, out := &in.Endpoints, &out.Endpoints
		*out = new(EndpointsStatus)
		**out = **in
	}
	if in.Cluster != nil {
		in, out := &in.Cluster, &out.Cluster
		*out = new(ClusterStatus)
		(*in).DeepCopyInto(*out)
	}
	if in.InternalAuth != nil {
		in, out := &in.InternalAuth, &out.InternalAuth
		*out = new(InternalAuthStatus)
		(*in).DeepCopyInto(*out)
	}
	if in.LastOperation != nil {
		in, out := &in.LastOperation, &out.LastOperation
		*out = new(LastOperation)
		(*in).DeepCopyInto(*out)
	}
	if in.RetainedResources != nil {
		in, out := &in.RetainedResources, &out.RetainedResources
		*out = make([]RetainedResourceStatus, len(*in))
		copy(*out, *in)
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SchedulerConfig) DeepCopyInto(out *SchedulerConfig) {
	*out = *in
	out.ReconcileInterval = in.ReconcileInterval
	out.ShutdownTimeout = in.ShutdownTimeout
	out.ReadTimeout = in.ReadTimeout
	out.WriteTimeout = in.WriteTimeout
	out.IdleTimeout = in.IdleTimeout
	out.ProxyTimeout = in.ProxyTimeout
	out.DatabasePool = in.DatabasePool
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServicesConfig) DeepCopyInto(out *ServicesConfig) {
	*out = *in
	if in.GlobalGateway != nil {
		in, out := &in.GlobalGateway, &out.GlobalGateway
		*out = new(GlobalGatewayServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.RegionalGateway != nil {
		in, out := &in.RegionalGateway, &out.RegionalGateway
		*out = new(RegionalGatewayServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.SSHGateway != nil {
		in, out := &in.SSHGateway, &out.SSHGateway
		*out = new(SSHGatewayServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Scheduler != nil {
		in, out := &in.Scheduler, &out.Scheduler
		*out = new(SchedulerServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.ClusterGateway != nil {
		in, out := &in.ClusterGateway, &out.ClusterGateway
		*out = new(ClusterGatewayServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Manager != nil {
		in, out := &in.Manager, &out.Manager
		*out = new(ManagerServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.StorageProxy != nil {
		in, out := &in.StorageProxy, &out.StorageProxy
		*out = new(StorageProxyServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Netd != nil {
		in, out := &in.Netd, &out.Netd
		*out = new(NetdServiceConfig)
		(*in).DeepCopyInto(*out)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *StorageConfig) DeepCopyInto(out *StorageConfig) {
	*out = *in
	if in.Builtin != nil {
		in, out := &in.Builtin, &out.Builtin
		*out = new(BuiltinStorageConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.S3 != nil {
		in, out := &in.S3, &out.S3
		*out = new(S3StorageConfig)
		**out = **in
	}
	if in.OSS != nil {
		in, out := &in.OSS, &out.OSS
		*out = new(OSSStorageConfig)
		**out = **in
	}
	if in.GCS != nil {
		in, out := &in.GCS, &out.GCS
		*out = new(GCSStorageConfig)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

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

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