//go:build !ignore_autogenerated
// +build !ignore_autogenerated

/*
Copyright The KubeVirt Authors.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Code generated by deepcopy-gen. DO NOT EDIT.

package api

import (
	runtime "k8s.io/apimachinery/pkg/runtime"
	v1 "kubevirt.io/api/core/v1"
)

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ACPI) DeepCopyInto(out *ACPI) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACPI.
func (in *ACPI) DeepCopy() *ACPI {
	if in == nil {
		return nil
	}
	out := new(ACPI)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ACPITable) DeepCopyInto(out *ACPITable) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACPITable.
func (in *ACPITable) DeepCopy() *ACPITable {
	if in == nil {
		return nil
	}
	out := new(ACPITable)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *AccessCredentialMetadata) DeepCopyInto(out *AccessCredentialMetadata) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessCredentialMetadata.
func (in *AccessCredentialMetadata) DeepCopy() *AccessCredentialMetadata {
	if in == nil {
		return nil
	}
	out := new(AccessCredentialMetadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Address) DeepCopyInto(out *Address) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Address.
func (in *Address) DeepCopy() *Address {
	if in == nil {
		return nil
	}
	out := new(Address)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Alias) DeepCopyInto(out *Alias) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Alias.
func (in *Alias) DeepCopy() *Alias {
	if in == nil {
		return nil
	}
	out := new(Alias)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Arg) DeepCopyInto(out *Arg) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Arg.
func (in *Arg) DeepCopy() *Arg {
	if in == nil {
		return nil
	}
	out := new(Arg)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BIOS) DeepCopyInto(out *BIOS) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BIOS.
func (in *BIOS) DeepCopy() *BIOS {
	if in == nil {
		return nil
	}
	out := new(BIOS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BackingStore) DeepCopyInto(out *BackingStore) {
	*out = *in
	if in.Format != nil {
		in, out := &in.Format, &out.Format
		*out = new(BackingStoreFormat)
		**out = **in
	}
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(DiskSource)
		(*in).DeepCopyInto(*out)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackingStore.
func (in *BackingStore) DeepCopy() *BackingStore {
	if in == nil {
		return nil
	}
	out := new(BackingStore)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BackingStoreFormat) DeepCopyInto(out *BackingStoreFormat) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackingStoreFormat.
func (in *BackingStoreFormat) DeepCopy() *BackingStoreFormat {
	if in == nil {
		return nil
	}
	out := new(BackingStoreFormat)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BandWidth) DeepCopyInto(out *BandWidth) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BandWidth.
func (in *BandWidth) DeepCopy() *BandWidth {
	if in == nil {
		return nil
	}
	out := new(BandWidth)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BlockIO) DeepCopyInto(out *BlockIO) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlockIO.
func (in *BlockIO) DeepCopy() *BlockIO {
	if in == nil {
		return nil
	}
	out := new(BlockIO)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Boot) DeepCopyInto(out *Boot) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Boot.
func (in *Boot) DeepCopy() *Boot {
	if in == nil {
		return nil
	}
	out := new(Boot)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BootMenu) DeepCopyInto(out *BootMenu) {
	*out = *in
	if in.Timeout != nil {
		in, out := &in.Timeout, &out.Timeout
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootMenu.
func (in *BootMenu) DeepCopy() *BootMenu {
	if in == nil {
		return nil
	}
	out := new(BootMenu)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BootOrder) DeepCopyInto(out *BootOrder) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootOrder.
func (in *BootOrder) DeepCopy() *BootOrder {
	if in == nil {
		return nil
	}
	out := new(BootOrder)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CID) DeepCopyInto(out *CID) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CID.
func (in *CID) DeepCopy() *CID {
	if in == nil {
		return nil
	}
	out := new(CID)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPU) DeepCopyInto(out *CPU) {
	*out = *in
	if in.Features != nil {
		in, out := &in.Features, &out.Features
		*out = make([]CPUFeature, len(*in))
		copy(*out, *in)
	}
	if in.Topology != nil {
		in, out := &in.Topology, &out.Topology
		*out = new(CPUTopology)
		**out = **in
	}
	if in.NUMA != nil {
		in, out := &in.NUMA, &out.NUMA
		*out = new(NUMA)
		(*in).DeepCopyInto(*out)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPU.
func (in *CPU) DeepCopy() *CPU {
	if in == nil {
		return nil
	}
	out := new(CPU)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPUEmulatorPin) DeepCopyInto(out *CPUEmulatorPin) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUEmulatorPin.
func (in *CPUEmulatorPin) DeepCopy() *CPUEmulatorPin {
	if in == nil {
		return nil
	}
	out := new(CPUEmulatorPin)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPUFeature) DeepCopyInto(out *CPUFeature) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUFeature.
func (in *CPUFeature) DeepCopy() *CPUFeature {
	if in == nil {
		return nil
	}
	out := new(CPUFeature)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPUTopology) DeepCopyInto(out *CPUTopology) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUTopology.
func (in *CPUTopology) DeepCopy() *CPUTopology {
	if in == nil {
		return nil
	}
	out := new(CPUTopology)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPUTune) DeepCopyInto(out *CPUTune) {
	*out = *in
	if in.VCPUPin != nil {
		in, out := &in.VCPUPin, &out.VCPUPin
		*out = make([]CPUTuneVCPUPin, len(*in))
		copy(*out, *in)
	}
	if in.IOThreadPin != nil {
		in, out := &in.IOThreadPin, &out.IOThreadPin
		*out = make([]CPUTuneIOThreadPin, len(*in))
		copy(*out, *in)
	}
	if in.EmulatorPin != nil {
		in, out := &in.EmulatorPin, &out.EmulatorPin
		*out = new(CPUEmulatorPin)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUTune.
func (in *CPUTune) DeepCopy() *CPUTune {
	if in == nil {
		return nil
	}
	out := new(CPUTune)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPUTuneIOThreadPin) DeepCopyInto(out *CPUTuneIOThreadPin) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUTuneIOThreadPin.
func (in *CPUTuneIOThreadPin) DeepCopy() *CPUTuneIOThreadPin {
	if in == nil {
		return nil
	}
	out := new(CPUTuneIOThreadPin)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CPUTuneVCPUPin) DeepCopyInto(out *CPUTuneVCPUPin) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUTuneVCPUPin.
func (in *CPUTuneVCPUPin) DeepCopy() *CPUTuneVCPUPin {
	if in == nil {
		return nil
	}
	out := new(CPUTuneVCPUPin)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Channel) DeepCopyInto(out *Channel) {
	*out = *in
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(ChannelSource)
		**out = **in
	}
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(ChannelTarget)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Channel.
func (in *Channel) DeepCopy() *Channel {
	if in == nil {
		return nil
	}
	out := new(Channel)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ChannelSource) DeepCopyInto(out *ChannelSource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelSource.
func (in *ChannelSource) DeepCopy() *ChannelSource {
	if in == nil {
		return nil
	}
	out := new(ChannelSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ChannelTarget) DeepCopyInto(out *ChannelTarget) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelTarget.
func (in *ChannelTarget) DeepCopy() *ChannelTarget {
	if in == nil {
		return nil
	}
	out := new(ChannelTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Clock) DeepCopyInto(out *Clock) {
	*out = *in
	if in.Timer != nil {
		in, out := &in.Timer, &out.Timer
		*out = make([]Timer, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Clock.
func (in *Clock) DeepCopy() *Clock {
	if in == nil {
		return nil
	}
	out := new(Clock)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Commandline) DeepCopyInto(out *Commandline) {
	*out = *in
	if in.QEMUEnv != nil {
		in, out := &in.QEMUEnv, &out.QEMUEnv
		*out = make([]Env, len(*in))
		copy(*out, *in)
	}
	if in.QEMUArg != nil {
		in, out := &in.QEMUArg, &out.QEMUArg
		*out = make([]Arg, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Commandline.
func (in *Commandline) DeepCopy() *Commandline {
	if in == nil {
		return nil
	}
	out := new(Commandline)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Console) DeepCopyInto(out *Console) {
	*out = *in
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(ConsoleTarget)
		(*in).DeepCopyInto(*out)
	}
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(ConsoleSource)
		**out = **in
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Console.
func (in *Console) DeepCopy() *Console {
	if in == nil {
		return nil
	}
	out := new(Console)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ConsoleSource) DeepCopyInto(out *ConsoleSource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsoleSource.
func (in *ConsoleSource) DeepCopy() *ConsoleSource {
	if in == nil {
		return nil
	}
	out := new(ConsoleSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ConsoleTarget) DeepCopyInto(out *ConsoleTarget) {
	*out = *in
	if in.Type != nil {
		in, out := &in.Type, &out.Type
		*out = new(string)
		**out = **in
	}
	if in.Port != nil {
		in, out := &in.Port, &out.Port
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsoleTarget.
func (in *ConsoleTarget) DeepCopy() *ConsoleTarget {
	if in == nil {
		return nil
	}
	out := new(ConsoleTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Controller) DeepCopyInto(out *Controller) {
	*out = *in
	if in.Driver != nil {
		in, out := &in.Driver, &out.Driver
		*out = new(ControllerDriver)
		(*in).DeepCopyInto(*out)
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controller.
func (in *Controller) DeepCopy() *Controller {
	if in == nil {
		return nil
	}
	out := new(Controller)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ControllerDriver) DeepCopyInto(out *ControllerDriver) {
	*out = *in
	if in.IOThread != nil {
		in, out := &in.IOThread, &out.IOThread
		*out = new(uint)
		**out = **in
	}
	if in.Queues != nil {
		in, out := &in.Queues, &out.Queues
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerDriver.
func (in *ControllerDriver) DeepCopy() *ControllerDriver {
	if in == nil {
		return nil
	}
	out := new(ControllerDriver)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Defaulter) DeepCopyInto(out *Defaulter) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Defaulter.
func (in *Defaulter) DeepCopy() *Defaulter {
	if in == nil {
		return nil
	}
	out := new(Defaulter)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Devices) DeepCopyInto(out *Devices) {
	*out = *in
	if in.Interfaces != nil {
		in, out := &in.Interfaces, &out.Interfaces
		*out = make([]Interface, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Channels != nil {
		in, out := &in.Channels, &out.Channels
		*out = make([]Channel, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.HostDevices != nil {
		in, out := &in.HostDevices, &out.HostDevices
		*out = make([]HostDevice, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Controllers != nil {
		in, out := &in.Controllers, &out.Controllers
		*out = make([]Controller, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Video != nil {
		in, out := &in.Video, &out.Video
		*out = make([]Video, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Graphics != nil {
		in, out := &in.Graphics, &out.Graphics
		*out = make([]Graphics, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Ballooning != nil {
		in, out := &in.Ballooning, &out.Ballooning
		*out = new(MemBalloon)
		(*in).DeepCopyInto(*out)
	}
	if in.Disks != nil {
		in, out := &in.Disks, &out.Disks
		*out = make([]Disk, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Inputs != nil {
		in, out := &in.Inputs, &out.Inputs
		*out = make([]Input, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Serials != nil {
		in, out := &in.Serials, &out.Serials
		*out = make([]Serial, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Consoles != nil {
		in, out := &in.Consoles, &out.Consoles
		*out = make([]Console, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Watchdogs != nil {
		in, out := &in.Watchdogs, &out.Watchdogs
		*out = make([]Watchdog, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Rng != nil {
		in, out := &in.Rng, &out.Rng
		*out = new(Rng)
		(*in).DeepCopyInto(*out)
	}
	if in.Filesystems != nil {
		in, out := &in.Filesystems, &out.Filesystems
		*out = make([]FilesystemDevice, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Redirs != nil {
		in, out := &in.Redirs, &out.Redirs
		*out = make([]RedirectedDevice, len(*in))
		copy(*out, *in)
	}
	if in.SoundCards != nil {
		in, out := &in.SoundCards, &out.SoundCards
		*out = make([]SoundCard, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TPMs != nil {
		in, out := &in.TPMs, &out.TPMs
		*out = make([]TPM, len(*in))
		copy(*out, *in)
	}
	if in.VSOCK != nil {
		in, out := &in.VSOCK, &out.VSOCK
		*out = new(VSOCK)
		**out = **in
	}
	if in.Memory != nil {
		in, out := &in.Memory, &out.Memory
		*out = new(MemoryDevice)
		(*in).DeepCopyInto(*out)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Devices.
func (in *Devices) DeepCopy() *Devices {
	if in == nil {
		return nil
	}
	out := new(Devices)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Disk) DeepCopyInto(out *Disk) {
	*out = *in
	in.Source.DeepCopyInto(&out.Source)
	out.Target = in.Target
	if in.Driver != nil {
		in, out := &in.Driver, &out.Driver
		*out = new(DiskDriver)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadOnly != nil {
		in, out := &in.ReadOnly, &out.ReadOnly
		*out = new(ReadOnly)
		**out = **in
	}
	if in.Auth != nil {
		in, out := &in.Auth, &out.Auth
		*out = new(DiskAuth)
		(*in).DeepCopyInto(*out)
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.BackingStore != nil {
		in, out := &in.BackingStore, &out.BackingStore
		*out = new(BackingStore)
		(*in).DeepCopyInto(*out)
	}
	if in.BootOrder != nil {
		in, out := &in.BootOrder, &out.BootOrder
		*out = new(BootOrder)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	if in.BlockIO != nil {
		in, out := &in.BlockIO, &out.BlockIO
		*out = new(BlockIO)
		**out = **in
	}
	if in.FilesystemOverhead != nil {
		in, out := &in.FilesystemOverhead, &out.FilesystemOverhead
		*out = new(v1.Percent)
		**out = **in
	}
	if in.Capacity != nil {
		in, out := &in.Capacity, &out.Capacity
		*out = new(int64)
		**out = **in
	}
	if in.Shareable != nil {
		in, out := &in.Shareable, &out.Shareable
		*out = new(Shareable)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Disk.
func (in *Disk) DeepCopy() *Disk {
	if in == nil {
		return nil
	}
	out := new(Disk)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskAuth) DeepCopyInto(out *DiskAuth) {
	*out = *in
	if in.Secret != nil {
		in, out := &in.Secret, &out.Secret
		*out = new(DiskSecret)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskAuth.
func (in *DiskAuth) DeepCopy() *DiskAuth {
	if in == nil {
		return nil
	}
	out := new(DiskAuth)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskDriver) DeepCopyInto(out *DiskDriver) {
	*out = *in
	if in.IOThread != nil {
		in, out := &in.IOThread, &out.IOThread
		*out = new(uint)
		**out = **in
	}
	if in.IOThreads != nil {
		in, out := &in.IOThreads, &out.IOThreads
		*out = new(DiskIOThreads)
		(*in).DeepCopyInto(*out)
	}
	if in.Queues != nil {
		in, out := &in.Queues, &out.Queues
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskDriver.
func (in *DiskDriver) DeepCopy() *DiskDriver {
	if in == nil {
		return nil
	}
	out := new(DiskDriver)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskIOThread) DeepCopyInto(out *DiskIOThread) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskIOThread.
func (in *DiskIOThread) DeepCopy() *DiskIOThread {
	if in == nil {
		return nil
	}
	out := new(DiskIOThread)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskIOThreads) DeepCopyInto(out *DiskIOThreads) {
	*out = *in
	if in.IOThread != nil {
		in, out := &in.IOThread, &out.IOThread
		*out = make([]DiskIOThread, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskIOThreads.
func (in *DiskIOThreads) DeepCopy() *DiskIOThreads {
	if in == nil {
		return nil
	}
	out := new(DiskIOThreads)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskSecret) DeepCopyInto(out *DiskSecret) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSecret.
func (in *DiskSecret) DeepCopy() *DiskSecret {
	if in == nil {
		return nil
	}
	out := new(DiskSecret)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskSource) DeepCopyInto(out *DiskSource) {
	*out = *in
	if in.Host != nil {
		in, out := &in.Host, &out.Host
		*out = new(DiskSourceHost)
		**out = **in
	}
	if in.Reservations != nil {
		in, out := &in.Reservations, &out.Reservations
		*out = new(Reservations)
		(*in).DeepCopyInto(*out)
	}
	if in.Slices != nil {
		in, out := &in.Slices, &out.Slices
		*out = make([]Slice, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSource.
func (in *DiskSource) DeepCopy() *DiskSource {
	if in == nil {
		return nil
	}
	out := new(DiskSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskSourceHost) DeepCopyInto(out *DiskSourceHost) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskSourceHost.
func (in *DiskSourceHost) DeepCopy() *DiskSourceHost {
	if in == nil {
		return nil
	}
	out := new(DiskSourceHost)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiskTarget) DeepCopyInto(out *DiskTarget) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskTarget.
func (in *DiskTarget) DeepCopy() *DiskTarget {
	if in == nil {
		return nil
	}
	out := new(DiskTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Domain) DeepCopyInto(out *Domain) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Domain.
func (in *Domain) DeepCopy() *Domain {
	if in == nil {
		return nil
	}
	out := new(Domain)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *Domain) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DomainGuestInfo) DeepCopyInto(out *DomainGuestInfo) {
	*out = *in
	if in.Interfaces != nil {
		in, out := &in.Interfaces, &out.Interfaces
		*out = make([]InterfaceStatus, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.OSInfo != nil {
		in, out := &in.OSInfo, &out.OSInfo
		*out = new(GuestOSInfo)
		**out = **in
	}
	if in.FSFreezeStatus != nil {
		in, out := &in.FSFreezeStatus, &out.FSFreezeStatus
		*out = new(FSFreeze)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainGuestInfo.
func (in *DomainGuestInfo) DeepCopy() *DomainGuestInfo {
	if in == nil {
		return nil
	}
	out := new(DomainGuestInfo)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DomainList) DeepCopyInto(out *DomainList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Domain, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainList.
func (in *DomainList) DeepCopy() *DomainList {
	if in == nil {
		return nil
	}
	out := new(DomainList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *DomainList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DomainSpec) DeepCopyInto(out *DomainSpec) {
	*out = *in
	out.XMLName = in.XMLName
	out.Memory = in.Memory
	if in.CurrentMemory != nil {
		in, out := &in.CurrentMemory, &out.CurrentMemory
		*out = new(Memory)
		**out = **in
	}
	if in.MaxMemory != nil {
		in, out := &in.MaxMemory, &out.MaxMemory
		*out = new(MaxMemory)
		**out = **in
	}
	if in.MemoryBacking != nil {
		in, out := &in.MemoryBacking, &out.MemoryBacking
		*out = new(MemoryBacking)
		(*in).DeepCopyInto(*out)
	}
	in.OS.DeepCopyInto(&out.OS)
	if in.SysInfo != nil {
		in, out := &in.SysInfo, &out.SysInfo
		*out = new(SysInfo)
		(*in).DeepCopyInto(*out)
	}
	in.Devices.DeepCopyInto(&out.Devices)
	if in.Clock != nil {
		in, out := &in.Clock, &out.Clock
		*out = new(Clock)
		(*in).DeepCopyInto(*out)
	}
	if in.Resource != nil {
		in, out := &in.Resource, &out.Resource
		*out = new(Resource)
		**out = **in
	}
	if in.QEMUCmd != nil {
		in, out := &in.QEMUCmd, &out.QEMUCmd
		*out = new(Commandline)
		(*in).DeepCopyInto(*out)
	}
	in.Metadata.DeepCopyInto(&out.Metadata)
	if in.Features != nil {
		in, out := &in.Features, &out.Features
		*out = new(Features)
		(*in).DeepCopyInto(*out)
	}
	in.CPU.DeepCopyInto(&out.CPU)
	if in.VCPU != nil {
		in, out := &in.VCPU, &out.VCPU
		*out = new(VCPU)
		**out = **in
	}
	if in.VCPUs != nil {
		in, out := &in.VCPUs, &out.VCPUs
		*out = new(VCPUs)
		(*in).DeepCopyInto(*out)
	}
	if in.CPUTune != nil {
		in, out := &in.CPUTune, &out.CPUTune
		*out = new(CPUTune)
		(*in).DeepCopyInto(*out)
	}
	if in.NUMATune != nil {
		in, out := &in.NUMATune, &out.NUMATune
		*out = new(NUMATune)
		(*in).DeepCopyInto(*out)
	}
	if in.IOThreads != nil {
		in, out := &in.IOThreads, &out.IOThreads
		*out = new(IOThreads)
		**out = **in
	}
	if in.LaunchSecurity != nil {
		in, out := &in.LaunchSecurity, &out.LaunchSecurity
		*out = new(LaunchSecurity)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainSpec.
func (in *DomainSpec) DeepCopy() *DomainSpec {
	if in == nil {
		return nil
	}
	out := new(DomainSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DomainStatus) DeepCopyInto(out *DomainStatus) {
	*out = *in
	if in.Interfaces != nil {
		in, out := &in.Interfaces, &out.Interfaces
		*out = make([]InterfaceStatus, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	out.OSInfo = in.OSInfo
	out.FSFreezeStatus = in.FSFreezeStatus
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainStatus.
func (in *DomainStatus) DeepCopy() *DomainStatus {
	if in == nil {
		return nil
	}
	out := new(DomainStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DomainSysInfo) DeepCopyInto(out *DomainSysInfo) {
	*out = *in
	out.OSInfo = in.OSInfo
	out.Timezone = in.Timezone
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainSysInfo.
func (in *DomainSysInfo) DeepCopy() *DomainSysInfo {
	if in == nil {
		return nil
	}
	out := new(DomainSysInfo)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Entry) DeepCopyInto(out *Entry) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Entry.
func (in *Entry) DeepCopy() *Entry {
	if in == nil {
		return nil
	}
	out := new(Entry)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Env) DeepCopyInto(out *Env) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Env.
func (in *Env) DeepCopy() *Env {
	if in == nil {
		return nil
	}
	out := new(Env)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FSDisk) DeepCopyInto(out *FSDisk) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FSDisk.
func (in *FSDisk) DeepCopy() *FSDisk {
	if in == nil {
		return nil
	}
	out := new(FSDisk)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FSFreeze) DeepCopyInto(out *FSFreeze) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FSFreeze.
func (in *FSFreeze) DeepCopy() *FSFreeze {
	if in == nil {
		return nil
	}
	out := new(FSFreeze)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeatureEnabled) DeepCopyInto(out *FeatureEnabled) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureEnabled.
func (in *FeatureEnabled) DeepCopy() *FeatureEnabled {
	if in == nil {
		return nil
	}
	out := new(FeatureEnabled)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeatureHyperv) DeepCopyInto(out *FeatureHyperv) {
	*out = *in
	if in.Relaxed != nil {
		in, out := &in.Relaxed, &out.Relaxed
		*out = new(FeatureState)
		**out = **in
	}
	if in.VAPIC != nil {
		in, out := &in.VAPIC, &out.VAPIC
		*out = new(FeatureState)
		**out = **in
	}
	if in.Spinlocks != nil {
		in, out := &in.Spinlocks, &out.Spinlocks
		*out = new(FeatureSpinlocks)
		(*in).DeepCopyInto(*out)
	}
	if in.VPIndex != nil {
		in, out := &in.VPIndex, &out.VPIndex
		*out = new(FeatureState)
		**out = **in
	}
	if in.Runtime != nil {
		in, out := &in.Runtime, &out.Runtime
		*out = new(FeatureState)
		**out = **in
	}
	if in.SyNIC != nil {
		in, out := &in.SyNIC, &out.SyNIC
		*out = new(FeatureState)
		**out = **in
	}
	if in.SyNICTimer != nil {
		in, out := &in.SyNICTimer, &out.SyNICTimer
		*out = new(SyNICTimer)
		(*in).DeepCopyInto(*out)
	}
	if in.Reset != nil {
		in, out := &in.Reset, &out.Reset
		*out = new(FeatureState)
		**out = **in
	}
	if in.VendorID != nil {
		in, out := &in.VendorID, &out.VendorID
		*out = new(FeatureVendorID)
		**out = **in
	}
	if in.Frequencies != nil {
		in, out := &in.Frequencies, &out.Frequencies
		*out = new(FeatureState)
		**out = **in
	}
	if in.Reenlightenment != nil {
		in, out := &in.Reenlightenment, &out.Reenlightenment
		*out = new(FeatureState)
		**out = **in
	}
	if in.TLBFlush != nil {
		in, out := &in.TLBFlush, &out.TLBFlush
		*out = new(FeatureState)
		**out = **in
	}
	if in.IPI != nil {
		in, out := &in.IPI, &out.IPI
		*out = new(FeatureState)
		**out = **in
	}
	if in.EVMCS != nil {
		in, out := &in.EVMCS, &out.EVMCS
		*out = new(FeatureState)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureHyperv.
func (in *FeatureHyperv) DeepCopy() *FeatureHyperv {
	if in == nil {
		return nil
	}
	out := new(FeatureHyperv)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeatureKVM) DeepCopyInto(out *FeatureKVM) {
	*out = *in
	if in.Hidden != nil {
		in, out := &in.Hidden, &out.Hidden
		*out = new(FeatureState)
		**out = **in
	}
	if in.HintDedicated != nil {
		in, out := &in.HintDedicated, &out.HintDedicated
		*out = new(FeatureState)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureKVM.
func (in *FeatureKVM) DeepCopy() *FeatureKVM {
	if in == nil {
		return nil
	}
	out := new(FeatureKVM)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeaturePVSpinlock) DeepCopyInto(out *FeaturePVSpinlock) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeaturePVSpinlock.
func (in *FeaturePVSpinlock) DeepCopy() *FeaturePVSpinlock {
	if in == nil {
		return nil
	}
	out := new(FeaturePVSpinlock)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeatureSpinlocks) DeepCopyInto(out *FeatureSpinlocks) {
	*out = *in
	if in.Retries != nil {
		in, out := &in.Retries, &out.Retries
		*out = new(uint32)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureSpinlocks.
func (in *FeatureSpinlocks) DeepCopy() *FeatureSpinlocks {
	if in == nil {
		return nil
	}
	out := new(FeatureSpinlocks)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeatureState) DeepCopyInto(out *FeatureState) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureState.
func (in *FeatureState) DeepCopy() *FeatureState {
	if in == nil {
		return nil
	}
	out := new(FeatureState)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FeatureVendorID) DeepCopyInto(out *FeatureVendorID) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureVendorID.
func (in *FeatureVendorID) DeepCopy() *FeatureVendorID {
	if in == nil {
		return nil
	}
	out := new(FeatureVendorID)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Features) DeepCopyInto(out *Features) {
	*out = *in
	if in.ACPI != nil {
		in, out := &in.ACPI, &out.ACPI
		*out = new(FeatureEnabled)
		**out = **in
	}
	if in.APIC != nil {
		in, out := &in.APIC, &out.APIC
		*out = new(FeatureEnabled)
		**out = **in
	}
	if in.Hyperv != nil {
		in, out := &in.Hyperv, &out.Hyperv
		*out = new(FeatureHyperv)
		(*in).DeepCopyInto(*out)
	}
	if in.SMM != nil {
		in, out := &in.SMM, &out.SMM
		*out = new(FeatureEnabled)
		**out = **in
	}
	if in.KVM != nil {
		in, out := &in.KVM, &out.KVM
		*out = new(FeatureKVM)
		(*in).DeepCopyInto(*out)
	}
	if in.PVSpinlock != nil {
		in, out := &in.PVSpinlock, &out.PVSpinlock
		*out = new(FeaturePVSpinlock)
		**out = **in
	}
	if in.PMU != nil {
		in, out := &in.PMU, &out.PMU
		*out = new(FeatureState)
		**out = **in
	}
	if in.VMPort != nil {
		in, out := &in.VMPort, &out.VMPort
		*out = new(FeatureState)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Features.
func (in *Features) DeepCopy() *Features {
	if in == nil {
		return nil
	}
	out := new(Features)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Filesystem) DeepCopyInto(out *Filesystem) {
	*out = *in
	if in.Disk != nil {
		in, out := &in.Disk, &out.Disk
		*out = make([]FSDisk, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Filesystem.
func (in *Filesystem) DeepCopy() *Filesystem {
	if in == nil {
		return nil
	}
	out := new(Filesystem)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemBinary) DeepCopyInto(out *FilesystemBinary) {
	*out = *in
	if in.Cache != nil {
		in, out := &in.Cache, &out.Cache
		*out = new(FilesystemBinaryCache)
		**out = **in
	}
	if in.Lock != nil {
		in, out := &in.Lock, &out.Lock
		*out = new(FilesystemBinaryLock)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemBinary.
func (in *FilesystemBinary) DeepCopy() *FilesystemBinary {
	if in == nil {
		return nil
	}
	out := new(FilesystemBinary)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemBinaryCache) DeepCopyInto(out *FilesystemBinaryCache) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemBinaryCache.
func (in *FilesystemBinaryCache) DeepCopy() *FilesystemBinaryCache {
	if in == nil {
		return nil
	}
	out := new(FilesystemBinaryCache)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemBinaryLock) DeepCopyInto(out *FilesystemBinaryLock) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemBinaryLock.
func (in *FilesystemBinaryLock) DeepCopy() *FilesystemBinaryLock {
	if in == nil {
		return nil
	}
	out := new(FilesystemBinaryLock)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemDevice) DeepCopyInto(out *FilesystemDevice) {
	*out = *in
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(FilesystemSource)
		**out = **in
	}
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(FilesystemTarget)
		**out = **in
	}
	if in.Driver != nil {
		in, out := &in.Driver, &out.Driver
		*out = new(FilesystemDriver)
		**out = **in
	}
	if in.Binary != nil {
		in, out := &in.Binary, &out.Binary
		*out = new(FilesystemBinary)
		(*in).DeepCopyInto(*out)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemDevice.
func (in *FilesystemDevice) DeepCopy() *FilesystemDevice {
	if in == nil {
		return nil
	}
	out := new(FilesystemDevice)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemDriver) DeepCopyInto(out *FilesystemDriver) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemDriver.
func (in *FilesystemDriver) DeepCopy() *FilesystemDriver {
	if in == nil {
		return nil
	}
	out := new(FilesystemDriver)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemSource) DeepCopyInto(out *FilesystemSource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemSource.
func (in *FilesystemSource) DeepCopy() *FilesystemSource {
	if in == nil {
		return nil
	}
	out := new(FilesystemSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilesystemTarget) DeepCopyInto(out *FilesystemTarget) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilesystemTarget.
func (in *FilesystemTarget) DeepCopy() *FilesystemTarget {
	if in == nil {
		return nil
	}
	out := new(FilesystemTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *FilterRef) DeepCopyInto(out *FilterRef) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterRef.
func (in *FilterRef) DeepCopy() *FilterRef {
	if in == nil {
		return nil
	}
	out := new(FilterRef)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GracePeriodMetadata) DeepCopyInto(out *GracePeriodMetadata) {
	*out = *in
	if in.DeletionTimestamp != nil {
		in, out := &in.DeletionTimestamp, &out.DeletionTimestamp
		*out = (*in).DeepCopy()
	}
	if in.MarkedForGracefulShutdown != nil {
		in, out := &in.MarkedForGracefulShutdown, &out.MarkedForGracefulShutdown
		*out = new(bool)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GracePeriodMetadata.
func (in *GracePeriodMetadata) DeepCopy() *GracePeriodMetadata {
	if in == nil {
		return nil
	}
	out := new(GracePeriodMetadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Graphics) DeepCopyInto(out *Graphics) {
	*out = *in
	if in.Listen != nil {
		in, out := &in.Listen, &out.Listen
		*out = new(GraphicsListen)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Graphics.
func (in *Graphics) DeepCopy() *Graphics {
	if in == nil {
		return nil
	}
	out := new(Graphics)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GraphicsListen) DeepCopyInto(out *GraphicsListen) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphicsListen.
func (in *GraphicsListen) DeepCopy() *GraphicsListen {
	if in == nil {
		return nil
	}
	out := new(GraphicsListen)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GuestOSInfo) DeepCopyInto(out *GuestOSInfo) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GuestOSInfo.
func (in *GuestOSInfo) DeepCopy() *GuestOSInfo {
	if in == nil {
		return nil
	}
	out := new(GuestOSInfo)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HostDevice) DeepCopyInto(out *HostDevice) {
	*out = *in
	out.XMLName = in.XMLName
	in.Source.DeepCopyInto(&out.Source)
	if in.BootOrder != nil {
		in, out := &in.BootOrder, &out.BootOrder
		*out = new(BootOrder)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostDevice.
func (in *HostDevice) DeepCopy() *HostDevice {
	if in == nil {
		return nil
	}
	out := new(HostDevice)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HostDeviceSource) DeepCopyInto(out *HostDeviceSource) {
	*out = *in
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostDeviceSource.
func (in *HostDeviceSource) DeepCopy() *HostDeviceSource {
	if in == nil {
		return nil
	}
	out := new(HostDeviceSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HugePage) DeepCopyInto(out *HugePage) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HugePage.
func (in *HugePage) DeepCopy() *HugePage {
	if in == nil {
		return nil
	}
	out := new(HugePage)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HugePages) DeepCopyInto(out *HugePages) {
	*out = *in
	if in.HugePage != nil {
		in, out := &in.HugePage, &out.HugePage
		*out = make([]HugePage, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HugePages.
func (in *HugePages) DeepCopy() *HugePages {
	if in == nil {
		return nil
	}
	out := new(HugePages)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IOThreads) DeepCopyInto(out *IOThreads) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOThreads.
func (in *IOThreads) DeepCopy() *IOThreads {
	if in == nil {
		return nil
	}
	out := new(IOThreads)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Input) DeepCopyInto(out *Input) {
	*out = *in
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Input.
func (in *Input) DeepCopy() *Input {
	if in == nil {
		return nil
	}
	out := new(Input)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Interface) DeepCopyInto(out *Interface) {
	*out = *in
	out.XMLName = in.XMLName
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	in.Source.DeepCopyInto(&out.Source)
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(InterfaceTarget)
		**out = **in
	}
	if in.Model != nil {
		in, out := &in.Model, &out.Model
		*out = new(Model)
		**out = **in
	}
	if in.MAC != nil {
		in, out := &in.MAC, &out.MAC
		*out = new(MAC)
		**out = **in
	}
	if in.MTU != nil {
		in, out := &in.MTU, &out.MTU
		*out = new(MTU)
		**out = **in
	}
	if in.BandWidth != nil {
		in, out := &in.BandWidth, &out.BandWidth
		*out = new(BandWidth)
		**out = **in
	}
	if in.BootOrder != nil {
		in, out := &in.BootOrder, &out.BootOrder
		*out = new(BootOrder)
		**out = **in
	}
	if in.LinkState != nil {
		in, out := &in.LinkState, &out.LinkState
		*out = new(LinkState)
		**out = **in
	}
	if in.FilterRef != nil {
		in, out := &in.FilterRef, &out.FilterRef
		*out = new(FilterRef)
		**out = **in
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.Driver != nil {
		in, out := &in.Driver, &out.Driver
		*out = new(InterfaceDriver)
		(*in).DeepCopyInto(*out)
	}
	if in.Rom != nil {
		in, out := &in.Rom, &out.Rom
		*out = new(Rom)
		**out = **in
	}
	if in.ACPI != nil {
		in, out := &in.ACPI, &out.ACPI
		*out = new(ACPI)
		**out = **in
	}
	if in.Backend != nil {
		in, out := &in.Backend, &out.Backend
		*out = new(InterfaceBackend)
		**out = **in
	}
	if in.PortForward != nil {
		in, out := &in.PortForward, &out.PortForward
		*out = make([]InterfacePortForward, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Interface.
func (in *Interface) DeepCopy() *Interface {
	if in == nil {
		return nil
	}
	out := new(Interface)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfaceBackend) DeepCopyInto(out *InterfaceBackend) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceBackend.
func (in *InterfaceBackend) DeepCopy() *InterfaceBackend {
	if in == nil {
		return nil
	}
	out := new(InterfaceBackend)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfaceDriver) DeepCopyInto(out *InterfaceDriver) {
	*out = *in
	if in.Queues != nil {
		in, out := &in.Queues, &out.Queues
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceDriver.
func (in *InterfaceDriver) DeepCopy() *InterfaceDriver {
	if in == nil {
		return nil
	}
	out := new(InterfaceDriver)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfacePortForward) DeepCopyInto(out *InterfacePortForward) {
	*out = *in
	if in.Ranges != nil {
		in, out := &in.Ranges, &out.Ranges
		*out = make([]InterfacePortForwardRange, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfacePortForward.
func (in *InterfacePortForward) DeepCopy() *InterfacePortForward {
	if in == nil {
		return nil
	}
	out := new(InterfacePortForward)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfacePortForwardRange) DeepCopyInto(out *InterfacePortForwardRange) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfacePortForwardRange.
func (in *InterfacePortForwardRange) DeepCopy() *InterfacePortForwardRange {
	if in == nil {
		return nil
	}
	out := new(InterfacePortForwardRange)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfaceSource) DeepCopyInto(out *InterfaceSource) {
	*out = *in
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceSource.
func (in *InterfaceSource) DeepCopy() *InterfaceSource {
	if in == nil {
		return nil
	}
	out := new(InterfaceSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfaceStatus) DeepCopyInto(out *InterfaceStatus) {
	*out = *in
	if in.IPs != nil {
		in, out := &in.IPs, &out.IPs
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceStatus.
func (in *InterfaceStatus) DeepCopy() *InterfaceStatus {
	if in == nil {
		return nil
	}
	out := new(InterfaceStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InterfaceTarget) DeepCopyInto(out *InterfaceTarget) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceTarget.
func (in *InterfaceTarget) DeepCopy() *InterfaceTarget {
	if in == nil {
		return nil
	}
	out := new(InterfaceTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *KubeVirtMetadata) DeepCopyInto(out *KubeVirtMetadata) {
	*out = *in
	if in.GracePeriod != nil {
		in, out := &in.GracePeriod, &out.GracePeriod
		*out = new(GracePeriodMetadata)
		(*in).DeepCopyInto(*out)
	}
	if in.Migration != nil {
		in, out := &in.Migration, &out.Migration
		*out = new(MigrationMetadata)
		(*in).DeepCopyInto(*out)
	}
	if in.AccessCredential != nil {
		in, out := &in.AccessCredential, &out.AccessCredential
		*out = new(AccessCredentialMetadata)
		**out = **in
	}
	if in.MemoryDump != nil {
		in, out := &in.MemoryDump, &out.MemoryDump
		*out = new(MemoryDumpMetadata)
		(*in).DeepCopyInto(*out)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeVirtMetadata.
func (in *KubeVirtMetadata) DeepCopy() *KubeVirtMetadata {
	if in == nil {
		return nil
	}
	out := new(KubeVirtMetadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LaunchSecurity) DeepCopyInto(out *LaunchSecurity) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LaunchSecurity.
func (in *LaunchSecurity) DeepCopy() *LaunchSecurity {
	if in == nil {
		return nil
	}
	out := new(LaunchSecurity)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LinkState) DeepCopyInto(out *LinkState) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkState.
func (in *LinkState) DeepCopy() *LinkState {
	if in == nil {
		return nil
	}
	out := new(LinkState)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Loader) DeepCopyInto(out *Loader) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Loader.
func (in *Loader) DeepCopy() *Loader {
	if in == nil {
		return nil
	}
	out := new(Loader)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MAC) DeepCopyInto(out *MAC) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MAC.
func (in *MAC) DeepCopy() *MAC {
	if in == nil {
		return nil
	}
	out := new(MAC)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MTU) DeepCopyInto(out *MTU) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MTU.
func (in *MTU) DeepCopy() *MTU {
	if in == nil {
		return nil
	}
	out := new(MTU)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MaxMemory) DeepCopyInto(out *MaxMemory) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaxMemory.
func (in *MaxMemory) DeepCopy() *MaxMemory {
	if in == nil {
		return nil
	}
	out := new(MaxMemory)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemBalloon) DeepCopyInto(out *MemBalloon) {
	*out = *in
	if in.Stats != nil {
		in, out := &in.Stats, &out.Stats
		*out = new(Stats)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	if in.Driver != nil {
		in, out := &in.Driver, &out.Driver
		*out = new(MemBalloonDriver)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemBalloon.
func (in *MemBalloon) DeepCopy() *MemBalloon {
	if in == nil {
		return nil
	}
	out := new(MemBalloon)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemBalloonDriver) DeepCopyInto(out *MemBalloonDriver) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemBalloonDriver.
func (in *MemBalloonDriver) DeepCopy() *MemBalloonDriver {
	if in == nil {
		return nil
	}
	out := new(MemBalloonDriver)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemNode) DeepCopyInto(out *MemNode) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemNode.
func (in *MemNode) DeepCopy() *MemNode {
	if in == nil {
		return nil
	}
	out := new(MemNode)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Memory) DeepCopyInto(out *Memory) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Memory.
func (in *Memory) DeepCopy() *Memory {
	if in == nil {
		return nil
	}
	out := new(Memory)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryAddress) DeepCopyInto(out *MemoryAddress) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryAddress.
func (in *MemoryAddress) DeepCopy() *MemoryAddress {
	if in == nil {
		return nil
	}
	out := new(MemoryAddress)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryAllocation) DeepCopyInto(out *MemoryAllocation) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryAllocation.
func (in *MemoryAllocation) DeepCopy() *MemoryAllocation {
	if in == nil {
		return nil
	}
	out := new(MemoryAllocation)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryBacking) DeepCopyInto(out *MemoryBacking) {
	*out = *in
	if in.HugePages != nil {
		in, out := &in.HugePages, &out.HugePages
		*out = new(HugePages)
		(*in).DeepCopyInto(*out)
	}
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(MemoryBackingSource)
		**out = **in
	}
	if in.Access != nil {
		in, out := &in.Access, &out.Access
		*out = new(MemoryBackingAccess)
		**out = **in
	}
	if in.Allocation != nil {
		in, out := &in.Allocation, &out.Allocation
		*out = new(MemoryAllocation)
		**out = **in
	}
	if in.NoSharePages != nil {
		in, out := &in.NoSharePages, &out.NoSharePages
		*out = new(NoSharePages)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryBacking.
func (in *MemoryBacking) DeepCopy() *MemoryBacking {
	if in == nil {
		return nil
	}
	out := new(MemoryBacking)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryBackingAccess) DeepCopyInto(out *MemoryBackingAccess) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryBackingAccess.
func (in *MemoryBackingAccess) DeepCopy() *MemoryBackingAccess {
	if in == nil {
		return nil
	}
	out := new(MemoryBackingAccess)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryBackingSource) DeepCopyInto(out *MemoryBackingSource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryBackingSource.
func (in *MemoryBackingSource) DeepCopy() *MemoryBackingSource {
	if in == nil {
		return nil
	}
	out := new(MemoryBackingSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryDevice) DeepCopyInto(out *MemoryDevice) {
	*out = *in
	out.XMLName = in.XMLName
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(MemoryTarget)
		(*in).DeepCopyInto(*out)
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryDevice.
func (in *MemoryDevice) DeepCopy() *MemoryDevice {
	if in == nil {
		return nil
	}
	out := new(MemoryDevice)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryDumpMetadata) DeepCopyInto(out *MemoryDumpMetadata) {
	*out = *in
	if in.StartTimestamp != nil {
		in, out := &in.StartTimestamp, &out.StartTimestamp
		*out = (*in).DeepCopy()
	}
	if in.EndTimestamp != nil {
		in, out := &in.EndTimestamp, &out.EndTimestamp
		*out = (*in).DeepCopy()
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryDumpMetadata.
func (in *MemoryDumpMetadata) DeepCopy() *MemoryDumpMetadata {
	if in == nil {
		return nil
	}
	out := new(MemoryDumpMetadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MemoryTarget) DeepCopyInto(out *MemoryTarget) {
	*out = *in
	out.Size = in.Size
	out.Requested = in.Requested
	out.Current = in.Current
	out.Block = in.Block
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(MemoryAddress)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryTarget.
func (in *MemoryTarget) DeepCopy() *MemoryTarget {
	if in == nil {
		return nil
	}
	out := new(MemoryTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Metadata) DeepCopyInto(out *Metadata) {
	*out = *in
	in.KubeVirt.DeepCopyInto(&out.KubeVirt)
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metadata.
func (in *Metadata) DeepCopy() *Metadata {
	if in == nil {
		return nil
	}
	out := new(Metadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MigrationMetadata) DeepCopyInto(out *MigrationMetadata) {
	*out = *in
	if in.StartTimestamp != nil {
		in, out := &in.StartTimestamp, &out.StartTimestamp
		*out = (*in).DeepCopy()
	}
	if in.EndTimestamp != nil {
		in, out := &in.EndTimestamp, &out.EndTimestamp
		*out = (*in).DeepCopy()
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MigrationMetadata.
func (in *MigrationMetadata) DeepCopy() *MigrationMetadata {
	if in == nil {
		return nil
	}
	out := new(MigrationMetadata)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Model) DeepCopyInto(out *Model) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Model.
func (in *Model) DeepCopy() *Model {
	if in == nil {
		return nil
	}
	out := new(Model)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NUMA) DeepCopyInto(out *NUMA) {
	*out = *in
	if in.Cells != nil {
		in, out := &in.Cells, &out.Cells
		*out = make([]NUMACell, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NUMA.
func (in *NUMA) DeepCopy() *NUMA {
	if in == nil {
		return nil
	}
	out := new(NUMA)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NUMACell) DeepCopyInto(out *NUMACell) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NUMACell.
func (in *NUMACell) DeepCopy() *NUMACell {
	if in == nil {
		return nil
	}
	out := new(NUMACell)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NUMATune) DeepCopyInto(out *NUMATune) {
	*out = *in
	out.Memory = in.Memory
	if in.MemNodes != nil {
		in, out := &in.MemNodes, &out.MemNodes
		*out = make([]MemNode, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NUMATune.
func (in *NUMATune) DeepCopy() *NUMATune {
	if in == nil {
		return nil
	}
	out := new(NUMATune)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NVRam) DeepCopyInto(out *NVRam) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NVRam.
func (in *NVRam) DeepCopy() *NVRam {
	if in == nil {
		return nil
	}
	out := new(NVRam)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NoSharePages) DeepCopyInto(out *NoSharePages) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NoSharePages.
func (in *NoSharePages) DeepCopy() *NoSharePages {
	if in == nil {
		return nil
	}
	out := new(NoSharePages)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NumaTuneMemory) DeepCopyInto(out *NumaTuneMemory) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumaTuneMemory.
func (in *NumaTuneMemory) DeepCopy() *NumaTuneMemory {
	if in == nil {
		return nil
	}
	out := new(NumaTuneMemory)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OS) DeepCopyInto(out *OS) {
	*out = *in
	out.Type = in.Type
	if in.ACPI != nil {
		in, out := &in.ACPI, &out.ACPI
		*out = new(OSACPI)
		**out = **in
	}
	if in.SMBios != nil {
		in, out := &in.SMBios, &out.SMBios
		*out = new(SMBios)
		**out = **in
	}
	if in.BootOrder != nil {
		in, out := &in.BootOrder, &out.BootOrder
		*out = make([]Boot, len(*in))
		copy(*out, *in)
	}
	if in.BootMenu != nil {
		in, out := &in.BootMenu, &out.BootMenu
		*out = new(BootMenu)
		(*in).DeepCopyInto(*out)
	}
	if in.BIOS != nil {
		in, out := &in.BIOS, &out.BIOS
		*out = new(BIOS)
		**out = **in
	}
	if in.BootLoader != nil {
		in, out := &in.BootLoader, &out.BootLoader
		*out = new(Loader)
		**out = **in
	}
	if in.NVRam != nil {
		in, out := &in.NVRam, &out.NVRam
		*out = new(NVRam)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OS.
func (in *OS) DeepCopy() *OS {
	if in == nil {
		return nil
	}
	out := new(OS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OSACPI) DeepCopyInto(out *OSACPI) {
	*out = *in
	out.Table = in.Table
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OSACPI.
func (in *OSACPI) DeepCopy() *OSACPI {
	if in == nil {
		return nil
	}
	out := new(OSACPI)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OSType) DeepCopyInto(out *OSType) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OSType.
func (in *OSType) DeepCopy() *OSType {
	if in == nil {
		return nil
	}
	out := new(OSType)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReadOnly) DeepCopyInto(out *ReadOnly) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadOnly.
func (in *ReadOnly) DeepCopy() *ReadOnly {
	if in == nil {
		return nil
	}
	out := new(ReadOnly)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedirectedDevice) DeepCopyInto(out *RedirectedDevice) {
	*out = *in
	out.Source = in.Source
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedirectedDevice.
func (in *RedirectedDevice) DeepCopy() *RedirectedDevice {
	if in == nil {
		return nil
	}
	out := new(RedirectedDevice)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedirectedDeviceSource) DeepCopyInto(out *RedirectedDeviceSource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedirectedDeviceSource.
func (in *RedirectedDeviceSource) DeepCopy() *RedirectedDeviceSource {
	if in == nil {
		return nil
	}
	out := new(RedirectedDeviceSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Reservations) DeepCopyInto(out *Reservations) {
	*out = *in
	if in.SourceReservations != nil {
		in, out := &in.SourceReservations, &out.SourceReservations
		*out = new(SourceReservations)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Reservations.
func (in *Reservations) DeepCopy() *Reservations {
	if in == nil {
		return nil
	}
	out := new(Reservations)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Resource) DeepCopyInto(out *Resource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resource.
func (in *Resource) DeepCopy() *Resource {
	if in == nil {
		return nil
	}
	out := new(Resource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Rng) DeepCopyInto(out *Rng) {
	*out = *in
	if in.Backend != nil {
		in, out := &in.Backend, &out.Backend
		*out = new(RngBackend)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	if in.Driver != nil {
		in, out := &in.Driver, &out.Driver
		*out = new(RngDriver)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rng.
func (in *Rng) DeepCopy() *Rng {
	if in == nil {
		return nil
	}
	out := new(Rng)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RngBackend) DeepCopyInto(out *RngBackend) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RngBackend.
func (in *RngBackend) DeepCopy() *RngBackend {
	if in == nil {
		return nil
	}
	out := new(RngBackend)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RngDriver) DeepCopyInto(out *RngDriver) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RngDriver.
func (in *RngDriver) DeepCopy() *RngDriver {
	if in == nil {
		return nil
	}
	out := new(RngDriver)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RngRate) DeepCopyInto(out *RngRate) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RngRate.
func (in *RngRate) DeepCopy() *RngRate {
	if in == nil {
		return nil
	}
	out := new(RngRate)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Rom) DeepCopyInto(out *Rom) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rom.
func (in *Rom) DeepCopy() *Rom {
	if in == nil {
		return nil
	}
	out := new(Rom)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SEVNodeParameters) DeepCopyInto(out *SEVNodeParameters) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SEVNodeParameters.
func (in *SEVNodeParameters) DeepCopy() *SEVNodeParameters {
	if in == nil {
		return nil
	}
	out := new(SEVNodeParameters)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SMBios) DeepCopyInto(out *SMBios) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SMBios.
func (in *SMBios) DeepCopy() *SMBios {
	if in == nil {
		return nil
	}
	out := new(SMBios)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SecretSpec) DeepCopyInto(out *SecretSpec) {
	*out = *in
	out.XMLName = in.XMLName
	out.Usage = in.Usage
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretSpec.
func (in *SecretSpec) DeepCopy() *SecretSpec {
	if in == nil {
		return nil
	}
	out := new(SecretSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SecretUsage) DeepCopyInto(out *SecretUsage) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretUsage.
func (in *SecretUsage) DeepCopy() *SecretUsage {
	if in == nil {
		return nil
	}
	out := new(SecretUsage)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Serial) DeepCopyInto(out *Serial) {
	*out = *in
	if in.Target != nil {
		in, out := &in.Target, &out.Target
		*out = new(SerialTarget)
		(*in).DeepCopyInto(*out)
	}
	if in.Source != nil {
		in, out := &in.Source, &out.Source
		*out = new(SerialSource)
		**out = **in
	}
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.Log != nil {
		in, out := &in.Log, &out.Log
		*out = new(SerialLog)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Serial.
func (in *Serial) DeepCopy() *Serial {
	if in == nil {
		return nil
	}
	out := new(Serial)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SerialLog) DeepCopyInto(out *SerialLog) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerialLog.
func (in *SerialLog) DeepCopy() *SerialLog {
	if in == nil {
		return nil
	}
	out := new(SerialLog)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SerialSource) DeepCopyInto(out *SerialSource) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerialSource.
func (in *SerialSource) DeepCopy() *SerialSource {
	if in == nil {
		return nil
	}
	out := new(SerialSource)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SerialTarget) DeepCopyInto(out *SerialTarget) {
	*out = *in
	if in.Port != nil {
		in, out := &in.Port, &out.Port
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerialTarget.
func (in *SerialTarget) DeepCopy() *SerialTarget {
	if in == nil {
		return nil
	}
	out := new(SerialTarget)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Shareable) DeepCopyInto(out *Shareable) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Shareable.
func (in *Shareable) DeepCopy() *Shareable {
	if in == nil {
		return nil
	}
	out := new(Shareable)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Slice) DeepCopyInto(out *Slice) {
	*out = *in
	out.Slice = in.Slice
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Slice.
func (in *Slice) DeepCopy() *Slice {
	if in == nil {
		return nil
	}
	out := new(Slice)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SliceType) DeepCopyInto(out *SliceType) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SliceType.
func (in *SliceType) DeepCopy() *SliceType {
	if in == nil {
		return nil
	}
	out := new(SliceType)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SoundCard) DeepCopyInto(out *SoundCard) {
	*out = *in
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SoundCard.
func (in *SoundCard) DeepCopy() *SoundCard {
	if in == nil {
		return nil
	}
	out := new(SoundCard)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SourceReservations) DeepCopyInto(out *SourceReservations) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceReservations.
func (in *SourceReservations) DeepCopy() *SourceReservations {
	if in == nil {
		return nil
	}
	out := new(SourceReservations)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Stats) DeepCopyInto(out *Stats) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Stats.
func (in *Stats) DeepCopy() *Stats {
	if in == nil {
		return nil
	}
	out := new(Stats)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SyNICTimer) DeepCopyInto(out *SyNICTimer) {
	*out = *in
	if in.Direct != nil {
		in, out := &in.Direct, &out.Direct
		*out = new(FeatureState)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SyNICTimer.
func (in *SyNICTimer) DeepCopy() *SyNICTimer {
	if in == nil {
		return nil
	}
	out := new(SyNICTimer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SysInfo) DeepCopyInto(out *SysInfo) {
	*out = *in
	if in.System != nil {
		in, out := &in.System, &out.System
		*out = make([]Entry, len(*in))
		copy(*out, *in)
	}
	if in.BIOS != nil {
		in, out := &in.BIOS, &out.BIOS
		*out = make([]Entry, len(*in))
		copy(*out, *in)
	}
	if in.BaseBoard != nil {
		in, out := &in.BaseBoard, &out.BaseBoard
		*out = make([]Entry, len(*in))
		copy(*out, *in)
	}
	if in.Chassis != nil {
		in, out := &in.Chassis, &out.Chassis
		*out = make([]Entry, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SysInfo.
func (in *SysInfo) DeepCopy() *SysInfo {
	if in == nil {
		return nil
	}
	out := new(SysInfo)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TPM) DeepCopyInto(out *TPM) {
	*out = *in
	out.Backend = in.Backend
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TPM.
func (in *TPM) DeepCopy() *TPM {
	if in == nil {
		return nil
	}
	out := new(TPM)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TPMBackend) DeepCopyInto(out *TPMBackend) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TPMBackend.
func (in *TPMBackend) DeepCopy() *TPMBackend {
	if in == nil {
		return nil
	}
	out := new(TPMBackend)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Timer) DeepCopyInto(out *Timer) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Timer.
func (in *Timer) DeepCopy() *Timer {
	if in == nil {
		return nil
	}
	out := new(Timer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Timezone) DeepCopyInto(out *Timezone) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Timezone.
func (in *Timezone) DeepCopy() *Timezone {
	if in == nil {
		return nil
	}
	out := new(Timezone)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *User) DeepCopyInto(out *User) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new User.
func (in *User) DeepCopy() *User {
	if in == nil {
		return nil
	}
	out := new(User)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VCPU) DeepCopyInto(out *VCPU) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCPU.
func (in *VCPU) DeepCopy() *VCPU {
	if in == nil {
		return nil
	}
	out := new(VCPU)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VCPUs) DeepCopyInto(out *VCPUs) {
	*out = *in
	if in.VCPU != nil {
		in, out := &in.VCPU, &out.VCPU
		*out = make([]VCPUsVCPU, len(*in))
		copy(*out, *in)
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCPUs.
func (in *VCPUs) DeepCopy() *VCPUs {
	if in == nil {
		return nil
	}
	out := new(VCPUs)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VCPUsVCPU) DeepCopyInto(out *VCPUsVCPU) {
	*out = *in
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCPUsVCPU.
func (in *VCPUsVCPU) DeepCopy() *VCPUsVCPU {
	if in == nil {
		return nil
	}
	out := new(VCPUsVCPU)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VSOCK) DeepCopyInto(out *VSOCK) {
	*out = *in
	out.CID = in.CID
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VSOCK.
func (in *VSOCK) DeepCopy() *VSOCK {
	if in == nil {
		return nil
	}
	out := new(VSOCK)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Video) DeepCopyInto(out *Video) {
	*out = *in
	in.Model.DeepCopyInto(&out.Model)
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Video.
func (in *Video) DeepCopy() *Video {
	if in == nil {
		return nil
	}
	out := new(Video)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VideoModel) DeepCopyInto(out *VideoModel) {
	*out = *in
	if in.Heads != nil {
		in, out := &in.Heads, &out.Heads
		*out = new(uint)
		**out = **in
	}
	if in.Ram != nil {
		in, out := &in.Ram, &out.Ram
		*out = new(uint)
		**out = **in
	}
	if in.VRam != nil {
		in, out := &in.VRam, &out.VRam
		*out = new(uint)
		**out = **in
	}
	if in.VGAMem != nil {
		in, out := &in.VGAMem, &out.VGAMem
		*out = new(uint)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VideoModel.
func (in *VideoModel) DeepCopy() *VideoModel {
	if in == nil {
		return nil
	}
	out := new(VideoModel)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Watchdog) DeepCopyInto(out *Watchdog) {
	*out = *in
	if in.Alias != nil {
		in, out := &in.Alias, &out.Alias
		*out = new(Alias)
		**out = **in
	}
	if in.Address != nil {
		in, out := &in.Address, &out.Address
		*out = new(Address)
		**out = **in
	}
	return
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Watchdog.
func (in *Watchdog) DeepCopy() *Watchdog {
	if in == nil {
		return nil
	}
	out := new(Watchdog)
	in.DeepCopyInto(out)
	return out
}
