func (in *ImageReference) DeepCopyInto(out *ImageReference) {
	*out = *in
	if in.Publisher != nil {
		in, out := &in.Publisher, &out.Publisher
		*out = new(string)
		**out = **in
	}
	if in.Offer != nil {
		in, out := &in.Offer, &out.Offer
		*out = new(string)
		**out = **in
	}
	if in.Sku != nil {
		in, out := &in.Sku, &out.Sku
		*out = new(string)
		**out = **in
	}
	if in.Version != nil {
		in, out := &in.Version, &out.Version
		*out = new(string)
		**out = **in
	}
	if in.ID != nil {
		in, out := &in.ID, &out.ID
		*out = new(string)
		**out = **in
	}
}
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
package v1
import (
	corev1 "github.com/Azure/k8s-infra/apis/core/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
)
func (in *AdditionalCapabilities) DeepCopyInto(out *AdditionalCapabilities) {
	*out = *in
	if in.UltraSSDEnabled != nil {
		in, out := &in.UltraSSDEnabled, &out.UltraSSDEnabled
		*out = new(bool)
		**out = **in
	}
}
func (in *AdditionalCapabilities) DeepCopy() *AdditionalCapabilities {
	if in == nil {
		return nil
	}
	out := new(AdditionalCapabilities)
	in.DeepCopyInto(out)
	return out
}
func (in *AutomaticOSUpgradePolicy) DeepCopyInto(out *AutomaticOSUpgradePolicy) {
	*out = *in
	if in.EnableAutomaticOSUpgrade != nil {
		in, out := &in.EnableAutomaticOSUpgrade, &out.EnableAutomaticOSUpgrade
		*out = new(bool)
		**out = **in
	}
	if in.DisableAutomaticRollback != nil {
		in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback
		*out = new(bool)
		**out = **in
	}
}
func (in *AutomaticOSUpgradePolicy) DeepCopy() *AutomaticOSUpgradePolicy {
	if in == nil {
		return nil
	}
	out := new(AutomaticOSUpgradePolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *AutomaticRepairsPolicy) DeepCopyInto(out *AutomaticRepairsPolicy) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.GracePeriod != nil {
		in, out := &in.GracePeriod, &out.GracePeriod
		*out = new(string)
		**out = **in
	}
}
func (in *AutomaticRepairsPolicy) DeepCopy() *AutomaticRepairsPolicy {
	if in == nil {
		return nil
	}
	out := new(AutomaticRepairsPolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *BillingProfile) DeepCopyInto(out *BillingProfile) {
	*out = *in
	if in.MaxPrice != nil {
		in, out := &in.MaxPrice, &out.MaxPrice
		*out = new(string)
		**out = **in
	}
}
func (in *BillingProfile) DeepCopy() *BillingProfile {
	if in == nil {
		return nil
	}
	out := new(BillingProfile)
	in.DeepCopyInto(out)
	return out
}
func (in *BootDiagnostics) DeepCopyInto(out *BootDiagnostics) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.StorageURI != nil {
		in, out := &in.StorageURI, &out.StorageURI
		*out = new(string)
		**out = **in
	}
}
func (in *BootDiagnostics) DeepCopy() *BootDiagnostics {
	if in == nil {
		return nil
	}
	out := new(BootDiagnostics)
	in.DeepCopyInto(out)
	return out
}
func (in *DataDisk) DeepCopyInto(out *DataDisk) {
	*out = *in
	if in.Lun != nil {
		in, out := &in.Lun, &out.Lun
		*out = new(int32)
		**out = **in
	}
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(string)
		**out = **in
	}
	if in.Vhd != nil {
		in, out := &in.Vhd, &out.Vhd
		*out = new(VirtualHardDisk)
		(*in).DeepCopyInto(*out)
	}
	if in.Image != nil {
		in, out := &in.Image, &out.Image
		*out = new(VirtualHardDisk)
		(*in).DeepCopyInto(*out)
	}
	if in.WriteAcceleratorEnabled != nil {
		in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled
		*out = new(bool)
		**out = **in
	}
	if in.DiskSizeGB != nil {
		in, out := &in.DiskSizeGB, &out.DiskSizeGB
		*out = new(int32)
		**out = **in
	}
	if in.ManagedDisk != nil {
		in, out := &in.ManagedDisk, &out.ManagedDisk
		*out = new(ManagedDiskParameters)
		(*in).DeepCopyInto(*out)
	}
	if in.ToBeDetached != nil {
		in, out := &in.ToBeDetached, &out.ToBeDetached
		*out = new(bool)
		**out = **in
	}
}
func (in *DataDisk) DeepCopy() *DataDisk {
	if in == nil {
		return nil
	}
	out := new(DataDisk)
	in.DeepCopyInto(out)
	return out
}
func (in *DiagnosticsProfile) DeepCopyInto(out *DiagnosticsProfile) {
	*out = *in
	if in.BootDiagnostics != nil {
		in, out := &in.BootDiagnostics, &out.BootDiagnostics
		*out = new(BootDiagnostics)
		(*in).DeepCopyInto(*out)
	}
}
func (in *DiagnosticsProfile) DeepCopy() *DiagnosticsProfile {
	if in == nil {
		return nil
	}
	out := new(DiagnosticsProfile)
	in.DeepCopyInto(out)
	return out
}
func (in *HardwareProfile) DeepCopyInto(out *HardwareProfile) {
	*out = *in
}
func (in *HardwareProfile) DeepCopy() *HardwareProfile {
	if in == nil {
		return nil
	}
	out := new(HardwareProfile)
	in.DeepCopyInto(out)
	return out
}