func (in *IAMPolicyStatus) DeepCopy() *IAMPolicyStatus {
	if in == nil {
		return nil
	}
	out := new(IAMPolicyStatus)
	in.DeepCopyInto(out)
	return out
}
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMPolicyStatus.
package v1beta1
import (
	v1alpha1 "github.com/GoogleCloudPlatform/k8s-config-connector/pkg/apis/k8s/v1alpha1"
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *AuditconfigAuditLogConfigs) DeepCopyInto(out *AuditconfigAuditLogConfigs) {
	*out = *in
	if in.ExemptedMembers != nil {
		in, out := &in.ExemptedMembers, &out.ExemptedMembers
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}
func (in *AuditconfigAuditLogConfigs) DeepCopy() *AuditconfigAuditLogConfigs {
	if in == nil {
		return nil
	}
	out := new(AuditconfigAuditLogConfigs)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMAuditConfig) DeepCopyInto(out *IAMAuditConfig) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *IAMAuditConfig) DeepCopy() *IAMAuditConfig {
	if in == nil {
		return nil
	}
	out := new(IAMAuditConfig)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMAuditConfig) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMAuditConfigList) DeepCopyInto(out *IAMAuditConfigList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]IAMAuditConfig, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *IAMAuditConfigList) DeepCopy() *IAMAuditConfigList {
	if in == nil {
		return nil
	}
	out := new(IAMAuditConfigList)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMAuditConfigList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMAuditConfigSpec) DeepCopyInto(out *IAMAuditConfigSpec) {
	*out = *in
	if in.AuditLogConfigs != nil {
		in, out := &in.AuditLogConfigs, &out.AuditLogConfigs
		*out = make([]AuditconfigAuditLogConfigs, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.ResourceRef = in.ResourceRef
	return
}
func (in *IAMAuditConfigSpec) DeepCopy() *IAMAuditConfigSpec {
	if in == nil {
		return nil
	}
	out := new(IAMAuditConfigSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMAuditConfigStatus) DeepCopyInto(out *IAMAuditConfigStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]v1alpha1.Condition, len(*in))
		copy(*out, *in)
	}
	return
}
func (in *IAMAuditConfigStatus) DeepCopy() *IAMAuditConfigStatus {
	if in == nil {
		return nil
	}
	out := new(IAMAuditConfigStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMCustomRole) DeepCopyInto(out *IAMCustomRole) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *IAMCustomRole) DeepCopy() *IAMCustomRole {
	if in == nil {
		return nil
	}
	out := new(IAMCustomRole)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMCustomRole) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMCustomRoleList) DeepCopyInto(out *IAMCustomRoleList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]IAMCustomRole, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *IAMCustomRoleList) DeepCopy() *IAMCustomRoleList {
	if in == nil {
		return nil
	}
	out := new(IAMCustomRoleList)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMCustomRoleList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMCustomRoleSpec) DeepCopyInto(out *IAMCustomRoleSpec) {
	*out = *in
	if in.Description != nil {
		in, out := &in.Description, &out.Description
		*out = new(string)
		**out = **in
	}
	if in.Permissions != nil {
		in, out := &in.Permissions, &out.Permissions
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ResourceID != nil {
		in, out := &in.ResourceID, &out.ResourceID
		*out = new(string)
		**out = **in
	}
	if in.Stage != nil {
		in, out := &in.Stage, &out.Stage
		*out = new(string)
		**out = **in
	}
	return
}
func (in *IAMCustomRoleSpec) DeepCopy() *IAMCustomRoleSpec {
	if in == nil {
		return nil
	}
	out := new(IAMCustomRoleSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMCustomRoleStatus) DeepCopyInto(out *IAMCustomRoleStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]v1alpha1.Condition, len(*in))
		copy(*out, *in)
	}
	return
}
func (in *IAMCustomRoleStatus) DeepCopy() *IAMCustomRoleStatus {
	if in == nil {
		return nil
	}
	out := new(IAMCustomRoleStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPartialPolicy) DeepCopyInto(out *IAMPartialPolicy) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *IAMPartialPolicy) DeepCopy() *IAMPartialPolicy {
	if in == nil {
		return nil
	}
	out := new(IAMPartialPolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPartialPolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMPartialPolicyList) DeepCopyInto(out *IAMPartialPolicyList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]IAMPartialPolicy, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *IAMPartialPolicyList) DeepCopy() *IAMPartialPolicyList {
	if in == nil {
		return nil
	}
	out := new(IAMPartialPolicyList)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPartialPolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMPartialPolicySpec) DeepCopyInto(out *IAMPartialPolicySpec) {
	*out = *in
	if in.Bindings != nil {
		in, out := &in.Bindings, &out.Bindings
		*out = make([]PartialpolicyBindings, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.ResourceRef = in.ResourceRef
	return
}
func (in *IAMPartialPolicySpec) DeepCopy() *IAMPartialPolicySpec {
	if in == nil {
		return nil
	}
	out := new(IAMPartialPolicySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPartialPolicyStatus) DeepCopyInto(out *IAMPartialPolicyStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]v1alpha1.Condition, len(*in))
		copy(*out, *in)
	}
	if in.AllBindings != nil {
		in, out := &in.AllBindings, &out.AllBindings
		*out = make([]PartialpolicyAllBindingsStatus, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.LastAppliedBindings != nil {
		in, out := &in.LastAppliedBindings, &out.LastAppliedBindings
		*out = make([]PartialpolicyLastAppliedBindingsStatus, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *IAMPartialPolicyStatus) DeepCopy() *IAMPartialPolicyStatus {
	if in == nil {
		return nil
	}
	out := new(IAMPartialPolicyStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicy) DeepCopyInto(out *IAMPolicy) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *IAMPolicy) DeepCopy() *IAMPolicy {
	if in == nil {
		return nil
	}
	out := new(IAMPolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMPolicyList) DeepCopyInto(out *IAMPolicyList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]IAMPolicy, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *IAMPolicyList) DeepCopy() *IAMPolicyList {
	if in == nil {
		return nil
	}
	out := new(IAMPolicyList)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMPolicyMember) DeepCopyInto(out *IAMPolicyMember) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *IAMPolicyMember) DeepCopy() *IAMPolicyMember {
	if in == nil {
		return nil
	}
	out := new(IAMPolicyMember)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicyMember) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMPolicyMemberList) DeepCopyInto(out *IAMPolicyMemberList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]IAMPolicyMember, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *IAMPolicyMemberList) DeepCopy() *IAMPolicyMemberList {
	if in == nil {
		return nil
	}
	out := new(IAMPolicyMemberList)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicyMemberList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *IAMPolicyMemberSpec) DeepCopyInto(out *IAMPolicyMemberSpec) {
	*out = *in
	if in.Condition != nil {
		in, out := &in.Condition, &out.Condition
		*out = new(PolicymemberCondition)
		(*in).DeepCopyInto(*out)
	}
	if in.Member != nil {
		in, out := &in.Member, &out.Member
		*out = new(string)
		**out = **in
	}
	if in.MemberFrom != nil {
		in, out := &in.MemberFrom, &out.MemberFrom
		*out = new(PolicymemberMemberFrom)
		(*in).DeepCopyInto(*out)
	}
	out.ResourceRef = in.ResourceRef
	return
}
func (in *IAMPolicyMemberSpec) DeepCopy() *IAMPolicyMemberSpec {
	if in == nil {
		return nil
	}
	out := new(IAMPolicyMemberSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicyMemberStatus) DeepCopyInto(out *IAMPolicyMemberStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]v1alpha1.Condition, len(*in))
		copy(*out, *in)
	}
	return
}
func (in *IAMPolicyMemberStatus) DeepCopy() *IAMPolicyMemberStatus {
	if in == nil {
		return nil
	}
	out := new(IAMPolicyMemberStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicySpec) DeepCopyInto(out *IAMPolicySpec) {
	*out = *in
	if in.AuditConfigs != nil {
		in, out := &in.AuditConfigs, &out.AuditConfigs
		*out = make([]PolicyAuditConfigs, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Bindings != nil {
		in, out := &in.Bindings, &out.Bindings
		*out = make([]PolicyBindings, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.ResourceRef = in.ResourceRef
	return
}
func (in *IAMPolicySpec) DeepCopy() *IAMPolicySpec {
	if in == nil {
		return nil
	}
	out := new(IAMPolicySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *IAMPolicyStatus) DeepCopyInto(out *IAMPolicyStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]v1alpha1.Condition, len(*in))
		copy(*out, *in)
	}
	return
}