func (in *SubnetworkSpec) DeepCopy() *SubnetworkSpec {
	if in == nil {
		return nil
	}
	out := new(SubnetworkSpec)
	in.DeepCopyInto(out)
	return out
}
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkSpec.
package v1beta1
import (
	"github.com/crossplane/crossplane-runtime/apis/common/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *GlobalAddress) DeepCopyInto(out *GlobalAddress) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}
func (in *GlobalAddress) DeepCopy() *GlobalAddress {
	if in == nil {
		return nil
	}
	out := new(GlobalAddress)
	in.DeepCopyInto(out)
	return out
}
func (in *GlobalAddress) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *GlobalAddressList) DeepCopyInto(out *GlobalAddressList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]GlobalAddress, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *GlobalAddressList) DeepCopy() *GlobalAddressList {
	if in == nil {
		return nil
	}
	out := new(GlobalAddressList)
	in.DeepCopyInto(out)
	return out
}
func (in *GlobalAddressList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *GlobalAddressObservation) DeepCopyInto(out *GlobalAddressObservation) {
	*out = *in
	if in.Users != nil {
		in, out := &in.Users, &out.Users
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}
func (in *GlobalAddressObservation) DeepCopy() *GlobalAddressObservation {
	if in == nil {
		return nil
	}
	out := new(GlobalAddressObservation)
	in.DeepCopyInto(out)
	return out
}
func (in *GlobalAddressParameters) DeepCopyInto(out *GlobalAddressParameters) {
	*out = *in
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(string)
		**out = **in
	}
	if in.AddressType != nil {
		in, out := &in.AddressType, &out.AddressType
		*out = new(string)
		**out = **in
	}
	if in.Description != nil {
		in, out := &in.Description, &out.Description
		*out = new(string)
		**out = **in
	}
	if in.IPVersion != nil {
		in, out := &in.IPVersion, &out.IPVersion
		*out = new(string)
		**out = **in
	}
	if in.Network != nil {
		in, out := &in.Network, &out.Network
		*out = new(string)
		**out = **in
	}
	if in.NetworkRef != nil {
		in, out := &in.NetworkRef, &out.NetworkRef
		*out = new(v1.Reference)
		**out = **in
	}
	if in.NetworkSelector != nil {
		in, out := &in.NetworkSelector, &out.NetworkSelector
		*out = new(v1.Selector)
		(*in).DeepCopyInto(*out)
	}
	if in.PrefixLength != nil {
		in, out := &in.PrefixLength, &out.PrefixLength
		*out = new(int64)
		**out = **in
	}
	if in.Purpose != nil {
		in, out := &in.Purpose, &out.Purpose
		*out = new(string)
		**out = **in
	}
	if in.Subnetwork != nil {
		in, out := &in.Subnetwork, &out.Subnetwork
		*out = new(string)
		**out = **in
	}
	if in.SubnetworkRef != nil {
		in, out := &in.SubnetworkRef, &out.SubnetworkRef
		*out = new(v1.Reference)
		**out = **in
	}
	if in.SubnetworkSelector != nil {
		in, out := &in.SubnetworkSelector, &out.SubnetworkSelector
		*out = new(v1.Selector)
		(*in).DeepCopyInto(*out)
	}
}
func (in *GlobalAddressParameters) DeepCopy() *GlobalAddressParameters {
	if in == nil {
		return nil
	}
	out := new(GlobalAddressParameters)
	in.DeepCopyInto(out)
	return out
}
func (in *GlobalAddressSpec) DeepCopyInto(out *GlobalAddressSpec) {
	*out = *in
	in.ResourceSpec.DeepCopyInto(&out.ResourceSpec)
	in.ForProvider.DeepCopyInto(&out.ForProvider)
}
func (in *GlobalAddressSpec) DeepCopy() *GlobalAddressSpec {
	if in == nil {
		return nil
	}
	out := new(GlobalAddressSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *GlobalAddressStatus) DeepCopyInto(out *GlobalAddressStatus) {
	*out = *in
	in.ResourceStatus.DeepCopyInto(&out.ResourceStatus)
	in.AtProvider.DeepCopyInto(&out.AtProvider)
}
func (in *GlobalAddressStatus) DeepCopy() *GlobalAddressStatus {
	if in == nil {
		return nil
	}
	out := new(GlobalAddressStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *Network) DeepCopyInto(out *Network) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}
func (in *Network) DeepCopy() *Network {
	if in == nil {
		return nil
	}
	out := new(Network)
	in.DeepCopyInto(out)
	return out
}
func (in *Network) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NetworkList) DeepCopyInto(out *NetworkList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Network, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *NetworkList) DeepCopy() *NetworkList {
	if in == nil {
		return nil
	}
	out := new(NetworkList)
	in.DeepCopyInto(out)
	return out
}
func (in *NetworkList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *NetworkObservation) DeepCopyInto(out *NetworkObservation) {
	*out = *in
	if in.Peerings != nil {
		in, out := &in.Peerings, &out.Peerings
		*out = make([]*NetworkPeering, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(NetworkPeering)
				**out = **in
			}
		}
	}
	if in.Subnetworks != nil {
		in, out := &in.Subnetworks, &out.Subnetworks
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}
func (in *NetworkObservation) DeepCopy() *NetworkObservation {
	if in == nil {
		return nil
	}
	out := new(NetworkObservation)
	in.DeepCopyInto(out)
	return out
}
func (in *NetworkParameters) DeepCopyInto(out *NetworkParameters) {
	*out = *in
	if in.AutoCreateSubnetworks != nil {
		in, out := &in.AutoCreateSubnetworks, &out.AutoCreateSubnetworks
		*out = new(bool)
		**out = **in
	}
	if in.Description != nil {
		in, out := &in.Description, &out.Description
		*out = new(string)
		**out = **in
	}
	if in.RoutingConfig != nil {
		in, out := &in.RoutingConfig, &out.RoutingConfig
		*out = new(NetworkRoutingConfig)
		**out = **in
	}
}
func (in *NetworkParameters) DeepCopy() *NetworkParameters {
	if in == nil {
		return nil
	}
	out := new(NetworkParameters)
	in.DeepCopyInto(out)
	return out
}
func (in *NetworkPeering) DeepCopyInto(out *NetworkPeering) {
	*out = *in
}
func (in *NetworkPeering) DeepCopy() *NetworkPeering {
	if in == nil {
		return nil
	}
	out := new(NetworkPeering)
	in.DeepCopyInto(out)
	return out
}
func (in *NetworkRoutingConfig) DeepCopyInto(out *NetworkRoutingConfig) {
	*out = *in
}
func (in *NetworkRoutingConfig) DeepCopy() *NetworkRoutingConfig {
	if in == nil {
		return nil
	}
	out := new(NetworkRoutingConfig)
	in.DeepCopyInto(out)
	return out
}
func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec) {
	*out = *in
	in.ResourceSpec.DeepCopyInto(&out.ResourceSpec)
	in.ForProvider.DeepCopyInto(&out.ForProvider)
}
func (in *NetworkSpec) DeepCopy() *NetworkSpec {
	if in == nil {
		return nil
	}
	out := new(NetworkSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus) {
	*out = *in
	in.ResourceStatus.DeepCopyInto(&out.ResourceStatus)
	in.AtProvider.DeepCopyInto(&out.AtProvider)
}
func (in *NetworkStatus) DeepCopy() *NetworkStatus {
	if in == nil {
		return nil
	}
	out := new(NetworkStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *Subnetwork) DeepCopyInto(out *Subnetwork) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}
func (in *Subnetwork) DeepCopy() *Subnetwork {
	if in == nil {
		return nil
	}
	out := new(Subnetwork)
	in.DeepCopyInto(out)
	return out
}
func (in *Subnetwork) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *SubnetworkList) DeepCopyInto(out *SubnetworkList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Subnetwork, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *SubnetworkList) DeepCopy() *SubnetworkList {
	if in == nil {
		return nil
	}
	out := new(SubnetworkList)
	in.DeepCopyInto(out)
	return out
}
func (in *SubnetworkList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *SubnetworkObservation) DeepCopyInto(out *SubnetworkObservation) {
	*out = *in
}
func (in *SubnetworkObservation) DeepCopy() *SubnetworkObservation {
	if in == nil {
		return nil
	}
	out := new(SubnetworkObservation)
	in.DeepCopyInto(out)
	return out
}
func (in *SubnetworkParameters) DeepCopyInto(out *SubnetworkParameters) {
	*out = *in
	if in.Network != nil {
		in, out := &in.Network, &out.Network
		*out = new(string)
		**out = **in
	}
	if in.NetworkRef != nil {
		in, out := &in.NetworkRef, &out.NetworkRef
		*out = new(v1.Reference)
		**out = **in
	}
	if in.NetworkSelector != nil {
		in, out := &in.NetworkSelector, &out.NetworkSelector
		*out = new(v1.Selector)
		(*in).DeepCopyInto(*out)
	}
	if in.Description != nil {
		in, out := &in.Description, &out.Description
		*out = new(string)
		**out = **in
	}
	if in.EnableFlowLogs != nil {
		in, out := &in.EnableFlowLogs, &out.EnableFlowLogs
		*out = new(bool)
		**out = **in
	}
	if in.PrivateIPGoogleAccess != nil {
		in, out := &in.PrivateIPGoogleAccess, &out.PrivateIPGoogleAccess
		*out = new(bool)
		**out = **in
	}
	if in.SecondaryIPRanges != nil {
		in, out := &in.SecondaryIPRanges, &out.SecondaryIPRanges
		*out = make([]*SubnetworkSecondaryRange, len(*in))
		for i := range *in {
			if (*in)[i] != nil {
				in, out := &(*in)[i], &(*out)[i]
				*out = new(SubnetworkSecondaryRange)
				**out = **in
			}
		}
	}
}
func (in *SubnetworkParameters) DeepCopy() *SubnetworkParameters {
	if in == nil {
		return nil
	}
	out := new(SubnetworkParameters)
	in.DeepCopyInto(out)
	return out
}
func (in *SubnetworkSecondaryRange) DeepCopyInto(out *SubnetworkSecondaryRange) {
	*out = *in
}
func (in *SubnetworkSecondaryRange) DeepCopy() *SubnetworkSecondaryRange {
	if in == nil {
		return nil
	}
	out := new(SubnetworkSecondaryRange)
	in.DeepCopyInto(out)
	return out
}
func (in *SubnetworkSpec) DeepCopyInto(out *SubnetworkSpec) {
	*out = *in
	in.ResourceSpec.DeepCopyInto(&out.ResourceSpec)
	in.ForProvider.DeepCopyInto(&out.ForProvider)
}