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

/*
Copyright AppsCode Inc. and Contributors

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

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

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

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

package v1alpha2

import (
	unsafe "unsafe"

	v1 "kubedb.dev/apimachinery/apis/kubedb/v1"

	corev1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	conversion "k8s.io/apimachinery/pkg/conversion"
	runtime "k8s.io/apimachinery/pkg/runtime"
	intstr "k8s.io/apimachinery/pkg/util/intstr"
	clientgoapiv1 "kmodules.xyz/client-go/api/v1"
	monitoringagentapiapiv1 "kmodules.xyz/monitoring-agent-api/api/v1"
	apiv1 "kmodules.xyz/offshoot-api/api/v1"
	v2 "kmodules.xyz/offshoot-api/api/v2"
)

func init() {
	localSchemeBuilder.Register(RegisterConversions)
}

// RegisterConversions adds conversion functions to the given scheme.
// Public to allow building arbitrary schemes.
func RegisterConversions(s *runtime.Scheme) error {
	if err := s.AddGeneratedConversionFunc((*Age)(nil), (*v1.Age)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Age_To_v1_Age(a.(*Age), b.(*v1.Age), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Age)(nil), (*Age)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Age_To_v1alpha2_Age(a.(*v1.Age), b.(*Age), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*AllowedConsumers)(nil), (*v1.AllowedConsumers)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers(a.(*AllowedConsumers), b.(*v1.AllowedConsumers), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.AllowedConsumers)(nil), (*AllowedConsumers)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers(a.(*v1.AllowedConsumers), b.(*AllowedConsumers), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Announce)(nil), (*v1.Announce)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Announce_To_v1_Announce(a.(*Announce), b.(*v1.Announce), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Announce)(nil), (*Announce)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Announce_To_v1alpha2_Announce(a.(*v1.Announce), b.(*Announce), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ArbiterSpec)(nil), (*v1.ArbiterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec(a.(*ArbiterSpec), b.(*v1.ArbiterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ArbiterSpec)(nil), (*ArbiterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec(a.(*v1.ArbiterSpec), b.(*ArbiterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Archiver)(nil), (*v1.Archiver)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Archiver_To_v1_Archiver(a.(*Archiver), b.(*v1.Archiver), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Archiver)(nil), (*Archiver)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Archiver_To_v1alpha2_Archiver(a.(*v1.Archiver), b.(*Archiver), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ArchiverRecovery)(nil), (*v1.ArchiverRecovery)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery(a.(*ArchiverRecovery), b.(*v1.ArchiverRecovery), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ArchiverRecovery)(nil), (*ArchiverRecovery)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery(a.(*v1.ArchiverRecovery), b.(*ArchiverRecovery), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*AutoOpsSpec)(nil), (*v1.AutoOpsSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(a.(*AutoOpsSpec), b.(*v1.AutoOpsSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.AutoOpsSpec)(nil), (*AutoOpsSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(a.(*v1.AutoOpsSpec), b.(*AutoOpsSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*BrokerRack)(nil), (*v1.BrokerRack)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_BrokerRack_To_v1_BrokerRack(a.(*BrokerRack), b.(*v1.BrokerRack), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.BrokerRack)(nil), (*BrokerRack)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_BrokerRack_To_v1alpha2_BrokerRack(a.(*v1.BrokerRack), b.(*BrokerRack), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ConfigurationSpec)(nil), (*v1.ConfigurationSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ConfigurationSpec_To_v1_ConfigurationSpec(a.(*ConfigurationSpec), b.(*v1.ConfigurationSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ConfigurationSpec)(nil), (*ConfigurationSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ConfigurationSpec_To_v1alpha2_ConfigurationSpec(a.(*v1.ConfigurationSpec), b.(*ConfigurationSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ConnectionPoolConfig)(nil), (*v1.ConnectionPoolConfig)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig(a.(*ConnectionPoolConfig), b.(*v1.ConnectionPoolConfig), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ConnectionPoolConfig)(nil), (*ConnectionPoolConfig)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig(a.(*v1.ConnectionPoolConfig), b.(*ConnectionPoolConfig), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ConsumerNamespaces)(nil), (*v1.ConsumerNamespaces)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces(a.(*ConsumerNamespaces), b.(*v1.ConsumerNamespaces), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ConsumerNamespaces)(nil), (*ConsumerNamespaces)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces(a.(*v1.ConsumerNamespaces), b.(*ConsumerNamespaces), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Database)(nil), (*v1.Database)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Database_To_v1_Database(a.(*Database), b.(*v1.Database), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Database)(nil), (*Database)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Database_To_v1alpha2_Database(a.(*v1.Database), b.(*Database), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Elasticsearch)(nil), (*v1.Elasticsearch)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch(a.(*Elasticsearch), b.(*v1.Elasticsearch), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Elasticsearch)(nil), (*Elasticsearch)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch(a.(*v1.Elasticsearch), b.(*Elasticsearch), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ElasticsearchClusterTopology)(nil), (*v1.ElasticsearchClusterTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology(a.(*ElasticsearchClusterTopology), b.(*v1.ElasticsearchClusterTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ElasticsearchClusterTopology)(nil), (*ElasticsearchClusterTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology(a.(*v1.ElasticsearchClusterTopology), b.(*ElasticsearchClusterTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ElasticsearchList)(nil), (*v1.ElasticsearchList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList(a.(*ElasticsearchList), b.(*v1.ElasticsearchList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ElasticsearchList)(nil), (*ElasticsearchList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList(a.(*v1.ElasticsearchList), b.(*ElasticsearchList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ElasticsearchRoleMapSpec)(nil), (*v1.ElasticsearchRoleMapSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec(a.(*ElasticsearchRoleMapSpec), b.(*v1.ElasticsearchRoleMapSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ElasticsearchRoleMapSpec)(nil), (*ElasticsearchRoleMapSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec(a.(*v1.ElasticsearchRoleMapSpec), b.(*ElasticsearchRoleMapSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ElasticsearchStatus)(nil), (*v1.ElasticsearchStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus(a.(*ElasticsearchStatus), b.(*v1.ElasticsearchStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ElasticsearchStatus)(nil), (*ElasticsearchStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus(a.(*v1.ElasticsearchStatus), b.(*ElasticsearchStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ElasticsearchUserSpec)(nil), (*v1.ElasticsearchUserSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec(a.(*ElasticsearchUserSpec), b.(*v1.ElasticsearchUserSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ElasticsearchUserSpec)(nil), (*ElasticsearchUserSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec(a.(*v1.ElasticsearchUserSpec), b.(*ElasticsearchUserSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*GitRepo)(nil), (*v1.GitRepo)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_GitRepo_To_v1_GitRepo(a.(*GitRepo), b.(*v1.GitRepo), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.GitRepo)(nil), (*GitRepo)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_GitRepo_To_v1alpha2_GitRepo(a.(*v1.GitRepo), b.(*GitRepo), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*InitSpec)(nil), (*v1.InitSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_InitSpec_To_v1_InitSpec(a.(*InitSpec), b.(*v1.InitSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.InitSpec)(nil), (*InitSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_InitSpec_To_v1alpha2_InitSpec(a.(*v1.InitSpec), b.(*InitSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Kafka)(nil), (*v1.Kafka)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Kafka_To_v1_Kafka(a.(*Kafka), b.(*v1.Kafka), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Kafka)(nil), (*Kafka)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Kafka_To_v1alpha2_Kafka(a.(*v1.Kafka), b.(*Kafka), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KafkaApp)(nil), (*v1.KafkaApp)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaApp_To_v1_KafkaApp(a.(*KafkaApp), b.(*v1.KafkaApp), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.KafkaApp)(nil), (*KafkaApp)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaApp_To_v1alpha2_KafkaApp(a.(*v1.KafkaApp), b.(*KafkaApp), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KafkaBrokerCapacity)(nil), (*v1.KafkaBrokerCapacity)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity(a.(*KafkaBrokerCapacity), b.(*v1.KafkaBrokerCapacity), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.KafkaBrokerCapacity)(nil), (*KafkaBrokerCapacity)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity(a.(*v1.KafkaBrokerCapacity), b.(*KafkaBrokerCapacity), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KafkaClusterTopology)(nil), (*v1.KafkaClusterTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology(a.(*KafkaClusterTopology), b.(*v1.KafkaClusterTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.KafkaClusterTopology)(nil), (*KafkaClusterTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology(a.(*v1.KafkaClusterTopology), b.(*KafkaClusterTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KafkaList)(nil), (*v1.KafkaList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaList_To_v1_KafkaList(a.(*KafkaList), b.(*v1.KafkaList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.KafkaList)(nil), (*KafkaList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaList_To_v1alpha2_KafkaList(a.(*v1.KafkaList), b.(*KafkaList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KafkaSpec)(nil), (*v1.KafkaSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec(a.(*KafkaSpec), b.(*v1.KafkaSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KafkaStatus)(nil), (*v1.KafkaStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus(a.(*KafkaStatus), b.(*v1.KafkaStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.KafkaStatus)(nil), (*KafkaStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus(a.(*v1.KafkaStatus), b.(*KafkaStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*KernelSettings)(nil), (*v1.KernelSettings)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KernelSettings_To_v1_KernelSettings(a.(*KernelSettings), b.(*v1.KernelSettings), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.KernelSettings)(nil), (*KernelSettings)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KernelSettings_To_v1alpha2_KernelSettings(a.(*v1.KernelSettings), b.(*KernelSettings), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ManifestOptions)(nil), (*v1.ManifestOptions)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ManifestOptions_To_v1_ManifestOptions(a.(*ManifestOptions), b.(*v1.ManifestOptions), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ManifestOptions)(nil), (*ManifestOptions)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ManifestOptions_To_v1alpha2_ManifestOptions(a.(*v1.ManifestOptions), b.(*ManifestOptions), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MariaDB)(nil), (*v1.MariaDB)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MariaDB_To_v1_MariaDB(a.(*MariaDB), b.(*v1.MariaDB), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MariaDB)(nil), (*MariaDB)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MariaDB_To_v1alpha2_MariaDB(a.(*v1.MariaDB), b.(*MariaDB), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MariaDBList)(nil), (*v1.MariaDBList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MariaDBList_To_v1_MariaDBList(a.(*MariaDBList), b.(*v1.MariaDBList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MariaDBList)(nil), (*MariaDBList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MariaDBList_To_v1alpha2_MariaDBList(a.(*v1.MariaDBList), b.(*MariaDBList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MariaDBStatus)(nil), (*v1.MariaDBStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus(a.(*MariaDBStatus), b.(*v1.MariaDBStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MariaDBStatus)(nil), (*MariaDBStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus(a.(*v1.MariaDBStatus), b.(*MariaDBStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Memcached)(nil), (*v1.Memcached)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Memcached_To_v1_Memcached(a.(*Memcached), b.(*v1.Memcached), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Memcached)(nil), (*Memcached)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Memcached_To_v1alpha2_Memcached(a.(*v1.Memcached), b.(*Memcached), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MemcachedList)(nil), (*v1.MemcachedList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MemcachedList_To_v1_MemcachedList(a.(*MemcachedList), b.(*v1.MemcachedList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MemcachedList)(nil), (*MemcachedList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MemcachedList_To_v1alpha2_MemcachedList(a.(*v1.MemcachedList), b.(*MemcachedList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MemcachedStatus)(nil), (*v1.MemcachedStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus(a.(*MemcachedStatus), b.(*v1.MemcachedStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MemcachedStatus)(nil), (*MemcachedStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus(a.(*v1.MemcachedStatus), b.(*MemcachedStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDB)(nil), (*v1.MongoDB)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDB_To_v1_MongoDB(a.(*MongoDB), b.(*v1.MongoDB), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDB)(nil), (*MongoDB)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDB_To_v1alpha2_MongoDB(a.(*v1.MongoDB), b.(*MongoDB), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBConfigNode)(nil), (*v1.MongoDBConfigNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode(a.(*MongoDBConfigNode), b.(*v1.MongoDBConfigNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDBConfigNode)(nil), (*MongoDBConfigNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode(a.(*v1.MongoDBConfigNode), b.(*MongoDBConfigNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBList)(nil), (*v1.MongoDBList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBList_To_v1_MongoDBList(a.(*MongoDBList), b.(*v1.MongoDBList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDBList)(nil), (*MongoDBList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBList_To_v1alpha2_MongoDBList(a.(*v1.MongoDBList), b.(*MongoDBList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBMongosNode)(nil), (*v1.MongoDBMongosNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode(a.(*MongoDBMongosNode), b.(*v1.MongoDBMongosNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDBMongosNode)(nil), (*MongoDBMongosNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode(a.(*v1.MongoDBMongosNode), b.(*MongoDBMongosNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBReplicaSet)(nil), (*v1.MongoDBReplicaSet)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet(a.(*MongoDBReplicaSet), b.(*v1.MongoDBReplicaSet), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBShardNode)(nil), (*v1.MongoDBShardNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode(a.(*MongoDBShardNode), b.(*v1.MongoDBShardNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDBShardNode)(nil), (*MongoDBShardNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode(a.(*v1.MongoDBShardNode), b.(*MongoDBShardNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBShardingTopology)(nil), (*v1.MongoDBShardingTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology(a.(*MongoDBShardingTopology), b.(*v1.MongoDBShardingTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDBShardingTopology)(nil), (*MongoDBShardingTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology(a.(*v1.MongoDBShardingTopology), b.(*MongoDBShardingTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MongoDBStatus)(nil), (*v1.MongoDBStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus(a.(*MongoDBStatus), b.(*v1.MongoDBStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MongoDBStatus)(nil), (*MongoDBStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus(a.(*v1.MongoDBStatus), b.(*MongoDBStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQL)(nil), (*v1.MySQL)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQL_To_v1_MySQL(a.(*MySQL), b.(*v1.MySQL), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQL)(nil), (*MySQL)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQL_To_v1alpha2_MySQL(a.(*v1.MySQL), b.(*MySQL), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQLGroupSpec)(nil), (*v1.MySQLGroupSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec(a.(*MySQLGroupSpec), b.(*v1.MySQLGroupSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLGroupSpec)(nil), (*MySQLGroupSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec(a.(*v1.MySQLGroupSpec), b.(*MySQLGroupSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQLInnoDBClusterSpec)(nil), (*v1.MySQLInnoDBClusterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec(a.(*MySQLInnoDBClusterSpec), b.(*v1.MySQLInnoDBClusterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLInnoDBClusterSpec)(nil), (*MySQLInnoDBClusterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec(a.(*v1.MySQLInnoDBClusterSpec), b.(*MySQLInnoDBClusterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQLList)(nil), (*v1.MySQLList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLList_To_v1_MySQLList(a.(*MySQLList), b.(*v1.MySQLList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLList)(nil), (*MySQLList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLList_To_v1alpha2_MySQLList(a.(*v1.MySQLList), b.(*MySQLList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLRouterSpec)(nil), (*MySQLRouterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec(a.(*v1.MySQLRouterSpec), b.(*MySQLRouterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQLStatus)(nil), (*v1.MySQLStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus(a.(*MySQLStatus), b.(*v1.MySQLStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLStatus)(nil), (*MySQLStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus(a.(*v1.MySQLStatus), b.(*MySQLStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQLTopology)(nil), (*v1.MySQLTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology(a.(*MySQLTopology), b.(*v1.MySQLTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLTopology)(nil), (*MySQLTopology)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology(a.(*v1.MySQLTopology), b.(*MySQLTopology), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*MySQLUser)(nil), (*v1.MySQLUser)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLUser_To_v1_MySQLUser(a.(*MySQLUser), b.(*v1.MySQLUser), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.MySQLUser)(nil), (*MySQLUser)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLUser_To_v1alpha2_MySQLUser(a.(*v1.MySQLUser), b.(*MySQLUser), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*NamedServiceTemplateSpec)(nil), (*v1.NamedServiceTemplateSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec(a.(*NamedServiceTemplateSpec), b.(*v1.NamedServiceTemplateSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.NamedServiceTemplateSpec)(nil), (*NamedServiceTemplateSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec(a.(*v1.NamedServiceTemplateSpec), b.(*NamedServiceTemplateSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PerconaXtraDB)(nil), (*v1.PerconaXtraDB)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB(a.(*PerconaXtraDB), b.(*v1.PerconaXtraDB), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PerconaXtraDB)(nil), (*PerconaXtraDB)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB(a.(*v1.PerconaXtraDB), b.(*PerconaXtraDB), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PerconaXtraDBList)(nil), (*v1.PerconaXtraDBList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList(a.(*PerconaXtraDBList), b.(*v1.PerconaXtraDBList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PerconaXtraDBList)(nil), (*PerconaXtraDBList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList(a.(*v1.PerconaXtraDBList), b.(*PerconaXtraDBList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PerconaXtraDBStatus)(nil), (*v1.PerconaXtraDBStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus(a.(*PerconaXtraDBStatus), b.(*v1.PerconaXtraDBStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PerconaXtraDBStatus)(nil), (*PerconaXtraDBStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus(a.(*v1.PerconaXtraDBStatus), b.(*PerconaXtraDBStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PgBouncer)(nil), (*v1.PgBouncer)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PgBouncer_To_v1_PgBouncer(a.(*PgBouncer), b.(*v1.PgBouncer), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PgBouncer)(nil), (*PgBouncer)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PgBouncer_To_v1alpha2_PgBouncer(a.(*v1.PgBouncer), b.(*PgBouncer), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PgBouncerList)(nil), (*v1.PgBouncerList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PgBouncerList_To_v1_PgBouncerList(a.(*PgBouncerList), b.(*v1.PgBouncerList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PgBouncerList)(nil), (*PgBouncerList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PgBouncerList_To_v1alpha2_PgBouncerList(a.(*v1.PgBouncerList), b.(*PgBouncerList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PgBouncerStatus)(nil), (*v1.PgBouncerStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus(a.(*PgBouncerStatus), b.(*v1.PgBouncerStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PgBouncerStatus)(nil), (*PgBouncerStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus(a.(*v1.PgBouncerStatus), b.(*PgBouncerStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PostgreLeaderElectionConfig)(nil), (*v1.PostgreLeaderElectionConfig)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig(a.(*PostgreLeaderElectionConfig), b.(*v1.PostgreLeaderElectionConfig), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PostgreLeaderElectionConfig)(nil), (*PostgreLeaderElectionConfig)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig(a.(*v1.PostgreLeaderElectionConfig), b.(*PostgreLeaderElectionConfig), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Postgres)(nil), (*v1.Postgres)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Postgres_To_v1_Postgres(a.(*Postgres), b.(*v1.Postgres), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Postgres)(nil), (*Postgres)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Postgres_To_v1alpha2_Postgres(a.(*v1.Postgres), b.(*Postgres), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PostgresList)(nil), (*v1.PostgresList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PostgresList_To_v1_PostgresList(a.(*PostgresList), b.(*v1.PostgresList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PostgresList)(nil), (*PostgresList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PostgresList_To_v1alpha2_PostgresList(a.(*v1.PostgresList), b.(*PostgresList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PostgresReplication)(nil), (*v1.PostgresReplication)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PostgresReplication_To_v1_PostgresReplication(a.(*PostgresReplication), b.(*v1.PostgresReplication), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PostgresReplication)(nil), (*PostgresReplication)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PostgresReplication_To_v1alpha2_PostgresReplication(a.(*v1.PostgresReplication), b.(*PostgresReplication), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*PostgresStatus)(nil), (*v1.PostgresStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus(a.(*PostgresStatus), b.(*v1.PostgresStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.PostgresStatus)(nil), (*PostgresStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus(a.(*v1.PostgresStatus), b.(*PostgresStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ProxySQL)(nil), (*v1.ProxySQL)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ProxySQL_To_v1_ProxySQL(a.(*ProxySQL), b.(*v1.ProxySQL), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ProxySQL)(nil), (*ProxySQL)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ProxySQL_To_v1alpha2_ProxySQL(a.(*v1.ProxySQL), b.(*ProxySQL), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ProxySQLConfiguration)(nil), (*v1.ProxySQLConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration(a.(*ProxySQLConfiguration), b.(*v1.ProxySQLConfiguration), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ProxySQLConfiguration)(nil), (*ProxySQLConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration(a.(*v1.ProxySQLConfiguration), b.(*ProxySQLConfiguration), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ProxySQLList)(nil), (*v1.ProxySQLList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ProxySQLList_To_v1_ProxySQLList(a.(*ProxySQLList), b.(*v1.ProxySQLList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ProxySQLList)(nil), (*ProxySQLList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ProxySQLList_To_v1alpha2_ProxySQLList(a.(*v1.ProxySQLList), b.(*ProxySQLList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ProxySQLStatus)(nil), (*v1.ProxySQLStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus(a.(*ProxySQLStatus), b.(*v1.ProxySQLStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ProxySQLStatus)(nil), (*ProxySQLStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus(a.(*v1.ProxySQLStatus), b.(*ProxySQLStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RecoveryTarget)(nil), (*v1.RecoveryTarget)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget(a.(*RecoveryTarget), b.(*v1.RecoveryTarget), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RecoveryTarget)(nil), (*RecoveryTarget)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget(a.(*v1.RecoveryTarget), b.(*RecoveryTarget), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Redis)(nil), (*v1.Redis)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Redis_To_v1_Redis(a.(*Redis), b.(*v1.Redis), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Redis)(nil), (*Redis)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Redis_To_v1alpha2_Redis(a.(*v1.Redis), b.(*Redis), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RedisList)(nil), (*v1.RedisList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisList_To_v1_RedisList(a.(*RedisList), b.(*v1.RedisList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RedisList)(nil), (*RedisList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisList_To_v1alpha2_RedisList(a.(*v1.RedisList), b.(*RedisList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RedisSentinel)(nil), (*v1.RedisSentinel)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel(a.(*RedisSentinel), b.(*v1.RedisSentinel), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RedisSentinel)(nil), (*RedisSentinel)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel(a.(*v1.RedisSentinel), b.(*RedisSentinel), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RedisSentinelList)(nil), (*v1.RedisSentinelList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList(a.(*RedisSentinelList), b.(*v1.RedisSentinelList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RedisSentinelList)(nil), (*RedisSentinelList)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList(a.(*v1.RedisSentinelList), b.(*RedisSentinelList), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RedisSentinelRef)(nil), (*v1.RedisSentinelRef)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef(a.(*RedisSentinelRef), b.(*v1.RedisSentinelRef), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RedisSentinelRef)(nil), (*RedisSentinelRef)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef(a.(*v1.RedisSentinelRef), b.(*RedisSentinelRef), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RedisSentinelStatus)(nil), (*v1.RedisSentinelStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus(a.(*RedisSentinelStatus), b.(*v1.RedisSentinelStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RedisSentinelStatus)(nil), (*RedisSentinelStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus(a.(*v1.RedisSentinelStatus), b.(*RedisSentinelStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RedisStatus)(nil), (*v1.RedisStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisStatus_To_v1_RedisStatus(a.(*RedisStatus), b.(*v1.RedisStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RedisStatus)(nil), (*RedisStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisStatus_To_v1alpha2_RedisStatus(a.(*v1.RedisStatus), b.(*RedisStatus), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*RemoteReplicaSpec)(nil), (*v1.RemoteReplicaSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec(a.(*RemoteReplicaSpec), b.(*v1.RemoteReplicaSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.RemoteReplicaSpec)(nil), (*RemoteReplicaSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec(a.(*v1.RemoteReplicaSpec), b.(*RemoteReplicaSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*ScriptSourceSpec)(nil), (*v1.ScriptSourceSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec(a.(*ScriptSourceSpec), b.(*v1.ScriptSourceSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.ScriptSourceSpec)(nil), (*ScriptSourceSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec(a.(*v1.ScriptSourceSpec), b.(*ScriptSourceSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*SecretReference)(nil), (*v1.SecretReference)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_SecretReference_To_v1_SecretReference(a.(*SecretReference), b.(*v1.SecretReference), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.SecretReference)(nil), (*SecretReference)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_SecretReference_To_v1alpha2_SecretReference(a.(*v1.SecretReference), b.(*SecretReference), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*SemiSyncSpec)(nil), (*v1.SemiSyncSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec(a.(*SemiSyncSpec), b.(*v1.SemiSyncSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.SemiSyncSpec)(nil), (*SemiSyncSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec(a.(*v1.SemiSyncSpec), b.(*SemiSyncSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*Shards)(nil), (*v1.Shards)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_Shards_To_v1_Shards(a.(*Shards), b.(*v1.Shards), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.Shards)(nil), (*Shards)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_Shards_To_v1alpha2_Shards(a.(*v1.Shards), b.(*Shards), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*SystemUserSecretsSpec)(nil), (*v1.SystemUserSecretsSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec(a.(*SystemUserSecretsSpec), b.(*v1.SystemUserSecretsSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddGeneratedConversionFunc((*v1.SystemUserSecretsSpec)(nil), (*SystemUserSecretsSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec(a.(*v1.SystemUserSecretsSpec), b.(*SystemUserSecretsSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*[]corev1.Container)(nil), (*CoordinatorSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_Slice_v1_Container_To_v1alpha2_CoordinatorSpec(a.(*[]corev1.Container), b.(*CoordinatorSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.ElasticsearchNode)(nil), (*ElasticsearchNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(a.(*v1.ElasticsearchNode), b.(*ElasticsearchNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.ElasticsearchSpec)(nil), (*ElasticsearchSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ElasticsearchSpec_To_v1alpha2_ElasticsearchSpec(a.(*v1.ElasticsearchSpec), b.(*ElasticsearchSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.KafkaCruiseControl)(nil), (*KafkaCruiseControl)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaCruiseControl_To_v1alpha2_KafkaCruiseControl(a.(*v1.KafkaCruiseControl), b.(*KafkaCruiseControl), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.KafkaNode)(nil), (*KafkaNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaNode_To_v1alpha2_KafkaNode(a.(*v1.KafkaNode), b.(*KafkaNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.KafkaSpec)(nil), (*KafkaSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_KafkaSpec_To_v1alpha2_KafkaSpec(a.(*v1.KafkaSpec), b.(*KafkaSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MariaDBSpec)(nil), (*MariaDBSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MariaDBSpec_To_v1alpha2_MariaDBSpec(a.(*v1.MariaDBSpec), b.(*MariaDBSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MemcachedSpec)(nil), (*MemcachedSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MemcachedSpec_To_v1alpha2_MemcachedSpec(a.(*v1.MemcachedSpec), b.(*MemcachedSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MongoArbiterNode)(nil), (*MongoArbiterNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoArbiterNode_To_v1alpha2_MongoArbiterNode(a.(*v1.MongoArbiterNode), b.(*MongoArbiterNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MongoDBNode)(nil), (*MongoDBNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBNode_To_v1alpha2_MongoDBNode(a.(*v1.MongoDBNode), b.(*MongoDBNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MongoDBReplicaSet)(nil), (*MongoDBReplicaSet)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBReplicaSet_To_v1alpha2_MongoDBReplicaSet(a.(*v1.MongoDBReplicaSet), b.(*MongoDBReplicaSet), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MongoDBSpec)(nil), (*MongoDBSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoDBSpec_To_v1alpha2_MongoDBSpec(a.(*v1.MongoDBSpec), b.(*MongoDBSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MongoHiddenNode)(nil), (*MongoHiddenNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MongoHiddenNode_To_v1alpha2_MongoHiddenNode(a.(*v1.MongoHiddenNode), b.(*MongoHiddenNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.MySQLSpec)(nil), (*MySQLSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_MySQLSpec_To_v1alpha2_MySQLSpec(a.(*v1.MySQLSpec), b.(*MySQLSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.PerconaXtraDBSpec)(nil), (*PerconaXtraDBSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PerconaXtraDBSpec_To_v1alpha2_PerconaXtraDBSpec(a.(*v1.PerconaXtraDBSpec), b.(*PerconaXtraDBSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.PgBouncerSpec)(nil), (*PgBouncerSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PgBouncerSpec_To_v1alpha2_PgBouncerSpec(a.(*v1.PgBouncerSpec), b.(*PgBouncerSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*apiv1.PodTemplateSpec)(nil), (*v2.PodTemplateSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(a.(*apiv1.PodTemplateSpec), b.(*v2.PodTemplateSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.PostgresSpec)(nil), (*PostgresSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_PostgresSpec_To_v1alpha2_PostgresSpec(a.(*v1.PostgresSpec), b.(*PostgresSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.ProxySQLSpec)(nil), (*ProxySQLSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_ProxySQLSpec_To_v1alpha2_ProxySQLSpec(a.(*v1.ProxySQLSpec), b.(*ProxySQLSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.RedisClusterSpec)(nil), (*RedisClusterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisClusterSpec_To_v1alpha2_RedisClusterSpec(a.(*v1.RedisClusterSpec), b.(*RedisClusterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.RedisSentinelSpec)(nil), (*RedisSentinelSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisSentinelSpec_To_v1alpha2_RedisSentinelSpec(a.(*v1.RedisSentinelSpec), b.(*RedisSentinelSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v1.RedisSpec)(nil), (*RedisSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1_RedisSpec_To_v1alpha2_RedisSpec(a.(*v1.RedisSpec), b.(*RedisSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*CoordinatorSpec)(nil), (*[]corev1.Container)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_CoordinatorSpec_To_Slice_v1_Container(a.(*CoordinatorSpec), b.(*[]corev1.Container), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*ElasticsearchNode)(nil), (*v1.ElasticsearchNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(a.(*ElasticsearchNode), b.(*v1.ElasticsearchNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*ElasticsearchSpec)(nil), (*v1.ElasticsearchSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ElasticsearchSpec_To_v1_ElasticsearchSpec(a.(*ElasticsearchSpec), b.(*v1.ElasticsearchSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*KafkaCruiseControl)(nil), (*v1.KafkaCruiseControl)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaCruiseControl_To_v1_KafkaCruiseControl(a.(*KafkaCruiseControl), b.(*v1.KafkaCruiseControl), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*KafkaNode)(nil), (*v1.KafkaNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_KafkaNode_To_v1_KafkaNode(a.(*KafkaNode), b.(*v1.KafkaNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MariaDBSpec)(nil), (*v1.MariaDBSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MariaDBSpec_To_v1_MariaDBSpec(a.(*MariaDBSpec), b.(*v1.MariaDBSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MemcachedSpec)(nil), (*v1.MemcachedSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MemcachedSpec_To_v1_MemcachedSpec(a.(*MemcachedSpec), b.(*v1.MemcachedSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MongoArbiterNode)(nil), (*v1.MongoArbiterNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoArbiterNode_To_v1_MongoArbiterNode(a.(*MongoArbiterNode), b.(*v1.MongoArbiterNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MongoDBNode)(nil), (*v1.MongoDBNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBNode_To_v1_MongoDBNode(a.(*MongoDBNode), b.(*v1.MongoDBNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MongoDBSpec)(nil), (*v1.MongoDBSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoDBSpec_To_v1_MongoDBSpec(a.(*MongoDBSpec), b.(*v1.MongoDBSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MongoHiddenNode)(nil), (*v1.MongoHiddenNode)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MongoHiddenNode_To_v1_MongoHiddenNode(a.(*MongoHiddenNode), b.(*v1.MongoHiddenNode), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MySQLRouterSpec)(nil), (*v1.MySQLRouterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLRouterSpec_To_v1_MySQLRouterSpec(a.(*MySQLRouterSpec), b.(*v1.MySQLRouterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*MySQLSpec)(nil), (*v1.MySQLSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_MySQLSpec_To_v1_MySQLSpec(a.(*MySQLSpec), b.(*v1.MySQLSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*PerconaXtraDBSpec)(nil), (*v1.PerconaXtraDBSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PerconaXtraDBSpec_To_v1_PerconaXtraDBSpec(a.(*PerconaXtraDBSpec), b.(*v1.PerconaXtraDBSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*PgBouncerSpec)(nil), (*v1.PgBouncerSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PgBouncerSpec_To_v1_PgBouncerSpec(a.(*PgBouncerSpec), b.(*v1.PgBouncerSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*PostgresSpec)(nil), (*v1.PostgresSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_PostgresSpec_To_v1_PostgresSpec(a.(*PostgresSpec), b.(*v1.PostgresSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*ProxySQLSpec)(nil), (*v1.ProxySQLSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_ProxySQLSpec_To_v1_ProxySQLSpec(a.(*ProxySQLSpec), b.(*v1.ProxySQLSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*RedisClusterSpec)(nil), (*v1.RedisClusterSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisClusterSpec_To_v1_RedisClusterSpec(a.(*RedisClusterSpec), b.(*v1.RedisClusterSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*RedisSentinelSpec)(nil), (*v1.RedisSentinelSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisSentinelSpec_To_v1_RedisSentinelSpec(a.(*RedisSentinelSpec), b.(*v1.RedisSentinelSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*RedisSpec)(nil), (*v1.RedisSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v1alpha2_RedisSpec_To_v1_RedisSpec(a.(*RedisSpec), b.(*v1.RedisSpec), scope)
	}); err != nil {
		return err
	}
	if err := s.AddConversionFunc((*v2.PodTemplateSpec)(nil), (*apiv1.PodTemplateSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
		return Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(a.(*v2.PodTemplateSpec), b.(*apiv1.PodTemplateSpec), scope)
	}); err != nil {
		return err
	}
	return nil
}

func autoConvert_v1alpha2_Age_To_v1_Age(in *Age, out *v1.Age, s conversion.Scope) error {
	out.LastUpdateTimestamp = in.LastUpdateTimestamp
	return nil
}

// Convert_v1alpha2_Age_To_v1_Age is an autogenerated conversion function.
func Convert_v1alpha2_Age_To_v1_Age(in *Age, out *v1.Age, s conversion.Scope) error {
	return autoConvert_v1alpha2_Age_To_v1_Age(in, out, s)
}

func autoConvert_v1_Age_To_v1alpha2_Age(in *v1.Age, out *Age, s conversion.Scope) error {
	out.LastUpdateTimestamp = in.LastUpdateTimestamp
	return nil
}

// Convert_v1_Age_To_v1alpha2_Age is an autogenerated conversion function.
func Convert_v1_Age_To_v1alpha2_Age(in *v1.Age, out *Age, s conversion.Scope) error {
	return autoConvert_v1_Age_To_v1alpha2_Age(in, out, s)
}

func autoConvert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers(in *AllowedConsumers, out *v1.AllowedConsumers, s conversion.Scope) error {
	out.Namespaces = (*v1.ConsumerNamespaces)(unsafe.Pointer(in.Namespaces))
	out.Selector = (*metav1.LabelSelector)(unsafe.Pointer(in.Selector))
	return nil
}

// Convert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers is an autogenerated conversion function.
func Convert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers(in *AllowedConsumers, out *v1.AllowedConsumers, s conversion.Scope) error {
	return autoConvert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers(in, out, s)
}

func autoConvert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers(in *v1.AllowedConsumers, out *AllowedConsumers, s conversion.Scope) error {
	out.Namespaces = (*ConsumerNamespaces)(unsafe.Pointer(in.Namespaces))
	out.Selector = (*metav1.LabelSelector)(unsafe.Pointer(in.Selector))
	return nil
}

// Convert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers is an autogenerated conversion function.
func Convert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers(in *v1.AllowedConsumers, out *AllowedConsumers, s conversion.Scope) error {
	return autoConvert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers(in, out, s)
}

func autoConvert_v1alpha2_Announce_To_v1_Announce(in *Announce, out *v1.Announce, s conversion.Scope) error {
	out.Type = v1.PreferredEndpointType(in.Type)
	out.Shards = *(*[]v1.Shards)(unsafe.Pointer(&in.Shards))
	return nil
}

// Convert_v1alpha2_Announce_To_v1_Announce is an autogenerated conversion function.
func Convert_v1alpha2_Announce_To_v1_Announce(in *Announce, out *v1.Announce, s conversion.Scope) error {
	return autoConvert_v1alpha2_Announce_To_v1_Announce(in, out, s)
}

func autoConvert_v1_Announce_To_v1alpha2_Announce(in *v1.Announce, out *Announce, s conversion.Scope) error {
	out.Type = PreferredEndpointType(in.Type)
	out.Shards = *(*[]Shards)(unsafe.Pointer(&in.Shards))
	return nil
}

// Convert_v1_Announce_To_v1alpha2_Announce is an autogenerated conversion function.
func Convert_v1_Announce_To_v1alpha2_Announce(in *v1.Announce, out *Announce, s conversion.Scope) error {
	return autoConvert_v1_Announce_To_v1alpha2_Announce(in, out, s)
}

func autoConvert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec(in *ArbiterSpec, out *v1.ArbiterSpec, s conversion.Scope) error {
	out.Resources = in.Resources
	out.NodeSelector = *(*map[string]string)(unsafe.Pointer(&in.NodeSelector))
	out.Tolerations = *(*[]corev1.Toleration)(unsafe.Pointer(&in.Tolerations))
	return nil
}

// Convert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec is an autogenerated conversion function.
func Convert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec(in *ArbiterSpec, out *v1.ArbiterSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec(in, out, s)
}

func autoConvert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec(in *v1.ArbiterSpec, out *ArbiterSpec, s conversion.Scope) error {
	out.Resources = in.Resources
	out.NodeSelector = *(*map[string]string)(unsafe.Pointer(&in.NodeSelector))
	out.Tolerations = *(*[]corev1.Toleration)(unsafe.Pointer(&in.Tolerations))
	return nil
}

// Convert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec is an autogenerated conversion function.
func Convert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec(in *v1.ArbiterSpec, out *ArbiterSpec, s conversion.Scope) error {
	return autoConvert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec(in, out, s)
}

func autoConvert_v1alpha2_Archiver_To_v1_Archiver(in *Archiver, out *v1.Archiver, s conversion.Scope) error {
	out.Pause = in.Pause
	out.Ref = in.Ref
	return nil
}

// Convert_v1alpha2_Archiver_To_v1_Archiver is an autogenerated conversion function.
func Convert_v1alpha2_Archiver_To_v1_Archiver(in *Archiver, out *v1.Archiver, s conversion.Scope) error {
	return autoConvert_v1alpha2_Archiver_To_v1_Archiver(in, out, s)
}

func autoConvert_v1_Archiver_To_v1alpha2_Archiver(in *v1.Archiver, out *Archiver, s conversion.Scope) error {
	out.Pause = in.Pause
	out.Ref = in.Ref
	return nil
}

// Convert_v1_Archiver_To_v1alpha2_Archiver is an autogenerated conversion function.
func Convert_v1_Archiver_To_v1alpha2_Archiver(in *v1.Archiver, out *Archiver, s conversion.Scope) error {
	return autoConvert_v1_Archiver_To_v1alpha2_Archiver(in, out, s)
}

func autoConvert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery(in *ArchiverRecovery, out *v1.ArchiverRecovery, s conversion.Scope) error {
	out.RecoveryTimestamp = in.RecoveryTimestamp
	out.EncryptionSecret = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.EncryptionSecret))
	out.ManifestRepository = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.ManifestRepository))
	out.FullDBRepository = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.FullDBRepository))
	out.ReplicationStrategy = (*v1.PITRReplicationStrategy)(unsafe.Pointer(in.ReplicationStrategy))
	out.ManifestOptions = (*v1.ManifestOptions)(unsafe.Pointer(in.ManifestOptions))
	return nil
}

// Convert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery is an autogenerated conversion function.
func Convert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery(in *ArchiverRecovery, out *v1.ArchiverRecovery, s conversion.Scope) error {
	return autoConvert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery(in, out, s)
}

func autoConvert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery(in *v1.ArchiverRecovery, out *ArchiverRecovery, s conversion.Scope) error {
	out.RecoveryTimestamp = in.RecoveryTimestamp
	out.EncryptionSecret = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.EncryptionSecret))
	out.ManifestRepository = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.ManifestRepository))
	out.FullDBRepository = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.FullDBRepository))
	out.ReplicationStrategy = (*PITRReplicationStrategy)(unsafe.Pointer(in.ReplicationStrategy))
	out.ManifestOptions = (*ManifestOptions)(unsafe.Pointer(in.ManifestOptions))
	return nil
}

// Convert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery is an autogenerated conversion function.
func Convert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery(in *v1.ArchiverRecovery, out *ArchiverRecovery, s conversion.Scope) error {
	return autoConvert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery(in, out, s)
}

func autoConvert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(in *AutoOpsSpec, out *v1.AutoOpsSpec, s conversion.Scope) error {
	out.Disabled = in.Disabled
	return nil
}

// Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec is an autogenerated conversion function.
func Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(in *AutoOpsSpec, out *v1.AutoOpsSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(in, out, s)
}

func autoConvert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(in *v1.AutoOpsSpec, out *AutoOpsSpec, s conversion.Scope) error {
	out.Disabled = in.Disabled
	return nil
}

// Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec is an autogenerated conversion function.
func Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(in *v1.AutoOpsSpec, out *AutoOpsSpec, s conversion.Scope) error {
	return autoConvert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(in, out, s)
}

func autoConvert_v1alpha2_BrokerRack_To_v1_BrokerRack(in *BrokerRack, out *v1.BrokerRack, s conversion.Scope) error {
	out.TopologyKey = in.TopologyKey
	return nil
}

// Convert_v1alpha2_BrokerRack_To_v1_BrokerRack is an autogenerated conversion function.
func Convert_v1alpha2_BrokerRack_To_v1_BrokerRack(in *BrokerRack, out *v1.BrokerRack, s conversion.Scope) error {
	return autoConvert_v1alpha2_BrokerRack_To_v1_BrokerRack(in, out, s)
}

func autoConvert_v1_BrokerRack_To_v1alpha2_BrokerRack(in *v1.BrokerRack, out *BrokerRack, s conversion.Scope) error {
	out.TopologyKey = in.TopologyKey
	return nil
}

// Convert_v1_BrokerRack_To_v1alpha2_BrokerRack is an autogenerated conversion function.
func Convert_v1_BrokerRack_To_v1alpha2_BrokerRack(in *v1.BrokerRack, out *BrokerRack, s conversion.Scope) error {
	return autoConvert_v1_BrokerRack_To_v1alpha2_BrokerRack(in, out, s)
}

func autoConvert_v1alpha2_ConfigurationSpec_To_v1_ConfigurationSpec(in *ConfigurationSpec, out *v1.ConfigurationSpec, s conversion.Scope) error {
	out.SecretName = in.SecretName
	out.Inline = *(*map[string]string)(unsafe.Pointer(&in.Inline))
	return nil
}

// Convert_v1alpha2_ConfigurationSpec_To_v1_ConfigurationSpec is an autogenerated conversion function.
func Convert_v1alpha2_ConfigurationSpec_To_v1_ConfigurationSpec(in *ConfigurationSpec, out *v1.ConfigurationSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_ConfigurationSpec_To_v1_ConfigurationSpec(in, out, s)
}

func autoConvert_v1_ConfigurationSpec_To_v1alpha2_ConfigurationSpec(in *v1.ConfigurationSpec, out *ConfigurationSpec, s conversion.Scope) error {
	out.SecretName = in.SecretName
	out.Inline = *(*map[string]string)(unsafe.Pointer(&in.Inline))
	return nil
}

// Convert_v1_ConfigurationSpec_To_v1alpha2_ConfigurationSpec is an autogenerated conversion function.
func Convert_v1_ConfigurationSpec_To_v1alpha2_ConfigurationSpec(in *v1.ConfigurationSpec, out *ConfigurationSpec, s conversion.Scope) error {
	return autoConvert_v1_ConfigurationSpec_To_v1alpha2_ConfigurationSpec(in, out, s)
}

func autoConvert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig(in *ConnectionPoolConfig, out *v1.ConnectionPoolConfig, s conversion.Scope) error {
	out.Port = (*int32)(unsafe.Pointer(in.Port))
	out.PoolMode = in.PoolMode
	out.MaxClientConnections = (*int64)(unsafe.Pointer(in.MaxClientConnections))
	out.DefaultPoolSize = (*int64)(unsafe.Pointer(in.DefaultPoolSize))
	out.MinPoolSize = (*int64)(unsafe.Pointer(in.MinPoolSize))
	out.ReservePoolSize = (*int64)(unsafe.Pointer(in.ReservePoolSize))
	out.ReservePoolTimeoutSeconds = (*int64)(unsafe.Pointer(in.ReservePoolTimeoutSeconds))
	out.MaxDBConnections = (*int64)(unsafe.Pointer(in.MaxDBConnections))
	out.MaxUserConnections = (*int64)(unsafe.Pointer(in.MaxUserConnections))
	out.StatsPeriodSeconds = (*int64)(unsafe.Pointer(in.StatsPeriodSeconds))
	out.AuthType = v1.PgBouncerClientAuthMode(in.AuthType)
	out.IgnoreStartupParameters = in.IgnoreStartupParameters
	return nil
}

// Convert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig is an autogenerated conversion function.
func Convert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig(in *ConnectionPoolConfig, out *v1.ConnectionPoolConfig, s conversion.Scope) error {
	return autoConvert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig(in, out, s)
}

func autoConvert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig(in *v1.ConnectionPoolConfig, out *ConnectionPoolConfig, s conversion.Scope) error {
	out.Port = (*int32)(unsafe.Pointer(in.Port))
	out.PoolMode = in.PoolMode
	out.MaxClientConnections = (*int64)(unsafe.Pointer(in.MaxClientConnections))
	out.DefaultPoolSize = (*int64)(unsafe.Pointer(in.DefaultPoolSize))
	out.MinPoolSize = (*int64)(unsafe.Pointer(in.MinPoolSize))
	out.ReservePoolSize = (*int64)(unsafe.Pointer(in.ReservePoolSize))
	out.ReservePoolTimeoutSeconds = (*int64)(unsafe.Pointer(in.ReservePoolTimeoutSeconds))
	out.MaxDBConnections = (*int64)(unsafe.Pointer(in.MaxDBConnections))
	out.MaxUserConnections = (*int64)(unsafe.Pointer(in.MaxUserConnections))
	out.StatsPeriodSeconds = (*int64)(unsafe.Pointer(in.StatsPeriodSeconds))
	out.AuthType = PgBouncerClientAuthMode(in.AuthType)
	out.IgnoreStartupParameters = in.IgnoreStartupParameters
	return nil
}

// Convert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig is an autogenerated conversion function.
func Convert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig(in *v1.ConnectionPoolConfig, out *ConnectionPoolConfig, s conversion.Scope) error {
	return autoConvert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig(in, out, s)
}

func autoConvert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces(in *ConsumerNamespaces, out *v1.ConsumerNamespaces, s conversion.Scope) error {
	out.From = (*v1.FromNamespaces)(unsafe.Pointer(in.From))
	out.Selector = (*metav1.LabelSelector)(unsafe.Pointer(in.Selector))
	return nil
}

// Convert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces is an autogenerated conversion function.
func Convert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces(in *ConsumerNamespaces, out *v1.ConsumerNamespaces, s conversion.Scope) error {
	return autoConvert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces(in, out, s)
}

func autoConvert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces(in *v1.ConsumerNamespaces, out *ConsumerNamespaces, s conversion.Scope) error {
	out.From = (*FromNamespaces)(unsafe.Pointer(in.From))
	out.Selector = (*metav1.LabelSelector)(unsafe.Pointer(in.Selector))
	return nil
}

// Convert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces is an autogenerated conversion function.
func Convert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces(in *v1.ConsumerNamespaces, out *ConsumerNamespaces, s conversion.Scope) error {
	return autoConvert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces(in, out, s)
}

func autoConvert_v1alpha2_Database_To_v1_Database(in *Database, out *v1.Database, s conversion.Scope) error {
	out.SyncUsers = in.SyncUsers
	out.DatabaseRef = in.DatabaseRef
	out.DatabaseName = in.DatabaseName
	return nil
}

// Convert_v1alpha2_Database_To_v1_Database is an autogenerated conversion function.
func Convert_v1alpha2_Database_To_v1_Database(in *Database, out *v1.Database, s conversion.Scope) error {
	return autoConvert_v1alpha2_Database_To_v1_Database(in, out, s)
}

func autoConvert_v1_Database_To_v1alpha2_Database(in *v1.Database, out *Database, s conversion.Scope) error {
	out.SyncUsers = in.SyncUsers
	out.DatabaseRef = in.DatabaseRef
	out.DatabaseName = in.DatabaseName
	return nil
}

// Convert_v1_Database_To_v1alpha2_Database is an autogenerated conversion function.
func Convert_v1_Database_To_v1alpha2_Database(in *v1.Database, out *Database, s conversion.Scope) error {
	return autoConvert_v1_Database_To_v1alpha2_Database(in, out, s)
}

func autoConvert_v1alpha2_Elasticsearch_To_v1_Elasticsearch(in *Elasticsearch, out *v1.Elasticsearch, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_ElasticsearchSpec_To_v1_ElasticsearchSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch is an autogenerated conversion function.
func Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch(in *Elasticsearch, out *v1.Elasticsearch, s conversion.Scope) error {
	return autoConvert_v1alpha2_Elasticsearch_To_v1_Elasticsearch(in, out, s)
}

func autoConvert_v1_Elasticsearch_To_v1alpha2_Elasticsearch(in *v1.Elasticsearch, out *Elasticsearch, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_ElasticsearchSpec_To_v1alpha2_ElasticsearchSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch is an autogenerated conversion function.
func Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch(in *v1.Elasticsearch, out *Elasticsearch, s conversion.Scope) error {
	return autoConvert_v1_Elasticsearch_To_v1alpha2_Elasticsearch(in, out, s)
}

func autoConvert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology(in *ElasticsearchClusterTopology, out *v1.ElasticsearchClusterTopology, s conversion.Scope) error {
	if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(&in.Master, &out.Master, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(&in.Ingest, &out.Ingest, s); err != nil {
		return err
	}
	if in.Data != nil {
		in, out := &in.Data, &out.Data
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Data = nil
	}
	if in.DataContent != nil {
		in, out := &in.DataContent, &out.DataContent
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataContent = nil
	}
	if in.DataHot != nil {
		in, out := &in.DataHot, &out.DataHot
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataHot = nil
	}
	if in.DataWarm != nil {
		in, out := &in.DataWarm, &out.DataWarm
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataWarm = nil
	}
	if in.DataCold != nil {
		in, out := &in.DataCold, &out.DataCold
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataCold = nil
	}
	if in.DataFrozen != nil {
		in, out := &in.DataFrozen, &out.DataFrozen
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataFrozen = nil
	}
	if in.ML != nil {
		in, out := &in.ML, &out.ML
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.ML = nil
	}
	if in.Transform != nil {
		in, out := &in.Transform, &out.Transform
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Transform = nil
	}
	if in.Coordinating != nil {
		in, out := &in.Coordinating, &out.Coordinating
		*out = new(v1.ElasticsearchNode)
		if err := Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Coordinating = nil
	}
	return nil
}

// Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology is an autogenerated conversion function.
func Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology(in *ElasticsearchClusterTopology, out *v1.ElasticsearchClusterTopology, s conversion.Scope) error {
	return autoConvert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology(in, out, s)
}

func autoConvert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology(in *v1.ElasticsearchClusterTopology, out *ElasticsearchClusterTopology, s conversion.Scope) error {
	if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(&in.Master, &out.Master, s); err != nil {
		return err
	}
	if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(&in.Ingest, &out.Ingest, s); err != nil {
		return err
	}
	if in.Data != nil {
		in, out := &in.Data, &out.Data
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Data = nil
	}
	if in.DataContent != nil {
		in, out := &in.DataContent, &out.DataContent
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataContent = nil
	}
	if in.DataHot != nil {
		in, out := &in.DataHot, &out.DataHot
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataHot = nil
	}
	if in.DataWarm != nil {
		in, out := &in.DataWarm, &out.DataWarm
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataWarm = nil
	}
	if in.DataCold != nil {
		in, out := &in.DataCold, &out.DataCold
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataCold = nil
	}
	if in.DataFrozen != nil {
		in, out := &in.DataFrozen, &out.DataFrozen
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.DataFrozen = nil
	}
	if in.ML != nil {
		in, out := &in.ML, &out.ML
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.ML = nil
	}
	if in.Transform != nil {
		in, out := &in.Transform, &out.Transform
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Transform = nil
	}
	if in.Coordinating != nil {
		in, out := &in.Coordinating, &out.Coordinating
		*out = new(ElasticsearchNode)
		if err := Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Coordinating = nil
	}
	return nil
}

// Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology is an autogenerated conversion function.
func Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology(in *v1.ElasticsearchClusterTopology, out *ElasticsearchClusterTopology, s conversion.Scope) error {
	return autoConvert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology(in, out, s)
}

func autoConvert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList(in *ElasticsearchList, out *v1.ElasticsearchList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.Elasticsearch, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList is an autogenerated conversion function.
func Convert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList(in *ElasticsearchList, out *v1.ElasticsearchList, s conversion.Scope) error {
	return autoConvert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList(in, out, s)
}

func autoConvert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList(in *v1.ElasticsearchList, out *ElasticsearchList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Elasticsearch, len(*in))
		for i := range *in {
			if err := Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList is an autogenerated conversion function.
func Convert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList(in *v1.ElasticsearchList, out *ElasticsearchList, s conversion.Scope) error {
	return autoConvert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList(in, out, s)
}

func autoConvert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(in *ElasticsearchNode, out *v1.ElasticsearchNode, s conversion.Scope) error {
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Suffix = in.Suffix
	out.HeapSizePercentage = (*int32)(unsafe.Pointer(in.HeapSizePercentage))
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	// WARNING: in.Resources requires manual conversion: does not exist in peer-type
	out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable))
	// WARNING: in.NodeSelector requires manual conversion: does not exist in peer-type
	// WARNING: in.Tolerations requires manual conversion: does not exist in peer-type
	return nil
}

func autoConvert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(in *v1.ElasticsearchNode, out *ElasticsearchNode, s conversion.Scope) error {
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Suffix = in.Suffix
	out.HeapSizePercentage = (*int32)(unsafe.Pointer(in.HeapSizePercentage))
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	// WARNING: in.PodTemplate requires manual conversion: does not exist in peer-type
	out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable))
	return nil
}

func autoConvert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec(in *ElasticsearchRoleMapSpec, out *v1.ElasticsearchRoleMapSpec, s conversion.Scope) error {
	out.Reserved = in.Reserved
	out.Hidden = in.Hidden
	out.BackendRoles = *(*[]string)(unsafe.Pointer(&in.BackendRoles))
	out.Hosts = *(*[]string)(unsafe.Pointer(&in.Hosts))
	out.Users = *(*[]string)(unsafe.Pointer(&in.Users))
	out.AndBackendRoles = *(*[]string)(unsafe.Pointer(&in.AndBackendRoles))
	return nil
}

// Convert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec is an autogenerated conversion function.
func Convert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec(in *ElasticsearchRoleMapSpec, out *v1.ElasticsearchRoleMapSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec(in, out, s)
}

func autoConvert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec(in *v1.ElasticsearchRoleMapSpec, out *ElasticsearchRoleMapSpec, s conversion.Scope) error {
	out.Reserved = in.Reserved
	out.Hidden = in.Hidden
	out.BackendRoles = *(*[]string)(unsafe.Pointer(&in.BackendRoles))
	out.Hosts = *(*[]string)(unsafe.Pointer(&in.Hosts))
	out.Users = *(*[]string)(unsafe.Pointer(&in.Users))
	out.AndBackendRoles = *(*[]string)(unsafe.Pointer(&in.AndBackendRoles))
	return nil
}

// Convert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec is an autogenerated conversion function.
func Convert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec(in *v1.ElasticsearchRoleMapSpec, out *ElasticsearchRoleMapSpec, s conversion.Scope) error {
	return autoConvert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec(in, out, s)
}

func autoConvert_v1alpha2_ElasticsearchSpec_To_v1_ElasticsearchSpec(in *ElasticsearchSpec, out *v1.ElasticsearchSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(v1.ElasticsearchClusterTopology)
		if err := Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Topology = nil
	}
	out.EnableSSL = in.EnableSSL
	out.DisableSecurity = in.DisableSecurity
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	out.SecureConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.SecureConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.InternalUsers = *(*map[string]v1.ElasticsearchUserSpec)(unsafe.Pointer(&in.InternalUsers))
	out.RolesMapping = *(*map[string]v1.ElasticsearchRoleMapSpec)(unsafe.Pointer(&in.RolesMapping))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.KernelSettings = (*v1.KernelSettings)(unsafe.Pointer(in.KernelSettings))
	out.HeapSizePercentage = (*int32)(unsafe.Pointer(in.HeapSizePercentage))
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1_ElasticsearchSpec_To_v1alpha2_ElasticsearchSpec(in *v1.ElasticsearchSpec, out *ElasticsearchSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(ElasticsearchClusterTopology)
		if err := Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Topology = nil
	}
	out.EnableSSL = in.EnableSSL
	out.DisableSecurity = in.DisableSecurity
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	out.SecureConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.SecureConfigSecret))
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.InternalUsers = *(*map[string]ElasticsearchUserSpec)(unsafe.Pointer(&in.InternalUsers))
	out.RolesMapping = *(*map[string]ElasticsearchRoleMapSpec)(unsafe.Pointer(&in.RolesMapping))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.KernelSettings = (*KernelSettings)(unsafe.Pointer(in.KernelSettings))
	out.HeapSizePercentage = (*int32)(unsafe.Pointer(in.HeapSizePercentage))
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus(in *ElasticsearchStatus, out *v1.ElasticsearchStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus is an autogenerated conversion function.
func Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus(in *ElasticsearchStatus, out *v1.ElasticsearchStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus(in, out, s)
}

func autoConvert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus(in *v1.ElasticsearchStatus, out *ElasticsearchStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus is an autogenerated conversion function.
func Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus(in *v1.ElasticsearchStatus, out *ElasticsearchStatus, s conversion.Scope) error {
	return autoConvert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus(in, out, s)
}

func autoConvert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec(in *ElasticsearchUserSpec, out *v1.ElasticsearchUserSpec, s conversion.Scope) error {
	out.Hash = in.Hash
	out.FullName = in.FullName
	out.Metadata = *(*map[string]string)(unsafe.Pointer(&in.Metadata))
	out.Email = in.Email
	out.Roles = *(*[]string)(unsafe.Pointer(&in.Roles))
	out.SecretName = in.SecretName
	out.Reserved = in.Reserved
	out.Hidden = in.Hidden
	out.BackendRoles = *(*[]string)(unsafe.Pointer(&in.BackendRoles))
	out.SearchGuardRoles = *(*[]string)(unsafe.Pointer(&in.SearchGuardRoles))
	out.OpendistroSecurityRoles = *(*[]string)(unsafe.Pointer(&in.OpendistroSecurityRoles))
	out.Attributes = *(*map[string]string)(unsafe.Pointer(&in.Attributes))
	out.Description = in.Description
	return nil
}

// Convert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec is an autogenerated conversion function.
func Convert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec(in *ElasticsearchUserSpec, out *v1.ElasticsearchUserSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec(in, out, s)
}

func autoConvert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec(in *v1.ElasticsearchUserSpec, out *ElasticsearchUserSpec, s conversion.Scope) error {
	out.Hash = in.Hash
	out.FullName = in.FullName
	out.Metadata = *(*map[string]string)(unsafe.Pointer(&in.Metadata))
	out.Email = in.Email
	out.Roles = *(*[]string)(unsafe.Pointer(&in.Roles))
	out.SecretName = in.SecretName
	out.Reserved = in.Reserved
	out.Hidden = in.Hidden
	out.BackendRoles = *(*[]string)(unsafe.Pointer(&in.BackendRoles))
	out.SearchGuardRoles = *(*[]string)(unsafe.Pointer(&in.SearchGuardRoles))
	out.OpendistroSecurityRoles = *(*[]string)(unsafe.Pointer(&in.OpendistroSecurityRoles))
	out.Attributes = *(*map[string]string)(unsafe.Pointer(&in.Attributes))
	out.Description = in.Description
	return nil
}

// Convert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec is an autogenerated conversion function.
func Convert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec(in *v1.ElasticsearchUserSpec, out *ElasticsearchUserSpec, s conversion.Scope) error {
	return autoConvert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec(in, out, s)
}

func autoConvert_v1alpha2_GitRepo_To_v1_GitRepo(in *GitRepo, out *v1.GitRepo, s conversion.Scope) error {
	out.Args = *(*[]string)(unsafe.Pointer(&in.Args))
	out.Env = *(*[]corev1.EnvVar)(unsafe.Pointer(&in.Env))
	out.SecurityContext = (*corev1.SecurityContext)(unsafe.Pointer(in.SecurityContext))
	out.Resources = in.Resources
	out.AuthSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_GitRepo_To_v1_GitRepo is an autogenerated conversion function.
func Convert_v1alpha2_GitRepo_To_v1_GitRepo(in *GitRepo, out *v1.GitRepo, s conversion.Scope) error {
	return autoConvert_v1alpha2_GitRepo_To_v1_GitRepo(in, out, s)
}

func autoConvert_v1_GitRepo_To_v1alpha2_GitRepo(in *v1.GitRepo, out *GitRepo, s conversion.Scope) error {
	out.Args = *(*[]string)(unsafe.Pointer(&in.Args))
	out.Env = *(*[]corev1.EnvVar)(unsafe.Pointer(&in.Env))
	out.SecurityContext = (*corev1.SecurityContext)(unsafe.Pointer(in.SecurityContext))
	out.Resources = in.Resources
	out.AuthSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_GitRepo_To_v1alpha2_GitRepo is an autogenerated conversion function.
func Convert_v1_GitRepo_To_v1alpha2_GitRepo(in *v1.GitRepo, out *GitRepo, s conversion.Scope) error {
	return autoConvert_v1_GitRepo_To_v1alpha2_GitRepo(in, out, s)
}

func autoConvert_v1alpha2_InitSpec_To_v1_InitSpec(in *InitSpec, out *v1.InitSpec, s conversion.Scope) error {
	out.Initialized = in.Initialized
	out.WaitForInitialRestore = in.WaitForInitialRestore
	out.Script = (*v1.ScriptSourceSpec)(unsafe.Pointer(in.Script))
	out.Archiver = (*v1.ArchiverRecovery)(unsafe.Pointer(in.Archiver))
	return nil
}

// Convert_v1alpha2_InitSpec_To_v1_InitSpec is an autogenerated conversion function.
func Convert_v1alpha2_InitSpec_To_v1_InitSpec(in *InitSpec, out *v1.InitSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_InitSpec_To_v1_InitSpec(in, out, s)
}

func autoConvert_v1_InitSpec_To_v1alpha2_InitSpec(in *v1.InitSpec, out *InitSpec, s conversion.Scope) error {
	out.Initialized = in.Initialized
	out.WaitForInitialRestore = in.WaitForInitialRestore
	out.Script = (*ScriptSourceSpec)(unsafe.Pointer(in.Script))
	out.Archiver = (*ArchiverRecovery)(unsafe.Pointer(in.Archiver))
	return nil
}

// Convert_v1_InitSpec_To_v1alpha2_InitSpec is an autogenerated conversion function.
func Convert_v1_InitSpec_To_v1alpha2_InitSpec(in *v1.InitSpec, out *InitSpec, s conversion.Scope) error {
	return autoConvert_v1_InitSpec_To_v1alpha2_InitSpec(in, out, s)
}

func autoConvert_v1alpha2_Kafka_To_v1_Kafka(in *Kafka, out *v1.Kafka, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_Kafka_To_v1_Kafka is an autogenerated conversion function.
func Convert_v1alpha2_Kafka_To_v1_Kafka(in *Kafka, out *v1.Kafka, s conversion.Scope) error {
	return autoConvert_v1alpha2_Kafka_To_v1_Kafka(in, out, s)
}

func autoConvert_v1_Kafka_To_v1alpha2_Kafka(in *v1.Kafka, out *Kafka, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_KafkaSpec_To_v1alpha2_KafkaSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_Kafka_To_v1alpha2_Kafka is an autogenerated conversion function.
func Convert_v1_Kafka_To_v1alpha2_Kafka(in *v1.Kafka, out *Kafka, s conversion.Scope) error {
	return autoConvert_v1_Kafka_To_v1alpha2_Kafka(in, out, s)
}

func autoConvert_v1alpha2_KafkaApp_To_v1_KafkaApp(in *KafkaApp, out *v1.KafkaApp, s conversion.Scope) error {
	if in.Kafka != nil {
		in, out := &in.Kafka, &out.Kafka
		*out = new(v1.Kafka)
		if err := Convert_v1alpha2_Kafka_To_v1_Kafka(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Kafka = nil
	}
	return nil
}

// Convert_v1alpha2_KafkaApp_To_v1_KafkaApp is an autogenerated conversion function.
func Convert_v1alpha2_KafkaApp_To_v1_KafkaApp(in *KafkaApp, out *v1.KafkaApp, s conversion.Scope) error {
	return autoConvert_v1alpha2_KafkaApp_To_v1_KafkaApp(in, out, s)
}

func autoConvert_v1_KafkaApp_To_v1alpha2_KafkaApp(in *v1.KafkaApp, out *KafkaApp, s conversion.Scope) error {
	if in.Kafka != nil {
		in, out := &in.Kafka, &out.Kafka
		*out = new(Kafka)
		if err := Convert_v1_Kafka_To_v1alpha2_Kafka(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Kafka = nil
	}
	return nil
}

// Convert_v1_KafkaApp_To_v1alpha2_KafkaApp is an autogenerated conversion function.
func Convert_v1_KafkaApp_To_v1alpha2_KafkaApp(in *v1.KafkaApp, out *KafkaApp, s conversion.Scope) error {
	return autoConvert_v1_KafkaApp_To_v1alpha2_KafkaApp(in, out, s)
}

func autoConvert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity(in *KafkaBrokerCapacity, out *v1.KafkaBrokerCapacity, s conversion.Scope) error {
	out.InBoundNetwork = in.InBoundNetwork
	out.OutBoundNetwork = in.OutBoundNetwork
	return nil
}

// Convert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity is an autogenerated conversion function.
func Convert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity(in *KafkaBrokerCapacity, out *v1.KafkaBrokerCapacity, s conversion.Scope) error {
	return autoConvert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity(in, out, s)
}

func autoConvert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity(in *v1.KafkaBrokerCapacity, out *KafkaBrokerCapacity, s conversion.Scope) error {
	out.InBoundNetwork = in.InBoundNetwork
	out.OutBoundNetwork = in.OutBoundNetwork
	return nil
}

// Convert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity is an autogenerated conversion function.
func Convert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity(in *v1.KafkaBrokerCapacity, out *KafkaBrokerCapacity, s conversion.Scope) error {
	return autoConvert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity(in, out, s)
}

func autoConvert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology(in *KafkaClusterTopology, out *v1.KafkaClusterTopology, s conversion.Scope) error {
	if in.Controller != nil {
		in, out := &in.Controller, &out.Controller
		*out = new(v1.KafkaNode)
		if err := Convert_v1alpha2_KafkaNode_To_v1_KafkaNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Controller = nil
	}
	if in.Broker != nil {
		in, out := &in.Broker, &out.Broker
		*out = new(v1.KafkaNode)
		if err := Convert_v1alpha2_KafkaNode_To_v1_KafkaNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Broker = nil
	}
	return nil
}

// Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology is an autogenerated conversion function.
func Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology(in *KafkaClusterTopology, out *v1.KafkaClusterTopology, s conversion.Scope) error {
	return autoConvert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology(in, out, s)
}

func autoConvert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology(in *v1.KafkaClusterTopology, out *KafkaClusterTopology, s conversion.Scope) error {
	if in.Controller != nil {
		in, out := &in.Controller, &out.Controller
		*out = new(KafkaNode)
		if err := Convert_v1_KafkaNode_To_v1alpha2_KafkaNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Controller = nil
	}
	if in.Broker != nil {
		in, out := &in.Broker, &out.Broker
		*out = new(KafkaNode)
		if err := Convert_v1_KafkaNode_To_v1alpha2_KafkaNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Broker = nil
	}
	return nil
}

// Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology is an autogenerated conversion function.
func Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology(in *v1.KafkaClusterTopology, out *KafkaClusterTopology, s conversion.Scope) error {
	return autoConvert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology(in, out, s)
}

func autoConvert_v1alpha2_KafkaCruiseControl_To_v1_KafkaCruiseControl(in *KafkaCruiseControl, out *v1.KafkaCruiseControl, s conversion.Scope) error {
	// WARNING: in.ConfigSecret requires manual conversion: does not exist in peer-type
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Suffix = in.Suffix
	// WARNING: in.Resources requires manual conversion: does not exist in peer-type
	out.PodTemplate = in.PodTemplate
	out.BrokerCapacity = (*v1.KafkaBrokerCapacity)(unsafe.Pointer(in.BrokerCapacity))
	return nil
}

func autoConvert_v1_KafkaCruiseControl_To_v1alpha2_KafkaCruiseControl(in *v1.KafkaCruiseControl, out *KafkaCruiseControl, s conversion.Scope) error {
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Suffix = in.Suffix
	out.PodTemplate = in.PodTemplate
	out.BrokerCapacity = (*KafkaBrokerCapacity)(unsafe.Pointer(in.BrokerCapacity))
	return nil
}

func autoConvert_v1alpha2_KafkaList_To_v1_KafkaList(in *KafkaList, out *v1.KafkaList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.Kafka, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_Kafka_To_v1_Kafka(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_KafkaList_To_v1_KafkaList is an autogenerated conversion function.
func Convert_v1alpha2_KafkaList_To_v1_KafkaList(in *KafkaList, out *v1.KafkaList, s conversion.Scope) error {
	return autoConvert_v1alpha2_KafkaList_To_v1_KafkaList(in, out, s)
}

func autoConvert_v1_KafkaList_To_v1alpha2_KafkaList(in *v1.KafkaList, out *KafkaList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Kafka, len(*in))
		for i := range *in {
			if err := Convert_v1_Kafka_To_v1alpha2_Kafka(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_KafkaList_To_v1alpha2_KafkaList is an autogenerated conversion function.
func Convert_v1_KafkaList_To_v1alpha2_KafkaList(in *v1.KafkaList, out *KafkaList, s conversion.Scope) error {
	return autoConvert_v1_KafkaList_To_v1alpha2_KafkaList(in, out, s)
}

func autoConvert_v1alpha2_KafkaNode_To_v1_KafkaNode(in *KafkaNode, out *v1.KafkaNode, s conversion.Scope) error {
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Suffix = in.Suffix
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	// WARNING: in.Resources requires manual conversion: does not exist in peer-type
	// WARNING: in.NodeSelector requires manual conversion: does not exist in peer-type
	// WARNING: in.Tolerations requires manual conversion: does not exist in peer-type
	return nil
}

func autoConvert_v1_KafkaNode_To_v1alpha2_KafkaNode(in *v1.KafkaNode, out *KafkaNode, s conversion.Scope) error {
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Suffix = in.Suffix
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	// WARNING: in.PodTemplate requires manual conversion: does not exist in peer-type
	return nil
}

func autoConvert_v1alpha2_KafkaSpec_To_v1_KafkaSpec(in *KafkaSpec, out *v1.KafkaSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(v1.KafkaClusterTopology)
		if err := Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Topology = nil
	}
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EnableSSL = in.EnableSSL
	out.BrokerRack = (*v1.BrokerRack)(unsafe.Pointer(in.BrokerRack))
	out.DisableSecurity = in.DisableSecurity
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	out.KeystoreCredSecret = (*v1.SecretReference)(unsafe.Pointer(in.KeystoreCredSecret))
	out.Halted = in.Halted
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.PodTemplate = in.PodTemplate
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.DeletionPolicy = v1.DeletionPolicy(in.DeletionPolicy)
	out.HealthChecker = in.HealthChecker
	if in.CruiseControl != nil {
		in, out := &in.CruiseControl, &out.CruiseControl
		*out = new(v1.KafkaCruiseControl)
		if err := Convert_v1alpha2_KafkaCruiseControl_To_v1_KafkaCruiseControl(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.CruiseControl = nil
	}
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	return nil
}

// Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec is an autogenerated conversion function.
func Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec(in *KafkaSpec, out *v1.KafkaSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_KafkaSpec_To_v1_KafkaSpec(in, out, s)
}

func autoConvert_v1_KafkaSpec_To_v1alpha2_KafkaSpec(in *v1.KafkaSpec, out *KafkaSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(KafkaClusterTopology)
		if err := Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Topology = nil
	}
	// WARNING: in.TieredStorage requires manual conversion: does not exist in peer-type
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EnableSSL = in.EnableSSL
	out.BrokerRack = (*BrokerRack)(unsafe.Pointer(in.BrokerRack))
	out.DisableSecurity = in.DisableSecurity
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	out.KeystoreCredSecret = (*SecretReference)(unsafe.Pointer(in.KeystoreCredSecret))
	out.Halted = in.Halted
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.PodTemplate = in.PodTemplate
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.DeletionPolicy = DeletionPolicy(in.DeletionPolicy)
	out.HealthChecker = in.HealthChecker
	if in.CruiseControl != nil {
		in, out := &in.CruiseControl, &out.CruiseControl
		*out = new(KafkaCruiseControl)
		if err := Convert_v1_KafkaCruiseControl_To_v1alpha2_KafkaCruiseControl(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.CruiseControl = nil
	}
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	return nil
}

func autoConvert_v1alpha2_KafkaStatus_To_v1_KafkaStatus(in *KafkaStatus, out *v1.KafkaStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	return nil
}

// Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus is an autogenerated conversion function.
func Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus(in *KafkaStatus, out *v1.KafkaStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_KafkaStatus_To_v1_KafkaStatus(in, out, s)
}

func autoConvert_v1_KafkaStatus_To_v1alpha2_KafkaStatus(in *v1.KafkaStatus, out *KafkaStatus, s conversion.Scope) error {
	out.Phase = KafkaPhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	return nil
}

// Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus is an autogenerated conversion function.
func Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus(in *v1.KafkaStatus, out *KafkaStatus, s conversion.Scope) error {
	return autoConvert_v1_KafkaStatus_To_v1alpha2_KafkaStatus(in, out, s)
}

func autoConvert_v1alpha2_KernelSettings_To_v1_KernelSettings(in *KernelSettings, out *v1.KernelSettings, s conversion.Scope) error {
	out.DisableDefaults = in.DisableDefaults
	out.Privileged = in.Privileged
	out.Sysctls = *(*[]corev1.Sysctl)(unsafe.Pointer(&in.Sysctls))
	return nil
}

// Convert_v1alpha2_KernelSettings_To_v1_KernelSettings is an autogenerated conversion function.
func Convert_v1alpha2_KernelSettings_To_v1_KernelSettings(in *KernelSettings, out *v1.KernelSettings, s conversion.Scope) error {
	return autoConvert_v1alpha2_KernelSettings_To_v1_KernelSettings(in, out, s)
}

func autoConvert_v1_KernelSettings_To_v1alpha2_KernelSettings(in *v1.KernelSettings, out *KernelSettings, s conversion.Scope) error {
	out.DisableDefaults = in.DisableDefaults
	out.Privileged = in.Privileged
	out.Sysctls = *(*[]corev1.Sysctl)(unsafe.Pointer(&in.Sysctls))
	return nil
}

// Convert_v1_KernelSettings_To_v1alpha2_KernelSettings is an autogenerated conversion function.
func Convert_v1_KernelSettings_To_v1alpha2_KernelSettings(in *v1.KernelSettings, out *KernelSettings, s conversion.Scope) error {
	return autoConvert_v1_KernelSettings_To_v1alpha2_KernelSettings(in, out, s)
}

func autoConvert_v1alpha2_ManifestOptions_To_v1_ManifestOptions(in *ManifestOptions, out *v1.ManifestOptions, s conversion.Scope) error {
	out.Archiver = (*bool)(unsafe.Pointer(in.Archiver))
	out.ArchiverRef = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.ArchiverRef))
	out.InitScript = (*bool)(unsafe.Pointer(in.InitScript))
	return nil
}

// Convert_v1alpha2_ManifestOptions_To_v1_ManifestOptions is an autogenerated conversion function.
func Convert_v1alpha2_ManifestOptions_To_v1_ManifestOptions(in *ManifestOptions, out *v1.ManifestOptions, s conversion.Scope) error {
	return autoConvert_v1alpha2_ManifestOptions_To_v1_ManifestOptions(in, out, s)
}

func autoConvert_v1_ManifestOptions_To_v1alpha2_ManifestOptions(in *v1.ManifestOptions, out *ManifestOptions, s conversion.Scope) error {
	out.Archiver = (*bool)(unsafe.Pointer(in.Archiver))
	out.ArchiverRef = (*clientgoapiv1.ObjectReference)(unsafe.Pointer(in.ArchiverRef))
	out.InitScript = (*bool)(unsafe.Pointer(in.InitScript))
	return nil
}

// Convert_v1_ManifestOptions_To_v1alpha2_ManifestOptions is an autogenerated conversion function.
func Convert_v1_ManifestOptions_To_v1alpha2_ManifestOptions(in *v1.ManifestOptions, out *ManifestOptions, s conversion.Scope) error {
	return autoConvert_v1_ManifestOptions_To_v1alpha2_ManifestOptions(in, out, s)
}

func autoConvert_v1alpha2_MariaDB_To_v1_MariaDB(in *MariaDB, out *v1.MariaDB, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_MariaDBSpec_To_v1_MariaDBSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_MariaDB_To_v1_MariaDB is an autogenerated conversion function.
func Convert_v1alpha2_MariaDB_To_v1_MariaDB(in *MariaDB, out *v1.MariaDB, s conversion.Scope) error {
	return autoConvert_v1alpha2_MariaDB_To_v1_MariaDB(in, out, s)
}

func autoConvert_v1_MariaDB_To_v1alpha2_MariaDB(in *v1.MariaDB, out *MariaDB, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_MariaDBSpec_To_v1alpha2_MariaDBSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_MariaDB_To_v1alpha2_MariaDB is an autogenerated conversion function.
func Convert_v1_MariaDB_To_v1alpha2_MariaDB(in *v1.MariaDB, out *MariaDB, s conversion.Scope) error {
	return autoConvert_v1_MariaDB_To_v1alpha2_MariaDB(in, out, s)
}

func autoConvert_v1alpha2_MariaDBList_To_v1_MariaDBList(in *MariaDBList, out *v1.MariaDBList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.MariaDB, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_MariaDB_To_v1_MariaDB(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_MariaDBList_To_v1_MariaDBList is an autogenerated conversion function.
func Convert_v1alpha2_MariaDBList_To_v1_MariaDBList(in *MariaDBList, out *v1.MariaDBList, s conversion.Scope) error {
	return autoConvert_v1alpha2_MariaDBList_To_v1_MariaDBList(in, out, s)
}

func autoConvert_v1_MariaDBList_To_v1alpha2_MariaDBList(in *v1.MariaDBList, out *MariaDBList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]MariaDB, len(*in))
		for i := range *in {
			if err := Convert_v1_MariaDB_To_v1alpha2_MariaDB(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_MariaDBList_To_v1alpha2_MariaDBList is an autogenerated conversion function.
func Convert_v1_MariaDBList_To_v1alpha2_MariaDBList(in *v1.MariaDBList, out *MariaDBList, s conversion.Scope) error {
	return autoConvert_v1_MariaDBList_To_v1alpha2_MariaDBList(in, out, s)
}

func autoConvert_v1alpha2_MariaDBSpec_To_v1_MariaDBSpec(in *MariaDBSpec, out *v1.MariaDBSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.WsrepSSTMethod = v1.GaleraWsrepSSTMethod(in.WsrepSSTMethod)
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.RequireSSL = in.RequireSSL
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	// WARNING: in.Coordinator requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*v1.Archiver)(unsafe.Pointer(in.Archiver))
	return nil
}

func autoConvert_v1_MariaDBSpec_To_v1alpha2_MariaDBSpec(in *v1.MariaDBSpec, out *MariaDBSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	// WARNING: in.Topology requires manual conversion: does not exist in peer-type
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.WsrepSSTMethod = GaleraWsrepSSTMethod(in.WsrepSSTMethod)
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.RequireSSL = in.RequireSSL
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*Archiver)(unsafe.Pointer(in.Archiver))
	// WARNING: in.Distributed requires manual conversion: does not exist in peer-type
	return nil
}

func autoConvert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus(in *MariaDBStatus, out *v1.MariaDBStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus is an autogenerated conversion function.
func Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus(in *MariaDBStatus, out *v1.MariaDBStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus(in, out, s)
}

func autoConvert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus(in *v1.MariaDBStatus, out *MariaDBStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus is an autogenerated conversion function.
func Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus(in *v1.MariaDBStatus, out *MariaDBStatus, s conversion.Scope) error {
	return autoConvert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus(in, out, s)
}

func autoConvert_v1alpha2_Memcached_To_v1_Memcached(in *Memcached, out *v1.Memcached, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_MemcachedSpec_To_v1_MemcachedSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_Memcached_To_v1_Memcached is an autogenerated conversion function.
func Convert_v1alpha2_Memcached_To_v1_Memcached(in *Memcached, out *v1.Memcached, s conversion.Scope) error {
	return autoConvert_v1alpha2_Memcached_To_v1_Memcached(in, out, s)
}

func autoConvert_v1_Memcached_To_v1alpha2_Memcached(in *v1.Memcached, out *Memcached, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_MemcachedSpec_To_v1alpha2_MemcachedSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_Memcached_To_v1alpha2_Memcached is an autogenerated conversion function.
func Convert_v1_Memcached_To_v1alpha2_Memcached(in *v1.Memcached, out *Memcached, s conversion.Scope) error {
	return autoConvert_v1_Memcached_To_v1alpha2_Memcached(in, out, s)
}

func autoConvert_v1alpha2_MemcachedList_To_v1_MemcachedList(in *MemcachedList, out *v1.MemcachedList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.Memcached, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_Memcached_To_v1_Memcached(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_MemcachedList_To_v1_MemcachedList is an autogenerated conversion function.
func Convert_v1alpha2_MemcachedList_To_v1_MemcachedList(in *MemcachedList, out *v1.MemcachedList, s conversion.Scope) error {
	return autoConvert_v1alpha2_MemcachedList_To_v1_MemcachedList(in, out, s)
}

func autoConvert_v1_MemcachedList_To_v1alpha2_MemcachedList(in *v1.MemcachedList, out *MemcachedList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Memcached, len(*in))
		for i := range *in {
			if err := Convert_v1_Memcached_To_v1alpha2_Memcached(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_MemcachedList_To_v1alpha2_MemcachedList is an autogenerated conversion function.
func Convert_v1_MemcachedList_To_v1alpha2_MemcachedList(in *v1.MemcachedList, out *MemcachedList, s conversion.Scope) error {
	return autoConvert_v1_MemcachedList_To_v1alpha2_MemcachedList(in, out, s)
}

func autoConvert_v1alpha2_MemcachedSpec_To_v1_MemcachedSpec(in *MemcachedSpec, out *v1.MemcachedSpec, s conversion.Scope) error {
	// WARNING: in.AutoOps requires manual conversion: does not exist in peer-type
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	out.DataVolume = (*corev1.VolumeSource)(unsafe.Pointer(in.DataVolume))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1_MemcachedSpec_To_v1alpha2_MemcachedSpec(in *v1.MemcachedSpec, out *MemcachedSpec, s conversion.Scope) error {
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	// WARNING: in.AuthSecret requires manual conversion: does not exist in peer-type
	// WARNING: in.DisableAuth requires manual conversion: does not exist in peer-type
	out.DataVolume = (*corev1.VolumeSource)(unsafe.Pointer(in.DataVolume))
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus(in *MemcachedStatus, out *v1.MemcachedStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	return nil
}

// Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus is an autogenerated conversion function.
func Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus(in *MemcachedStatus, out *v1.MemcachedStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus(in, out, s)
}

func autoConvert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus(in *v1.MemcachedStatus, out *MemcachedStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	return nil
}

// Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus is an autogenerated conversion function.
func Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus(in *v1.MemcachedStatus, out *MemcachedStatus, s conversion.Scope) error {
	return autoConvert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus(in, out, s)
}

func autoConvert_v1alpha2_MongoArbiterNode_To_v1_MongoArbiterNode(in *MongoArbiterNode, out *v1.MongoArbiterNode, s conversion.Scope) error {
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.PodTemplate requires manual conversion: inconvertible types (kmodules.xyz/offshoot-api/api/v1.PodTemplateSpec vs *kmodules.xyz/offshoot-api/api/v2.PodTemplateSpec)
	return nil
}

func autoConvert_v1_MongoArbiterNode_To_v1alpha2_MongoArbiterNode(in *v1.MongoArbiterNode, out *MongoArbiterNode, s conversion.Scope) error {
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	// WARNING: in.PodTemplate requires manual conversion: inconvertible types (*kmodules.xyz/offshoot-api/api/v2.PodTemplateSpec vs kmodules.xyz/offshoot-api/api/v1.PodTemplateSpec)
	return nil
}

func autoConvert_v1alpha2_MongoDB_To_v1_MongoDB(in *MongoDB, out *v1.MongoDB, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_MongoDBSpec_To_v1_MongoDBSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_MongoDB_To_v1_MongoDB is an autogenerated conversion function.
func Convert_v1alpha2_MongoDB_To_v1_MongoDB(in *MongoDB, out *v1.MongoDB, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDB_To_v1_MongoDB(in, out, s)
}

func autoConvert_v1_MongoDB_To_v1alpha2_MongoDB(in *v1.MongoDB, out *MongoDB, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_MongoDBSpec_To_v1alpha2_MongoDBSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_MongoDB_To_v1alpha2_MongoDB is an autogenerated conversion function.
func Convert_v1_MongoDB_To_v1alpha2_MongoDB(in *v1.MongoDB, out *MongoDB, s conversion.Scope) error {
	return autoConvert_v1_MongoDB_To_v1alpha2_MongoDB(in, out, s)
}

func autoConvert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode(in *MongoDBConfigNode, out *v1.MongoDBConfigNode, s conversion.Scope) error {
	if err := Convert_v1alpha2_MongoDBNode_To_v1_MongoDBNode(&in.MongoDBNode, &out.MongoDBNode, s); err != nil {
		return err
	}
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EphemeralStorage = (*corev1.EmptyDirVolumeSource)(unsafe.Pointer(in.EphemeralStorage))
	return nil
}

// Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode(in *MongoDBConfigNode, out *v1.MongoDBConfigNode, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode(in, out, s)
}

func autoConvert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode(in *v1.MongoDBConfigNode, out *MongoDBConfigNode, s conversion.Scope) error {
	if err := Convert_v1_MongoDBNode_To_v1alpha2_MongoDBNode(&in.MongoDBNode, &out.MongoDBNode, s); err != nil {
		return err
	}
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EphemeralStorage = (*corev1.EmptyDirVolumeSource)(unsafe.Pointer(in.EphemeralStorage))
	return nil
}

// Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode is an autogenerated conversion function.
func Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode(in *v1.MongoDBConfigNode, out *MongoDBConfigNode, s conversion.Scope) error {
	return autoConvert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode(in, out, s)
}

func autoConvert_v1alpha2_MongoDBList_To_v1_MongoDBList(in *MongoDBList, out *v1.MongoDBList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.MongoDB, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_MongoDB_To_v1_MongoDB(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_MongoDBList_To_v1_MongoDBList is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBList_To_v1_MongoDBList(in *MongoDBList, out *v1.MongoDBList, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBList_To_v1_MongoDBList(in, out, s)
}

func autoConvert_v1_MongoDBList_To_v1alpha2_MongoDBList(in *v1.MongoDBList, out *MongoDBList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]MongoDB, len(*in))
		for i := range *in {
			if err := Convert_v1_MongoDB_To_v1alpha2_MongoDB(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_MongoDBList_To_v1alpha2_MongoDBList is an autogenerated conversion function.
func Convert_v1_MongoDBList_To_v1alpha2_MongoDBList(in *v1.MongoDBList, out *MongoDBList, s conversion.Scope) error {
	return autoConvert_v1_MongoDBList_To_v1alpha2_MongoDBList(in, out, s)
}

func autoConvert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode(in *MongoDBMongosNode, out *v1.MongoDBMongosNode, s conversion.Scope) error {
	if err := Convert_v1alpha2_MongoDBNode_To_v1_MongoDBNode(&in.MongoDBNode, &out.MongoDBNode, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode(in *MongoDBMongosNode, out *v1.MongoDBMongosNode, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode(in, out, s)
}

func autoConvert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode(in *v1.MongoDBMongosNode, out *MongoDBMongosNode, s conversion.Scope) error {
	if err := Convert_v1_MongoDBNode_To_v1alpha2_MongoDBNode(&in.MongoDBNode, &out.MongoDBNode, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode is an autogenerated conversion function.
func Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode(in *v1.MongoDBMongosNode, out *MongoDBMongosNode, s conversion.Scope) error {
	return autoConvert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode(in, out, s)
}

func autoConvert_v1alpha2_MongoDBNode_To_v1_MongoDBNode(in *MongoDBNode, out *v1.MongoDBNode, s conversion.Scope) error {
	out.Replicas = in.Replicas
	out.Prefix = in.Prefix
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.PodTemplate requires manual conversion: inconvertible types (kmodules.xyz/offshoot-api/api/v1.PodTemplateSpec vs *kmodules.xyz/offshoot-api/api/v2.PodTemplateSpec)
	return nil
}

func autoConvert_v1_MongoDBNode_To_v1alpha2_MongoDBNode(in *v1.MongoDBNode, out *MongoDBNode, s conversion.Scope) error {
	out.Replicas = in.Replicas
	out.Prefix = in.Prefix
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	// WARNING: in.PodTemplate requires manual conversion: inconvertible types (*kmodules.xyz/offshoot-api/api/v2.PodTemplateSpec vs kmodules.xyz/offshoot-api/api/v1.PodTemplateSpec)
	return nil
}

func autoConvert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet(in *MongoDBReplicaSet, out *v1.MongoDBReplicaSet, s conversion.Scope) error {
	out.Name = in.Name
	return nil
}

// Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet(in *MongoDBReplicaSet, out *v1.MongoDBReplicaSet, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet(in, out, s)
}

func autoConvert_v1_MongoDBReplicaSet_To_v1alpha2_MongoDBReplicaSet(in *v1.MongoDBReplicaSet, out *MongoDBReplicaSet, s conversion.Scope) error {
	out.Name = in.Name
	// WARNING: in.Horizons requires manual conversion: does not exist in peer-type
	return nil
}

func autoConvert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode(in *MongoDBShardNode, out *v1.MongoDBShardNode, s conversion.Scope) error {
	out.Shards = in.Shards
	if err := Convert_v1alpha2_MongoDBNode_To_v1_MongoDBNode(&in.MongoDBNode, &out.MongoDBNode, s); err != nil {
		return err
	}
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EphemeralStorage = (*corev1.EmptyDirVolumeSource)(unsafe.Pointer(in.EphemeralStorage))
	return nil
}

// Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode(in *MongoDBShardNode, out *v1.MongoDBShardNode, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode(in, out, s)
}

func autoConvert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode(in *v1.MongoDBShardNode, out *MongoDBShardNode, s conversion.Scope) error {
	out.Shards = in.Shards
	if err := Convert_v1_MongoDBNode_To_v1alpha2_MongoDBNode(&in.MongoDBNode, &out.MongoDBNode, s); err != nil {
		return err
	}
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EphemeralStorage = (*corev1.EmptyDirVolumeSource)(unsafe.Pointer(in.EphemeralStorage))
	return nil
}

// Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode is an autogenerated conversion function.
func Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode(in *v1.MongoDBShardNode, out *MongoDBShardNode, s conversion.Scope) error {
	return autoConvert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode(in, out, s)
}

func autoConvert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology(in *MongoDBShardingTopology, out *v1.MongoDBShardingTopology, s conversion.Scope) error {
	if err := Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode(&in.Shard, &out.Shard, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode(&in.ConfigServer, &out.ConfigServer, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode(&in.Mongos, &out.Mongos, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology(in *MongoDBShardingTopology, out *v1.MongoDBShardingTopology, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology(in, out, s)
}

func autoConvert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology(in *v1.MongoDBShardingTopology, out *MongoDBShardingTopology, s conversion.Scope) error {
	if err := Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode(&in.Shard, &out.Shard, s); err != nil {
		return err
	}
	if err := Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode(&in.ConfigServer, &out.ConfigServer, s); err != nil {
		return err
	}
	if err := Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode(&in.Mongos, &out.Mongos, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology is an autogenerated conversion function.
func Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology(in *v1.MongoDBShardingTopology, out *MongoDBShardingTopology, s conversion.Scope) error {
	return autoConvert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology(in, out, s)
}

func autoConvert_v1alpha2_MongoDBSpec_To_v1_MongoDBSpec(in *MongoDBSpec, out *v1.MongoDBSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.ReplicaSet != nil {
		in, out := &in.ReplicaSet, &out.ReplicaSet
		*out = new(v1.MongoDBReplicaSet)
		if err := Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.ReplicaSet = nil
	}
	if in.ShardTopology != nil {
		in, out := &in.ShardTopology, &out.ShardTopology
		*out = new(v1.MongoDBShardingTopology)
		if err := Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.ShardTopology = nil
	}
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EphemeralStorage = (*corev1.EmptyDirVolumeSource)(unsafe.Pointer(in.EphemeralStorage))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.ClusterAuthMode = v1.ClusterAuthMode(in.ClusterAuthMode)
	out.SSLMode = v1.SSLMode(in.SSLMode)
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if in.PodTemplate != nil {
		in, out := &in.PodTemplate, &out.PodTemplate
		*out = new(v2.PodTemplateSpec)
		if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.PodTemplate = nil
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.KeyFileSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.KeyFileSecret))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.StorageEngine = v1.StorageEngine(in.StorageEngine)
	// WARNING: in.Coordinator requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	if in.Arbiter != nil {
		in, out := &in.Arbiter, &out.Arbiter
		*out = new(v1.MongoArbiterNode)
		if err := Convert_v1alpha2_MongoArbiterNode_To_v1_MongoArbiterNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Arbiter = nil
	}
	if in.Hidden != nil {
		in, out := &in.Hidden, &out.Hidden
		*out = new(v1.MongoHiddenNode)
		if err := Convert_v1alpha2_MongoHiddenNode_To_v1_MongoHiddenNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Hidden = nil
	}
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*v1.Archiver)(unsafe.Pointer(in.Archiver))
	return nil
}

func autoConvert_v1_MongoDBSpec_To_v1alpha2_MongoDBSpec(in *v1.MongoDBSpec, out *MongoDBSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.ReplicaSet != nil {
		in, out := &in.ReplicaSet, &out.ReplicaSet
		*out = new(MongoDBReplicaSet)
		if err := Convert_v1_MongoDBReplicaSet_To_v1alpha2_MongoDBReplicaSet(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.ReplicaSet = nil
	}
	if in.ShardTopology != nil {
		in, out := &in.ShardTopology, &out.ShardTopology
		*out = new(MongoDBShardingTopology)
		if err := Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.ShardTopology = nil
	}
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.EphemeralStorage = (*corev1.EmptyDirVolumeSource)(unsafe.Pointer(in.EphemeralStorage))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.ClusterAuthMode = ClusterAuthMode(in.ClusterAuthMode)
	out.SSLMode = SSLMode(in.SSLMode)
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	if in.PodTemplate != nil {
		in, out := &in.PodTemplate, &out.PodTemplate
		*out = new(apiv1.PodTemplateSpec)
		if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.PodTemplate = nil
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.KeyFileSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.KeyFileSecret))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.StorageEngine = StorageEngine(in.StorageEngine)
	out.AllowedSchemas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	if in.Arbiter != nil {
		in, out := &in.Arbiter, &out.Arbiter
		*out = new(MongoArbiterNode)
		if err := Convert_v1_MongoArbiterNode_To_v1alpha2_MongoArbiterNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Arbiter = nil
	}
	if in.Hidden != nil {
		in, out := &in.Hidden, &out.Hidden
		*out = new(MongoHiddenNode)
		if err := Convert_v1_MongoHiddenNode_To_v1alpha2_MongoHiddenNode(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Hidden = nil
	}
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*Archiver)(unsafe.Pointer(in.Archiver))
	return nil
}

func autoConvert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus(in *MongoDBStatus, out *v1.MongoDBStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus is an autogenerated conversion function.
func Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus(in *MongoDBStatus, out *v1.MongoDBStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus(in, out, s)
}

func autoConvert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus(in *v1.MongoDBStatus, out *MongoDBStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus is an autogenerated conversion function.
func Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus(in *v1.MongoDBStatus, out *MongoDBStatus, s conversion.Scope) error {
	return autoConvert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus(in, out, s)
}

func autoConvert_v1alpha2_MongoHiddenNode_To_v1_MongoHiddenNode(in *MongoHiddenNode, out *v1.MongoHiddenNode, s conversion.Scope) error {
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.PodTemplate requires manual conversion: inconvertible types (kmodules.xyz/offshoot-api/api/v1.PodTemplateSpec vs *kmodules.xyz/offshoot-api/api/v2.PodTemplateSpec)
	out.Replicas = in.Replicas
	out.Storage = in.Storage
	return nil
}

func autoConvert_v1_MongoHiddenNode_To_v1alpha2_MongoHiddenNode(in *v1.MongoHiddenNode, out *MongoHiddenNode, s conversion.Scope) error {
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	// WARNING: in.PodTemplate requires manual conversion: inconvertible types (*kmodules.xyz/offshoot-api/api/v2.PodTemplateSpec vs kmodules.xyz/offshoot-api/api/v1.PodTemplateSpec)
	out.Replicas = in.Replicas
	out.Storage = in.Storage
	return nil
}

func autoConvert_v1alpha2_MySQL_To_v1_MySQL(in *MySQL, out *v1.MySQL, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_MySQLSpec_To_v1_MySQLSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_MySQL_To_v1_MySQL is an autogenerated conversion function.
func Convert_v1alpha2_MySQL_To_v1_MySQL(in *MySQL, out *v1.MySQL, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQL_To_v1_MySQL(in, out, s)
}

func autoConvert_v1_MySQL_To_v1alpha2_MySQL(in *v1.MySQL, out *MySQL, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_MySQLSpec_To_v1alpha2_MySQLSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_MySQL_To_v1alpha2_MySQL is an autogenerated conversion function.
func Convert_v1_MySQL_To_v1alpha2_MySQL(in *v1.MySQL, out *MySQL, s conversion.Scope) error {
	return autoConvert_v1_MySQL_To_v1alpha2_MySQL(in, out, s)
}

func autoConvert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec(in *MySQLGroupSpec, out *v1.MySQLGroupSpec, s conversion.Scope) error {
	out.Mode = (*v1.MySQLGroupMode)(unsafe.Pointer(in.Mode))
	out.Name = in.Name
	return nil
}

// Convert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec is an autogenerated conversion function.
func Convert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec(in *MySQLGroupSpec, out *v1.MySQLGroupSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec(in, out, s)
}

func autoConvert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec(in *v1.MySQLGroupSpec, out *MySQLGroupSpec, s conversion.Scope) error {
	out.Mode = (*MySQLGroupMode)(unsafe.Pointer(in.Mode))
	out.Name = in.Name
	return nil
}

// Convert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec is an autogenerated conversion function.
func Convert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec(in *v1.MySQLGroupSpec, out *MySQLGroupSpec, s conversion.Scope) error {
	return autoConvert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec(in, out, s)
}

func autoConvert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec(in *MySQLInnoDBClusterSpec, out *v1.MySQLInnoDBClusterSpec, s conversion.Scope) error {
	out.Mode = (*v1.MySQLGroupMode)(unsafe.Pointer(in.Mode))
	if err := Convert_v1alpha2_MySQLRouterSpec_To_v1_MySQLRouterSpec(&in.Router, &out.Router, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec is an autogenerated conversion function.
func Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec(in *MySQLInnoDBClusterSpec, out *v1.MySQLInnoDBClusterSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec(in, out, s)
}

func autoConvert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec(in *v1.MySQLInnoDBClusterSpec, out *MySQLInnoDBClusterSpec, s conversion.Scope) error {
	out.Mode = (*MySQLGroupMode)(unsafe.Pointer(in.Mode))
	if err := Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec(&in.Router, &out.Router, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec is an autogenerated conversion function.
func Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec(in *v1.MySQLInnoDBClusterSpec, out *MySQLInnoDBClusterSpec, s conversion.Scope) error {
	return autoConvert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec(in, out, s)
}

func autoConvert_v1alpha2_MySQLList_To_v1_MySQLList(in *MySQLList, out *v1.MySQLList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.MySQL, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_MySQL_To_v1_MySQL(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_MySQLList_To_v1_MySQLList is an autogenerated conversion function.
func Convert_v1alpha2_MySQLList_To_v1_MySQLList(in *MySQLList, out *v1.MySQLList, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQLList_To_v1_MySQLList(in, out, s)
}

func autoConvert_v1_MySQLList_To_v1alpha2_MySQLList(in *v1.MySQLList, out *MySQLList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]MySQL, len(*in))
		for i := range *in {
			if err := Convert_v1_MySQL_To_v1alpha2_MySQL(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_MySQLList_To_v1alpha2_MySQLList is an autogenerated conversion function.
func Convert_v1_MySQLList_To_v1alpha2_MySQLList(in *v1.MySQLList, out *MySQLList, s conversion.Scope) error {
	return autoConvert_v1_MySQLList_To_v1alpha2_MySQLList(in, out, s)
}

func autoConvert_v1alpha2_MySQLRouterSpec_To_v1_MySQLRouterSpec(in *MySQLRouterSpec, out *v1.MySQLRouterSpec, s conversion.Scope) error {
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.PodTemplate != nil {
		in, out := &in.PodTemplate, &out.PodTemplate
		*out = new(v2.PodTemplateSpec)
		if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.PodTemplate = nil
	}
	return nil
}

func autoConvert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec(in *v1.MySQLRouterSpec, out *MySQLRouterSpec, s conversion.Scope) error {
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.PodTemplate != nil {
		in, out := &in.PodTemplate, &out.PodTemplate
		*out = new(apiv1.PodTemplateSpec)
		if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.PodTemplate = nil
	}
	return nil
}

// Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec is an autogenerated conversion function.
func Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec(in *v1.MySQLRouterSpec, out *MySQLRouterSpec, s conversion.Scope) error {
	return autoConvert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec(in, out, s)
}

func autoConvert_v1alpha2_MySQLSpec_To_v1_MySQLSpec(in *MySQLSpec, out *v1.MySQLSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(v1.MySQLTopology)
		if err := Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Topology = nil
	}
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.RequireSSL = in.RequireSSL
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.UseAddressType = v1.AddressType(in.UseAddressType)
	// WARNING: in.Coordinator requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.AllowedReadReplicas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedReadReplicas))
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*v1.Archiver)(unsafe.Pointer(in.Archiver))
	return nil
}

func autoConvert_v1_MySQLSpec_To_v1alpha2_MySQLSpec(in *v1.MySQLSpec, out *MySQLSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(MySQLTopology)
		if err := Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Topology = nil
	}
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.RequireSSL = in.RequireSSL
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.UseAddressType = AddressType(in.UseAddressType)
	out.AllowedSchemas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.AllowedReadReplicas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedReadReplicas))
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*Archiver)(unsafe.Pointer(in.Archiver))
	return nil
}

func autoConvert_v1alpha2_MySQLStatus_To_v1_MySQLStatus(in *MySQLStatus, out *v1.MySQLStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus is an autogenerated conversion function.
func Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus(in *MySQLStatus, out *v1.MySQLStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQLStatus_To_v1_MySQLStatus(in, out, s)
}

func autoConvert_v1_MySQLStatus_To_v1alpha2_MySQLStatus(in *v1.MySQLStatus, out *MySQLStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus is an autogenerated conversion function.
func Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus(in *v1.MySQLStatus, out *MySQLStatus, s conversion.Scope) error {
	return autoConvert_v1_MySQLStatus_To_v1alpha2_MySQLStatus(in, out, s)
}

func autoConvert_v1alpha2_MySQLTopology_To_v1_MySQLTopology(in *MySQLTopology, out *v1.MySQLTopology, s conversion.Scope) error {
	out.Mode = (*v1.MySQLMode)(unsafe.Pointer(in.Mode))
	out.Group = (*v1.MySQLGroupSpec)(unsafe.Pointer(in.Group))
	if in.InnoDBCluster != nil {
		in, out := &in.InnoDBCluster, &out.InnoDBCluster
		*out = new(v1.MySQLInnoDBClusterSpec)
		if err := Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.InnoDBCluster = nil
	}
	out.RemoteReplica = (*v1.RemoteReplicaSpec)(unsafe.Pointer(in.RemoteReplica))
	out.SemiSync = (*v1.SemiSyncSpec)(unsafe.Pointer(in.SemiSync))
	return nil
}

// Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology is an autogenerated conversion function.
func Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology(in *MySQLTopology, out *v1.MySQLTopology, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQLTopology_To_v1_MySQLTopology(in, out, s)
}

func autoConvert_v1_MySQLTopology_To_v1alpha2_MySQLTopology(in *v1.MySQLTopology, out *MySQLTopology, s conversion.Scope) error {
	out.Mode = (*MySQLMode)(unsafe.Pointer(in.Mode))
	out.Group = (*MySQLGroupSpec)(unsafe.Pointer(in.Group))
	if in.InnoDBCluster != nil {
		in, out := &in.InnoDBCluster, &out.InnoDBCluster
		*out = new(MySQLInnoDBClusterSpec)
		if err := Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.InnoDBCluster = nil
	}
	out.RemoteReplica = (*RemoteReplicaSpec)(unsafe.Pointer(in.RemoteReplica))
	out.SemiSync = (*SemiSyncSpec)(unsafe.Pointer(in.SemiSync))
	return nil
}

// Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology is an autogenerated conversion function.
func Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology(in *v1.MySQLTopology, out *MySQLTopology, s conversion.Scope) error {
	return autoConvert_v1_MySQLTopology_To_v1alpha2_MySQLTopology(in, out, s)
}

func autoConvert_v1alpha2_MySQLUser_To_v1_MySQLUser(in *MySQLUser, out *v1.MySQLUser, s conversion.Scope) error {
	out.Username = in.Username
	out.Active = (*int)(unsafe.Pointer(in.Active))
	out.UseSSL = in.UseSSL
	out.DefaultHostgroup = in.DefaultHostgroup
	out.DefaultSchema = in.DefaultSchema
	out.SchemaLocked = in.SchemaLocked
	out.TransactionPersistent = (*int)(unsafe.Pointer(in.TransactionPersistent))
	out.FastForward = in.FastForward
	out.Backend = (*int)(unsafe.Pointer(in.Backend))
	out.Frontend = (*int)(unsafe.Pointer(in.Frontend))
	out.MaxConnections = (*int32)(unsafe.Pointer(in.MaxConnections))
	out.Attributes = in.Attributes
	out.Comment = in.Comment
	return nil
}

// Convert_v1alpha2_MySQLUser_To_v1_MySQLUser is an autogenerated conversion function.
func Convert_v1alpha2_MySQLUser_To_v1_MySQLUser(in *MySQLUser, out *v1.MySQLUser, s conversion.Scope) error {
	return autoConvert_v1alpha2_MySQLUser_To_v1_MySQLUser(in, out, s)
}

func autoConvert_v1_MySQLUser_To_v1alpha2_MySQLUser(in *v1.MySQLUser, out *MySQLUser, s conversion.Scope) error {
	out.Username = in.Username
	out.Active = (*int)(unsafe.Pointer(in.Active))
	out.UseSSL = in.UseSSL
	out.DefaultHostgroup = in.DefaultHostgroup
	out.DefaultSchema = in.DefaultSchema
	out.SchemaLocked = in.SchemaLocked
	out.TransactionPersistent = (*int)(unsafe.Pointer(in.TransactionPersistent))
	out.FastForward = in.FastForward
	out.Backend = (*int)(unsafe.Pointer(in.Backend))
	out.Frontend = (*int)(unsafe.Pointer(in.Frontend))
	out.MaxConnections = (*int32)(unsafe.Pointer(in.MaxConnections))
	out.Attributes = in.Attributes
	out.Comment = in.Comment
	return nil
}

// Convert_v1_MySQLUser_To_v1alpha2_MySQLUser is an autogenerated conversion function.
func Convert_v1_MySQLUser_To_v1alpha2_MySQLUser(in *v1.MySQLUser, out *MySQLUser, s conversion.Scope) error {
	return autoConvert_v1_MySQLUser_To_v1alpha2_MySQLUser(in, out, s)
}

func autoConvert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec(in *NamedServiceTemplateSpec, out *v1.NamedServiceTemplateSpec, s conversion.Scope) error {
	out.Alias = v1.ServiceAlias(in.Alias)
	out.ServiceTemplateSpec = in.ServiceTemplateSpec
	return nil
}

// Convert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec is an autogenerated conversion function.
func Convert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec(in *NamedServiceTemplateSpec, out *v1.NamedServiceTemplateSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec(in, out, s)
}

func autoConvert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec(in *v1.NamedServiceTemplateSpec, out *NamedServiceTemplateSpec, s conversion.Scope) error {
	out.Alias = ServiceAlias(in.Alias)
	out.ServiceTemplateSpec = in.ServiceTemplateSpec
	return nil
}

// Convert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec is an autogenerated conversion function.
func Convert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec(in *v1.NamedServiceTemplateSpec, out *NamedServiceTemplateSpec, s conversion.Scope) error {
	return autoConvert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec(in, out, s)
}

func autoConvert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB(in *PerconaXtraDB, out *v1.PerconaXtraDB, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_PerconaXtraDBSpec_To_v1_PerconaXtraDBSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB is an autogenerated conversion function.
func Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB(in *PerconaXtraDB, out *v1.PerconaXtraDB, s conversion.Scope) error {
	return autoConvert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB(in, out, s)
}

func autoConvert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB(in *v1.PerconaXtraDB, out *PerconaXtraDB, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_PerconaXtraDBSpec_To_v1alpha2_PerconaXtraDBSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB is an autogenerated conversion function.
func Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB(in *v1.PerconaXtraDB, out *PerconaXtraDB, s conversion.Scope) error {
	return autoConvert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB(in, out, s)
}

func autoConvert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList(in *PerconaXtraDBList, out *v1.PerconaXtraDBList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.PerconaXtraDB, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList is an autogenerated conversion function.
func Convert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList(in *PerconaXtraDBList, out *v1.PerconaXtraDBList, s conversion.Scope) error {
	return autoConvert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList(in, out, s)
}

func autoConvert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList(in *v1.PerconaXtraDBList, out *PerconaXtraDBList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]PerconaXtraDB, len(*in))
		for i := range *in {
			if err := Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList is an autogenerated conversion function.
func Convert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList(in *v1.PerconaXtraDBList, out *PerconaXtraDBList, s conversion.Scope) error {
	return autoConvert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList(in, out, s)
}

func autoConvert_v1alpha2_PerconaXtraDBSpec_To_v1_PerconaXtraDBSpec(in *PerconaXtraDBSpec, out *v1.PerconaXtraDBSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.RequireSSL = in.RequireSSL
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	// WARNING: in.Coordinator requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	out.SystemUserSecrets = (*v1.SystemUserSecretsSpec)(unsafe.Pointer(in.SystemUserSecrets))
	return nil
}

func autoConvert_v1_PerconaXtraDBSpec_To_v1alpha2_PerconaXtraDBSpec(in *v1.PerconaXtraDBSpec, out *PerconaXtraDBSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.RequireSSL = in.RequireSSL
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	out.SystemUserSecrets = (*SystemUserSecretsSpec)(unsafe.Pointer(in.SystemUserSecrets))
	return nil
}

func autoConvert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus(in *PerconaXtraDBStatus, out *v1.PerconaXtraDBStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus is an autogenerated conversion function.
func Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus(in *PerconaXtraDBStatus, out *v1.PerconaXtraDBStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus(in, out, s)
}

func autoConvert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus(in *v1.PerconaXtraDBStatus, out *PerconaXtraDBStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus is an autogenerated conversion function.
func Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus(in *v1.PerconaXtraDBStatus, out *PerconaXtraDBStatus, s conversion.Scope) error {
	return autoConvert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus(in, out, s)
}

func autoConvert_v1alpha2_PgBouncer_To_v1_PgBouncer(in *PgBouncer, out *v1.PgBouncer, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_PgBouncerSpec_To_v1_PgBouncerSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_PgBouncer_To_v1_PgBouncer is an autogenerated conversion function.
func Convert_v1alpha2_PgBouncer_To_v1_PgBouncer(in *PgBouncer, out *v1.PgBouncer, s conversion.Scope) error {
	return autoConvert_v1alpha2_PgBouncer_To_v1_PgBouncer(in, out, s)
}

func autoConvert_v1_PgBouncer_To_v1alpha2_PgBouncer(in *v1.PgBouncer, out *PgBouncer, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_PgBouncerSpec_To_v1alpha2_PgBouncerSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_PgBouncer_To_v1alpha2_PgBouncer is an autogenerated conversion function.
func Convert_v1_PgBouncer_To_v1alpha2_PgBouncer(in *v1.PgBouncer, out *PgBouncer, s conversion.Scope) error {
	return autoConvert_v1_PgBouncer_To_v1alpha2_PgBouncer(in, out, s)
}

func autoConvert_v1alpha2_PgBouncerList_To_v1_PgBouncerList(in *PgBouncerList, out *v1.PgBouncerList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.PgBouncer, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_PgBouncer_To_v1_PgBouncer(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_PgBouncerList_To_v1_PgBouncerList is an autogenerated conversion function.
func Convert_v1alpha2_PgBouncerList_To_v1_PgBouncerList(in *PgBouncerList, out *v1.PgBouncerList, s conversion.Scope) error {
	return autoConvert_v1alpha2_PgBouncerList_To_v1_PgBouncerList(in, out, s)
}

func autoConvert_v1_PgBouncerList_To_v1alpha2_PgBouncerList(in *v1.PgBouncerList, out *PgBouncerList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]PgBouncer, len(*in))
		for i := range *in {
			if err := Convert_v1_PgBouncer_To_v1alpha2_PgBouncer(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_PgBouncerList_To_v1alpha2_PgBouncerList is an autogenerated conversion function.
func Convert_v1_PgBouncerList_To_v1alpha2_PgBouncerList(in *v1.PgBouncerList, out *PgBouncerList, s conversion.Scope) error {
	return autoConvert_v1_PgBouncerList_To_v1alpha2_PgBouncerList(in, out, s)
}

func autoConvert_v1alpha2_PgBouncerSpec_To_v1_PgBouncerSpec(in *PgBouncerSpec, out *v1.PgBouncerSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_Database_To_v1_Database(&in.Database, &out.Database, s); err != nil {
		return err
	}
	out.ConnectionPool = (*v1.ConnectionPoolConfig)(unsafe.Pointer(in.ConnectionPool))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.SSLMode = v1.PgBouncerSSLMode(in.SSLMode)
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	out.Halted = in.Halted
	return nil
}

func autoConvert_v1_PgBouncerSpec_To_v1alpha2_PgBouncerSpec(in *v1.PgBouncerSpec, out *PgBouncerSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	if err := Convert_v1_Database_To_v1alpha2_Database(&in.Database, &out.Database, s); err != nil {
		return err
	}
	out.ConnectionPool = (*ConnectionPoolConfig)(unsafe.Pointer(in.ConnectionPool))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	// WARNING: in.Init requires manual conversion: does not exist in peer-type
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.SSLMode = PgBouncerSSLMode(in.SSLMode)
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	out.Halted = in.Halted
	return nil
}

func autoConvert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus(in *PgBouncerStatus, out *v1.PgBouncerStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	return nil
}

// Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus is an autogenerated conversion function.
func Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus(in *PgBouncerStatus, out *v1.PgBouncerStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus(in, out, s)
}

func autoConvert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus(in *v1.PgBouncerStatus, out *PgBouncerStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	return nil
}

// Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus is an autogenerated conversion function.
func Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus(in *v1.PgBouncerStatus, out *PgBouncerStatus, s conversion.Scope) error {
	return autoConvert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus(in, out, s)
}

func autoConvert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig(in *PostgreLeaderElectionConfig, out *v1.PostgreLeaderElectionConfig, s conversion.Scope) error {
	out.LeaseDurationSeconds = in.LeaseDurationSeconds
	out.RenewDeadlineSeconds = in.RenewDeadlineSeconds
	out.RetryPeriodSeconds = in.RetryPeriodSeconds
	out.MaximumLagBeforeFailover = in.MaximumLagBeforeFailover
	out.Period = in.Period
	out.ElectionTick = in.ElectionTick
	out.HeartbeatTick = in.HeartbeatTick
	out.TransferLeadershipInterval = (*metav1.Duration)(unsafe.Pointer(in.TransferLeadershipInterval))
	out.TransferLeadershipTimeout = (*metav1.Duration)(unsafe.Pointer(in.TransferLeadershipTimeout))
	return nil
}

// Convert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig is an autogenerated conversion function.
func Convert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig(in *PostgreLeaderElectionConfig, out *v1.PostgreLeaderElectionConfig, s conversion.Scope) error {
	return autoConvert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig(in, out, s)
}

func autoConvert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig(in *v1.PostgreLeaderElectionConfig, out *PostgreLeaderElectionConfig, s conversion.Scope) error {
	out.LeaseDurationSeconds = in.LeaseDurationSeconds
	out.RenewDeadlineSeconds = in.RenewDeadlineSeconds
	out.RetryPeriodSeconds = in.RetryPeriodSeconds
	out.MaximumLagBeforeFailover = in.MaximumLagBeforeFailover
	out.Period = in.Period
	out.ElectionTick = in.ElectionTick
	out.HeartbeatTick = in.HeartbeatTick
	out.TransferLeadershipInterval = (*metav1.Duration)(unsafe.Pointer(in.TransferLeadershipInterval))
	out.TransferLeadershipTimeout = (*metav1.Duration)(unsafe.Pointer(in.TransferLeadershipTimeout))
	return nil
}

// Convert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig is an autogenerated conversion function.
func Convert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig(in *v1.PostgreLeaderElectionConfig, out *PostgreLeaderElectionConfig, s conversion.Scope) error {
	return autoConvert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig(in, out, s)
}

func autoConvert_v1alpha2_Postgres_To_v1_Postgres(in *Postgres, out *v1.Postgres, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_PostgresSpec_To_v1_PostgresSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_Postgres_To_v1_Postgres is an autogenerated conversion function.
func Convert_v1alpha2_Postgres_To_v1_Postgres(in *Postgres, out *v1.Postgres, s conversion.Scope) error {
	return autoConvert_v1alpha2_Postgres_To_v1_Postgres(in, out, s)
}

func autoConvert_v1_Postgres_To_v1alpha2_Postgres(in *v1.Postgres, out *Postgres, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_PostgresSpec_To_v1alpha2_PostgresSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_Postgres_To_v1alpha2_Postgres is an autogenerated conversion function.
func Convert_v1_Postgres_To_v1alpha2_Postgres(in *v1.Postgres, out *Postgres, s conversion.Scope) error {
	return autoConvert_v1_Postgres_To_v1alpha2_Postgres(in, out, s)
}

func autoConvert_v1alpha2_PostgresList_To_v1_PostgresList(in *PostgresList, out *v1.PostgresList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.Postgres, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_Postgres_To_v1_Postgres(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_PostgresList_To_v1_PostgresList is an autogenerated conversion function.
func Convert_v1alpha2_PostgresList_To_v1_PostgresList(in *PostgresList, out *v1.PostgresList, s conversion.Scope) error {
	return autoConvert_v1alpha2_PostgresList_To_v1_PostgresList(in, out, s)
}

func autoConvert_v1_PostgresList_To_v1alpha2_PostgresList(in *v1.PostgresList, out *PostgresList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Postgres, len(*in))
		for i := range *in {
			if err := Convert_v1_Postgres_To_v1alpha2_Postgres(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_PostgresList_To_v1alpha2_PostgresList is an autogenerated conversion function.
func Convert_v1_PostgresList_To_v1alpha2_PostgresList(in *v1.PostgresList, out *PostgresList, s conversion.Scope) error {
	return autoConvert_v1_PostgresList_To_v1alpha2_PostgresList(in, out, s)
}

func autoConvert_v1alpha2_PostgresReplication_To_v1_PostgresReplication(in *PostgresReplication, out *v1.PostgresReplication, s conversion.Scope) error {
	out.WALLimitPolicy = v1.WALLimitPolicy(in.WALLimitPolicy)
	out.WalKeepSizeInMegaBytes = (*int32)(unsafe.Pointer(in.WalKeepSizeInMegaBytes))
	out.WalKeepSegment = (*int32)(unsafe.Pointer(in.WalKeepSegment))
	out.MaxSlotWALKeepSizeInMegaBytes = (*int32)(unsafe.Pointer(in.MaxSlotWALKeepSizeInMegaBytes))
	out.ForceFailoverAcceptingDataLossAfter = (*metav1.Duration)(unsafe.Pointer(in.ForceFailoverAcceptingDataLossAfter))
	return nil
}

// Convert_v1alpha2_PostgresReplication_To_v1_PostgresReplication is an autogenerated conversion function.
func Convert_v1alpha2_PostgresReplication_To_v1_PostgresReplication(in *PostgresReplication, out *v1.PostgresReplication, s conversion.Scope) error {
	return autoConvert_v1alpha2_PostgresReplication_To_v1_PostgresReplication(in, out, s)
}

func autoConvert_v1_PostgresReplication_To_v1alpha2_PostgresReplication(in *v1.PostgresReplication, out *PostgresReplication, s conversion.Scope) error {
	out.WALLimitPolicy = WALLimitPolicy(in.WALLimitPolicy)
	out.WalKeepSizeInMegaBytes = (*int32)(unsafe.Pointer(in.WalKeepSizeInMegaBytes))
	out.WalKeepSegment = (*int32)(unsafe.Pointer(in.WalKeepSegment))
	out.MaxSlotWALKeepSizeInMegaBytes = (*int32)(unsafe.Pointer(in.MaxSlotWALKeepSizeInMegaBytes))
	out.ForceFailoverAcceptingDataLossAfter = (*metav1.Duration)(unsafe.Pointer(in.ForceFailoverAcceptingDataLossAfter))
	return nil
}

// Convert_v1_PostgresReplication_To_v1alpha2_PostgresReplication is an autogenerated conversion function.
func Convert_v1_PostgresReplication_To_v1alpha2_PostgresReplication(in *v1.PostgresReplication, out *PostgresReplication, s conversion.Scope) error {
	return autoConvert_v1_PostgresReplication_To_v1alpha2_PostgresReplication(in, out, s)
}

func autoConvert_v1alpha2_PostgresSpec_To_v1_PostgresSpec(in *PostgresSpec, out *v1.PostgresSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.StandbyMode = (*v1.PostgresStandbyMode)(unsafe.Pointer(in.StandbyMode))
	out.StreamingMode = (*v1.PostgresStreamingMode)(unsafe.Pointer(in.StreamingMode))
	out.Mode = (*v1.PostgreSQLMode)(unsafe.Pointer(in.Mode))
	out.RemoteReplica = (*v1.RemoteReplicaSpec)(unsafe.Pointer(in.RemoteReplica))
	out.LeaderElection = (*v1.PostgreLeaderElectionConfig)(unsafe.Pointer(in.LeaderElection))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.ClientAuthMode = v1.PostgresClientAuthMode(in.ClientAuthMode)
	out.SSLMode = v1.PostgresSSLMode(in.SSLMode)
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	// WARNING: in.Coordinator requires manual conversion: does not exist in peer-type
	out.EnforceFsGroup = in.EnforceFsGroup
	out.AllowedSchemas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*v1.Archiver)(unsafe.Pointer(in.Archiver))
	out.Arbiter = (*v1.ArbiterSpec)(unsafe.Pointer(in.Arbiter))
	out.Replication = (*v1.PostgresReplication)(unsafe.Pointer(in.Replication))
	return nil
}

func autoConvert_v1_PostgresSpec_To_v1alpha2_PostgresSpec(in *v1.PostgresSpec, out *PostgresSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	// WARNING: in.Distributed requires manual conversion: does not exist in peer-type
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.StandbyMode = (*PostgresStandbyMode)(unsafe.Pointer(in.StandbyMode))
	out.StreamingMode = (*PostgresStreamingMode)(unsafe.Pointer(in.StreamingMode))
	// WARNING: in.SynchronousReplicationConfig requires manual conversion: does not exist in peer-type
	out.Mode = (*PostgreSQLMode)(unsafe.Pointer(in.Mode))
	out.RemoteReplica = (*RemoteReplicaSpec)(unsafe.Pointer(in.RemoteReplica))
	out.LeaderElection = (*PostgreLeaderElectionConfig)(unsafe.Pointer(in.LeaderElection))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.ClientAuthMode = PostgresClientAuthMode(in.ClientAuthMode)
	out.SSLMode = PostgresSSLMode(in.SSLMode)
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.EnforceFsGroup = in.EnforceFsGroup
	out.AllowedSchemas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	out.Archiver = (*Archiver)(unsafe.Pointer(in.Archiver))
	out.Arbiter = (*ArbiterSpec)(unsafe.Pointer(in.Arbiter))
	out.Replication = (*PostgresReplication)(unsafe.Pointer(in.Replication))
	// WARNING: in.ReadReplicas requires manual conversion: does not exist in peer-type
	// WARNING: in.TDE requires manual conversion: does not exist in peer-type
	return nil
}

func autoConvert_v1alpha2_PostgresStatus_To_v1_PostgresStatus(in *PostgresStatus, out *v1.PostgresStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus is an autogenerated conversion function.
func Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus(in *PostgresStatus, out *v1.PostgresStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_PostgresStatus_To_v1_PostgresStatus(in, out, s)
}

func autoConvert_v1_PostgresStatus_To_v1alpha2_PostgresStatus(in *v1.PostgresStatus, out *PostgresStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus is an autogenerated conversion function.
func Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus(in *v1.PostgresStatus, out *PostgresStatus, s conversion.Scope) error {
	return autoConvert_v1_PostgresStatus_To_v1alpha2_PostgresStatus(in, out, s)
}

func autoConvert_v1alpha2_ProxySQL_To_v1_ProxySQL(in *ProxySQL, out *v1.ProxySQL, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_ProxySQLSpec_To_v1_ProxySQLSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_ProxySQL_To_v1_ProxySQL is an autogenerated conversion function.
func Convert_v1alpha2_ProxySQL_To_v1_ProxySQL(in *ProxySQL, out *v1.ProxySQL, s conversion.Scope) error {
	return autoConvert_v1alpha2_ProxySQL_To_v1_ProxySQL(in, out, s)
}

func autoConvert_v1_ProxySQL_To_v1alpha2_ProxySQL(in *v1.ProxySQL, out *ProxySQL, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_ProxySQLSpec_To_v1alpha2_ProxySQLSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_ProxySQL_To_v1alpha2_ProxySQL is an autogenerated conversion function.
func Convert_v1_ProxySQL_To_v1alpha2_ProxySQL(in *v1.ProxySQL, out *ProxySQL, s conversion.Scope) error {
	return autoConvert_v1_ProxySQL_To_v1alpha2_ProxySQL(in, out, s)
}

func autoConvert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration(in *ProxySQLConfiguration, out *v1.ProxySQLConfiguration, s conversion.Scope) error {
	out.MySQLUsers = *(*[]v1.MySQLUser)(unsafe.Pointer(&in.MySQLUsers))
	out.MySQLQueryRules = *(*[]*runtime.RawExtension)(unsafe.Pointer(&in.MySQLQueryRules))
	out.MySQLVariables = (*runtime.RawExtension)(unsafe.Pointer(in.MySQLVariables))
	out.AdminVariables = (*runtime.RawExtension)(unsafe.Pointer(in.AdminVariables))
	return nil
}

// Convert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration is an autogenerated conversion function.
func Convert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration(in *ProxySQLConfiguration, out *v1.ProxySQLConfiguration, s conversion.Scope) error {
	return autoConvert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration(in, out, s)
}

func autoConvert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration(in *v1.ProxySQLConfiguration, out *ProxySQLConfiguration, s conversion.Scope) error {
	out.MySQLUsers = *(*[]MySQLUser)(unsafe.Pointer(&in.MySQLUsers))
	out.MySQLQueryRules = *(*[]*runtime.RawExtension)(unsafe.Pointer(&in.MySQLQueryRules))
	out.MySQLVariables = (*runtime.RawExtension)(unsafe.Pointer(in.MySQLVariables))
	out.AdminVariables = (*runtime.RawExtension)(unsafe.Pointer(in.AdminVariables))
	return nil
}

// Convert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration is an autogenerated conversion function.
func Convert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration(in *v1.ProxySQLConfiguration, out *ProxySQLConfiguration, s conversion.Scope) error {
	return autoConvert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration(in, out, s)
}

func autoConvert_v1alpha2_ProxySQLList_To_v1_ProxySQLList(in *ProxySQLList, out *v1.ProxySQLList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.ProxySQL, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_ProxySQL_To_v1_ProxySQL(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_ProxySQLList_To_v1_ProxySQLList is an autogenerated conversion function.
func Convert_v1alpha2_ProxySQLList_To_v1_ProxySQLList(in *ProxySQLList, out *v1.ProxySQLList, s conversion.Scope) error {
	return autoConvert_v1alpha2_ProxySQLList_To_v1_ProxySQLList(in, out, s)
}

func autoConvert_v1_ProxySQLList_To_v1alpha2_ProxySQLList(in *v1.ProxySQLList, out *ProxySQLList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ProxySQL, len(*in))
		for i := range *in {
			if err := Convert_v1_ProxySQL_To_v1alpha2_ProxySQL(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_ProxySQLList_To_v1alpha2_ProxySQLList is an autogenerated conversion function.
func Convert_v1_ProxySQLList_To_v1alpha2_ProxySQLList(in *v1.ProxySQLList, out *ProxySQLList, s conversion.Scope) error {
	return autoConvert_v1_ProxySQLList_To_v1alpha2_ProxySQLList(in, out, s)
}

func autoConvert_v1alpha2_ProxySQLSpec_To_v1_ProxySQLSpec(in *ProxySQLSpec, out *v1.ProxySQLSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.SyncUsers = in.SyncUsers
	out.InitConfiguration = (*v1.ProxySQLConfiguration)(unsafe.Pointer(in.InitConfiguration))
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Backend = (*corev1.LocalObjectReference)(unsafe.Pointer(in.Backend))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	out.Halted = in.Halted
	return nil
}

func autoConvert_v1_ProxySQLSpec_To_v1alpha2_ProxySQLSpec(in *v1.ProxySQLSpec, out *ProxySQLSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.SyncUsers = in.SyncUsers
	out.InitConfiguration = (*ProxySQLConfiguration)(unsafe.Pointer(in.InitConfiguration))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Backend = (*corev1.LocalObjectReference)(unsafe.Pointer(in.Backend))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	out.Halted = in.Halted
	return nil
}

func autoConvert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus(in *ProxySQLStatus, out *v1.ProxySQLStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus is an autogenerated conversion function.
func Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus(in *ProxySQLStatus, out *v1.ProxySQLStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus(in, out, s)
}

func autoConvert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus(in *v1.ProxySQLStatus, out *ProxySQLStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus is an autogenerated conversion function.
func Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus(in *v1.ProxySQLStatus, out *ProxySQLStatus, s conversion.Scope) error {
	return autoConvert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus(in, out, s)
}

func autoConvert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget(in *RecoveryTarget, out *v1.RecoveryTarget, s conversion.Scope) error {
	out.TargetTime = in.TargetTime
	out.TargetTimeline = in.TargetTimeline
	out.TargetXID = in.TargetXID
	out.TargetInclusive = (*bool)(unsafe.Pointer(in.TargetInclusive))
	return nil
}

// Convert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget is an autogenerated conversion function.
func Convert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget(in *RecoveryTarget, out *v1.RecoveryTarget, s conversion.Scope) error {
	return autoConvert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget(in, out, s)
}

func autoConvert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget(in *v1.RecoveryTarget, out *RecoveryTarget, s conversion.Scope) error {
	out.TargetTime = in.TargetTime
	out.TargetTimeline = in.TargetTimeline
	out.TargetXID = in.TargetXID
	out.TargetInclusive = (*bool)(unsafe.Pointer(in.TargetInclusive))
	return nil
}

// Convert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget is an autogenerated conversion function.
func Convert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget(in *v1.RecoveryTarget, out *RecoveryTarget, s conversion.Scope) error {
	return autoConvert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget(in, out, s)
}

func autoConvert_v1alpha2_Redis_To_v1_Redis(in *Redis, out *v1.Redis, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_RedisSpec_To_v1_RedisSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_RedisStatus_To_v1_RedisStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_Redis_To_v1_Redis is an autogenerated conversion function.
func Convert_v1alpha2_Redis_To_v1_Redis(in *Redis, out *v1.Redis, s conversion.Scope) error {
	return autoConvert_v1alpha2_Redis_To_v1_Redis(in, out, s)
}

func autoConvert_v1_Redis_To_v1alpha2_Redis(in *v1.Redis, out *Redis, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_RedisSpec_To_v1alpha2_RedisSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_RedisStatus_To_v1alpha2_RedisStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_Redis_To_v1alpha2_Redis is an autogenerated conversion function.
func Convert_v1_Redis_To_v1alpha2_Redis(in *v1.Redis, out *Redis, s conversion.Scope) error {
	return autoConvert_v1_Redis_To_v1alpha2_Redis(in, out, s)
}

func autoConvert_v1alpha2_RedisClusterSpec_To_v1_RedisClusterSpec(in *RedisClusterSpec, out *v1.RedisClusterSpec, s conversion.Scope) error {
	// WARNING: in.Master requires manual conversion: does not exist in peer-type
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Announce = (*v1.Announce)(unsafe.Pointer(in.Announce))
	return nil
}

func autoConvert_v1_RedisClusterSpec_To_v1alpha2_RedisClusterSpec(in *v1.RedisClusterSpec, out *RedisClusterSpec, s conversion.Scope) error {
	// WARNING: in.Shards requires manual conversion: does not exist in peer-type
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Announce = (*Announce)(unsafe.Pointer(in.Announce))
	return nil
}

func autoConvert_v1alpha2_RedisList_To_v1_RedisList(in *RedisList, out *v1.RedisList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.Redis, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_Redis_To_v1_Redis(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_RedisList_To_v1_RedisList is an autogenerated conversion function.
func Convert_v1alpha2_RedisList_To_v1_RedisList(in *RedisList, out *v1.RedisList, s conversion.Scope) error {
	return autoConvert_v1alpha2_RedisList_To_v1_RedisList(in, out, s)
}

func autoConvert_v1_RedisList_To_v1alpha2_RedisList(in *v1.RedisList, out *RedisList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Redis, len(*in))
		for i := range *in {
			if err := Convert_v1_Redis_To_v1alpha2_Redis(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_RedisList_To_v1alpha2_RedisList is an autogenerated conversion function.
func Convert_v1_RedisList_To_v1alpha2_RedisList(in *v1.RedisList, out *RedisList, s conversion.Scope) error {
	return autoConvert_v1_RedisList_To_v1alpha2_RedisList(in, out, s)
}

func autoConvert_v1alpha2_RedisSentinel_To_v1_RedisSentinel(in *RedisSentinel, out *v1.RedisSentinel, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1alpha2_RedisSentinelSpec_To_v1_RedisSentinelSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel is an autogenerated conversion function.
func Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel(in *RedisSentinel, out *v1.RedisSentinel, s conversion.Scope) error {
	return autoConvert_v1alpha2_RedisSentinel_To_v1_RedisSentinel(in, out, s)
}

func autoConvert_v1_RedisSentinel_To_v1alpha2_RedisSentinel(in *v1.RedisSentinel, out *RedisSentinel, s conversion.Scope) error {
	out.ObjectMeta = in.ObjectMeta
	if err := Convert_v1_RedisSentinelSpec_To_v1alpha2_RedisSentinelSpec(&in.Spec, &out.Spec, s); err != nil {
		return err
	}
	if err := Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus(&in.Status, &out.Status, s); err != nil {
		return err
	}
	return nil
}

// Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel is an autogenerated conversion function.
func Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel(in *v1.RedisSentinel, out *RedisSentinel, s conversion.Scope) error {
	return autoConvert_v1_RedisSentinel_To_v1alpha2_RedisSentinel(in, out, s)
}

func autoConvert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList(in *RedisSentinelList, out *v1.RedisSentinelList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]v1.RedisSentinel, len(*in))
		for i := range *in {
			if err := Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList is an autogenerated conversion function.
func Convert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList(in *RedisSentinelList, out *v1.RedisSentinelList, s conversion.Scope) error {
	return autoConvert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList(in, out, s)
}

func autoConvert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList(in *v1.RedisSentinelList, out *RedisSentinelList, s conversion.Scope) error {
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]RedisSentinel, len(*in))
		for i := range *in {
			if err := Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel(&(*in)[i], &(*out)[i], s); err != nil {
				return err
			}
		}
	} else {
		out.Items = nil
	}
	return nil
}

// Convert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList is an autogenerated conversion function.
func Convert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList(in *v1.RedisSentinelList, out *RedisSentinelList, s conversion.Scope) error {
	return autoConvert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList(in, out, s)
}

func autoConvert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef(in *RedisSentinelRef, out *v1.RedisSentinelRef, s conversion.Scope) error {
	out.Name = in.Name
	out.Namespace = in.Namespace
	return nil
}

// Convert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef is an autogenerated conversion function.
func Convert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef(in *RedisSentinelRef, out *v1.RedisSentinelRef, s conversion.Scope) error {
	return autoConvert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef(in, out, s)
}

func autoConvert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef(in *v1.RedisSentinelRef, out *RedisSentinelRef, s conversion.Scope) error {
	out.Name = in.Name
	out.Namespace = in.Namespace
	return nil
}

// Convert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef is an autogenerated conversion function.
func Convert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef(in *v1.RedisSentinelRef, out *RedisSentinelRef, s conversion.Scope) error {
	return autoConvert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef(in, out, s)
}

func autoConvert_v1alpha2_RedisSentinelSpec_To_v1_RedisSentinelSpec(in *RedisSentinelSpec, out *v1.RedisSentinelSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.DisableAuth = in.DisableAuth
	out.Halted = in.Halted
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1_RedisSentinelSpec_To_v1alpha2_RedisSentinelSpec(in *v1.RedisSentinelSpec, out *RedisSentinelSpec, s conversion.Scope) error {
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.DisableAuth = in.DisableAuth
	out.Halted = in.Halted
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus(in *RedisSentinelStatus, out *v1.RedisSentinelStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus is an autogenerated conversion function.
func Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus(in *RedisSentinelStatus, out *v1.RedisSentinelStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus(in, out, s)
}

func autoConvert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus(in *v1.RedisSentinelStatus, out *RedisSentinelStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus is an autogenerated conversion function.
func Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus(in *v1.RedisSentinelStatus, out *RedisSentinelStatus, s conversion.Scope) error {
	return autoConvert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus(in, out, s)
}

func autoConvert_v1alpha2_RedisSpec_To_v1_RedisSpec(in *RedisSpec, out *v1.RedisSpec, s conversion.Scope) error {
	if err := Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Mode = v1.RedisMode(in.Mode)
	out.SentinelRef = (*v1.RedisSentinelRef)(unsafe.Pointer(in.SentinelRef))
	if in.Cluster != nil {
		in, out := &in.Cluster, &out.Cluster
		*out = new(v1.RedisClusterSpec)
		if err := Convert_v1alpha2_RedisClusterSpec_To_v1_RedisClusterSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Cluster = nil
	}
	out.StorageType = v1.StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*v1.SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.DisableAuth = in.DisableAuth
	out.Init = (*v1.InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	if err := Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]v1.NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.TerminationPolicy requires manual conversion: does not exist in peer-type
	// WARNING: in.Coordinator requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*v1.AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1_RedisSpec_To_v1alpha2_RedisSpec(in *v1.RedisSpec, out *RedisSpec, s conversion.Scope) error {
	// WARNING: in.Acl requires manual conversion: does not exist in peer-type
	if err := Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(&in.AutoOps, &out.AutoOps, s); err != nil {
		return err
	}
	out.Version = in.Version
	out.Replicas = (*int32)(unsafe.Pointer(in.Replicas))
	out.Mode = RedisMode(in.Mode)
	out.SentinelRef = (*RedisSentinelRef)(unsafe.Pointer(in.SentinelRef))
	if in.Cluster != nil {
		in, out := &in.Cluster, &out.Cluster
		*out = new(RedisClusterSpec)
		if err := Convert_v1_RedisClusterSpec_To_v1alpha2_RedisClusterSpec(*in, *out, s); err != nil {
			return err
		}
	} else {
		out.Cluster = nil
	}
	out.StorageType = StorageType(in.StorageType)
	out.Storage = (*corev1.PersistentVolumeClaimSpec)(unsafe.Pointer(in.Storage))
	out.AuthSecret = (*SecretReference)(unsafe.Pointer(in.AuthSecret))
	out.DisableAuth = in.DisableAuth
	out.Init = (*InitSpec)(unsafe.Pointer(in.Init))
	out.Monitor = (*monitoringagentapiapiv1.AgentSpec)(unsafe.Pointer(in.Monitor))
	out.ConfigSecret = (*corev1.LocalObjectReference)(unsafe.Pointer(in.ConfigSecret))
	// WARNING: in.Configuration requires manual conversion: does not exist in peer-type
	if err := Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(&in.PodTemplate, &out.PodTemplate, s); err != nil {
		return err
	}
	out.ServiceTemplates = *(*[]NamedServiceTemplateSpec)(unsafe.Pointer(&in.ServiceTemplates))
	out.TLS = (*clientgoapiv1.TLSConfig)(unsafe.Pointer(in.TLS))
	out.Halted = in.Halted
	// WARNING: in.DeletionPolicy requires manual conversion: does not exist in peer-type
	out.AllowedSchemas = (*AllowedConsumers)(unsafe.Pointer(in.AllowedSchemas))
	out.HealthChecker = in.HealthChecker
	return nil
}

func autoConvert_v1alpha2_RedisStatus_To_v1_RedisStatus(in *RedisStatus, out *v1.RedisStatus, s conversion.Scope) error {
	out.Phase = v1.DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*v1.Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1alpha2_RedisStatus_To_v1_RedisStatus is an autogenerated conversion function.
func Convert_v1alpha2_RedisStatus_To_v1_RedisStatus(in *RedisStatus, out *v1.RedisStatus, s conversion.Scope) error {
	return autoConvert_v1alpha2_RedisStatus_To_v1_RedisStatus(in, out, s)
}

func autoConvert_v1_RedisStatus_To_v1alpha2_RedisStatus(in *v1.RedisStatus, out *RedisStatus, s conversion.Scope) error {
	out.Phase = DatabasePhase(in.Phase)
	out.ObservedGeneration = in.ObservedGeneration
	out.Conditions = *(*[]clientgoapiv1.Condition)(unsafe.Pointer(&in.Conditions))
	out.AuthSecret = (*Age)(unsafe.Pointer(in.AuthSecret))
	return nil
}

// Convert_v1_RedisStatus_To_v1alpha2_RedisStatus is an autogenerated conversion function.
func Convert_v1_RedisStatus_To_v1alpha2_RedisStatus(in *v1.RedisStatus, out *RedisStatus, s conversion.Scope) error {
	return autoConvert_v1_RedisStatus_To_v1alpha2_RedisStatus(in, out, s)
}

func autoConvert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec(in *RemoteReplicaSpec, out *v1.RemoteReplicaSpec, s conversion.Scope) error {
	out.SourceRef = in.SourceRef
	return nil
}

// Convert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec is an autogenerated conversion function.
func Convert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec(in *RemoteReplicaSpec, out *v1.RemoteReplicaSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec(in, out, s)
}

func autoConvert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec(in *v1.RemoteReplicaSpec, out *RemoteReplicaSpec, s conversion.Scope) error {
	out.SourceRef = in.SourceRef
	return nil
}

// Convert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec is an autogenerated conversion function.
func Convert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec(in *v1.RemoteReplicaSpec, out *RemoteReplicaSpec, s conversion.Scope) error {
	return autoConvert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec(in, out, s)
}

func autoConvert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec(in *ScriptSourceSpec, out *v1.ScriptSourceSpec, s conversion.Scope) error {
	out.ScriptPath = in.ScriptPath
	out.VolumeSource = in.VolumeSource
	out.Git = (*v1.GitRepo)(unsafe.Pointer(in.Git))
	return nil
}

// Convert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec is an autogenerated conversion function.
func Convert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec(in *ScriptSourceSpec, out *v1.ScriptSourceSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec(in, out, s)
}

func autoConvert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec(in *v1.ScriptSourceSpec, out *ScriptSourceSpec, s conversion.Scope) error {
	out.ScriptPath = in.ScriptPath
	out.VolumeSource = in.VolumeSource
	out.Git = (*GitRepo)(unsafe.Pointer(in.Git))
	return nil
}

// Convert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec is an autogenerated conversion function.
func Convert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec(in *v1.ScriptSourceSpec, out *ScriptSourceSpec, s conversion.Scope) error {
	return autoConvert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec(in, out, s)
}

func autoConvert_v1alpha2_SecretReference_To_v1_SecretReference(in *SecretReference, out *v1.SecretReference, s conversion.Scope) error {
	out.SecretStoreName = in.SecretStoreName
	out.TypedLocalObjectReference = in.TypedLocalObjectReference
	out.RotateAfter = (*metav1.Duration)(unsafe.Pointer(in.RotateAfter))
	out.ActiveFrom = (*metav1.Time)(unsafe.Pointer(in.ActiveFrom))
	out.ExternallyManaged = in.ExternallyManaged
	return nil
}

// Convert_v1alpha2_SecretReference_To_v1_SecretReference is an autogenerated conversion function.
func Convert_v1alpha2_SecretReference_To_v1_SecretReference(in *SecretReference, out *v1.SecretReference, s conversion.Scope) error {
	return autoConvert_v1alpha2_SecretReference_To_v1_SecretReference(in, out, s)
}

func autoConvert_v1_SecretReference_To_v1alpha2_SecretReference(in *v1.SecretReference, out *SecretReference, s conversion.Scope) error {
	out.SecretStoreName = in.SecretStoreName
	out.TypedLocalObjectReference = in.TypedLocalObjectReference
	out.RotateAfter = (*metav1.Duration)(unsafe.Pointer(in.RotateAfter))
	out.ActiveFrom = (*metav1.Time)(unsafe.Pointer(in.ActiveFrom))
	out.ExternallyManaged = in.ExternallyManaged
	return nil
}

// Convert_v1_SecretReference_To_v1alpha2_SecretReference is an autogenerated conversion function.
func Convert_v1_SecretReference_To_v1alpha2_SecretReference(in *v1.SecretReference, out *SecretReference, s conversion.Scope) error {
	return autoConvert_v1_SecretReference_To_v1alpha2_SecretReference(in, out, s)
}

func autoConvert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec(in *SemiSyncSpec, out *v1.SemiSyncSpec, s conversion.Scope) error {
	out.SourceWaitForReplicaCount = in.SourceWaitForReplicaCount
	out.SourceTimeout = in.SourceTimeout
	out.ErrantTransactionRecoveryPolicy = (*v1.ErrantTransactionRecoveryPolicy)(unsafe.Pointer(in.ErrantTransactionRecoveryPolicy))
	return nil
}

// Convert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec is an autogenerated conversion function.
func Convert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec(in *SemiSyncSpec, out *v1.SemiSyncSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec(in, out, s)
}

func autoConvert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec(in *v1.SemiSyncSpec, out *SemiSyncSpec, s conversion.Scope) error {
	out.SourceWaitForReplicaCount = in.SourceWaitForReplicaCount
	out.SourceTimeout = in.SourceTimeout
	out.ErrantTransactionRecoveryPolicy = (*ErrantTransactionRecoveryPolicy)(unsafe.Pointer(in.ErrantTransactionRecoveryPolicy))
	return nil
}

// Convert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec is an autogenerated conversion function.
func Convert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec(in *v1.SemiSyncSpec, out *SemiSyncSpec, s conversion.Scope) error {
	return autoConvert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec(in, out, s)
}

func autoConvert_v1alpha2_Shards_To_v1_Shards(in *Shards, out *v1.Shards, s conversion.Scope) error {
	out.Endpoints = *(*[]string)(unsafe.Pointer(&in.Endpoints))
	return nil
}

// Convert_v1alpha2_Shards_To_v1_Shards is an autogenerated conversion function.
func Convert_v1alpha2_Shards_To_v1_Shards(in *Shards, out *v1.Shards, s conversion.Scope) error {
	return autoConvert_v1alpha2_Shards_To_v1_Shards(in, out, s)
}

func autoConvert_v1_Shards_To_v1alpha2_Shards(in *v1.Shards, out *Shards, s conversion.Scope) error {
	out.Endpoints = *(*[]string)(unsafe.Pointer(&in.Endpoints))
	return nil
}

// Convert_v1_Shards_To_v1alpha2_Shards is an autogenerated conversion function.
func Convert_v1_Shards_To_v1alpha2_Shards(in *v1.Shards, out *Shards, s conversion.Scope) error {
	return autoConvert_v1_Shards_To_v1alpha2_Shards(in, out, s)
}

func autoConvert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec(in *SystemUserSecretsSpec, out *v1.SystemUserSecretsSpec, s conversion.Scope) error {
	out.ReplicationUserSecret = (*v1.SecretReference)(unsafe.Pointer(in.ReplicationUserSecret))
	out.MonitorUserSecret = (*v1.SecretReference)(unsafe.Pointer(in.MonitorUserSecret))
	return nil
}

// Convert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec is an autogenerated conversion function.
func Convert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec(in *SystemUserSecretsSpec, out *v1.SystemUserSecretsSpec, s conversion.Scope) error {
	return autoConvert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec(in, out, s)
}

func autoConvert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec(in *v1.SystemUserSecretsSpec, out *SystemUserSecretsSpec, s conversion.Scope) error {
	out.ReplicationUserSecret = (*SecretReference)(unsafe.Pointer(in.ReplicationUserSecret))
	out.MonitorUserSecret = (*SecretReference)(unsafe.Pointer(in.MonitorUserSecret))
	return nil
}

// Convert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec is an autogenerated conversion function.
func Convert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec(in *v1.SystemUserSecretsSpec, out *SystemUserSecretsSpec, s conversion.Scope) error {
	return autoConvert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec(in, out, s)
}
