//go:build !ignore_autogenerated

// Copyright 2020-2023 Project Capsule Authors.
// SPDX-License-Identifier: Apache-2.0

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

package v1beta2

import (
	"github.com/projectcapsule/capsule/pkg/api"
	"github.com/projectcapsule/capsule/pkg/api/meta"
	"github.com/projectcapsule/capsule/pkg/api/rbac"
	"github.com/projectcapsule/capsule/pkg/api/rules"
	"github.com/projectcapsule/capsule/pkg/runtime/admission"
	"github.com/projectcapsule/capsule/pkg/runtime/selectors"
	"github.com/projectcapsule/capsule/pkg/template"
	corev1 "k8s.io/api/core/v1"
	"k8s.io/api/rbac/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	"k8s.io/apimachinery/pkg/runtime"
)

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *CapsuleConfigurationList) 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 *CapsuleConfigurationSpec) DeepCopyInto(out *CapsuleConfigurationSpec) {
	*out = *in
	if in.Users != nil {
		in, out := &in.Users, &out.Users
		*out = make(rbac.UserListSpec, len(*in))
		copy(*out, *in)
	}
	if in.IgnoreUserWithGroups != nil {
		in, out := &in.IgnoreUserWithGroups, &out.IgnoreUserWithGroups
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	out.CapsuleResources = in.CapsuleResources
	if in.NodeMetadata != nil {
		in, out := &in.NodeMetadata, &out.NodeMetadata
		*out = new(NodeMetadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Administrators != nil {
		in, out := &in.Administrators, &out.Administrators
		*out = make(rbac.UserListSpec, len(*in))
		copy(*out, *in)
	}
	in.Admission.DeepCopyInto(&out.Admission)
	if in.RBAC != nil {
		in, out := &in.RBAC, &out.RBAC
		*out = new(RBACConfiguration)
		(*in).DeepCopyInto(*out)
	}
	out.CacheInvalidation = in.CacheInvalidation
	out.Impersonation = in.Impersonation
	out.Events = in.Events
	if in.UserNames != nil {
		in, out := &in.UserNames, &out.UserNames
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.UserGroups != nil {
		in, out := &in.UserGroups, &out.UserGroups
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CapsuleConfigurationStatus) DeepCopyInto(out *CapsuleConfigurationStatus) {
	*out = *in
	if in.Users != nil {
		in, out := &in.Users, &out.Users
		*out = make(rbac.UserListSpec, len(*in))
		copy(*out, *in)
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make(meta.ConditionList, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Tenants != nil {
		in, out := &in.Tenants, &out.Tenants
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *CustomQuota) 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 *CustomQuotaClaimItem) DeepCopyInto(out *CustomQuotaClaimItem) {
	*out = *in
	out.GroupVersionKind = in.GroupVersionKind
	out.NamespacedObjectWithUIDReference = in.NamespacedObjectWithUIDReference
	out.Usage = in.Usage.DeepCopy()
}

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *CustomQuotaList) 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 *CustomQuotaOptionsSpec) DeepCopyInto(out *CustomQuotaOptionsSpec) {
	*out = *in
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CustomQuotaSpec) DeepCopyInto(out *CustomQuotaSpec) {
	*out = *in
	if in.ScopeSelectors != nil {
		in, out := &in.ScopeSelectors, &out.ScopeSelectors
		*out = make([]metav1.LabelSelector, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.Limit = in.Limit.DeepCopy()
	if in.Sources != nil {
		in, out := &in.Sources, &out.Sources
		*out = make([]CustomQuotaSpecSource, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Options != nil {
		in, out := &in.Options, &out.Options
		*out = new(CustomQuotaOptionsSpec)
		**out = **in
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *GlobalResourceQuotaList) 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 *GlobalResourceQuotaNamespaceStatus) DeepCopyInto(out *GlobalResourceQuotaNamespaceStatus) {
	*out = *in
	if in.Used != nil {
		in, out := &in.Used, &out.Used
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GlobalResourceQuotaStatus) DeepCopyInto(out *GlobalResourceQuotaStatus) {
	*out = *in
	if in.Namespaces != nil {
		in, out := &in.Namespaces, &out.Namespaces
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	in.Total.DeepCopyInto(&out.Total)
	if in.NamespaceUsage != nil {
		in, out := &in.NamespaceUsage, &out.NamespaceUsage
		*out = make(GlobalResourceQuotaNamespaceUsage, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make(meta.ConditionList, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GlobalResourceQuotaUsage) DeepCopyInto(out *GlobalResourceQuotaUsage) {
	*out = *in
	if in.Hard != nil {
		in, out := &in.Hard, &out.Hard
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Used != nil {
		in, out := &in.Used, &out.Used
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Available != nil {
		in, out := &in.Available, &out.Available
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
}

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *GlobalTenantResourceList) 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 *GlobalTenantResourceSpec) DeepCopyInto(out *GlobalTenantResourceSpec) {
	*out = *in
	in.TenantResourceCommonSpec.DeepCopyInto(&out.TenantResourceCommonSpec)
	if in.ServiceAccount != nil {
		in, out := &in.ServiceAccount, &out.ServiceAccount
		*out = new(meta.NamespacedRFC1123ObjectReferenceWithNamespace)
		**out = **in
	}
	in.TenantSelector.DeepCopyInto(&out.TenantSelector)
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NamespaceOptions) DeepCopyInto(out *NamespaceOptions) {
	*out = *in
	if in.Quota != nil {
		in, out := &in.Quota, &out.Quota
		*out = new(int32)
		**out = **in
	}
	if in.AdditionalMetadata != nil {
		in, out := &in.AdditionalMetadata, &out.AdditionalMetadata
		*out = new(api.AdditionalMetadataSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.AdditionalMetadataList != nil {
		in, out := &in.AdditionalMetadataList, &out.AdditionalMetadataList
		*out = make([]api.AdditionalMetadataSelectorSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RequiredMetadata != nil {
		in, out := &in.RequiredMetadata, &out.RequiredMetadata
		*out = new(RequiredMetadata)
		(*in).DeepCopyInto(*out)
	}
	in.ForbiddenLabels.DeepCopyInto(&out.ForbiddenLabels)
	in.ForbiddenAnnotations.DeepCopyInto(&out.ForbiddenAnnotations)
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *QuantityLedgerList) 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 *QuantityLedgerObjectRef) DeepCopyInto(out *QuantityLedgerObjectRef) {
	*out = *in
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *QuantityLedgerReservation) DeepCopyInto(out *QuantityLedgerReservation) {
	*out = *in
	out.Usage = in.Usage.DeepCopy()
	if in.Delta != nil {
		in, out := &in.Delta, &out.Delta
		x := (*in).DeepCopy()
		*out = &x
	}
	out.ObjectRef = in.ObjectRef
	in.CreatedAt.DeepCopyInto(&out.CreatedAt)
	in.UpdatedAt.DeepCopyInto(&out.UpdatedAt)
	if in.ExpiresAt != nil {
		in, out := &in.ExpiresAt, &out.ExpiresAt
		*out = (*in).DeepCopy()
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *QuantityLedgerResourceQuotaReservation) DeepCopyInto(out *QuantityLedgerResourceQuotaReservation) {
	*out = *in
	if in.Usage != nil {
		in, out := &in.Usage, &out.Usage
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Delta != nil {
		in, out := &in.Delta, &out.Delta
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	out.ObjectRef = in.ObjectRef
	in.CreatedAt.DeepCopyInto(&out.CreatedAt)
	in.UpdatedAt.DeepCopyInto(&out.UpdatedAt)
	if in.ExpiresAt != nil {
		in, out := &in.ExpiresAt, &out.ExpiresAt
		*out = (*in).DeepCopy()
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *QuantityLedgerResourceQuotaStatus) DeepCopyInto(out *QuantityLedgerResourceQuotaStatus) {
	*out = *in
	if in.Namespaces != nil {
		in, out := &in.Namespaces, &out.Namespaces
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Used != nil {
		in, out := &in.Used, &out.Used
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Reserved != nil {
		in, out := &in.Reserved, &out.Reserved
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Allocated != nil {
		in, out := &in.Allocated, &out.Allocated
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Reservations != nil {
		in, out := &in.Reservations, &out.Reservations
		*out = make([]QuantityLedgerResourceQuotaReservation, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *QuantityLedgerStatus) DeepCopyInto(out *QuantityLedgerStatus) {
	*out = *in
	out.Reserved = in.Reserved.DeepCopy()
	if in.Reservations != nil {
		in, out := &in.Reservations, &out.Reservations
		*out = make([]QuantityLedgerReservation, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PendingDeletes != nil {
		in, out := &in.PendingDeletes, &out.PendingDeletes
		*out = make([]QuantityLedgerPendingDelete, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make(meta.ConditionList, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.Allocated = in.Allocated.DeepCopy()
	if in.ResourceQuota != nil {
		in, out := &in.ResourceQuota, &out.ResourceQuota
		*out = new(QuantityLedgerResourceQuotaStatus)
		(*in).DeepCopyInto(*out)
	}
}

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

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ResourcePool) 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 *ResourcePoolClaim) DeepCopyInto(out *ResourcePoolClaim) {
	*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 ResourcePoolClaim.
func (in *ResourcePoolClaim) DeepCopy() *ResourcePoolClaim {
	if in == nil {
		return nil
	}
	out := new(ResourcePoolClaim)
	in.DeepCopyInto(out)
	return out
}

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ResourcePoolClaimList) 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 *ResourcePoolClaimSpec) DeepCopyInto(out *ResourcePoolClaimSpec) {
	*out = *in
	if in.ResourceClaims != nil {
		in, out := &in.ResourceClaims, &out.ResourceClaims
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
}

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ResourcePoolList) 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 ResourcePoolNamespaceClaimsStatus) DeepCopyInto(out *ResourcePoolNamespaceClaimsStatus) {
	{
		in := &in
		*out = make(ResourcePoolNamespaceClaimsStatus, len(*in))
		for key, val := range *in {
			var outVal []*ResourcePoolClaimsItem
			if val == nil {
				(*out)[key] = nil
			} else {
				inVal := (*in)[key]
				in, out := &inVal, &outVal
				*out = make(ResourcePoolClaimsList, len(*in))
				for i := range *in {
					if (*in)[i] != nil {
						in, out := &(*in)[i], &(*out)[i]
						*out = new(ResourcePoolClaimsItem)
						(*in).DeepCopyInto(*out)
					}
				}
			}
			(*out)[key] = outVal
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourcePoolQuotaStatus) DeepCopyInto(out *ResourcePoolQuotaStatus) {
	*out = *in
	if in.Hard != nil {
		in, out := &in.Hard, &out.Hard
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Claimed != nil {
		in, out := &in.Claimed, &out.Claimed
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	if in.Available != nil {
		in, out := &in.Available, &out.Available
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourcePoolSpec) DeepCopyInto(out *ResourcePoolSpec) {
	*out = *in
	if in.Selectors != nil {
		in, out := &in.Selectors, &out.Selectors
		*out = make([]selectors.NamespaceSelector, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	in.Quota.DeepCopyInto(&out.Quota)
	if in.Defaults != nil {
		in, out := &in.Defaults, &out.Defaults
		*out = make(corev1.ResourceList, len(*in))
		for key, val := range *in {
			(*out)[key] = val.DeepCopy()
		}
	}
	in.Config.DeepCopyInto(&out.Config)
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourcePoolStatus) DeepCopyInto(out *ResourcePoolStatus) {
	*out = *in
	if in.Namespaces != nil {
		in, out := &in.Namespaces, &out.Namespaces
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Claims != nil {
		in, out := &in.Claims, &out.Claims
		*out = make(ResourcePoolNamespaceClaimsStatus, len(*in))
		for key, val := range *in {
			var outVal []*ResourcePoolClaimsItem
			if val == nil {
				(*out)[key] = nil
			} else {
				inVal := (*in)[key]
				in, out := &inVal, &outVal
				*out = make(ResourcePoolClaimsList, len(*in))
				for i := range *in {
					if (*in)[i] != nil {
						in, out := &(*in)[i], &(*out)[i]
						*out = new(ResourcePoolClaimsItem)
						(*in).DeepCopyInto(*out)
					}
				}
			}
			(*out)[key] = outVal
		}
	}
	in.Allocation.DeepCopyInto(&out.Allocation)
	if in.Exhaustions != nil {
		in, out := &in.Exhaustions, &out.Exhaustions
		*out = make(map[string]api.PoolExhaustionResource, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make(meta.ConditionList, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourceSpec) DeepCopyInto(out *ResourceSpec) {
	*out = *in
	if in.NamespaceSelector != nil {
		in, out := &in.NamespaceSelector, &out.NamespaceSelector
		*out = new(metav1.LabelSelector)
		(*in).DeepCopyInto(*out)
	}
	if in.NamespacedItems != nil {
		in, out := &in.NamespacedItems, &out.NamespacedItems
		*out = make([]template.ResourceReference, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RawItems != nil {
		in, out := &in.RawItems, &out.RawItems
		*out = make([]RawExtension, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.AdditionalMetadata != nil {
		in, out := &in.AdditionalMetadata, &out.AdditionalMetadata
		*out = new(api.AdditionalMetadataSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Generators != nil {
		in, out := &in.Generators, &out.Generators
		*out = make([]TemplateItemSpec, len(*in))
		copy(*out, *in)
	}
	if in.Context != nil {
		in, out := &in.Context, &out.Context
		*out = new(template.TemplateContext)
		(*in).DeepCopyInto(*out)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RuleStatus) DeepCopyInto(out *RuleStatus) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	if in.Spec != nil {
		in, out := &in.Spec, &out.Spec
		*out = make([]*rules.NamespaceRuleBodyNamespace, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(rules.NamespaceRuleBodyNamespace)
				(*in).DeepCopyInto(*out)
			}
		}
	}
	in.Status.DeepCopyInto(&out.Status)
}

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *RuleStatusList) 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 *RuleStatusStatus) DeepCopyInto(out *RuleStatusStatus) {
	*out = *in
	in.Rule.DeepCopyInto(&out.Rule)
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]*rules.NamespaceRuleBodyNamespace, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(rules.NamespaceRuleBodyNamespace)
				(*in).DeepCopyInto(*out)
			}
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make(meta.ConditionList, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Tenant) 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 *TenantAvailableClassesStatus) DeepCopyInto(out *TenantAvailableClassesStatus) {
	*out = *in
	if in.StorageClasses != nil {
		in, out := &in.StorageClasses, &out.StorageClasses
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.PriorityClasses != nil {
		in, out := &in.PriorityClasses, &out.PriorityClasses
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.RuntimeClasses != nil {
		in, out := &in.RuntimeClasses, &out.RuntimeClasses
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.GatewayClasses != nil {
		in, out := &in.GatewayClasses, &out.GatewayClasses
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.DeviceClasses != nil {
		in, out := &in.DeviceClasses, &out.DeviceClasses
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *TenantList) 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 *TenantOwner) DeepCopyInto(out *TenantOwner) {
	*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 TenantOwner.
func (in *TenantOwner) DeepCopy() *TenantOwner {
	if in == nil {
		return nil
	}
	out := new(TenantOwner)
	in.DeepCopyInto(out)
	return out
}

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *TenantOwnerList) 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 *TenantOwnerSpec) DeepCopyInto(out *TenantOwnerSpec) {
	*out = *in
	in.CoreOwnerSpec.DeepCopyInto(&out.CoreOwnerSpec)
	if in.Aggregate != nil {
		in, out := &in.Aggregate, &out.Aggregate
		*out = new(bool)
		**out = **in
	}
}

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *TenantResource) 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 *TenantResourceCommonSpec) DeepCopyInto(out *TenantResourceCommonSpec) {
	*out = *in
	in.Settings.DeepCopyInto(&out.Settings)
	if in.DependsOn != nil {
		in, out := &in.DependsOn, &out.DependsOn
		*out = make([]meta.LocalRFC1123ObjectReference, len(*in))
		copy(*out, *in)
	}
	out.ResyncPeriod = in.ResyncPeriod
	if in.PruningOnDelete != nil {
		in, out := &in.PruningOnDelete, &out.PruningOnDelete
		*out = new(bool)
		**out = **in
	}
	if in.Cordoned != nil {
		in, out := &in.Cordoned, &out.Cordoned
		*out = new(bool)
		**out = **in
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = make([]ResourceSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *TenantResourceList) 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 *TenantResourceSpec) DeepCopyInto(out *TenantResourceSpec) {
	*out = *in
	in.TenantResourceCommonSpec.DeepCopyInto(&out.TenantResourceCommonSpec)
	if in.ServiceAccount != nil {
		in, out := &in.ServiceAccount, &out.ServiceAccount
		*out = new(meta.LocalRFC1123ObjectReference)
		**out = **in
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TenantSpec) DeepCopyInto(out *TenantSpec) {
	*out = *in
	in.Data.DeepCopyInto(&out.Data)
	in.Permissions.DeepCopyInto(&out.Permissions)
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]*rules.NamespaceRuleBodyTenant, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(rules.NamespaceRuleBodyTenant)
				(*in).DeepCopyInto(*out)
			}
		}
	}
	if in.Owners != nil {
		in, out := &in.Owners, &out.Owners
		*out = make(rbac.OwnerListSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NamespaceOptions != nil {
		in, out := &in.NamespaceOptions, &out.NamespaceOptions
		*out = new(NamespaceOptions)
		(*in).DeepCopyInto(*out)
	}
	if in.StorageClasses != nil {
		in, out := &in.StorageClasses, &out.StorageClasses
		*out = new(api.DefaultAllowedListSpec)
		(*in).DeepCopyInto(*out)
	}
	in.IngressOptions.DeepCopyInto(&out.IngressOptions)
	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.AdditionalRoleBindings != nil {
		in, out := &in.AdditionalRoleBindings, &out.AdditionalRoleBindings
		*out = make([]rbac.AdditionalRoleBindingsSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RuntimeClasses != nil {
		in, out := &in.RuntimeClasses, &out.RuntimeClasses
		*out = new(api.DefaultAllowedListSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.PriorityClasses != nil {
		in, out := &in.PriorityClasses, &out.PriorityClasses
		*out = new(api.DefaultAllowedListSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.DeviceClasses != nil {
		in, out := &in.DeviceClasses, &out.DeviceClasses
		*out = new(api.SelectorAllowedListSpec)
		(*in).DeepCopyInto(*out)
	}
	in.GatewayOptions.DeepCopyInto(&out.GatewayOptions)
	if in.ForceTenantPrefix != nil {
		in, out := &in.ForceTenantPrefix, &out.ForceTenantPrefix
		*out = new(bool)
		**out = **in
	}
	in.ResourceQuota.DeepCopyInto(&out.ResourceQuota)
	if in.ServiceOptions != nil {
		in, out := &in.ServiceOptions, &out.ServiceOptions
		*out = new(api.ServiceOptions)
		(*in).DeepCopyInto(*out)
	}
	if in.PodOptions != nil {
		in, out := &in.PodOptions, &out.PodOptions
		*out = new(api.PodOptions)
		(*in).DeepCopyInto(*out)
	}
	if in.ContainerRegistries != nil {
		in, out := &in.ContainerRegistries, &out.ContainerRegistries
		*out = new(api.AllowedListSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.ImagePullPolicies != nil {
		in, out := &in.ImagePullPolicies, &out.ImagePullPolicies
		*out = make([]rules.ImagePullPolicySpec, len(*in))
		copy(*out, *in)
	}
	in.NetworkPolicies.DeepCopyInto(&out.NetworkPolicies)
	in.LimitRanges.DeepCopyInto(&out.LimitRanges)
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TenantStatus) DeepCopyInto(out *TenantStatus) {
	*out = *in
	in.TenantAvailableStatus.DeepCopyInto(&out.TenantAvailableStatus)
	if in.Owners != nil {
		in, out := &in.Owners, &out.Owners
		*out = make(rbac.OwnerStatusListSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Promotions != nil {
		in, out := &in.Promotions, &out.Promotions
		*out = make(rbac.PromotionStatusListSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Namespaces != nil {
		in, out := &in.Namespaces, &out.Namespaces
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Spaces != nil {
		in, out := &in.Spaces, &out.Spaces
		*out = make([]*TenantStatusNamespaceItem, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(TenantStatusNamespaceItem)
				(*in).DeepCopyInto(*out)
			}
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make(meta.ConditionList, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TenantStatusRuleStatusItem) DeepCopyInto(out *TenantStatusRuleStatusItem) {
	*out = *in
	if in.Promotions != nil {
		in, out := &in.Promotions, &out.Promotions
		*out = make(rbac.OwnerStatusListSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TargetNamespaces != nil {
		in, out := &in.TargetNamespaces, &out.TargetNamespaces
		*out = make([]meta.RFC1123SubdomainName, len(*in))
		copy(*out, *in)
	}
}

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