func (in *Parameter) DeepCopy() *Parameter {
	if in == nil {
		return nil
	}
	out := new(Parameter)
	in.DeepCopyInto(out)
	return out
}
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Parameter.
package v1alpha1
import (
	v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *Bundle) DeepCopyInto(out *Bundle) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
	return
}
func (in *Bundle) DeepCopy() *Bundle {
	if in == nil {
		return nil
	}
	out := new(Bundle)
	in.DeepCopyInto(out)
	return out
}
func (in *Bundle) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *BundleBinding) DeepCopyInto(out *BundleBinding) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	out.Spec = in.Spec
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *BundleBinding) DeepCopy() *BundleBinding {
	if in == nil {
		return nil
	}
	out := new(BundleBinding)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleBinding) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *BundleBindingList) DeepCopyInto(out *BundleBindingList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]BundleBinding, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *BundleBindingList) DeepCopy() *BundleBindingList {
	if in == nil {
		return nil
	}
	out := new(BundleBindingList)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleBindingList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *BundleBindingSpec) DeepCopyInto(out *BundleBindingSpec) {
	*out = *in
	out.BundleInstance = in.BundleInstance
	return
}
func (in *BundleBindingSpec) DeepCopy() *BundleBindingSpec {
	if in == nil {
		return nil
	}
	out := new(BundleBindingSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleBindingStatus) DeepCopyInto(out *BundleBindingStatus) {
	*out = *in
	if in.Jobs != nil {
		in, out := &in.Jobs, &out.Jobs
		*out = make(map[string]Job, len(*in))
		for key, val := range *in {
			newVal := new(Job)
			val.DeepCopyInto(newVal)
			(*out)[key] = *newVal
		}
	}
	return
}
func (in *BundleBindingStatus) DeepCopy() *BundleBindingStatus {
	if in == nil {
		return nil
	}
	out := new(BundleBindingStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleInstance) DeepCopyInto(out *BundleInstance) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	out.Spec = in.Spec
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *BundleInstance) DeepCopy() *BundleInstance {
	if in == nil {
		return nil
	}
	out := new(BundleInstance)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleInstance) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *BundleInstanceList) DeepCopyInto(out *BundleInstanceList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]BundleInstance, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *BundleInstanceList) DeepCopy() *BundleInstanceList {
	if in == nil {
		return nil
	}
	out := new(BundleInstanceList)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleInstanceList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *BundleInstanceSpec) DeepCopyInto(out *BundleInstanceSpec) {
	*out = *in
	out.Bundle = in.Bundle
	out.Context = in.Context
	return
}
func (in *BundleInstanceSpec) DeepCopy() *BundleInstanceSpec {
	if in == nil {
		return nil
	}
	out := new(BundleInstanceSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleInstanceStatus) DeepCopyInto(out *BundleInstanceStatus) {
	*out = *in
	if in.Bindings != nil {
		in, out := &in.Bindings, &out.Bindings
		*out = make([]LocalObjectReference, len(*in))
		copy(*out, *in)
	}
	if in.Jobs != nil {
		in, out := &in.Jobs, &out.Jobs
		*out = make(map[string]Job, len(*in))
		for key, val := range *in {
			newVal := new(Job)
			val.DeepCopyInto(newVal)
			(*out)[key] = *newVal
		}
	}
	return
}
func (in *BundleInstanceStatus) DeepCopy() *BundleInstanceStatus {
	if in == nil {
		return nil
	}
	out := new(BundleInstanceStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleList) DeepCopyInto(out *BundleList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Bundle, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *BundleList) DeepCopy() *BundleList {
	if in == nil {
		return nil
	}
	out := new(BundleList)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *BundleSpec) DeepCopyInto(out *BundleSpec) {
	*out = *in
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Plans != nil {
		in, out := &in.Plans, &out.Plans
		*out = make([]Plan, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *BundleSpec) DeepCopy() *BundleSpec {
	if in == nil {
		return nil
	}
	out := new(BundleSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *BundleStatus) DeepCopyInto(out *BundleStatus) {
	*out = *in
	return
}
func (in *BundleStatus) DeepCopy() *BundleStatus {
	if in == nil {
		return nil
	}
	out := new(BundleStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *Context) DeepCopyInto(out *Context) {
	*out = *in
	return
}
func (in *Context) DeepCopy() *Context {
	if in == nil {
		return nil
	}
	out := new(Context)
	in.DeepCopyInto(out)
	return out
}
func (in *Job) DeepCopyInto(out *Job) {
	*out = *in
	if in.LastModifiedTime != nil {
		in, out := &in.LastModifiedTime, &out.LastModifiedTime
		if *in == nil {
			*out = nil
		} else {
			*out = new(v1.Time)
			(*in).DeepCopyInto(*out)
		}
	}
	return
}
func (in *Job) DeepCopy() *Job {
	if in == nil {
		return nil
	}
	out := new(Job)
	in.DeepCopyInto(out)
	return out
}
func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference) {
	*out = *in
	return
}
func (in *LocalObjectReference) DeepCopy() *LocalObjectReference {
	if in == nil {
		return nil
	}
	out := new(LocalObjectReference)
	in.DeepCopyInto(out)
	return out
}
func (in *Parameter) DeepCopyInto(out *Parameter) {
	*out = *in
	if in.Maximum != nil {
		in, out := &in.Maximum, &out.Maximum
		if *in == nil {
			*out = nil
		} else {
			*out = new(NilableNumber)
			**out = **in
		}
	}
	if in.ExclusiveMaximum != nil {
		in, out := &in.ExclusiveMaximum, &out.ExclusiveMaximum
		if *in == nil {
			*out = nil
		} else {
			*out = new(NilableNumber)
			**out = **in
		}
	}
	if in.Minimum != nil {
		in, out := &in.Minimum, &out.Minimum
		if *in == nil {
			*out = nil
		} else {
			*out = new(NilableNumber)
			**out = **in
		}
	}
	if in.ExclusiveMinimum != nil {
		in, out := &in.ExclusiveMinimum, &out.ExclusiveMinimum
		if *in == nil {
			*out = nil
		} else {
			*out = new(NilableNumber)
			**out = **in
		}
	}
	if in.Enum != nil {
		in, out := &in.Enum, &out.Enum
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}