func (in *Gateway) DeepCopyInto(out *Gateway) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	return
}
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
package v1alpha3
import (
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *Destination) DeepCopyInto(out *Destination) {
	*out = *in
	if in.Port != nil {
		in, out := &in.Port, &out.Port
		*out = new(PortSelector)
		**out = **in
	}
	return
}
func (in *Destination) DeepCopy() *Destination {
	if in == nil {
		return nil
	}
	out := new(Destination)
	in.DeepCopyInto(out)
	return out
}
func (in *DestinationRule) DeepCopyInto(out *DestinationRule) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	return
}
func (in *DestinationRule) DeepCopy() *DestinationRule {
	if in == nil {
		return nil
	}
	out := new(DestinationRule)
	in.DeepCopyInto(out)
	return out
}
func (in *DestinationRule) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *DestinationRuleList) DeepCopyInto(out *DestinationRuleList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]DestinationRule, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *DestinationRuleList) DeepCopy() *DestinationRuleList {
	if in == nil {
		return nil
	}
	out := new(DestinationRuleList)
	in.DeepCopyInto(out)
	return out
}
func (in *DestinationRuleList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *DestinationRuleSpec) DeepCopyInto(out *DestinationRuleSpec) {
	*out = *in
	if in.TrafficPolicy != nil {
		in, out := &in.TrafficPolicy, &out.TrafficPolicy
		*out = new(TrafficPolicy)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *DestinationRuleSpec) DeepCopy() *DestinationRuleSpec {
	if in == nil {
		return nil
	}
	out := new(DestinationRuleSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *DestinationWeight) DeepCopyInto(out *DestinationWeight) {
	*out = *in
	if in.Destination != nil {
		in, out := &in.Destination, &out.Destination
		*out = new(Destination)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *DestinationWeight) DeepCopy() *DestinationWeight {
	if in == nil {
		return nil
	}
	out := new(DestinationWeight)
	in.DeepCopyInto(out)
	return out
}
func (in *EnvoyFilter) DeepCopyInto(out *EnvoyFilter) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	return
}
func (in *EnvoyFilter) DeepCopy() *EnvoyFilter {
	if in == nil {
		return nil
	}
	out := new(EnvoyFilter)
	in.DeepCopyInto(out)
	return out
}
func (in *EnvoyFilter) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *EnvoyFilterList) DeepCopyInto(out *EnvoyFilterList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]EnvoyFilter, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *EnvoyFilterList) DeepCopy() *EnvoyFilterList {
	if in == nil {
		return nil
	}
	out := new(EnvoyFilterList)
	in.DeepCopyInto(out)
	return out
}
func (in *EnvoyFilterList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *EnvoyFilterSpec) DeepCopyInto(out *EnvoyFilterSpec) {
	*out = *in
	if in.WorkloadLabels != nil {
		in, out := &in.WorkloadLabels, &out.WorkloadLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Filters != nil {
		in, out := &in.Filters, &out.Filters
		*out = make([]Filter, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *EnvoyFilterSpec) DeepCopy() *EnvoyFilterSpec {
	if in == nil {
		return nil
	}
	out := new(EnvoyFilterSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *Filter) DeepCopyInto(out *Filter) {
	*out = *in
	out.InsertPosition = in.InsertPosition
	in.ListenerMatch.DeepCopyInto(&out.ListenerMatch)
	out.FilterConfig = in.FilterConfig
	return
}
func (in *Filter) DeepCopy() *Filter {
	if in == nil {
		return nil
	}
	out := new(Filter)
	in.DeepCopyInto(out)
	return out
}
func (in *FilterConfig) DeepCopyInto(out *FilterConfig) {
	*out = *in
	out.GRPCService = in.GRPCService
	return
}
func (in *FilterConfig) DeepCopy() *FilterConfig {
	if in == nil {
		return nil
	}
	out := new(FilterConfig)
	in.DeepCopyInto(out)
	return out
}
func (in *GRPCService) DeepCopyInto(out *GRPCService) {
	*out = *in
	out.GoogleGRPC = in.GoogleGRPC
	return
}
func (in *GRPCService) DeepCopy() *GRPCService {
	if in == nil {
		return nil
	}
	out := new(GRPCService)
	in.DeepCopyInto(out)
	return out
}