//go:build !ignore_autogenerated
// +build !ignore_autogenerated

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

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

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

package v1alpha1

import (
	corev1 "k8s.io/api/core/v1"
	apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
	v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
	intstr "k8s.io/apimachinery/pkg/util/intstr"
)

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *AppProjectList) 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 *AppProjectSpec) DeepCopyInto(out *AppProjectSpec) {
	*out = *in
	if in.SourceRepos != nil {
		in, out := &in.SourceRepos, &out.SourceRepos
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Destinations != nil {
		in, out := &in.Destinations, &out.Destinations
		*out = make([]ApplicationDestination, len(*in))
		copy(*out, *in)
	}
	if in.Roles != nil {
		in, out := &in.Roles, &out.Roles
		*out = make([]ProjectRole, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ClusterResourceWhitelist != nil {
		in, out := &in.ClusterResourceWhitelist, &out.ClusterResourceWhitelist
		*out = make([]v1.GroupKind, len(*in))
		copy(*out, *in)
	}
	if in.NamespaceResourceBlacklist != nil {
		in, out := &in.NamespaceResourceBlacklist, &out.NamespaceResourceBlacklist
		*out = make([]v1.GroupKind, len(*in))
		copy(*out, *in)
	}
	if in.OrphanedResources != nil {
		in, out := &in.OrphanedResources, &out.OrphanedResources
		*out = new(OrphanedResourcesMonitorSettings)
		(*in).DeepCopyInto(*out)
	}
	if in.SyncWindows != nil {
		in, out := &in.SyncWindows, &out.SyncWindows
		*out = make(SyncWindows, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(SyncWindow)
				(*in).DeepCopyInto(*out)
			}
		}
	}
	if in.NamespaceResourceWhitelist != nil {
		in, out := &in.NamespaceResourceWhitelist, &out.NamespaceResourceWhitelist
		*out = make([]v1.GroupKind, len(*in))
		copy(*out, *in)
	}
	if in.SignatureKeys != nil {
		in, out := &in.SignatureKeys, &out.SignatureKeys
		*out = make([]SignatureKey, len(*in))
		copy(*out, *in)
	}
	if in.ClusterResourceBlacklist != nil {
		in, out := &in.ClusterResourceBlacklist, &out.ClusterResourceBlacklist
		*out = make([]v1.GroupKind, len(*in))
		copy(*out, *in)
	}
	if in.SourceNamespaces != nil {
		in, out := &in.SourceNamespaces, &out.SourceNamespaces
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.DestinationServiceAccounts != nil {
		in, out := &in.DestinationServiceAccounts, &out.DestinationServiceAccounts
		*out = make([]ApplicationDestinationServiceAccount, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ApplicationSet) 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 *ApplicationSetApplicationStatus) DeepCopyInto(out *ApplicationSetApplicationStatus) {
	*out = *in
	if in.LastTransitionTime != nil {
		in, out := &in.LastTransitionTime, &out.LastTransitionTime
		*out = (*in).DeepCopy()
	}
	if in.TargetRevisions != nil {
		in, out := &in.TargetRevisions, &out.TargetRevisions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSetGenerator) DeepCopyInto(out *ApplicationSetGenerator) {
	*out = *in
	if in.List != nil {
		in, out := &in.List, &out.List
		*out = new(ListGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Clusters != nil {
		in, out := &in.Clusters, &out.Clusters
		*out = new(ClusterGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Git != nil {
		in, out := &in.Git, &out.Git
		*out = new(GitGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.SCMProvider != nil {
		in, out := &in.SCMProvider, &out.SCMProvider
		*out = new(SCMProviderGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.ClusterDecisionResource != nil {
		in, out := &in.ClusterDecisionResource, &out.ClusterDecisionResource
		*out = new(DuckTypeGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.PullRequest != nil {
		in, out := &in.PullRequest, &out.PullRequest
		*out = new(PullRequestGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Matrix != nil {
		in, out := &in.Matrix, &out.Matrix
		*out = new(MatrixGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Merge != nil {
		in, out := &in.Merge, &out.Merge
		*out = new(MergeGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(v1.LabelSelector)
		(*in).DeepCopyInto(*out)
	}
	if in.Plugin != nil {
		in, out := &in.Plugin, &out.Plugin
		*out = new(PluginGenerator)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ApplicationSetList) 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 *ApplicationSetNestedGenerator) DeepCopyInto(out *ApplicationSetNestedGenerator) {
	*out = *in
	if in.List != nil {
		in, out := &in.List, &out.List
		*out = new(ListGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Clusters != nil {
		in, out := &in.Clusters, &out.Clusters
		*out = new(ClusterGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Git != nil {
		in, out := &in.Git, &out.Git
		*out = new(GitGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.SCMProvider != nil {
		in, out := &in.SCMProvider, &out.SCMProvider
		*out = new(SCMProviderGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.ClusterDecisionResource != nil {
		in, out := &in.ClusterDecisionResource, &out.ClusterDecisionResource
		*out = new(DuckTypeGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.PullRequest != nil {
		in, out := &in.PullRequest, &out.PullRequest
		*out = new(PullRequestGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Matrix != nil {
		in, out := &in.Matrix, &out.Matrix
		*out = new(apiextensionsv1.JSON)
		(*in).DeepCopyInto(*out)
	}
	if in.Merge != nil {
		in, out := &in.Merge, &out.Merge
		*out = new(apiextensionsv1.JSON)
		(*in).DeepCopyInto(*out)
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(v1.LabelSelector)
		(*in).DeepCopyInto(*out)
	}
	if in.Plugin != nil {
		in, out := &in.Plugin, &out.Plugin
		*out = new(PluginGenerator)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSetSpec) DeepCopyInto(out *ApplicationSetSpec) {
	*out = *in
	if in.Generators != nil {
		in, out := &in.Generators, &out.Generators
		*out = make([]ApplicationSetGenerator, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	in.Template.DeepCopyInto(&out.Template)
	if in.SyncPolicy != nil {
		in, out := &in.SyncPolicy, &out.SyncPolicy
		*out = new(ApplicationSetSyncPolicy)
		(*in).DeepCopyInto(*out)
	}
	if in.Strategy != nil {
		in, out := &in.Strategy, &out.Strategy
		*out = new(ApplicationSetStrategy)
		(*in).DeepCopyInto(*out)
	}
	if in.PreservedFields != nil {
		in, out := &in.PreservedFields, &out.PreservedFields
		*out = new(ApplicationPreservedFields)
		(*in).DeepCopyInto(*out)
	}
	if in.GoTemplateOptions != nil {
		in, out := &in.GoTemplateOptions, &out.GoTemplateOptions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.IgnoreApplicationDifferences != nil {
		in, out := &in.IgnoreApplicationDifferences, &out.IgnoreApplicationDifferences
		*out = make(ApplicationSetIgnoreDifferences, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TemplatePatch != nil {
		in, out := &in.TemplatePatch, &out.TemplatePatch
		*out = new(string)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSetTemplateMeta) DeepCopyInto(out *ApplicationSetTemplateMeta) {
	*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
		}
	}
	if in.Finalizers != nil {
		in, out := &in.Finalizers, &out.Finalizers
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSetTerminalGenerator) DeepCopyInto(out *ApplicationSetTerminalGenerator) {
	*out = *in
	if in.List != nil {
		in, out := &in.List, &out.List
		*out = new(ListGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Clusters != nil {
		in, out := &in.Clusters, &out.Clusters
		*out = new(ClusterGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Git != nil {
		in, out := &in.Git, &out.Git
		*out = new(GitGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.SCMProvider != nil {
		in, out := &in.SCMProvider, &out.SCMProvider
		*out = new(SCMProviderGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.ClusterDecisionResource != nil {
		in, out := &in.ClusterDecisionResource, &out.ClusterDecisionResource
		*out = new(DuckTypeGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.PullRequest != nil {
		in, out := &in.PullRequest, &out.PullRequest
		*out = new(PullRequestGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Plugin != nil {
		in, out := &in.Plugin, &out.Plugin
		*out = new(PluginGenerator)
		(*in).DeepCopyInto(*out)
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(v1.LabelSelector)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSource) DeepCopyInto(out *ApplicationSource) {
	*out = *in
	if in.Helm != nil {
		in, out := &in.Helm, &out.Helm
		*out = new(ApplicationSourceHelm)
		(*in).DeepCopyInto(*out)
	}
	if in.Kustomize != nil {
		in, out := &in.Kustomize, &out.Kustomize
		*out = new(ApplicationSourceKustomize)
		(*in).DeepCopyInto(*out)
	}
	if in.Directory != nil {
		in, out := &in.Directory, &out.Directory
		*out = new(ApplicationSourceDirectory)
		(*in).DeepCopyInto(*out)
	}
	if in.Plugin != nil {
		in, out := &in.Plugin, &out.Plugin
		*out = new(ApplicationSourcePlugin)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSourceHelm) DeepCopyInto(out *ApplicationSourceHelm) {
	*out = *in
	if in.ValueFiles != nil {
		in, out := &in.ValueFiles, &out.ValueFiles
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Parameters != nil {
		in, out := &in.Parameters, &out.Parameters
		*out = make([]HelmParameter, len(*in))
		copy(*out, *in)
	}
	if in.FileParameters != nil {
		in, out := &in.FileParameters, &out.FileParameters
		*out = make([]HelmFileParameter, len(*in))
		copy(*out, *in)
	}
	if in.ValuesObject != nil {
		in, out := &in.ValuesObject, &out.ValuesObject
		*out = new(runtime.RawExtension)
		(*in).DeepCopyInto(*out)
	}
	if in.APIVersions != nil {
		in, out := &in.APIVersions, &out.APIVersions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSourceKustomize) DeepCopyInto(out *ApplicationSourceKustomize) {
	*out = *in
	if in.Images != nil {
		in, out := &in.Images, &out.Images
		*out = make(KustomizeImages, len(*in))
		copy(*out, *in)
	}
	if in.CommonLabels != nil {
		in, out := &in.CommonLabels, &out.CommonLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.CommonAnnotations != nil {
		in, out := &in.CommonAnnotations, &out.CommonAnnotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = make(KustomizeReplicas, len(*in))
		copy(*out, *in)
	}
	if in.Patches != nil {
		in, out := &in.Patches, &out.Patches
		*out = make(KustomizePatches, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Components != nil {
		in, out := &in.Components, &out.Components
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.APIVersions != nil {
		in, out := &in.APIVersions, &out.APIVersions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSpec) DeepCopyInto(out *ApplicationSpec) {
	*out = *in
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(ApplicationSource)
		(*in).DeepCopyInto(*out)
	}
	out.Destination = in.Destination
	if in.SyncPolicy != nil {
		in, out := &in.SyncPolicy, &out.SyncPolicy
		*out = new(SyncPolicy)
		(*in).DeepCopyInto(*out)
	}
	if in.IgnoreDifferences != nil {
		in, out := &in.IgnoreDifferences, &out.IgnoreDifferences
		*out = make(IgnoreDifferences, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Info != nil {
		in, out := &in.Info, &out.Info
		*out = make([]Info, len(*in))
		copy(*out, *in)
	}
	if in.RevisionHistoryLimit != nil {
		in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit
		*out = new(int64)
		**out = **in
	}
	if in.Sources != nil {
		in, out := &in.Sources, &out.Sources
		*out = make(ApplicationSources, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.SourceHydrator != nil {
		in, out := &in.SourceHydrator, &out.SourceHydrator
		*out = new(SourceHydrator)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationStatus) DeepCopyInto(out *ApplicationStatus) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = make([]ResourceStatus, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	in.Sync.DeepCopyInto(&out.Sync)
	in.Health.DeepCopyInto(&out.Health)
	if in.History != nil {
		in, out := &in.History, &out.History
		*out = make(RevisionHistories, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]ApplicationCondition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ReconciledAt != nil {
		in, out := &in.ReconciledAt, &out.ReconciledAt
		*out = (*in).DeepCopy()
	}
	if in.OperationState != nil {
		in, out := &in.OperationState, &out.OperationState
		*out = new(OperationState)
		(*in).DeepCopyInto(*out)
	}
	if in.ObservedAt != nil {
		in, out := &in.ObservedAt, &out.ObservedAt
		*out = (*in).DeepCopy()
	}
	in.Summary.DeepCopyInto(&out.Summary)
	if in.SourceTypes != nil {
		in, out := &in.SourceTypes, &out.SourceTypes
		*out = make([]ApplicationSourceType, len(*in))
		copy(*out, *in)
	}
	in.SourceHydrator.DeepCopyInto(&out.SourceHydrator)
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationTree) DeepCopyInto(out *ApplicationTree) {
	*out = *in
	if in.Nodes != nil {
		in, out := &in.Nodes, &out.Nodes
		*out = make([]ResourceNode, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.OrphanedNodes != nil {
		in, out := &in.OrphanedNodes, &out.OrphanedNodes
		*out = make([]ResourceNode, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Hosts != nil {
		in, out := &in.Hosts, &out.Hosts
		*out = make([]HostInfo, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Cluster) DeepCopyInto(out *Cluster) {
	*out = *in
	in.Config.DeepCopyInto(&out.Config)
	in.ConnectionState.DeepCopyInto(&out.ConnectionState)
	if in.Namespaces != nil {
		in, out := &in.Namespaces, &out.Namespaces
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.RefreshRequestedAt != nil {
		in, out := &in.RefreshRequestedAt, &out.RefreshRequestedAt
		*out = (*in).DeepCopy()
	}
	in.Info.DeepCopyInto(&out.Info)
	if in.Shard != nil {
		in, out := &in.Shard, &out.Shard
		*out = new(int64)
		**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
		}
	}
	return
}

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

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

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterCacheInfo.
func (in *ClusterCacheInfo) DeepCopy() *ClusterCacheInfo {
	if in == nil {
		return nil
	}
	out := new(ClusterCacheInfo)
	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
	in.TLSClientConfig.DeepCopyInto(&out.TLSClientConfig)
	if in.AWSAuthConfig != nil {
		in, out := &in.AWSAuthConfig, &out.AWSAuthConfig
		*out = new(AWSAuthConfig)
		**out = **in
	}
	if in.ExecProviderConfig != nil {
		in, out := &in.ExecProviderConfig, &out.ExecProviderConfig
		*out = new(ExecProviderConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

// 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 *ClusterGenerator) DeepCopyInto(out *ClusterGenerator) {
	*out = *in
	in.Selector.DeepCopyInto(&out.Selector)
	in.Template.DeepCopyInto(&out.Template)
	if in.Values != nil {
		in, out := &in.Values, &out.Values
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ComparedTo) DeepCopyInto(out *ComparedTo) {
	*out = *in
	in.Source.DeepCopyInto(&out.Source)
	out.Destination = in.Destination
	if in.Sources != nil {
		in, out := &in.Sources, &out.Sources
		*out = make(ApplicationSources, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.IgnoreDifferences != nil {
		in, out := &in.IgnoreDifferences, &out.IgnoreDifferences
		*out = make(IgnoreDifferences, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GitGenerator) DeepCopyInto(out *GitGenerator) {
	*out = *in
	if in.Directories != nil {
		in, out := &in.Directories, &out.Directories
		*out = make([]GitDirectoryGeneratorItem, len(*in))
		copy(*out, *in)
	}
	if in.Files != nil {
		in, out := &in.Files, &out.Files
		*out = make([]GitFileGeneratorItem, len(*in))
		copy(*out, *in)
	}
	if in.RequeueAfterSeconds != nil {
		in, out := &in.RequeueAfterSeconds, &out.RequeueAfterSeconds
		*out = new(int64)
		**out = **in
	}
	in.Template.DeepCopyInto(&out.Template)
	if in.Values != nil {
		in, out := &in.Values, &out.Values
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MergeGenerator) DeepCopyInto(out *MergeGenerator) {
	*out = *in
	if in.Generators != nil {
		in, out := &in.Generators, &out.Generators
		*out = make([]ApplicationSetNestedGenerator, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.MergeKeys != nil {
		in, out := &in.MergeKeys, &out.MergeKeys
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	in.Template.DeepCopyInto(&out.Template)
	return
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OperationState) DeepCopyInto(out *OperationState) {
	*out = *in
	in.Operation.DeepCopyInto(&out.Operation)
	if in.SyncResult != nil {
		in, out := &in.SyncResult, &out.SyncResult
		*out = new(SyncOperationResult)
		(*in).DeepCopyInto(*out)
	}
	in.StartedAt.DeepCopyInto(&out.StartedAt)
	if in.FinishedAt != nil {
		in, out := &in.FinishedAt, &out.FinishedAt
		*out = (*in).DeepCopy()
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OrphanedResourcesMonitorSettings) DeepCopyInto(out *OrphanedResourcesMonitorSettings) {
	*out = *in
	if in.Warn != nil {
		in, out := &in.Warn, &out.Warn
		*out = new(bool)
		**out = **in
	}
	if in.Ignore != nil {
		in, out := &in.Ignore, &out.Ignore
		*out = make([]OrphanedResourceKey, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PluginGenerator) DeepCopyInto(out *PluginGenerator) {
	*out = *in
	out.ConfigMapRef = in.ConfigMapRef
	in.Input.DeepCopyInto(&out.Input)
	if in.RequeueAfterSeconds != nil {
		in, out := &in.RequeueAfterSeconds, &out.RequeueAfterSeconds
		*out = new(int64)
		**out = **in
	}
	in.Template.DeepCopyInto(&out.Template)
	if in.Values != nil {
		in, out := &in.Values, &out.Values
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PullRequestGenerator) DeepCopyInto(out *PullRequestGenerator) {
	*out = *in
	if in.Github != nil {
		in, out := &in.Github, &out.Github
		*out = new(PullRequestGeneratorGithub)
		(*in).DeepCopyInto(*out)
	}
	if in.GitLab != nil {
		in, out := &in.GitLab, &out.GitLab
		*out = new(PullRequestGeneratorGitLab)
		(*in).DeepCopyInto(*out)
	}
	if in.Gitea != nil {
		in, out := &in.Gitea, &out.Gitea
		*out = new(PullRequestGeneratorGitea)
		(*in).DeepCopyInto(*out)
	}
	if in.BitbucketServer != nil {
		in, out := &in.BitbucketServer, &out.BitbucketServer
		*out = new(PullRequestGeneratorBitbucketServer)
		(*in).DeepCopyInto(*out)
	}
	if in.Filters != nil {
		in, out := &in.Filters, &out.Filters
		*out = make([]PullRequestGeneratorFilter, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RequeueAfterSeconds != nil {
		in, out := &in.RequeueAfterSeconds, &out.RequeueAfterSeconds
		*out = new(int64)
		**out = **in
	}
	in.Template.DeepCopyInto(&out.Template)
	if in.Bitbucket != nil {
		in, out := &in.Bitbucket, &out.Bitbucket
		*out = new(PullRequestGeneratorBitbucket)
		(*in).DeepCopyInto(*out)
	}
	if in.AzureDevOps != nil {
		in, out := &in.AzureDevOps, &out.AzureDevOps
		*out = new(PullRequestGeneratorAzureDevOps)
		(*in).DeepCopyInto(*out)
	}
	if in.Values != nil {
		in, out := &in.Values, &out.Values
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	return
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PullRequestGeneratorBitbucketServer) DeepCopyInto(out *PullRequestGeneratorBitbucketServer) {
	*out = *in
	if in.BasicAuth != nil {
		in, out := &in.BasicAuth, &out.BasicAuth
		*out = new(BasicAuthBitbucketServer)
		(*in).DeepCopyInto(*out)
	}
	if in.BearerToken != nil {
		in, out := &in.BearerToken, &out.BearerToken
		*out = new(BearerTokenBitbucket)
		(*in).DeepCopyInto(*out)
	}
	if in.CARef != nil {
		in, out := &in.CARef, &out.CARef
		*out = new(ConfigMapKeyRef)
		**out = **in
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PullRequestGeneratorGitLab) DeepCopyInto(out *PullRequestGeneratorGitLab) {
	*out = *in
	if in.TokenRef != nil {
		in, out := &in.TokenRef, &out.TokenRef
		*out = new(SecretRef)
		**out = **in
	}
	if in.Labels != nil {
		in, out := &in.Labels, &out.Labels
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.CARef != nil {
		in, out := &in.CARef, &out.CARef
		*out = new(ConfigMapKeyRef)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in RefTargetRevisionMapping) DeepCopyInto(out *RefTargetRevisionMapping) {
	{
		in := &in
		*out = make(RefTargetRevisionMapping, len(*in))
		for key, val := range *in {
			var outVal *RefTarget
			if val == nil {
				(*out)[key] = nil
			} else {
				in, out := &val, &outVal
				*out = new(RefTarget)
				(*in).DeepCopyInto(*out)
			}
			(*out)[key] = outVal
		}
		return
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourceNetworkingInfo) DeepCopyInto(out *ResourceNetworkingInfo) {
	*out = *in
	if in.TargetLabels != nil {
		in, out := &in.TargetLabels, &out.TargetLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.TargetRefs != nil {
		in, out := &in.TargetRefs, &out.TargetRefs
		*out = make([]ResourceRef, len(*in))
		copy(*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.Ingress != nil {
		in, out := &in.Ingress, &out.Ingress
		*out = make([]corev1.LoadBalancerIngress, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ExternalURLs != nil {
		in, out := &in.ExternalURLs, &out.ExternalURLs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourceNode) DeepCopyInto(out *ResourceNode) {
	*out = *in
	out.ResourceRef = in.ResourceRef
	if in.ParentRefs != nil {
		in, out := &in.ParentRefs, &out.ParentRefs
		*out = make([]ResourceRef, len(*in))
		copy(*out, *in)
	}
	if in.Info != nil {
		in, out := &in.Info, &out.Info
		*out = make([]InfoItem, len(*in))
		copy(*out, *in)
	}
	if in.NetworkingInfo != nil {
		in, out := &in.NetworkingInfo, &out.NetworkingInfo
		*out = new(ResourceNetworkingInfo)
		(*in).DeepCopyInto(*out)
	}
	if in.Images != nil {
		in, out := &in.Images, &out.Images
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Health != nil {
		in, out := &in.Health, &out.Health
		*out = new(HealthStatus)
		(*in).DeepCopyInto(*out)
	}
	if in.CreatedAt != nil {
		in, out := &in.CreatedAt, &out.CreatedAt
		*out = (*in).DeepCopy()
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RevisionHistory) DeepCopyInto(out *RevisionHistory) {
	*out = *in
	in.DeployedAt.DeepCopyInto(&out.DeployedAt)
	in.Source.DeepCopyInto(&out.Source)
	if in.DeployStartedAt != nil {
		in, out := &in.DeployStartedAt, &out.DeployStartedAt
		*out = (*in).DeepCopy()
	}
	if in.Sources != nil {
		in, out := &in.Sources, &out.Sources
		*out = make(ApplicationSources, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Revisions != nil {
		in, out := &in.Revisions, &out.Revisions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	out.InitiatedBy = in.InitiatedBy
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SCMProviderGenerator) DeepCopyInto(out *SCMProviderGenerator) {
	*out = *in
	if in.Github != nil {
		in, out := &in.Github, &out.Github
		*out = new(SCMProviderGeneratorGithub)
		(*in).DeepCopyInto(*out)
	}
	if in.Gitlab != nil {
		in, out := &in.Gitlab, &out.Gitlab
		*out = new(SCMProviderGeneratorGitlab)
		(*in).DeepCopyInto(*out)
	}
	if in.Bitbucket != nil {
		in, out := &in.Bitbucket, &out.Bitbucket
		*out = new(SCMProviderGeneratorBitbucket)
		(*in).DeepCopyInto(*out)
	}
	if in.BitbucketServer != nil {
		in, out := &in.BitbucketServer, &out.BitbucketServer
		*out = new(SCMProviderGeneratorBitbucketServer)
		(*in).DeepCopyInto(*out)
	}
	if in.Gitea != nil {
		in, out := &in.Gitea, &out.Gitea
		*out = new(SCMProviderGeneratorGitea)
		(*in).DeepCopyInto(*out)
	}
	if in.AzureDevOps != nil {
		in, out := &in.AzureDevOps, &out.AzureDevOps
		*out = new(SCMProviderGeneratorAzureDevOps)
		(*in).DeepCopyInto(*out)
	}
	if in.Filters != nil {
		in, out := &in.Filters, &out.Filters
		*out = make([]SCMProviderGeneratorFilter, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RequeueAfterSeconds != nil {
		in, out := &in.RequeueAfterSeconds, &out.RequeueAfterSeconds
		*out = new(int64)
		**out = **in
	}
	in.Template.DeepCopyInto(&out.Template)
	if in.Values != nil {
		in, out := &in.Values, &out.Values
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.AWSCodeCommit != nil {
		in, out := &in.AWSCodeCommit, &out.AWSCodeCommit
		*out = new(SCMProviderGeneratorAWSCodeCommit)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SCMProviderGeneratorBitbucketServer) DeepCopyInto(out *SCMProviderGeneratorBitbucketServer) {
	*out = *in
	if in.BasicAuth != nil {
		in, out := &in.BasicAuth, &out.BasicAuth
		*out = new(BasicAuthBitbucketServer)
		(*in).DeepCopyInto(*out)
	}
	if in.BearerToken != nil {
		in, out := &in.BearerToken, &out.BearerToken
		*out = new(BearerTokenBitbucket)
		(*in).DeepCopyInto(*out)
	}
	if in.CARef != nil {
		in, out := &in.CARef, &out.CARef
		*out = new(ConfigMapKeyRef)
		**out = **in
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SCMProviderGeneratorFilter) DeepCopyInto(out *SCMProviderGeneratorFilter) {
	*out = *in
	if in.RepositoryMatch != nil {
		in, out := &in.RepositoryMatch, &out.RepositoryMatch
		*out = new(string)
		**out = **in
	}
	if in.PathsExist != nil {
		in, out := &in.PathsExist, &out.PathsExist
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.PathsDoNotExist != nil {
		in, out := &in.PathsDoNotExist, &out.PathsDoNotExist
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.LabelMatch != nil {
		in, out := &in.LabelMatch, &out.LabelMatch
		*out = new(string)
		**out = **in
	}
	if in.BranchMatch != nil {
		in, out := &in.BranchMatch, &out.BranchMatch
		*out = new(string)
		**out = **in
	}
	return
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SCMProviderGeneratorGitlab) DeepCopyInto(out *SCMProviderGeneratorGitlab) {
	*out = *in
	if in.TokenRef != nil {
		in, out := &in.TokenRef, &out.TokenRef
		*out = new(SecretRef)
		**out = **in
	}
	if in.IncludeSharedProjects != nil {
		in, out := &in.IncludeSharedProjects, &out.IncludeSharedProjects
		*out = new(bool)
		**out = **in
	}
	if in.CARef != nil {
		in, out := &in.CARef, &out.CARef
		*out = new(ConfigMapKeyRef)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SyncOperation) DeepCopyInto(out *SyncOperation) {
	*out = *in
	if in.SyncStrategy != nil {
		in, out := &in.SyncStrategy, &out.SyncStrategy
		*out = new(SyncStrategy)
		(*in).DeepCopyInto(*out)
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = make([]SyncOperationResource, len(*in))
		copy(*out, *in)
	}
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(ApplicationSource)
		(*in).DeepCopyInto(*out)
	}
	if in.Manifests != nil {
		in, out := &in.Manifests, &out.Manifests
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.SyncOptions != nil {
		in, out := &in.SyncOptions, &out.SyncOptions
		*out = make(SyncOptions, len(*in))
		copy(*out, *in)
	}
	if in.Sources != nil {
		in, out := &in.Sources, &out.Sources
		*out = make(ApplicationSources, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Revisions != nil {
		in, out := &in.Revisions, &out.Revisions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SyncOperationResult) DeepCopyInto(out *SyncOperationResult) {
	*out = *in
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = make(ResourceResults, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(ResourceResult)
				**out = **in
			}
		}
	}
	in.Source.DeepCopyInto(&out.Source)
	if in.Sources != nil {
		in, out := &in.Sources, &out.Sources
		*out = make(ApplicationSources, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Revisions != nil {
		in, out := &in.Revisions, &out.Revisions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ManagedNamespaceMetadata != nil {
		in, out := &in.ManagedNamespaceMetadata, &out.ManagedNamespaceMetadata
		*out = new(ManagedNamespaceMetadata)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SyncPolicy) DeepCopyInto(out *SyncPolicy) {
	*out = *in
	if in.Automated != nil {
		in, out := &in.Automated, &out.Automated
		*out = new(SyncPolicyAutomated)
		**out = **in
	}
	if in.SyncOptions != nil {
		in, out := &in.SyncOptions, &out.SyncOptions
		*out = make(SyncOptions, len(*in))
		copy(*out, *in)
	}
	if in.Retry != nil {
		in, out := &in.Retry, &out.Retry
		*out = new(RetryStrategy)
		(*in).DeepCopyInto(*out)
	}
	if in.ManagedNamespaceMetadata != nil {
		in, out := &in.ManagedNamespaceMetadata, &out.ManagedNamespaceMetadata
		*out = new(ManagedNamespaceMetadata)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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