//go:build !ignore_autogenerated

/*
Copyright (c) Microsoft Corporation.
Licensed under the MIT license.
*/

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

package storage

import (
	"github.com/Azure/azure-service-operator/v2/pkg/genruntime"
	"github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions"
	"github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
	runtime "k8s.io/apimachinery/pkg/runtime"
)

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

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ApplicationSecurityGroup) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *ApplicationSecurityGroupList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSecurityGroupOperatorSpec) DeepCopyInto(out *ApplicationSecurityGroupOperatorSpec) {
	*out = *in
	if in.ConfigMapExpressions != nil {
		in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.SecretExpressions != nil {
		in, out := &in.SecretExpressions, &out.SecretExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSecurityGroup_STATUS) DeepCopyInto(out *ApplicationSecurityGroup_STATUS) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]conditions.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Etag != nil {
		in, out := &in.Etag, &out.Etag
		*out = new(string)
		**out = **in
	}
	if in.Id != nil {
		in, out := &in.Id, &out.Id
		*out = new(string)
		**out = **in
	}
	if in.Location != nil {
		in, out := &in.Location, &out.Location
		*out = new(string)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.ProvisioningState != nil {
		in, out := &in.ProvisioningState, &out.ProvisioningState
		*out = new(string)
		**out = **in
	}
	if in.ResourceGuid != nil {
		in, out := &in.ResourceGuid, &out.ResourceGuid
		*out = new(string)
		**out = **in
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ApplicationSecurityGroup_Spec) DeepCopyInto(out *ApplicationSecurityGroup_Spec) {
	*out = *in
	if in.Location != nil {
		in, out := &in.Location, &out.Location
		*out = new(string)
		**out = **in
	}
	if in.OperatorSpec != nil {
		in, out := &in.OperatorSpec, &out.OperatorSpec
		*out = new(ApplicationSecurityGroupOperatorSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Owner != nil {
		in, out := &in.Owner, &out.Owner
		*out = new(genruntime.KnownResourceReference)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ExclusionManagedRuleGroup) DeepCopyInto(out *ExclusionManagedRuleGroup) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroupName != nil {
		in, out := &in.RuleGroupName, &out.RuleGroupName
		*out = new(string)
		**out = **in
	}
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]ExclusionManagedRule, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ExclusionManagedRuleGroup_STATUS) DeepCopyInto(out *ExclusionManagedRuleGroup_STATUS) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroupName != nil {
		in, out := &in.RuleGroupName, &out.RuleGroupName
		*out = new(string)
		**out = **in
	}
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]ExclusionManagedRule_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ExclusionManagedRuleSet) DeepCopyInto(out *ExclusionManagedRuleSet) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroups != nil {
		in, out := &in.RuleGroups, &out.RuleGroups
		*out = make([]ExclusionManagedRuleGroup, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RuleSetType != nil {
		in, out := &in.RuleSetType, &out.RuleSetType
		*out = new(string)
		**out = **in
	}
	if in.RuleSetVersion != nil {
		in, out := &in.RuleSetVersion, &out.RuleSetVersion
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ExclusionManagedRuleSet_STATUS) DeepCopyInto(out *ExclusionManagedRuleSet_STATUS) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroups != nil {
		in, out := &in.RuleGroups, &out.RuleGroups
		*out = make([]ExclusionManagedRuleGroup_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RuleSetType != nil {
		in, out := &in.RuleSetType, &out.RuleSetType
		*out = new(string)
		**out = **in
	}
	if in.RuleSetVersion != nil {
		in, out := &in.RuleSetVersion, &out.RuleSetVersion
		*out = new(string)
		**out = **in
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GroupByUserSession) DeepCopyInto(out *GroupByUserSession) {
	*out = *in
	if in.GroupByVariables != nil {
		in, out := &in.GroupByVariables, &out.GroupByVariables
		*out = make([]GroupByVariable, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GroupByUserSession_STATUS) DeepCopyInto(out *GroupByUserSession_STATUS) {
	*out = *in
	if in.GroupByVariables != nil {
		in, out := &in.GroupByVariables, &out.GroupByVariables
		*out = make([]GroupByVariable_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRuleGroupOverride) DeepCopyInto(out *ManagedRuleGroupOverride) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroupName != nil {
		in, out := &in.RuleGroupName, &out.RuleGroupName
		*out = new(string)
		**out = **in
	}
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]ManagedRuleOverride, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRuleGroupOverride_STATUS) DeepCopyInto(out *ManagedRuleGroupOverride_STATUS) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroupName != nil {
		in, out := &in.RuleGroupName, &out.RuleGroupName
		*out = new(string)
		**out = **in
	}
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]ManagedRuleOverride_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRuleOverride) DeepCopyInto(out *ManagedRuleOverride) {
	*out = *in
	if in.Action != nil {
		in, out := &in.Action, &out.Action
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleId != nil {
		in, out := &in.RuleId, &out.RuleId
		*out = new(string)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRuleOverride_STATUS) DeepCopyInto(out *ManagedRuleOverride_STATUS) {
	*out = *in
	if in.Action != nil {
		in, out := &in.Action, &out.Action
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleId != nil {
		in, out := &in.RuleId, &out.RuleId
		*out = new(string)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRuleSet) DeepCopyInto(out *ManagedRuleSet) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroupOverrides != nil {
		in, out := &in.RuleGroupOverrides, &out.RuleGroupOverrides
		*out = make([]ManagedRuleGroupOverride, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RuleSetType != nil {
		in, out := &in.RuleSetType, &out.RuleSetType
		*out = new(string)
		**out = **in
	}
	if in.RuleSetVersion != nil {
		in, out := &in.RuleSetVersion, &out.RuleSetVersion
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRuleSet_STATUS) DeepCopyInto(out *ManagedRuleSet_STATUS) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RuleGroupOverrides != nil {
		in, out := &in.RuleGroupOverrides, &out.RuleGroupOverrides
		*out = make([]ManagedRuleGroupOverride_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.RuleSetType != nil {
		in, out := &in.RuleSetType, &out.RuleSetType
		*out = new(string)
		**out = **in
	}
	if in.RuleSetVersion != nil {
		in, out := &in.RuleSetVersion, &out.RuleSetVersion
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRulesDefinition) DeepCopyInto(out *ManagedRulesDefinition) {
	*out = *in
	if in.Exclusions != nil {
		in, out := &in.Exclusions, &out.Exclusions
		*out = make([]OwaspCrsExclusionEntry, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ManagedRuleSets != nil {
		in, out := &in.ManagedRuleSets, &out.ManagedRuleSets
		*out = make([]ManagedRuleSet, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ManagedRulesDefinition_STATUS) DeepCopyInto(out *ManagedRulesDefinition_STATUS) {
	*out = *in
	if in.Exclusions != nil {
		in, out := &in.Exclusions, &out.Exclusions
		*out = make([]OwaspCrsExclusionEntry_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ManagedRuleSets != nil {
		in, out := &in.ManagedRuleSets, &out.ManagedRuleSets
		*out = make([]ManagedRuleSet_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MatchCondition) DeepCopyInto(out *MatchCondition) {
	*out = *in
	if in.MatchValues != nil {
		in, out := &in.MatchValues, &out.MatchValues
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.MatchVariables != nil {
		in, out := &in.MatchVariables, &out.MatchVariables
		*out = make([]MatchVariable, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NegationConditon != nil {
		in, out := &in.NegationConditon, &out.NegationConditon
		*out = new(bool)
		**out = **in
	}
	if in.Operator != nil {
		in, out := &in.Operator, &out.Operator
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Transforms != nil {
		in, out := &in.Transforms, &out.Transforms
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MatchCondition_STATUS) DeepCopyInto(out *MatchCondition_STATUS) {
	*out = *in
	if in.MatchValues != nil {
		in, out := &in.MatchValues, &out.MatchValues
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.MatchVariables != nil {
		in, out := &in.MatchVariables, &out.MatchVariables
		*out = make([]MatchVariable_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.NegationConditon != nil {
		in, out := &in.NegationConditon, &out.NegationConditon
		*out = new(bool)
		**out = **in
	}
	if in.Operator != nil {
		in, out := &in.Operator, &out.Operator
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Transforms != nil {
		in, out := &in.Transforms, &out.Transforms
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

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

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

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OwaspCrsExclusionEntry) DeepCopyInto(out *OwaspCrsExclusionEntry) {
	*out = *in
	if in.ExclusionManagedRuleSets != nil {
		in, out := &in.ExclusionManagedRuleSets, &out.ExclusionManagedRuleSets
		*out = make([]ExclusionManagedRuleSet, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.MatchVariable != nil {
		in, out := &in.MatchVariable, &out.MatchVariable
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(string)
		**out = **in
	}
	if in.SelectorMatchOperator != nil {
		in, out := &in.SelectorMatchOperator, &out.SelectorMatchOperator
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OwaspCrsExclusionEntry_STATUS) DeepCopyInto(out *OwaspCrsExclusionEntry_STATUS) {
	*out = *in
	if in.ExclusionManagedRuleSets != nil {
		in, out := &in.ExclusionManagedRuleSets, &out.ExclusionManagedRuleSets
		*out = make([]ExclusionManagedRuleSet_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.MatchVariable != nil {
		in, out := &in.MatchVariable, &out.MatchVariable
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(string)
		**out = **in
	}
	if in.SelectorMatchOperator != nil {
		in, out := &in.SelectorMatchOperator, &out.SelectorMatchOperator
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PolicySettings) DeepCopyInto(out *PolicySettings) {
	*out = *in
	if in.CustomBlockResponseBody != nil {
		in, out := &in.CustomBlockResponseBody, &out.CustomBlockResponseBody
		*out = new(string)
		**out = **in
	}
	if in.CustomBlockResponseStatusCode != nil {
		in, out := &in.CustomBlockResponseStatusCode, &out.CustomBlockResponseStatusCode
		*out = new(int)
		**out = **in
	}
	if in.FileUploadEnforcement != nil {
		in, out := &in.FileUploadEnforcement, &out.FileUploadEnforcement
		*out = new(bool)
		**out = **in
	}
	if in.FileUploadLimitInMb != nil {
		in, out := &in.FileUploadLimitInMb, &out.FileUploadLimitInMb
		*out = new(int)
		**out = **in
	}
	if in.JsChallengeCookieExpirationInMins != nil {
		in, out := &in.JsChallengeCookieExpirationInMins, &out.JsChallengeCookieExpirationInMins
		*out = new(int)
		**out = **in
	}
	if in.LogScrubbing != nil {
		in, out := &in.LogScrubbing, &out.LogScrubbing
		*out = new(PolicySettings_LogScrubbing)
		(*in).DeepCopyInto(*out)
	}
	if in.MaxRequestBodySizeInKb != nil {
		in, out := &in.MaxRequestBodySizeInKb, &out.MaxRequestBodySizeInKb
		*out = new(int)
		**out = **in
	}
	if in.Mode != nil {
		in, out := &in.Mode, &out.Mode
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RequestBodyCheck != nil {
		in, out := &in.RequestBodyCheck, &out.RequestBodyCheck
		*out = new(bool)
		**out = **in
	}
	if in.RequestBodyEnforcement != nil {
		in, out := &in.RequestBodyEnforcement, &out.RequestBodyEnforcement
		*out = new(bool)
		**out = **in
	}
	if in.RequestBodyInspectLimitInKB != nil {
		in, out := &in.RequestBodyInspectLimitInKB, &out.RequestBodyInspectLimitInKB
		*out = new(int)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PolicySettings_LogScrubbing) DeepCopyInto(out *PolicySettings_LogScrubbing) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.ScrubbingRules != nil {
		in, out := &in.ScrubbingRules, &out.ScrubbingRules
		*out = make([]WebApplicationFirewallScrubbingRules, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PolicySettings_LogScrubbing_STATUS) DeepCopyInto(out *PolicySettings_LogScrubbing_STATUS) {
	*out = *in
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.ScrubbingRules != nil {
		in, out := &in.ScrubbingRules, &out.ScrubbingRules
		*out = make([]WebApplicationFirewallScrubbingRules_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PolicySettings_STATUS) DeepCopyInto(out *PolicySettings_STATUS) {
	*out = *in
	if in.CustomBlockResponseBody != nil {
		in, out := &in.CustomBlockResponseBody, &out.CustomBlockResponseBody
		*out = new(string)
		**out = **in
	}
	if in.CustomBlockResponseStatusCode != nil {
		in, out := &in.CustomBlockResponseStatusCode, &out.CustomBlockResponseStatusCode
		*out = new(int)
		**out = **in
	}
	if in.FileUploadEnforcement != nil {
		in, out := &in.FileUploadEnforcement, &out.FileUploadEnforcement
		*out = new(bool)
		**out = **in
	}
	if in.FileUploadLimitInMb != nil {
		in, out := &in.FileUploadLimitInMb, &out.FileUploadLimitInMb
		*out = new(int)
		**out = **in
	}
	if in.JsChallengeCookieExpirationInMins != nil {
		in, out := &in.JsChallengeCookieExpirationInMins, &out.JsChallengeCookieExpirationInMins
		*out = new(int)
		**out = **in
	}
	if in.LogScrubbing != nil {
		in, out := &in.LogScrubbing, &out.LogScrubbing
		*out = new(PolicySettings_LogScrubbing_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.MaxRequestBodySizeInKb != nil {
		in, out := &in.MaxRequestBodySizeInKb, &out.MaxRequestBodySizeInKb
		*out = new(int)
		**out = **in
	}
	if in.Mode != nil {
		in, out := &in.Mode, &out.Mode
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RequestBodyCheck != nil {
		in, out := &in.RequestBodyCheck, &out.RequestBodyCheck
		*out = new(bool)
		**out = **in
	}
	if in.RequestBodyEnforcement != nil {
		in, out := &in.RequestBodyEnforcement, &out.RequestBodyEnforcement
		*out = new(bool)
		**out = **in
	}
	if in.RequestBodyInspectLimitInKB != nil {
		in, out := &in.RequestBodyInspectLimitInKB, &out.RequestBodyInspectLimitInKB
		*out = new(int)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

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

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallCustomRule) DeepCopyInto(out *WebApplicationFirewallCustomRule) {
	*out = *in
	if in.Action != nil {
		in, out := &in.Action, &out.Action
		*out = new(string)
		**out = **in
	}
	if in.GroupByUserSession != nil {
		in, out := &in.GroupByUserSession, &out.GroupByUserSession
		*out = make([]GroupByUserSession, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.MatchConditions != nil {
		in, out := &in.MatchConditions, &out.MatchConditions
		*out = make([]MatchCondition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Priority != nil {
		in, out := &in.Priority, &out.Priority
		*out = new(int)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RateLimitDuration != nil {
		in, out := &in.RateLimitDuration, &out.RateLimitDuration
		*out = new(string)
		**out = **in
	}
	if in.RateLimitThreshold != nil {
		in, out := &in.RateLimitThreshold, &out.RateLimitThreshold
		*out = new(int)
		**out = **in
	}
	if in.RuleType != nil {
		in, out := &in.RuleType, &out.RuleType
		*out = new(string)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallCustomRule_STATUS) DeepCopyInto(out *WebApplicationFirewallCustomRule_STATUS) {
	*out = *in
	if in.Action != nil {
		in, out := &in.Action, &out.Action
		*out = new(string)
		**out = **in
	}
	if in.Etag != nil {
		in, out := &in.Etag, &out.Etag
		*out = new(string)
		**out = **in
	}
	if in.GroupByUserSession != nil {
		in, out := &in.GroupByUserSession, &out.GroupByUserSession
		*out = make([]GroupByUserSession_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.MatchConditions != nil {
		in, out := &in.MatchConditions, &out.MatchConditions
		*out = make([]MatchCondition_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Priority != nil {
		in, out := &in.Priority, &out.Priority
		*out = new(int)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.RateLimitDuration != nil {
		in, out := &in.RateLimitDuration, &out.RateLimitDuration
		*out = new(string)
		**out = **in
	}
	if in.RateLimitThreshold != nil {
		in, out := &in.RateLimitThreshold, &out.RateLimitThreshold
		*out = new(int)
		**out = **in
	}
	if in.RuleType != nil {
		in, out := &in.RuleType, &out.RuleType
		*out = new(string)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *WebApplicationFirewallPolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

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

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

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *WebApplicationFirewallPolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallPolicyOperatorSpec) DeepCopyInto(out *WebApplicationFirewallPolicyOperatorSpec) {
	*out = *in
	if in.ConfigMapExpressions != nil {
		in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.SecretExpressions != nil {
		in, out := &in.SecretExpressions, &out.SecretExpressions
		*out = make([]*core.DestinationExpression, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(core.DestinationExpression)
				**out = **in
			}
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallPolicy_STATUS) DeepCopyInto(out *WebApplicationFirewallPolicy_STATUS) {
	*out = *in
	if in.ApplicationGateways != nil {
		in, out := &in.ApplicationGateways, &out.ApplicationGateways
		*out = make([]ApplicationGateway_STATUS_ApplicationGatewayWebApplicationFirewallPolicy_SubResourceEmbedded, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]conditions.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.CustomRules != nil {
		in, out := &in.CustomRules, &out.CustomRules
		*out = make([]WebApplicationFirewallCustomRule_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Etag != nil {
		in, out := &in.Etag, &out.Etag
		*out = new(string)
		**out = **in
	}
	if in.HttpListeners != nil {
		in, out := &in.HttpListeners, &out.HttpListeners
		*out = make([]SubResource_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Id != nil {
		in, out := &in.Id, &out.Id
		*out = new(string)
		**out = **in
	}
	if in.Location != nil {
		in, out := &in.Location, &out.Location
		*out = new(string)
		**out = **in
	}
	if in.ManagedRules != nil {
		in, out := &in.ManagedRules, &out.ManagedRules
		*out = new(ManagedRulesDefinition_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.PathBasedRules != nil {
		in, out := &in.PathBasedRules, &out.PathBasedRules
		*out = make([]SubResource_STATUS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PolicySettings != nil {
		in, out := &in.PolicySettings, &out.PolicySettings
		*out = new(PolicySettings_STATUS)
		(*in).DeepCopyInto(*out)
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.ProvisioningState != nil {
		in, out := &in.ProvisioningState, &out.ProvisioningState
		*out = new(string)
		**out = **in
	}
	if in.ResourceState != nil {
		in, out := &in.ResourceState, &out.ResourceState
		*out = new(string)
		**out = **in
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallPolicy_Spec) DeepCopyInto(out *WebApplicationFirewallPolicy_Spec) {
	*out = *in
	if in.CustomRules != nil {
		in, out := &in.CustomRules, &out.CustomRules
		*out = make([]WebApplicationFirewallCustomRule, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Location != nil {
		in, out := &in.Location, &out.Location
		*out = new(string)
		**out = **in
	}
	if in.ManagedRules != nil {
		in, out := &in.ManagedRules, &out.ManagedRules
		*out = new(ManagedRulesDefinition)
		(*in).DeepCopyInto(*out)
	}
	if in.OperatorSpec != nil {
		in, out := &in.OperatorSpec, &out.OperatorSpec
		*out = new(WebApplicationFirewallPolicyOperatorSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.Owner != nil {
		in, out := &in.Owner, &out.Owner
		*out = new(genruntime.KnownResourceReference)
		**out = **in
	}
	if in.PolicySettings != nil {
		in, out := &in.PolicySettings, &out.PolicySettings
		*out = new(PolicySettings)
		(*in).DeepCopyInto(*out)
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallScrubbingRules) DeepCopyInto(out *WebApplicationFirewallScrubbingRules) {
	*out = *in
	if in.MatchVariable != nil {
		in, out := &in.MatchVariable, &out.MatchVariable
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(string)
		**out = **in
	}
	if in.SelectorMatchOperator != nil {
		in, out := &in.SelectorMatchOperator, &out.SelectorMatchOperator
		*out = new(string)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebApplicationFirewallScrubbingRules_STATUS) DeepCopyInto(out *WebApplicationFirewallScrubbingRules_STATUS) {
	*out = *in
	if in.MatchVariable != nil {
		in, out := &in.MatchVariable, &out.MatchVariable
		*out = new(string)
		**out = **in
	}
	if in.PropertyBag != nil {
		in, out := &in.PropertyBag, &out.PropertyBag
		*out = make(genruntime.PropertyBag, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Selector != nil {
		in, out := &in.Selector, &out.Selector
		*out = new(string)
		**out = **in
	}
	if in.SelectorMatchOperator != nil {
		in, out := &in.SelectorMatchOperator, &out.SelectorMatchOperator
		*out = new(string)
		**out = **in
	}
	if in.State != nil {
		in, out := &in.State, &out.State
		*out = new(string)
		**out = **in
	}
}

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