func (in *AppSpecification) DeepCopy() *AppSpecification {
	if in == nil {
		return nil
	}
	out := new(AppSpecification)
	in.DeepCopyInto(out)
	return out
}
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSpecification.
package v1
import ()
func (in *AlgorithmSpecification) DeepCopyInto(out *AlgorithmSpecification) {
	*out = *in
	if in.AlgorithmName != nil {
		in, out := &in.AlgorithmName, &out.AlgorithmName
		*out = new(string)
		**out = **in
	}
	if in.MetricDefinitions != nil {
		in, out := &in.MetricDefinitions, &out.MetricDefinitions
		*out = make([]MetricDefinition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TrainingImage != nil {
		in, out := &in.TrainingImage, &out.TrainingImage
		*out = new(string)
		**out = **in
	}
}
func (in *AlgorithmSpecification) DeepCopy() *AlgorithmSpecification {
	if in == nil {
		return nil
	}
	out := new(AlgorithmSpecification)
	in.DeepCopyInto(out)
	return out
}
func (in *AppSpecification) DeepCopyInto(out *AppSpecification) {
	*out = *in
	if in.ContainerArguments != nil {
		in, out := &in.ContainerArguments, &out.ContainerArguments
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.ContainerEntrypoint != nil {
		in, out := &in.ContainerEntrypoint, &out.ContainerEntrypoint
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}