// +build !ignore_autogenerated

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

package v1

import (
	json "encoding/json"

	hive "github.com/kube-reporting/metering-operator/pkg/hive"
	presto "github.com/kube-reporting/metering-operator/pkg/presto"
	appsv1 "k8s.io/api/apps/v1"
	corev1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
)

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HadoopHDFS) DeepCopyInto(out *HadoopHDFS) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.SecurityContext != nil {
		in, out := &in.SecurityContext, &out.SecurityContext
		*out = new(corev1.SecurityContext)
		(*in).DeepCopyInto(*out)
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(HadoopHDFSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Datanode != nil {
		in, out := &in.Datanode, &out.Datanode
		*out = new(HadoopHDFSDatanodeSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Namenode != nil {
		in, out := &in.Namenode, &out.Namenode
		*out = new(HadoopHDFSNamenodeSpec)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HadoopHDFSDatanodeSpec) DeepCopyInto(out *HadoopHDFSDatanodeSpec) {
	*out = *in
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*out = new(int64)
		**out = **in
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.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.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(HadoopHDFSNodeConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Storage != nil {
		in, out := &in.Storage, &out.Storage
		*out = new(HadoopHDFSStorageConfig)
		**out = **in
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HadoopHDFSNamenodeSpec) DeepCopyInto(out *HadoopHDFSNamenodeSpec) {
	*out = *in
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*out = new(int64)
		**out = **in
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.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.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]corev1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(HadoopHDFSNodeConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Storage != nil {
		in, out := &in.Storage, &out.Storage
		*out = new(HadoopHDFSStorageConfig)
		**out = **in
	}
	return
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HadoopSpec) DeepCopyInto(out *HadoopSpec) {
	*out = *in
	if in.Image != nil {
		in, out := &in.Image, &out.Image
		*out = new(ImageConfig)
		**out = **in
	}
	if in.HDFS != nil {
		in, out := &in.HDFS, &out.HDFS
		*out = new(HadoopHDFS)
		(*in).DeepCopyInto(*out)
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(HadoopSpecConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HadoopSpecConfig) DeepCopyInto(out *HadoopSpecConfig) {
	*out = *in
	if in.AWS != nil {
		in, out := &in.AWS, &out.AWS
		*out = new(AWSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Azure != nil {
		in, out := &in.Azure, &out.Azure
		*out = new(AzureConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Gcs != nil {
		in, out := &in.Gcs, &out.Gcs
		*out = new(GCSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.S3Compatible != nil {
		in, out := &in.S3Compatible, &out.S3Compatible
		*out = new(S3CompatibleConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveMetastoreSpecConfig) DeepCopyInto(out *HiveMetastoreSpecConfig) {
	*out = *in
	if in.Jvm != nil {
		in, out := &in.Jvm, &out.Jvm
		*out = new(JVMConfig)
		**out = **in
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(TLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Auth != nil {
		in, out := &in.Auth, &out.Auth
		*out = new(HiveResourceAuthConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveServerSpecConfig) DeepCopyInto(out *HiveServerSpecConfig) {
	*out = *in
	if in.Jvm != nil {
		in, out := &in.Jvm, &out.Jvm
		*out = new(JVMConfig)
		**out = **in
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(TLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.MetastoreTLS != nil {
		in, out := &in.MetastoreTLS, &out.MetastoreTLS
		*out = new(TLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Auth != nil {
		in, out := &in.Auth, &out.Auth
		*out = new(HiveResourceAuthConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveSpec) DeepCopyInto(out *HiveSpec) {
	*out = *in
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*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
		}
	}
	if in.SecurityContext != nil {
		in, out := &in.SecurityContext, &out.SecurityContext
		*out = new(corev1.SecurityContext)
		(*in).DeepCopyInto(*out)
	}
	if in.Image != nil {
		in, out := &in.Image, &out.Image
		*out = new(ImageConfig)
		**out = **in
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(HiveSpecConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Metastore != nil {
		in, out := &in.Metastore, &out.Metastore
		*out = new(HiveMetastoreSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Server != nil {
		in, out := &in.Server, &out.Server
		*out = new(HiveServerSpec)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveSpecConfig) DeepCopyInto(out *HiveSpecConfig) {
	*out = *in
	if in.UseHadoopConfig != nil {
		in, out := &in.UseHadoopConfig, &out.UseHadoopConfig
		*out = new(bool)
		**out = **in
	}
	if in.AWS != nil {
		in, out := &in.AWS, &out.AWS
		*out = new(AWSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Azure != nil {
		in, out := &in.Azure, &out.Azure
		*out = new(AzureConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Gcs != nil {
		in, out := &in.Gcs, &out.Gcs
		*out = new(GCSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.S3Compatible != nil {
		in, out := &in.S3Compatible, &out.S3Compatible
		*out = new(S3CompatibleConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.DB != nil {
		in, out := &in.DB, &out.DB
		*out = new(HiveDBConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.SharedVolume != nil {
		in, out := &in.SharedVolume, &out.SharedVolume
		*out = new(HiveSharedVolumeConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveStorageConfig) DeepCopyInto(out *HiveStorageConfig) {
	*out = *in
	if in.Azure != nil {
		in, out := &in.Azure, &out.Azure
		*out = new(AzureConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Gcs != nil {
		in, out := &in.Gcs, &out.Gcs
		*out = new(GCSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Hdfs != nil {
		in, out := &in.Hdfs, &out.Hdfs
		*out = new(HiveHDFSConfig)
		**out = **in
	}
	if in.S3 != nil {
		in, out := &in.S3, &out.S3
		*out = new(S3Config)
		(*in).DeepCopyInto(*out)
	}
	if in.S3Compatible != nil {
		in, out := &in.S3Compatible, &out.S3Compatible
		*out = new(S3CompatibleConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.SharedPVC != nil {
		in, out := &in.SharedPVC, &out.SharedPVC
		*out = new(SharedPVCConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveTableSpec) DeepCopyInto(out *HiveTableSpec) {
	*out = *in
	if in.Columns != nil {
		in, out := &in.Columns, &out.Columns
		*out = make([]hive.Column, len(*in))
		copy(*out, *in)
	}
	if in.PartitionedBy != nil {
		in, out := &in.PartitionedBy, &out.PartitionedBy
		*out = make([]hive.Column, len(*in))
		copy(*out, *in)
	}
	if in.ClusteredBy != nil {
		in, out := &in.ClusteredBy, &out.ClusteredBy
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.SortedBy != nil {
		in, out := &in.SortedBy, &out.SortedBy
		*out = make([]SortColumn, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TableProperties != nil {
		in, out := &in.TableProperties, &out.TableProperties
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Partitions != nil {
		in, out := &in.Partitions, &out.Partitions
		*out = make([]HiveTablePartition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HiveTableStatus) DeepCopyInto(out *HiveTableStatus) {
	*out = *in
	if in.Columns != nil {
		in, out := &in.Columns, &out.Columns
		*out = make([]hive.Column, len(*in))
		copy(*out, *in)
	}
	if in.PartitionedBy != nil {
		in, out := &in.PartitionedBy, &out.PartitionedBy
		*out = make([]hive.Column, len(*in))
		copy(*out, *in)
	}
	if in.ClusteredBy != nil {
		in, out := &in.ClusteredBy, &out.ClusteredBy
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.SortedBy != nil {
		in, out := &in.SortedBy, &out.SortedBy
		*out = make([]SortColumn, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TableProperties != nil {
		in, out := &in.TableProperties, &out.TableProperties
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Partitions != nil {
		in, out := &in.Partitions, &out.Partitions
		*out = make([]HiveTablePartition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *MeteringConfigList) 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 *MeteringConfigSpec) DeepCopyInto(out *MeteringConfigSpec) {
	*out = *in
	if in.DisableOCPFeatures != nil {
		in, out := &in.DisableOCPFeatures, &out.DisableOCPFeatures
		*out = new(bool)
		**out = **in
	}
	if in.LogHelmTemplate != nil {
		in, out := &in.LogHelmTemplate, &out.LogHelmTemplate
		*out = new(bool)
		**out = **in
	}
	if in.Storage != nil {
		in, out := &in.Storage, &out.Storage
		*out = new(StorageConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.UnsupportedFeatures != nil {
		in, out := &in.UnsupportedFeatures, &out.UnsupportedFeatures
		*out = new(UnsupportedFeaturesConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(MeteringConfigTLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Monitoring != nil {
		in, out := &in.Monitoring, &out.Monitoring
		*out = new(MonitoringConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Permissions != nil {
		in, out := &in.Permissions, &out.Permissions
		*out = new(MeteringPermissionConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.OpenshiftReporting != nil {
		in, out := &in.OpenshiftReporting, &out.OpenshiftReporting
		*out = new(OpenshiftReportingConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Ghostunnel != nil {
		in, out := &in.Ghostunnel, &out.Ghostunnel
		*out = new(Ghostunnel)
		(*in).DeepCopyInto(*out)
	}
	if in.Hive != nil {
		in, out := &in.Hive, &out.Hive
		*out = new(Hive)
		(*in).DeepCopyInto(*out)
	}
	if in.Hadoop != nil {
		in, out := &in.Hadoop, &out.Hadoop
		*out = new(Hadoop)
		(*in).DeepCopyInto(*out)
	}
	if in.Presto != nil {
		in, out := &in.Presto, &out.Presto
		*out = new(Presto)
		(*in).DeepCopyInto(*out)
	}
	if in.ReportingOperator != nil {
		in, out := &in.ReportingOperator, &out.ReportingOperator
		*out = new(ReportingOperator)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MeteringConfigStatus) DeepCopyInto(out *MeteringConfigStatus) {
	*out = *in
	if in.DisableOCPFeatures != nil {
		in, out := &in.DisableOCPFeatures, &out.DisableOCPFeatures
		*out = new(bool)
		**out = **in
	}
	if in.LogHelmTemplate != nil {
		in, out := &in.LogHelmTemplate, &out.LogHelmTemplate
		*out = new(bool)
		**out = **in
	}
	if in.Storage != nil {
		in, out := &in.Storage, &out.Storage
		*out = new(StorageConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.UnsupportedFeatures != nil {
		in, out := &in.UnsupportedFeatures, &out.UnsupportedFeatures
		*out = new(UnsupportedFeaturesConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(MeteringConfigTLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Monitoring != nil {
		in, out := &in.Monitoring, &out.Monitoring
		*out = new(MonitoringConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Permissions != nil {
		in, out := &in.Permissions, &out.Permissions
		*out = new(MeteringPermissionConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.OpenshiftReporting != nil {
		in, out := &in.OpenshiftReporting, &out.OpenshiftReporting
		*out = new(OpenshiftReportingConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Ghostunnel != nil {
		in, out := &in.Ghostunnel, &out.Ghostunnel
		*out = new(Ghostunnel)
		(*in).DeepCopyInto(*out)
	}
	if in.Hive != nil {
		in, out := &in.Hive, &out.Hive
		*out = new(Hive)
		(*in).DeepCopyInto(*out)
	}
	if in.Hadoop != nil {
		in, out := &in.Hadoop, &out.Hadoop
		*out = new(Hadoop)
		(*in).DeepCopyInto(*out)
	}
	if in.Presto != nil {
		in, out := &in.Presto, &out.Presto
		*out = new(Presto)
		(*in).DeepCopyInto(*out)
	}
	if in.ReportingOperator != nil {
		in, out := &in.ReportingOperator, &out.ReportingOperator
		*out = new(ReportingOperator)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MeteringPermissionConfig) DeepCopyInto(out *MeteringPermissionConfig) {
	*out = *in
	if in.MeteringAdmins != nil {
		in, out := &in.MeteringAdmins, &out.MeteringAdmins
		*out = make([]MeteringPermissionConfigSpec, len(*in))
		copy(*out, *in)
	}
	if in.MeteringViewers != nil {
		in, out := &in.MeteringViewers, &out.MeteringViewers
		*out = make([]MeteringPermissionConfigSpec, len(*in))
		copy(*out, *in)
	}
	if in.ReportExporters != nil {
		in, out := &in.ReportExporters, &out.ReportExporters
		*out = make([]MeteringPermissionConfigSpec, len(*in))
		copy(*out, *in)
	}
	if in.ReportAdmins != nil {
		in, out := &in.ReportAdmins, &out.ReportAdmins
		*out = make([]MeteringPermissionConfigSpec, len(*in))
		copy(*out, *in)
	}
	if in.ReportViewers != nil {
		in, out := &in.ReportViewers, &out.ReportViewers
		*out = make([]MeteringPermissionConfigSpec, len(*in))
		copy(*out, *in)
	}
	return
}

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OpenshiftReportingConfigSpec) DeepCopyInto(out *OpenshiftReportingConfigSpec) {
	*out = *in
	if in.OpenshiftReportingDefaultStorageLocation != nil {
		in, out := &in.OpenshiftReportingDefaultStorageLocation, &out.OpenshiftReportingDefaultStorageLocation
		*out = new(OpenshiftReportingDefaultStorageLocationConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.OpenshiftReportingAWSBillingReportDataSource != nil {
		in, out := &in.OpenshiftReportingAWSBillingReportDataSource, &out.OpenshiftReportingAWSBillingReportDataSource
		*out = new(OpenshiftReportingAWSBillingReportDataSourceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.OpenshiftReportingDefaultReportDataSources != nil {
		in, out := &in.OpenshiftReportingDefaultReportDataSources, &out.OpenshiftReportingDefaultReportDataSources
		*out = new(OpenshiftReportingDefaultReportDataSourcesConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PrestoConfig) DeepCopyInto(out *PrestoConfig) {
	*out = *in
	if in.NodeSchedulerIncludeCoordinator != nil {
		in, out := &in.NodeSchedulerIncludeCoordinator, &out.NodeSchedulerIncludeCoordinator
		*out = new(bool)
		**out = **in
	}
	if in.AWS != nil {
		in, out := &in.AWS, &out.AWS
		*out = new(AWSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Azure != nil {
		in, out := &in.Azure, &out.Azure
		*out = new(AzureConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Gcs != nil {
		in, out := &in.Gcs, &out.Gcs
		*out = new(GCSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.S3Compatible != nil {
		in, out := &in.S3Compatible, &out.S3Compatible
		*out = new(S3CompatibleConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(TLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Auth != nil {
		in, out := &in.Auth, &out.Auth
		*out = new(TLSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Connectors != nil {
		in, out := &in.Connectors, &out.Connectors
		*out = new(PrestoConnectorConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PrestoConnectorConfig) DeepCopyInto(out *PrestoConnectorConfig) {
	*out = *in
	if in.Hive != nil {
		in, out := &in.Hive, &out.Hive
		*out = new(PrestoConnectorHiveConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Prometheus != nil {
		in, out := &in.Prometheus, &out.Prometheus
		*out = new(PrestoConnectorPrometheusConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.ConnectorFileList != nil {
		in, out := &in.ConnectorFileList, &out.ConnectorFileList
		*out = new(PrestoConnectorFileList)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PrestoSpec) DeepCopyInto(out *PrestoSpec) {
	*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.SecurityContext != nil {
		in, out := &in.SecurityContext, &out.SecurityContext
		*out = new(corev1.SecurityContext)
		(*in).DeepCopyInto(*out)
	}
	if in.Image != nil {
		in, out := &in.Image, &out.Image
		*out = new(ImageConfig)
		**out = **in
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(PrestoConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Coordinator != nil {
		in, out := &in.Coordinator, &out.Coordinator
		*out = new(PrestoCoordinatorSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Worker != nil {
		in, out := &in.Worker, &out.Worker
		*out = new(PrestoWorkerSpec)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PrometheusMetricsImporterDataSource) DeepCopyInto(out *PrometheusMetricsImporterDataSource) {
	*out = *in
	if in.QueryConfig != nil {
		in, out := &in.QueryConfig, &out.QueryConfig
		*out = new(PrometheusQueryConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Storage != nil {
		in, out := &in.Storage, &out.Storage
		*out = new(StorageLocationRef)
		**out = **in
	}
	if in.PrometheusConfig != nil {
		in, out := &in.PrometheusConfig, &out.PrometheusConfig
		*out = new(PrometheusConnectionConfig)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ReportDataSourceList) 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 *ReportDataSourceSpec) DeepCopyInto(out *ReportDataSourceSpec) {
	*out = *in
	if in.PrometheusMetricsImporter != nil {
		in, out := &in.PrometheusMetricsImporter, &out.PrometheusMetricsImporter
		*out = new(PrometheusMetricsImporterDataSource)
		(*in).DeepCopyInto(*out)
	}
	if in.AWSBilling != nil {
		in, out := &in.AWSBilling, &out.AWSBilling
		*out = new(AWSBillingDataSource)
		(*in).DeepCopyInto(*out)
	}
	if in.PrestoTable != nil {
		in, out := &in.PrestoTable, &out.PrestoTable
		*out = new(PrestoTableDataSource)
		**out = **in
	}
	if in.ReportQueryView != nil {
		in, out := &in.ReportQueryView, &out.ReportQueryView
		*out = new(ReportQueryViewDataSource)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ReportList) 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 *ReportQuery) DeepCopyInto(out *ReportQuery) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportSchedule) DeepCopyInto(out *ReportSchedule) {
	*out = *in
	if in.Cron != nil {
		in, out := &in.Cron, &out.Cron
		*out = new(ReportScheduleCron)
		**out = **in
	}
	if in.Hourly != nil {
		in, out := &in.Hourly, &out.Hourly
		*out = new(ReportScheduleHourly)
		**out = **in
	}
	if in.Daily != nil {
		in, out := &in.Daily, &out.Daily
		*out = new(ReportScheduleDaily)
		**out = **in
	}
	if in.Weekly != nil {
		in, out := &in.Weekly, &out.Weekly
		*out = new(ReportScheduleWeekly)
		(*in).DeepCopyInto(*out)
	}
	if in.Monthly != nil {
		in, out := &in.Monthly, &out.Monthly
		*out = new(ReportScheduleMonthly)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportSpec) DeepCopyInto(out *ReportSpec) {
	*out = *in
	if in.Schedule != nil {
		in, out := &in.Schedule, &out.Schedule
		*out = new(ReportSchedule)
		(*in).DeepCopyInto(*out)
	}
	if in.ReportingStart != nil {
		in, out := &in.ReportingStart, &out.ReportingStart
		*out = (*in).DeepCopy()
	}
	if in.ReportingEnd != nil {
		in, out := &in.ReportingEnd, &out.ReportingEnd
		*out = (*in).DeepCopy()
	}
	if in.Inputs != nil {
		in, out := &in.Inputs, &out.Inputs
		*out = make(ReportQueryInputValues, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Output != nil {
		in, out := &in.Output, &out.Output
		*out = new(StorageLocationRef)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportingOperatorAuthProxyConfig) DeepCopyInto(out *ReportingOperatorAuthProxyConfig) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.Image != nil {
		in, out := &in.Image, &out.Image
		*out = new(ImageConfig)
		**out = **in
	}
	if in.AuthenticatedEmails != nil {
		in, out := &in.AuthenticatedEmails, &out.AuthenticatedEmails
		*out = new(ReportingOperatorAuthenticatedEmailConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Cookie != nil {
		in, out := &in.Cookie, &out.Cookie
		*out = new(ReportingOperatorCookieConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.DelegateURLs != nil {
		in, out := &in.DelegateURLs, &out.DelegateURLs
		*out = new(ReportingOperatorDelegateURLConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.SubjectAccessReview != nil {
		in, out := &in.SubjectAccessReview, &out.SubjectAccessReview
		*out = new(ReportingOperatorSubjectAccessReviewConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Htpasswd != nil {
		in, out := &in.Htpasswd, &out.Htpasswd
		*out = new(ReportingOperatorHtpasswdConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Rbac != nil {
		in, out := &in.Rbac, &out.Rbac
		*out = new(ReportingOperatorRBACConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportingOperatorConfig) DeepCopyInto(out *ReportingOperatorConfig) {
	*out = *in
	if in.AllNamespaces != nil {
		in, out := &in.AllNamespaces, &out.AllNamespaces
		*out = new(bool)
		**out = **in
	}
	if in.EnableFinalizers != nil {
		in, out := &in.EnableFinalizers, &out.EnableFinalizers
		*out = new(bool)
		**out = **in
	}
	if in.LogDDLQueries != nil {
		in, out := &in.LogDDLQueries, &out.LogDDLQueries
		*out = new(bool)
		**out = **in
	}
	if in.LogDMLQueries != nil {
		in, out := &in.LogDMLQueries, &out.LogDMLQueries
		*out = new(bool)
		**out = **in
	}
	if in.LogReports != nil {
		in, out := &in.LogReports, &out.LogReports
		*out = new(bool)
		**out = **in
	}
	if in.LeaderLeaseDuration != nil {
		in, out := &in.LeaderLeaseDuration, &out.LeaderLeaseDuration
		*out = new(metav1.Duration)
		**out = **in
	}
	if in.AWS != nil {
		in, out := &in.AWS, &out.AWS
		*out = new(AWSConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Prometheus != nil {
		in, out := &in.Prometheus, &out.Prometheus
		*out = new(ReportingOperatorPrometheusConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Hive != nil {
		in, out := &in.Hive, &out.Hive
		*out = new(ReportingOperatorHiveConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Presto != nil {
		in, out := &in.Presto, &out.Presto
		*out = new(ReportingOperatorPrestoConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(ReportingOperatorTLSConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportingOperatorPrometheusMetricsImporterConfig) DeepCopyInto(out *ReportingOperatorPrometheusMetricsImporterConfig) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(ReportingOperatorPrometheusMetricsImporterConfigSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Auth != nil {
		in, out := &in.Auth, &out.Auth
		*out = new(ReportingOperatorPrometheusAuthConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportingOperatorPrometheusMetricsImporterConfigSpec) DeepCopyInto(out *ReportingOperatorPrometheusMetricsImporterConfigSpec) {
	*out = *in
	if in.ChunkSize != nil {
		in, out := &in.ChunkSize, &out.ChunkSize
		*out = new(metav1.Duration)
		**out = **in
	}
	if in.PollInterval != nil {
		in, out := &in.PollInterval, &out.PollInterval
		*out = new(metav1.Duration)
		**out = **in
	}
	if in.StepSize != nil {
		in, out := &in.StepSize, &out.StepSize
		*out = new(metav1.Duration)
		**out = **in
	}
	if in.ImportFrom != nil {
		in, out := &in.ImportFrom, &out.ImportFrom
		*out = (*in).DeepCopy()
	}
	if in.MaxImportBackfillDuration != nil {
		in, out := &in.MaxImportBackfillDuration, &out.MaxImportBackfillDuration
		*out = new(metav1.Duration)
		**out = **in
	}
	if in.MaxQueryRangeDuration != nil {
		in, out := &in.MaxQueryRangeDuration, &out.MaxQueryRangeDuration
		*out = new(metav1.Duration)
		**out = **in
	}
	return
}

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

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

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReportingOperatorSpec) DeepCopyInto(out *ReportingOperatorSpec) {
	*out = *in
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.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.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(corev1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Resources != nil {
		in, out := &in.Resources, &out.Resources
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.UpdateStrategy != nil {
		in, out := &in.UpdateStrategy, &out.UpdateStrategy
		*out = new(appsv1.DeploymentStrategy)
		(*in).DeepCopyInto(*out)
	}
	if in.Image != nil {
		in, out := &in.Image, &out.Image
		*out = new(ImageConfig)
		**out = **in
	}
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(ReportingOperatorConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.APIService != nil {
		in, out := &in.APIService, &out.APIService
		*out = new(ReportingOperatorAPIServiceConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Route != nil {
		in, out := &in.Route, &out.Route
		*out = new(ReportingOperatorRouteConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.AuthProxy != nil {
		in, out := &in.AuthProxy, &out.AuthProxy
		*out = new(ReportingOperatorAuthProxyConfig)
		(*in).DeepCopyInto(*out)
	}
	return
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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